@charset "UTF-8";

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

.slick-list {
    position: relative;
    overflow: hidden;
    display: block;
    margin: 0;
    padding: 0;
}

.slick-list:focus {
    outline: none;
}

.slick-list.dragging {
    cursor: pointer;
    cursor: hand;
}

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

.slick-track {
    position: relative;
    left: 0;
    top: 0;
    display: block;
    margin-left: auto;
    margin-right: auto;
}

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

.slick-track:after {
    clear: both;
}

.slick-loading .slick-track {
    visibility: hidden;
}

.slick-slide {
    float: left;
    height: 100%;
    min-height: 1px;
    display: none;
}

[dir="rtl"] .slick-slide {
    float: right;
}

.slick-slide img {
    display: block;
}

.slick-slide.slick-loading img {
    display: none;
}

.slick-slide.dragging img {
    pointer-events: none;
}

.slick-initialized .slick-slide {
    display: block;
}

.slick-loading .slick-slide {
    visibility: hidden;
}

.slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent;
}

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

/* COLORS */
/*Set 1*/
/*Set 2*/
/*Set 3*/
/*Complementary colors*/
/* FONT SIZE */
/* Titres */
/* text */
/* Menu, button, copyright */
/*-------------------*/
/*    0. GENERAL     */
/*-------------------*/
.browserupgrade {
    margin: 0.2em 0;
    background: #ccc;
    color: #000;
    padding: 0.2em 0;
}

body {
    font-family: 'Montserrat', Helvetica, Arial, sans-serif;
    color: #162056;
    margin: 0;
    padding: 0;
}

a {
    color: #162056;
    text-decoration: none;
    outline: none;
}

* {
    box-sizing: border-box;
}

.Wrapper {
    overflow: hidden;
    /* min-height: 100vh; */
}

.content {
    /* padding: 20px; */
}

.Wrapper--set1 .backgroundColor {
    background: #7FC2E4;
}

.Wrapper--set2 .backgroundColor {
    background: #A1D6CA;
}

.Wrapper--set3 .backgroundColor {
    background: #c4d600;
}

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

    h1,
    .h1 {
        font-weight: 300;
        font-size: 60px;
        line-height: 65px;
        letter-spacing: -0.03em;
    }

    h2,
    .h2 {
        font-weight: 300;
        font-size: 50px;
        line-height: 45px;
        letter-spacing: -0.03em;
    }

    h3,
    .h3 {
        font-weight: 300;
        font-size: 45px;
        line-height: 50px;
        letter-spacing: -0.03em;
    }

    h4,
    .h4 {
        font-weight: 300;
        font-size: 40px;
        line-height: 45px;
        letter-spacing: -0.03em;
    }

    h5,
    .h5 {
        font-weight: 300;
        font-size: 30px;
        line-height: 40px;
        letter-spacing: -0.03em;
    }

    h6,
    .h6 {
        font-weight: 300;
        font-size: 25px;
        line-height: 35px;
        letter-spacing: -0.03em;
        margin: 30px 0;
    }

    .h7 {
        font-weight: 300;
        font-size: 25px;
        line-height: 30px;
        letter-spacing: -0.03em;
    }

    .t1 {
        font-size: 25px;
        line-height: 30px;
        letter-spacing: -0.03em;
        font-weight: 300;
        margin: 20px 0;
    }

    .t2 {
        font-size: 27px;
        line-height: 26px;
        letter-spacing: -0.03em;
        font-weight: 300;
    }

    .t3 {
        font-size: 20px;
        line-height: 25px;
        letter-spacing: -0.03em;
        font-weight: 300;
    }

    .t4 {
        font-size: 18px;
        line-height: 26px;
        letter-spacing: -0.03em;
        font-weight: 300;
    }

    .t5 {
        font-size: 15px;
        line-height: 25px;
        letter-spacing: -0.03em;
        font-weight: 400;
    }

    .t6 {
        font-size: 14px;
        line-height: 16px;
        letter-spacing: -0.03em;
        font-weight: 300;
    }

    .t7 {
        font-size: 13px;
        line-height: 16px;
        letter-spacing: -0.03em;
        font-weight: 300;
    }
}

/* Slick */
.slick-list {
    width: 100% !important;
}

.slick-slider {
    position: static;
}

.slick-arrow {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    border: 0;
    font-size: 0;
    height: 61px;
    width: 65px;
    background-repeat: no-repeat;
    cursor: pointer;
    outline: none;
    z-index: 2;
}

.secondColor--yellow .slick-arrow {
    background-color: #FFE282;
}

.secondColor--green .slick-arrow {
    background-color: #E1EA80;
}

.secondColor--lila .slick-arrow {
    background-color: #C5A3CC;
}

.slick-prev {
    left: 0;
    border-radius: 0 200px 200px 0;
    background-image: url("/sites/default/files/images/arrow-left.png");
    background-position: 21px center;
}

.slick-next {
    right: 0;
    border-radius: 200px 0 0 200px;
    background-image: url("/sites/default/files/images/arrow-right.png");
    background-position: 29px center;
}

.slick-dots {
    padding: 0;
    margin: 19px 0 20px;
    list-style: none;
    text-align: center;
    position: relative;
    z-index: 2;
}

.slick-dots li {
    display: inline-block;
}

.slick-dots li button {
    border: 0;
    font-size: 0;
    border-radius: 50%;
    background: #7FC2E4;
    height: 11px;
    width: 11px;
    margin: 0 4px;
    outline: none;
}

.slick-dots li.slick-active button {
    background: #162056;
}

.Wrapper--set1 .slick-dots li button {
    background: #7FC2E4;
}

.Wrapper--set2 .slick-dots li button {
    background: #A1D6CA;
}

.Wrapper--set3 .slick-dots li button {
    background: #c4d600;
}

.Wrapper--set1 .slick-dots li.slick-active button {
    background: #162056;
}

.Wrapper--set2 .slick-dots li.slick-active button {
    background: #42145F;
}

.Wrapper--set3 .slick-dots li.slick-active button {
    background: #00859b;
}

/*----------- 0-1. GENERAL RESPONSIVE --------------*/
@media screen and (min-width: 781px) and (max-width: 1099px) {

    h1,
    .h1 {
        font-weight: 300;
        font-size: 45px;
        line-height: 50px;
        letter-spacing: -0.03em;
    }

    h2,
    .h2 {
        font-weight: 300;
        font-size: 40px;
        line-height: 45px;
        letter-spacing: -0.03em;
    }

    h3,
    .h3 {
        font-weight: 300;
        font-size: 30px;
        line-height: 40px;
        letter-spacing: -0.03em;
    }

    h4,
    .h4 {
        font-weight: 300;
        font-size: 25px;
        line-height: 30px;
        letter-spacing: -0.03em;
    }

    h5,
    .h5 {
        font-weight: 300;
        font-size: 25px;
        line-height: 30px;
        letter-spacing: -0.03em;
    }

    h6,
    .h6 {
        font-size: 18px;
        line-height: 26px;
        letter-spacing: -0.03em;
        font-weight: 300;
    }

    .h7 {
        font-size: 18px;
        line-height: 26px;
        letter-spacing: -0.03em;
        font-weight: 300;
    }

    .t1 {
        font-size: 20px;
        line-height: 25px;
        letter-spacing: -0.03em;
        font-weight: 300;
    }

    .t2 {
        font-size: 18px;
        line-height: 26px;
        letter-spacing: -0.03em;
        font-weight: 300;
    }

    .t3 {
        font-size: 18px;
        line-height: 26px;
        letter-spacing: -0.03em;
        font-weight: 300;
    }

    .t4 {
        font-size: 14px;
        line-height: 16px;
        letter-spacing: -0.03em;
        font-weight: 300;
        line-height: 20px;
    }

    .t5,
    .t6,
    .t7 {
        font-size: 13px;
        line-height: 16px;
        letter-spacing: -0.03em;
        font-weight: 300;
        line-height: 18px;
    }
}

@media screen and (max-width: 780px) {

    h1,
    .h1,
    h2,
    .h2,
    h3,
    .h3,
    h4,
    .h4,
    h5,
    .h5,
    h6,
    .h6,
    .h7 {
        font-weight: 300;
        font-size: 25px;
        line-height: 30px;
        letter-spacing: -0.03em;
        margin: 20px 0;
    }

    .t1,
    .t2,
    .t3 {
        font-size: 18px;
        line-height: 26px;
        letter-spacing: -0.03em;
        font-weight: 300;
    }

    .t4,
    .t5,
    .t6,
    .t7 {
        font-size: 13px;
        line-height: 16px;
        letter-spacing: -0.03em;
        font-weight: 300;
    }

    .slick-arrow {
        width: 51px;
        height: 40px;
        background-size: 12px;
    }

    .slick-next {
        background-position: 20px center;
    }
}

/*-------------------*/
/*       BUTTONS     */
/*-------------------*/
/* Boutons */
.Button {
    border: 1px solid #162056;
    text-transform: uppercase;
    padding: 2px 10px;
    font-size: 13px;
    line-height: 26px;
    font-weight: 400;
    text-align: center;
    min-width: 120px;
    display: inline-block;
    transition: 0.3s;
    margin: 5px 2px;
    outline: none;
}

/* Boutons SET 1*/
.Wrapper--set1 .Button--standard {
    color: #162056;
    border-color: #162056;
    border-radius: 20px;
}

.Wrapper--set1 .Button--standard:hover {
    color: #7FC2E4;
    border-color: #7FC2E4;
}

.Wrapper--set1 .Button--white {
    color: #ffffff;
    border-color: #ffffff;
    border-radius: 20px;
}

.Wrapper--set1 .Button--white:hover {
    color: #162056;
    border-color: #162056;
}

.Wrapper--set1 .Button--onBackground {
    color: #162056;
    border-color: #162056;
    border-radius: 20px;
}

.Wrapper--set1 .Button--onBackground:hover {
    color: #ffffff;
    border-color: #ffffff;
}

.Wrapper--set1 .Button--onBackground--full {
    color: #ffffff;
    border-color: #162056;
    background: #162056;
    border-radius: 20px;
}

.Wrapper--set1 .Button--onBackground--full:hover {
    color: skyBlue;
    border-color: #ffffff;
    background: #ffffff;
}

.Wrapper--set1 .Button--right {
    color: #ffffff;
    border-color: #162056;
    background: #162056;
    border-radius: 20px 0 0 20px;
}

.Wrapper--set1 .Button--right:hover {
    color: #ffffff;
    border-color: #7FC2E4;
    background: #7FC2E4;
}

/* Boutons SET 2*/
.Wrapper--set2 .Button--standard {
    color: #162056;
    border-color: #162056;
    border-radius: 20px;
}

.Wrapper--set2 .Button--standard:hover {
    color: #A1D6CA;
    border-color: #A1D6CA;
}

.Wrapper--set2 .Button--white {
    color: #ffffff;
    border-color: #ffffff;
    border-radius: 20px;
}

.Wrapper--set2 .Button--white:hover {
    color: #162056;
    border-color: #162056;
}

.Wrapper--set2 .Button--onBackground {
    color: #162056;
    border-color: #162056;
    border-radius: 20px;
}

.Wrapper--set2 .Button--onBackground:hover {
    color: #ffffff;
    border-color: #ffffff;
}

.Wrapper--set2 .Button--onBackground--full {
    color: #ffffff;
    border-color: #162056;
    background: #162056;
    border-radius: 20px;
}

.Wrapper--set2 .Button--onBackground--full:hover {
    color: #A1D6CA;
    border-color: #ffffff;
    background: #ffffff;
}

.Wrapper--set2 .Button--right {
    color: #ffffff;
    border-color: #162056;
    background: #162056;
    border-radius: 20px 0 0 20px;
}

.Wrapper--set2 .Button--right:hover {
    color: #ffffff;
    border-color: #A1D6CA;
    background: #A1D6CA;
}

/* Boutons SET 3*/
.Wrapper--set3 .Button--standard {
    color: #162056;
    border-color: #162056;
    border-radius: 20px;
}

.Wrapper--set3 .Button--standard:hover {
    color: #c4d600;
    border-color: #c4d600;
}

.Wrapper--set3 .Button--white {
    color: #ffffff;
    border-color: #ffffff;
    border-radius: 20px;
}

.Wrapper--set3 .Button--white:hover {
    color: #162056;
    border-color: #162056;
}

.Wrapper--set3 .Button--onBackground {
    color: #162056;
    border-color: #162056;
    border-radius: 20px;
}

.Wrapper--set3 .Button--onBackground:hover {
    color: #ffffff;
    border-color: #ffffff;
}

.Wrapper--set3 .Button--onBackground--full {
    color: #ffffff;
    border-color: #162056;
    background: #162056;
    border-radius: 20px;
}

.Wrapper--set3 .Button--onBackground--full:hover {
    color: #c4d600;
    border-color: #ffffff;
    background: #ffffff;
}

.Wrapper--set3 .Button--right {
    color: #ffffff;
    border-color: #162056;
    background: #162056;
    border-radius: 20px 0 0 20px;
}

.Wrapper--set3 .Button--right:hover {
    color: #ffffff;
    border-color: #c4d600;
    background: #c4d600;
}

/* Tools */
.Tools {
    position: fixed;
    z-index: 10;
    right: 0;
    top: 227px;
}

.Tools-item {
    display: block;
    padding: 14px 11px;
    margin-bottom: 4px;
    transition: 0.3s;
    position: relative;
}

.Tools-item:first-child {
    border-radius: 10px 0 0 0;
}

.Tools-item:last-child {
    border-radius: 0px 0 0 10px;
}

.Wrapper--set1 .Tools-item {
    background: #162056;
}

.Wrapper--set1 .Tools-item:hover {
    background: #7FC2E4;
}

.Wrapper--set2 .Tools-item {
    background: #42145F;
}

.Wrapper--set2 .Tools-item:hover {
    background: #A1D6CA;
}

.Wrapper--set3 .Tools-item {
    background: #00859b;
}

.Wrapper--set3 .Tools-item:hover {
    background: #c4d600;
}

.Tools-item svg {
    display: block;
}

.Tools-item svg path {
    fill: #ffffff;
}

.Tools-tooltip {
    position: absolute;
    right: 100%;
    margin-right: 20px;
    top: 0;
    padding: 20px 25px;
    width: 180px;
    border-radius: 10px;
    font-size: 15px;
    font-weight: 400;
    letter-spacing: -0.015em;
    text-transform: uppercase;
    display: none;
}

.Tools-tooltip::after {
    content: '';
    display: block;
    position: absolute;
    right: 2px;
    top: 48%;
    height: 20px;
    width: 20px;
    -webkit-transform: rotate(45deg) translateY(-50%);
    transform: rotate(45deg) translateY(-50%);
}

.Wrapper--set1 .Tools-tooltip,
.Wrapper--set1 .Tools-tooltip::after {
    background: #7FC2E4;
}

.Wrapper--set2 .Tools-tooltip,
.Wrapper--set2 .Tools-tooltip::after {
    background: #A1D6CA;
}

.Wrapper--set3 .Tools-tooltip,
.Wrapper--set3 .Tools-tooltip::after {
    background: #c4d600;
}

.Tools-item:hover .Tools-tooltip {
    display: block;
}

/*----------- 1-1. BUTTONS RESPONSIVE --------------*/
@media screen and (max-width: 1099px) and (min-width: 781px) {
    .Tools-item svg {
        width: 30px;
        height: 25px;
    }

    .Tools-tooltip {
        font-size: 11px;
        padding: 15px 20px;
        width: 150px;
    }
}

@media screen and (max-width: 780px) {
    .Button {
        font-size: 10px;
        line-height: 10px;
        font-weight: 300;
        padding: 7px 10px 6px;
        border-width: 0.5px;
    }

    .Tools {
        display: none;
    }
}

/*-------------------*/
/*    1. Header      */
/*-------------------*/
.TopHeader {
    height: 50px;
    color: #162056;
    padding: 17px 8px 17px 20px;
    text-transform: uppercase;
    font-size: 15px;
    font-weight: 400;
    letter-spacing: -0.015em;
}

.Wrapper--set1 .TopHeader {
    background: #7FC2E4;
}

.Wrapper--set2 .TopHeader {
    background: #A1D6CA;
}

.Wrapper--set3 .TopHeader {
    background: #c4d600;
}

.TopHeader-right {
    float: right;
}

.TopHeader-social {
    display: inline-block;
    vertical-align: middle;
    margin-right: 14px;
}

.TopHeader-socialList {
    padding: 0;
    margin: 0;
    list-style: none;
}

.TopHeader-socialItem {
    display: inline-block;
    vertical-align: middle;
    margin: 0 10px;
}

.TopHeader-socialItem svg path {
    fill: #162056;
}

.TopHeader-search {
    display: inline-block;
    margin: 0 21px;
    vertical-align: middle;
}

.TopHeader-searchIcon path {
    fill: #162056;
    stroke-width: 3px;
}

.TopNav {
    list-style: none;
    margin: 0;
    padding: 0;
    float: right;
}

.TopNav-item {
    display: inline-block;
    padding: 0 15px;
}

.TopNav-item a {
    color: #162056;
}

.MainHeader {
    height: 137px;
    color: #162056;
    padding: 27px 3px 12px 61px;
    font-size: 20px;
    line-height: 25px;
    font-weight: 400;
    letter-spacing: -0.03em;
    position: relative;
    background: #f5f5f5;
    z-index: 10;
}

.MainHeader-countryMobile,
.MainHeader-searchMobile,
.MainHeader-burgerMobile,
.MegaMenu-submenuTitle,
.MegaMenu-submenu2Title,
.MegaMenu-submenu2Title2 {
    display: none;
}

.MainNav {
    float: right;
}

.MainNav-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.MainNav-item {
    display: inline-block;
    padding: 25px 20px 16px;
}

.MainNav-link {
    color: #162056;
    display: block;
    padding: 16px 0;
    position: relative;
    transition: 0.3s;
    background-position: bottom;
    cursor: pointer;
}

.MainNav-link.is-active {
    font-weight: 700;
    background: url("../images/bar.svg") no-repeat bottom;
    background-size: 100% 6px;
}

.MainNav-linkIconMobile {
    display: none;
}

.TargetNav {
    display: none;
}

.MegaMenu {
    padding: 61px 0 100px 0;
    position: absolute;
    left: 0;
    top: 100%;
    width: 100%;
    display: none;
}

.Wrapper--set1 .MegaMenu {
    background: #7FC2E4;
}

.Wrapper--set2 .MegaMenu {
    background: #A1D6CA;
}

.Wrapper--set3 .MegaMenu {
    background: #c4d600;
}

.MainNav-link.is-active+.MegaMenu {
    display: block !important;
}

.MegaMenu-presentation {
    width: 25%;
    display: inline-block;
    vertical-align: top;
    padding-right: 40px;
    margin-left: 9%;
    position: relative;
}

.MegaMenu-presentation .h6 {
    font-weight: bold;
    margin-top: 0;
}

.MegaMenu-presentation p {
    font-size: 18px;
    line-height: 26px;
    letter-spacing: -0.03em;
    font-weight: 300;
    margin: 25px 0;
}

.MegaMenu-submenu {
    display: inline-block;
    vertical-align: top;
    width: 27%;
    padding-bottom: 50px;
    position: relative;
}

.MegaMenu-submenuList {
    padding-left: 0;
    margin: 0;
    list-style: none;
}

.MegaMenu-submenuBorder {
    content: '';
    display: block;
    width: 6px;
    height: 100%;
    position: absolute;
    top: 0;
    background: #ffffff;
    border-radius: 20px;
}

.MegaMenu-submenuBorder:first-child {
    left: -5px;
}

.MegaMenu-submenuBorder:last-child {
    right: -5px;
}

.MegaMenu-submenuItem {
    margin-bottom: 25px;
}

.MegaMenu-submenuLink {
    font-size: 18px;
    line-height: 26px;
    letter-spacing: -0.03em;
    font-weight: 300;
    color: #162056;
    transition: 0.3s;
    padding-left: 50px;
    padding-right: 40px;
    display: block;
}

.MegaMenu-submenuItem.is-active .MegaMenu-submenuLink {
    font-weight: bold;
    margin-right: -29px;
    margin-left: 29px;
}

.MegaMenu-submenuLink svg {
    position: relative;
    top: 3px;
    left: 15px;
}

.MegaMenu-submenuItem.is-active .MegaMenu-submenuLink:hover path {
    stroke: #162056;
    transition: 0.3s;
}

.MegaMenu-submenu2 {
    position: absolute;
    left: 100%;
    top: 0;
    width: 100%;
    background: #7FC2E4;
    height: 100%;
    display: none;
}

.MegaMenu-submenu2List {
    list-style: none;
    padding-left: 50px;
}

.Wrapper--set1 .MegaMenu-submenu2 {
    background: #7FC2E4;
}

.Wrapper--set2 .MegaMenu-submenu2 {
    background: #A1D6CA;
}

.Wrapper--set3 .MegaMenu-submenu2 {
    background: #c4d600;
}

.MegaMenu-submenu2Item {
    margin-bottom: 25px;
}

.MegaMenu-submenu2Link {
    font-size: 18px;
    line-height: 26px;
    letter-spacing: -0.03em;
    font-weight: 300;
    color: #162056;
    transition: 0.2s;
}

.MegaMenu-submenu2Link:hover {
    font-weight: bold;
}

.MegaMenu-push {
    display: inline-block;
    vertical-align: top;
    padding: 0 135px 0 50px;
    width: 38%;
}

.MegaMenu-pushImg {
    margin-bottom: 30px;
    max-width: 100%;
}

.MegaMenu-push .h7 {
    font-weight: bold;
    margin: 0;
}

.MegaMenu-pushText {
    margin: 0;
    font-size: 18px;
    line-height: 26px;
    letter-spacing: -0.03em;
    font-weight: 300;
}

/* Breadcrumbs*/
.Breadcrumbs-list {
    list-style: none;
    padding-left: 61px;
}

.Breadcrumbs-item {
    display: inline-block;
}

.Breadcrumbs-link {
    font-size: 15px;
}

.Breadcrumbs-link.is-active {
    font-weight: 700;
}

/*------------ 1-1. Header RESPONSIVE -------------*/
@media screen and (max-width: 1099px) and (min-width: 781px) {
    .TopHeader {
        font-size: 11px;
        padding-top: 14px;
    }

    .MainHeader {
        font-size: 15px;
        font-weight: 400;
        letter-spacing: -0.015em;
        padding: 10px 10px 10px 40px;
        height: auto;
    }

    .MainHeader-logo {
        width: 120px;
    }

    .MainNav-item {
        padding: 10px 7px 10px;
    }

    .MegaMenu-presentation,
    .MegaMenu-submenuBorder:nth-child(1) {
        display: none;
    }

    .MegaMenu-submenu,
    .MegaMenu-push {
        width: 49%;
    }

    .MegaMenu-submenuLink,
    .MegaMenu-submenu2Link,
    .MegaMenu-pushText {
        font-size: 14px;
        line-height: 16px;
        letter-spacing: -0.03em;
        font-weight: 300;
        display: block;
    }
}

@media screen and (max-width: 780px) {
    .TopHeader {
        display: none;
    }

    .MainHeader {
        padding: 10px;
        height: 62px;
    }

    .MainHeader-logo {
        height: 100%;
    }

    .MainHeader-countryMobile {
        display: inline-block;
        vertical-align: top;
        font-size: 8px;
        text-transform: uppercase;
        font-weight: 400;
        margin-left: 13px;
        margin-top: 10px;
    }

    .MainHeader-searchMobile {
        float: right;
        margin: 10px 16px;
        display: inline-block;
    }

    .mainHeader-searchMobileIcon path {
        fill: #162056;
    }

    .MainHeader-burgerMobile {
        float: right;
        margin-top: 10px;
        cursor: pointer;
        display: inline-block;
    }

    .MainHeader-burgerMobileSpan {
        height: 2px;
        width: 21px;
        background: #162056;
        display: block;
        margin-bottom: 6px;
        border-radius: 20px;
        transition: 0.3s;
    }

    .MainHeader-burgerMobileSpan:last-child {
        margin-left: 9px;
        width: calc(100% - 9px);
    }

    .MainHeader-burgerMobile.is-active .MainHeader-burgerMobileSpan:nth-child(2) {
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
    }

    .MainHeader-burgerMobile.is-active .MainHeader-burgerMobileSpan:nth-child(1) {
        position: relative;
        top: 7.5px;
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }

    .MainHeader-burgerMobile.is-active .MainHeader-burgerMobileSpan:nth-child(3) {
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
        width: 100%;
        position: relative;
        top: -8px;
        margin-left: 0;
    }

    .MainHeader-burgerMobile.is-active~.MainNav {
        display: block !important;
    }

    .MainNav {
        display: none;
        background: #7FC2E4;
        position: absolute;
        top: 62px;
        height: calc(100vh - 62px);
        left: 0;
        right: 0;
        padding: 22px 0;
    }

    .Wrapper--set1 .MainNav {
        background: #7FC2E4;
    }

    .Wrapper--set2 .MainNav {
        background: #A1D6CA;
    }

    .Wrapper--set3 .MainNav {
        background: #c4d600;
    }

    .MainNav-item {
        display: block;
        width: 100%;
        padding: 0;
    }

    .MainNav-link {
        color: #ffffff;
        text-transform: uppercase;
        font-size: 15px;
        line-height: 25px;
        letter-spacing: -0.03em;
        font-weight: 400;
        padding: 9px 50px 9px 16px;
        position: relative;
    }

    .MainNav-linkIconMobile {
        display: block;
        position: absolute;
        right: 25px;
        top: 8px;
    }

    .TargetNav {
        display: block;
        background: #162056;
        list-style: none;
        margin: 24px 0;
        padding: 0;
    }

    .Wrapper--set1 .TargetNav {
        background: #162056;
    }

    .Wrapper--set2 .TargetNav {
        background: #42145F;
    }

    .Wrapper--set3 .TargetNav {
        background: #00859b;
    }

    .TargetNav-link {
        color: #ffffff;
        font-size: 15px;
        line-height: 25px;
        letter-spacing: -0.03em;
        font-weight: 400;
        padding: 13px 50px 13px 16px;
        text-transform: uppercase;
        display: block;
        font-weight: 300;
    }

    .MegaMenu {
        top: 0;
        left: 100%;
        width: 100%;
        padding: 31px 0 0 0;
        min-height: 100%;
    }

    .MegaMenu-presentation,
    .MegaMenu-push,
    .MegaMenu-submenuBorder {
        display: none !important;
    }

    .MegaMenu-submenu {
        width: 100%;
        position: initial;
    }

    .MegaMenu-submenuTitle {
        display: block;
        margin-bottom: 17px;
        padding: 0 25px 0 16px;
        color: #ffffff;
        font-size: 15px;
        line-height: 25px;
        letter-spacing: -0.03em;
        font-weight: 400;
        text-transform: uppercase;
    }

    .MegaMenu-submenuTitle svg,
    .MegaMenu-submenu2Title svg {
        display: inline-block;
        margin-right: 10px;
        position: relative;
        top: 8px;
    }

    .MegaMenu-submenuTitle svg path,
    .MegaMenu-submenu2Title svg path {
        fill: none;
        stroke: #FFFFFF;
        stroke-width: 4;
        stroke-linecap: round;
    }

    .MegaMenu-submenuItem {
        margin: 0;
    }

    .MegaMenu-submenuLink {
        padding: 14px 50px 14px 16px;
        position: relative;
        font-size: 13px;
        line-height: 16px;
        letter-spacing: -0.03em;
        font-weight: 300;
        font-weight: 400;
    }

    .MegaMenu-submenuLink svg {
        position: absolute;
        right: 25px;
        left: auto;
        top: 50%;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
    }

    .MegaMenu-submenuLink svg path {
        stroke: #162056;
    }

    .MegaMenu-submenu2 {
        min-height: 100%;
        padding: 31px 0;
    }

    .MegaMenu-submenu2Title {
        display: block;
        margin-bottom: 31px;
        padding: 0 25px 0 16px;
        color: #ffffff;
        font-size: 15px;
        line-height: 25px;
        letter-spacing: -0.03em;
        font-weight: 400;
        text-transform: uppercase;
    }

    .MegaMenu-submenu2Title2 {
        font-size: 13px;
        line-height: 16px;
        letter-spacing: -0.03em;
        font-weight: 300;
        font-weight: 700;
        padding: 0 25px 0 46px;
        margin: 0 0 4px;
        display: block;
    }

    .MegaMenu-submenu2List {
        padding: 0 0 0 30px;
    }

    .MegaMenu-submenu2Item {
        margin: 0;
    }

    .MegaMenu-submenu2Link {
        display: block;
        padding: 14px 50px 14px 16px;
        position: relative;
        font-size: 13px;
        line-height: 16px;
        letter-spacing: -0.03em;
        font-weight: 300;
        font-weight: 400;
    }

    .Breadcrumbs-list {
        padding-left: 10px;
        margin: 10px 0;
    }

    .Breadcrumbs-link {
        font-size: 10px;
    }
}

/*--------------------------*/
/*       2. FOCUS1          */
/*--------------------------*/
/* With Ribbons */
.Focus1 {
    position: relative;
    height: 568px;
    overflow: hidden;
    width: 100%;
}

.Focus1--fullHeight {
    height: calc(100vh - 187px);
}

.Focus1-imgContainer {
    width: 59%;
    position: absolute;
    top: 0;
    left: 0;
    overflow: hidden;
    padding: 10px 0;
}

.Focus1--fullHeight .Focus1-imgContainer {
    width: 71%;
}

.Focus1-ribbon {
    width: 95%;
    height: 127px;
    background-position: left top;
    background-repeat: no-repeat;
    background-size: 105%;
    background-size: 59vw;
    border-radius: 0 300px 300px 0;
    overflow: hidden;
    margin: 4px 0;
    float: left;
}

.Focus1-ribbon:nth-child(2) {
    background-position: left -137px;
    background-size: 143%;
    background-size: 59vw;
    width: 70%;
}

.Focus1-ribbon:nth-child(3) {
    background-position: left -274px;
    background-size: 118%;
    background-size: 59vw;
    width: 85%;
}

.Focus1-ribbon:nth-child(4) {
    background-position: left -411px;
    background-size: 100%;
    background-size: 59vw;
    width: 100%;
}

.Focus1--fullHeight .Focus1-ribbon {
    height: calc((100vh - 280px)/4);
    margin: 9px 0;
    background-size: 140%;
    background-size: 90vw;
}

.Focus1--fullHeight .Focus1-ribbon:nth-child(2) {
    background-position: left -25vh;
    background-size: 190%;
    background-size: 90vw;
    width: 70%;
}

.Focus1--fullHeight .Focus1-ribbon:nth-child(3) {
    background-position: left -50vh;
    background-size: 158%;
    background-size: 90vw;
    width: 85%;
}

.Focus1--fullHeight .Focus1-ribbon:nth-child(4) {
    background-position: left -75vh;
    background-size: 140%;
    background-size: 90vw;
    width: 100%;
}

.Focus1-text {
    margin-left: 59%;
    margin-right: 5%;
    padding-left: 10px;
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.Focus1--fullHeight .Focus1-text {
    margin-left: 61%;
}

.Focus1-text .t5 {
    margin: 0 0 30px;
    text-transform: uppercase;
}

.Focus1-text .h3 {
    margin: 30px 0;
}

.Focus1-text .t3 {
    margin-bottom: 34px;
}

.Focus1-scroll {
    position: absolute;
    bottom: 0;
    right: 5%;
    padding-bottom: 45px;
    font-size: 15px;
}

.Focus1-scroll::after {
    content: '';
    display: block;
    width: 2px;
    height: 30px;
    position: absolute;
    left: 50%;
    bottom: 10px;
    background: #162056;
}

/* With Image */
.Focus1--img {
    height: 549px;
    position: relative;
}

.Focus1--img.Focus1--fullHeight {
    height: 100vh;
    height: calc(100vh - 187px);
}

.Focus1--img .Focus1-imgContainer {
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-size: cover;
    background-position: bottom;
}

.Focus1--img .Focus1-text {
    margin-left: 57%;
}

.Focus1--img .Focus1-text--ribbon {
    background: #ffffff;
    margin-right: 0;
    padding: 20px 5% 20px 14%;
    margin-left: 50%;
    border-radius: 400px 0 0 400px;
    min-height: 405px;
}

/*------------ 2-1. Focus1 RESPONSIVE -----------*/
@media screen and (max-width: 1099px) and (min-width: 781px) {

    .Focus1-text .t5,
    .Focus1-text .h3,
    .Focus1-text .t3 {
        margin: 0 0 15px;
    }

    .Focus1--fullHeight .Focus1-imgContainer {
        width: 60%;
    }

    .Focus1--fullHeight .Focus1-text {
        margin-left: 55%;
    }

    .Focus1--img .Focus1-imgContainer {
        width: 100%;
    }

    .Focus1--img .Focus1-text--ribbon {
        margin-left: 40%;
        min-height: 300px;
    }

    .Focus1-scroll {
        font-size: 12px;
    }
}

@media screen and (max-width: 780px) {

    .Focus1,
    .Focus1--fullHeight,
    .Focus1--img.Focus1--fullHeight {
        height: auto;
        background: none;
    }

    .Focus1--fullHeight .Focus1-imgContainer,
    .Focus1-imgContainer,
    .Focus1--img .Focus1-imgContainer {
        width: 100%;
        position: relative;
        padding-top: 35px;
        padding-bottom: 0;
        height: 440px;
    }

    .Focus1--img .Focus1-imgContainer {
        height: 405px;
    }

    .Focus1--fullHeight .Focus1-ribbon,
    .Focus1-ribbon {
        height: 92px;
        background-size: 105%;
        background-size: 100vw;
        margin: 5px 0;
    }

    .Focus1--fullHeight .Focus1-ribbon:nth-child(2),
    .Focus1-ribbon:nth-child(2) {
        background-position: left -102px;
        background-size: 141%;
        background-size: 100vw;
    }

    .Focus1--fullHeight .Focus1-ribbon:nth-child(3),
    .Focus1-ribbon:nth-child(3) {
        background-position: left -204px;
        background-size: 117%;
        background-size: 100vw;
    }

    .Focus1--fullHeight .Focus1-ribbon:nth-child(4),
    .Focus1-ribbon:nth-child(4) {
        background-position: left -306px;
        background-size: 100%;
        background-size: 100vw;
    }

    .Focus1--fullHeight .Focus1-text,
    .Focus1-text,
    .Focus1--img .Focus1-text {
        margin: 0;
        padding: 20px 23px;
        position: relative;
        top: 0;
        -webkit-transform: none;
        transform: none;
    }

    .Focus1--img .Focus1-text--ribbon {
        min-height: 0;
    }

    .Focus1-text .t5 {
        margin-bottom: 22px;
        font-size: 13px;
        line-height: 16px;
        letter-spacing: -0.03em;
        font-weight: 300;
        font-weight: 700;
    }

    .Focus1-text .h3 {
        margin: 20px 0;
        font-weight: 300;
        font-size: 25px;
        line-height: 30px;
        letter-spacing: -0.03em;
        line-height: 25px;
    }

    .Focus1-text .t3 {
        margin-bottom: 16px;
        font-size: 13px;
        line-height: 16px;
        letter-spacing: -0.03em;
        font-weight: 300;
    }

    .Focus1-scroll {
        display: none;
    }
}

@media screen and (max-width: 480px) {

    .Focus1--fullHeight .Focus1-imgContainer,
    .Focus1-imgContainer {
        width: 100%;
        position: relative;
        padding-top: 17px;
        padding-bottom: 0;
        height: 220px;
    }

    .Focus1--fullHeight .Focus1-ribbon,
    .Focus1-ribbon {
        height: 46px;
        background-size: 105%;
        background-size: 100vw;
        margin: 2px 0;
    }

    .Focus1--fullHeight .Focus1-ribbon:nth-child(2),
    .Focus1-ribbon:nth-child(2) {
        background-position: left -50px;
        background-size: 141%;
        background-size: 100vw;
    }

    .Focus1--fullHeight .Focus1-ribbon:nth-child(3),
    .Focus1-ribbon:nth-child(3) {
        background-position: left -100px;
        background-size: 117%;
        background-size: 100vw;
    }

    .Focus1--fullHeight .Focus1-ribbon:nth-child(4),
    .Focus1-ribbon:nth-child(4) {
        background-position: left -150px;
        background-size: 100%;
        background-size: 100vw;
    }
}

/*-------------------*/
/*    3. FOOTER      */
/*-------------------*/
.Footer {
    color: #ffffff;
    padding: 60px;
}

.Wrapper--set1 .Footer {
    background: #162056;
}

.Wrapper--set2 .Footer {
    background: #42145F;
}

.Wrapper--set3 .Footer {
    background: #00859b;
}

.Footer-logo {
    display: inline-block;
    margin-right: 49px;
    float: left;
}

.Footer-logoSvg path {
    fill: #ffffff;
}

.Footer-nav {
    display: inline-block;
    width: calc(100% - 210px);
}

.Footer-navColumn {
    display: inline-block;
    vertical-align: top;
    width: 24%;
    padding-right: 25px;
}

.Footer-navTitle {
    font-size: 15px;
    line-height: 25px;
    letter-spacing: -0.03em;
    font-weight: 400;
    text-transform: uppercase;
}

.Footer-navList {
    list-style: none;
    margin: 0;
    padding: 0;
}

.Footer-navLink {
    font-size: 15px;
    line-height: 25px;
    letter-spacing: -0.03em;
    font-weight: 400;
    color: #ffffff;
}

.Footer-social {
    margin-top: 90px;
    text-align: center;
    margin-bottom: 40px;
}

.Footer-socialList {
    list-style: none;
    margin: 0;
    padding: 0;
}

.Footer-socialItem {
    display: inline-block;
    vertical-align: top;
    margin: 0 9px;
}

.Wrapper--set1 .Footer-socialSvg {
    fill: #00BFF0;
}

.Wrapper--set2 .Footer-socialSvg {
    fill: #A1D6CA;
}

.Wrapper--set3 .Footer-socialSvg {
    fill: #c4d600;
}

.Footer-socialSvgIcon {
    fill: #FFFFFF;
}

.Footer-copyright {
    text-align: center;
    font-size: 10px;
    line-height: 10px;
    font-weight: 300;
    margin: 0;
}

.Footer-goTop {
    display: none;
}

/*--------------- 3-1. Footer RESPONSIVE---------- */
@media screen and (max-width: 1099px) and (min-width: 781px) {
    .Footer {
        padding: 40px;
    }

    .Footer-navTitle,
    .Footer-navLink {
        font-size: 13px;
        line-height: 16px;
        letter-spacing: -0.03em;
        font-weight: 300;
    }
}

@media screen and (max-width: 780px) {
    .Footer {
        position: relative;
        padding: 0 30px;
    }

    .Footer-nav {
        display: block;
        width: 100%;
        padding-top: 106px;
        padding-bottom: 180px;
    }

    .Footer-navColumn {
        display: block;
        width: 100%;
        text-align: center;
        padding: 0;
    }

    .Footer-navTitle {
        font-size: 10px;
        line-height: 10px;
        font-weight: 300;
        margin: 15px 0;
    }

    .Footer-navList,
    .Footer-copyright {
        display: none;
    }

    .Footer-logo {
        float: none;
        position: absolute;
        bottom: 113px;
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        width: 91px;
        margin: 0 auto 0 20px;
    }

    .Footer-logo svg {
        width: 100%;
    }

    .Footer-social {
        margin: 0;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        border-bottom: 2px solid #7FC2E4;
        padding: 30px 30px 20px 30px;
    }

    .Wrapper--set1 .Footer-social {
        border-color: #7FC2E4;
    }

    .Wrapper--set2 .Footer-social {
        border-color: #A1D6CA;
    }

    .Wrapper--set3 .Footer-social {
        border-color: #c4d600;
    }

    .Footer-socialItem {
        margin: 0 10px;
        max-width: 15%;
    }

    .Footer-socialLink {
        display: inline-block;
    }

    .Footer-socialLink svg {
        width: 35px;
        height: 35px;
    }

    .Footer-goTop {
        display: block;
        color: #ffffff;
        position: absolute;
        bottom: 26px;
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        text-transform: uppercase;
        font-size: 13px;
        cursor: pointer;
        text-align: center;
    }

    .Footer-goTopIcon {
        background: #7FC2E4;
        border-radius: 50%;
        height: 40px;
        width: 40px;
        padding: 12px 7px;
        margin-bottom: 10px;
        transition: 0.3s;
    }

    .Wrapper--set1 .Footer-goTopIcon {
        background: #7FC2E4;
    }

    .Wrapper--set2 .Footer-goTopIcon {
        background: #A1D6CA;
    }

    .Wrapper--set3 .Footer-goTopIcon {
        background: #c4d600;
    }

    .Footer-goTop:hover .Footer-goTopIcon {
        background: #ffffff;
    }
}

/*------------------------*/
/*    4. Twin blocks      */
/*------------------------*/
.TwinBlocks {
    margin: 23px 0;
}

.TwinBlock {
    display: inline-block;
    vertical-align: top;
    position: relative;
    overflow: hidden;
}

.TwinBlock--white {
    background: #f4f4f4;
    padding: 39px 0;
}

.TwinBlock--bkg {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    color: #ffffff;
    background-image: url("/sites/default/files/images/twinblock2.png");
}

.TwinBlock-imgContainer {
    width: 48%;
    display: inline-block;
    vertical-align: top;
    position: relative;
    z-index: 2;
    border-radius: 0 200px 200px 0;
    overflow: hidden;
}

.TwinBlock-img {
    display: block;
    width: 100%;
}

.TwinBlock-text {
    position: relative;
    z-index: 2;
    width: 51%;
    display: inline-block;
    vertical-align: top;
    padding: 0 4%;
}

.TwinBlock-text .t5 {
    margin: 0;
    font-weight: 700;
}

.TwinBlock-layer {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #162056;
    width: 100%;
    opacity: 0.9;
}

.Wrapper--set1 .TwinBlock-layer {
    background-color: #162056;
}

.Wrapper--set2 .TwinBlock-layer {
    background-color: #42145F;
}

.Wrapper--set3 .TwinBlock-layer {
    background-color: #00859b;
}

.TwinBlock-svg {
    width: 38%;
    display: inline-block;
    vertical-align: middle;
    position: relative;
    z-index: 2;
    text-align: center;
}

.TwinBlock-textBkg {
    position: relative;
    z-index: 2;
    width: 61%;
    display: inline-block;
    vertical-align: middle;
    padding: 109px 4%;
}

.TwinBlock-textBkg .h5 {
    margin-bottom: 30px;
    margin-top: 0;
}

.Wrapper--set1 .TwinBlock--bkg .Button--white:hover {
    color: #7FC2E4;
    border-color: #7FC2E4;
}

.Wrapper--set2 .TwinBlock--bkg .Button--white:hover {
    color: #A1D6CA;
    border-color: #A1D6CA;
}

.Wrapper--set3 .TwinBlock--bkg .Button--white:hover {
    color: #c4d600;
    border-color: #c4d600;
}

/*------------ 4-1. TwinBlock RESPONSIVE -----------*/
@media screen and (min-width: 781px) and (max-width: 1099px) {
    .TwinBlock-textBkg {
        padding-top: 60px;
        padding-bottom: 60px;
    }
}

@media screen and (max-width: 780px) {
    .TwinBlocks {
        padding: 20px 20px 1px;
        background: #f4f4f4;
        margin-bottom: 0;
    }

    .TwinBlock--white {
        padding-top: 0;
        background: #ffffff;
    }

    .TwinBlock-imgContainer {
        height: 136px;
        width: 70%;
        max-width: 444px;
    }

    .TwinBlock-text {
        display: block;
        padding: 20px 20px 0;
        width: 100%;
    }

    .TwinBlock-text .t5 {
        font-size: 13px;
        line-height: 16px;
        letter-spacing: -0.03em;
        font-weight: 300;
        font-weight: 700;
    }

    .TwinBlock-text .t1 {
        margin: 20px 0 15px;
        font-size: 18px;
        line-height: 26px;
        letter-spacing: -0.03em;
        font-weight: 300;
    }

    .TwinBlock--bkg {
        padding: 54px 0 64px;
    }

    .TwinBlock-svg {
        width: 100%;
        text-align: left;
        padding: 0 20px 26px;
    }

    .TwinBlock-svg svg {
        height: 92px;
        width: 70px;
    }

    .TwinBlock-textBkg {
        padding: 0px 20px 0px;
        display: block;
        width: 100%;
    }

    .TwinBlock-textBkg .h5 {
        font-size: 20px;
        line-height: 25px;
        letter-spacing: -0.03em;
        font-weight: 300;
    }
}

/*------------------------*/
/*    5. Carousel 1       */
/*------------------------*/
.Carousel1 {
    padding: 51px 0px 0px 0px;
    /*background: #f4f4f4;*/
    position: relative;
}

.Carousel1-title {
    margin-top: 0;
    margin-bottom: 60px;
    text-align: center;
}

.Carousel1-item {
    padding-left: 114px;
}

.Carousel1-imgContainer {
    display: inline-block;
    vertical-align: top;
    width: 46%;
    margin-bottom: 60px;
}

.Carousel1-img {
    display: block;
    margin: 0 auto;
    width: 100%;
}

.Carousel1-text {
    display: inline-block;
    vertical-align: top;
    width: 53%;
    padding-right: 90px;
    padding-bottom: 112px;
    padding-left: 46px;
}

.Carousel1-textTitle {
    margin-top: 50px;
    margin-bottom: 35px;
}

.Carousel1-text .t3 {
    margin: 35px 0 34px;
}

/*------------ 5-1. Carousel1 RESPONSIVE -----------*/
@media screen and (min-width: 781px) and (max-width: 1099px) {
    .Carousel1-title {
        margin-bottom: 40px;
    }

    .Carousel1-textTitle {
        margin: 20px 0;
    }

    .Carousel1-text .t3 {
        margin: 25px 0;
    }

    .Carousel1-text {
        padding-left: 40px;
        padding-bottom: 60px;
    }
}

@media screen and (max-width: 780px) {
    .Carousel1 {
        padding: 34px 26px 1px;
        background: none;
    }

    .Carousel1-title {
        font-weight: 300;
        font-size: 25px;
        line-height: 30px;
        letter-spacing: -0.03em;
        margin-bottom: 20px;
    }

    .Carousel1-item {
        padding: 0;
    }

    .Carousel1-imgContainer {
        width: 100%;
        margin-bottom: 0;
    }

    .Carousel1-text {
        padding: 20px 21px;
        display: block;
        width: 100%;
        background: #f4f4f4;
    }

    .Carousel1-textTitle {
        margin: 0px 0 21px;
        font-size: 18px;
        line-height: 26px;
        letter-spacing: -0.03em;
        font-weight: 300;
    }

    .Carousel1-text .t3 {
        margin: 0 0 30px;
        font-size: 13px;
        line-height: 16px;
        letter-spacing: -0.03em;
        font-weight: 300;
    }
}

/*------------------------*/
/*    6. Keyfigure 1      */
/*------------------------*/
.Keyfigure1 {
    position: relative;
    padding: 40px 0 49px;
}

.Keyfigure1 .h5 {
    display: inline-block;
    vertical-align: top;
    width: 34%;
    padding-left: 9%;
    padding-top: 47px;
    padding-right: 10%;
    margin: 0;
}

.Keyfigure1-carou {
    display: inline-block;
    vertical-align: top;
    width: 53%;
}

.Keyfigure1-item {
    padding: 47px 10px 0;
    position: relative;
    min-height: 191px;
}

.Keyfigure1-bkg {
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}

.secondColor--yellow .Keyfigure1-bkg path {
    fill: #FFE282;
}

.secondColor--green .Keyfigure1-bkg path {
    fill: #E1EA80;
}

.secondColor--lila .Keyfigure1-bkg path {
    fill: #C5A3CC;
}

.Keyfigure1-text {
    position: relative;
    z-index: 2;
}

.Keyfigure1-text .h4 {
    font-weight: bold;
    margin: 0;
    text-align: center;
}

.Keyfigure1-text .t1 {
    margin: 0;
    text-align: center;
}

/*------------ 6-1. Keyfigure1 RESPONSIVE -----------*/
@media screen and (max-width: 780px) {
    .Keyfigure1 {
        padding: 0 0 30px;
    }

    .Keyfigure1 .h5 {
        display: block;
        width: 100%;
        padding: 30px 30px 26px;
        text-align: center;
        font-weight: 300;
        font-size: 25px;
        line-height: 30px;
        letter-spacing: -0.03em;
        line-height: 28px;
    }

    .Keyfigure1-carou {
        display: block;
        width: 100%;
        position: relative;
    }

    .Keyfigure1-item {
        min-height: 96px;
        padding: 20px 20%;
    }

    .Keyfigure1-text .h4 {
        font-size: 27px;
        line-height: 26px;
        letter-spacing: -0.03em;
        font-weight: 300;
        font-weight: 700;
    }

    .Keyfigure1-text .t1 {
        font-size: 18px;
        line-height: 26px;
        letter-spacing: -0.03em;
        font-weight: 300;
        line-height: 22px;
    }

    .Keyfigure1-bkg {
        height: 96px;
    }
}

/*------------------------*/
/*       7. Teaser        */
/*------------------------*/
.Teaser {
    padding: 57px 11% 52px;
    position: relative;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    text-align: center;
    color: #ffffff;
}

.Teaser-layer {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #162056;
    opacity: 0.5;
}

.Wrapper--set1 .Teaser-layer {
    background-color: #162056;
}

.Wrapper--set2 .Teaser-layer {
    background-color: #42145F;
}

.Wrapper--set3 .Teaser-layer {
    background-color: #00859b;
}

.Teaser-intro {
    position: relative;
    z-index: 2;
    width: 70%;
    margin: 0 auto;
}

.Teaser-intro .h2 {
    margin: 0 0 31px;
}

.Teaser-intro .t4 {
    margin-bottom: 46px;
}

.Teaser-item {
    padding: 0 20px;
}

.Teaser-icon {
    width: 90px;
    height: 90px;
    padding: 18px;
    border: 2px solid #7FC2E4;
    border-radius: 50%;
    margin: 0 auto 27px;
}

.Wrapper--set1 .Teaser-icon {
    border-color: #7FC2E4;
}

.Wrapper--set2 .Teaser-icon,
.Wrapper--set3 .Teaser-icon {
    border-color: #FFE282;
}

.Teaser-svg {
    display: block;
    margin: 0 auto;
}

.Wrapper--set1 .Teaser-svg path {
    fill: #7FC2E4;
}

.Wrapper--set2 .Teaser-svg path,
.Wrapper--set3 .Teaser-svg path {
    fill: #FFE282;
}

.Teaser-item .h6 {
    margin: 27px 0 35px;
    font-weight: bold;
}

.secondColor--yellow .Teaser-bar path {
    fill: #FFE282;
}

.secondColor--green .Teaser-bar path {
    fill: #E1EA80;
}

.secondColor--lila .Teaser-bar path {
    fill: #C5A3CC;
}

/*------------ 7-1. TEASER RESPONSIVE -----------*/
@media screen and (min-width: 781px) and (max-width: 1099px) {
    .Teaser {
        padding: 40px 8%;
    }

    .Teaser-item .h6 {
        margin: 25px 0 25px;
    }
}

@media screen and (max-width: 780px) {
    .Teaser {
        padding: 35px 20px 1px 20px;
    }

    .Teaser-intro {
        width: 100%;
    }

    .Teaser-intro .h2 {
        font-weight: 300;
        font-size: 25px;
        line-height: 30px;
        letter-spacing: -0.03em;
        margin-bottom: 15px;
    }

    .Teaser-intro .t4 {
        font-size: 13px;
        line-height: 16px;
        letter-spacing: -0.03em;
        font-weight: 300;
        margin: 0 0 34px;
    }

    .Teaser-item {
        padding-bottom: 36px;
    }

    .Teaser-icon {
        width: 60px;
        height: 60px;
        margin-bottom: 18px;
        padding: 10px;
    }

    .Teaser-svg {
        width: 100%;
        height: 100%;
    }

    .Teaser-item .h6 {
        font-size: 27px;
        line-height: 26px;
        letter-spacing: -0.03em;
        font-weight: 300;
        font-weight: 700;
        margin-bottom: 20px;
    }

    .Teaser .slick-dots li button {
        background: #ffffff;
    }

    .Teaser .slick-dots li.slick-active button {
        background: #7FC2E4;
    }

    .Wrapper--set1 .Teaser .slick-dots li.slick-active button {
        background: #7FC2E4;
    }

    .Wrapper--set2 .Teaser .slick-dots li.slick-active button {
        background: #A1D6CA;
    }

    .Wrapper--set3 .Teaser .slick-dots li.slick-active button {
        background: #c4d600;
    }
}

/*----------------------------------------*/
/*       8. FEATURED 1 (WITH IMAGE)       */
/*----------------------------------------*/
.Featured1 {
    border: 20px solid #ffffff;
    background: #7FC2E4;
    overflow: hidden;
    position: relative;
}

.Wrapper--set1 .Featured1 {
    background: #7FC2E4;
}

.Wrapper--set2 .Featured1 {
    background: #A1D6CA;
}

.Wrapper--set3 .Featured1 {
    background: #c4d600;
}

.Featured1-imgContainer {
    border-radius: 50% 50% 0 0;
    overflow: hidden;
    display: inline-block;
    margin-top: 21px;
    width: 31%;
    margin-right: 8%;
    position: absolute;
    bottom: 0;
    right: 0;
    max-width: 441px;
}

.Featured1-img {
    display: block;
    width: 100%;
}

.Featured1-text {
    display: inline-block;
    width: 57%;
    padding: 74px 80px 50px 7%;
}

.Featured1-text .h1 {
    color: #ffffff;
    margin-bottom: 44px;
    margin-top: 0;
}

.Featured1-text .t3 {
    margin: 44px 0 41px;
}

/*------------ 8-1. FEATURED1 RESPONSIVE -----------*/
@media screen and (min-width: 781px) and (max-width: 1099px) {
    .Featured1-text {
        padding: 60px 60px 40px 7%;
    }

    .Featured1-text .h1 {
        margin: 0px 0 25px;
    }

    .Featured1-text .t3 {
        margin: 0px 0 25px;
    }
}

@media screen and (max-width: 780px) {
    .Featured1 {
        border: 0;
    }

    .Featured1-imgContainer {
        position: relative;
        top: 0;
        left: 0;
        float: none;
        margin-left: 25px;
        margin-right: 0;
        width: calc(100% - 25px);
        border-radius: 200px 0 0 200px;
        height: 153px;
        max-width: 400px;
        float: right;
    }

    .Featured1-img {
        position: absolute;
        top: 50%;
        -webkit-transform: translateY(-40%);
        transform: translateY(-40%);
    }

    .Featured1-text {
        display: block;
        width: 100%;
        padding: 20px 25px 21px;
        text-align: center;
        clear: both;
    }

    .Featured1-text .h1 {
        font-weight: 300;
        font-size: 25px;
        line-height: 30px;
        letter-spacing: -0.03em;
        line-height: 27px;
        margin: 0 0 17px;
        text-align: left;
    }

    .Featured1-text .t3 {
        font-size: 13px;
        line-height: 16px;
        letter-spacing: -0.03em;
        font-weight: 300;
        margin: 0 0 17px;
    }
}

/*---------------------------*/
/*       9. FOCUS 2         */
/*---------------------------*/
.Focus2 {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    padding: 165px 58% 110px 0;
}

.Focus2 h3 {
    margin-top: 0;
}

.Focus2-text {
    padding: 48px 50px 46px 8%;
    position: relative;
    background: #ffffff;
    border-radius: 0 400px 400px 0;
}

.Focus2-bar {
    display: inline-block;
    max-width: 60%;
    margin-top: 20px;
}

.Focus2.secondColor--yellow .Focus2-bar path {
    fill: #FFE282;
}

.Focus2.secondColor--green .Focus2-bar path {
    fill: #E1EA80;
}

.Focus2.secondColor--lila .Focus2-bar path {
    fill: #C5A3CC;
}

.Focus2-rs {
    margin-left: 10px;
    display: inline-block;
    vertical-align: middle;
    margin-top: 5px;
}

/*------------ 9-1. FOCUS2 RESPONSIVE -----------*/
@media screen and (min-width: 781px) and (max-width: 1099px) {
    .Focus2 {
        padding-right: 50%;
    }
}

@media screen and (max-width: 780px) {
    .Focus2 {
        padding: 0;
        margin-bottom: 88px;
    }

    .Focus2-text {
        padding: 89px 0 0 0;
        background: none;
        min-height: 0;
        position: relative;
        top: 88px;
    }

    .Focus2-text .h3 {
        font-weight: 300;
        font-size: 25px;
        line-height: 30px;
        letter-spacing: -0.03em;
        margin: 0;
        padding: 28px 30px 0 27px;
        background: #ffffff;
        border-radius: 0 400px 0 0;
        width: 70%;
        max-width: 400px;
    }

    .Focus2-text .t3 {
        font-size: 13px;
        line-height: 16px;
        letter-spacing: -0.03em;
        font-weight: 300;
        background: #ffffff;
        padding: 25px 22px 27px 27px;
        margin: -1px 0 0 0;
    }

    .Focus2-bar {
        fill: #FFE282;
    }
}

/*---------------------------*/
/*       10. ANCHORS         */
/*---------------------------*/
.Anchors {
    padding: 48px 8% 0px;
    margin-bottom: 50px;
}

.Anchors .t5 {
    text-transform: uppercase;
    font-weight: 700;
    margin: 0;
}

.Anchors-list {
    margin: 26px 0 0 0;
    padding: 0;
    list-style: none;
}

.Anchors-item {
    display: inline-block;
    vertical-align: top;
}

.Anchors-item::after {
    content: '•';
    display: inline-block;
    margin: 0 12px 0 15px;
}

.Anchors-item:last-of-type::after {
    display: none;
}

.Anchors-link {
    font-size: 13px;
    line-height: 16px;
    letter-spacing: -0.03em;
    font-weight: 300;
    padding-bottom: 15px;
    display: inline-block;
}

.Anchors-link.is-active {
    font-weight: 700;
    background: url("../images/bar.svg") no-repeat bottom;
    background-size: 100% 6px;
}

/*------------ 10-1. Anchors RESPONSIVE -----------*/
@media screen and (max-width: 780px) {
    .Anchors {
        display: none;
    }
}

/*---------------------------------*/
/*       11. VERTICAL LIST         */
/*---------------------------------*/
.VerticalList {
    margin-top: 50px;
    padding: 0px 9% 0 8%;
}

.VerticalList-intro {
    text-align: center;
}

.VerticalList-intro .h2 {
    margin: 0 0 32px;
}

.VerticalList-intro .t4 {
    margin: 32px 0 60px;
}

.VerticalList-item {
    margin-bottom: 40px;
}

.VerticalList-imgContainer {
    display: inline-block;
    vertical-align: top;
    width: 32%;
}

.VerticalList-img {
    display: block;
    width: 100%;
}

.VerticalList-text {
    display: inline-block;
    vertical-align: top;
    width: 67%;
    padding-left: 20px;
}

.VerticalList-text .t1 {
    margin: 0 0 43px;
}

.VerticalList-text .t4 {
    margin: 43px 0;
}

.VerticalList-text .Button--right {
    float: right;
    width: 129px;
}

/*------------ 11-1. Vertical List RESPONSIVE -----------*/
@media screen and (min-width: 781px) and (max-width: 1099px) {
    .VerticalList-text .t1 {
        margin-bottom: 30px;
    }

    .VerticalList-text .t4 {
        margin: 0 0 30px;
    }
}

@media screen and (max-width: 780px) {
    .VerticalList {
        background: #f4f4f4;
        padding: 27px 17px 1px 17px;
    }

    .VerticalList-intro .h2 {
        margin: 0 0 17px;
        font-weight: 300;
        font-size: 25px;
        line-height: 30px;
        letter-spacing: -0.03em;
    }

    .VerticalList-intro .t4 {
        margin: 0 0 20px;
    }

    .VerticalList-item {
        margin: 0;
        padding: 0 10px;
    }

    .VerticalList-imgContainer {
        display: block;
        width: 100%;
        height: 137px;
        overflow: hidden;
    }

    .VerticalList-text {
        display: block;
        width: 100%;
        padding: 22px 22px 20px;
        background: #ffffff;
        overflow: hidden;
    }

    .VerticalList-text .t1 {
        font-size: 18px;
        line-height: 26px;
        letter-spacing: -0.03em;
        font-weight: 300;
        margin: 0 0 17px;
    }

    .VerticalList-text .t4 {
        font-size: 13px;
        line-height: 16px;
        letter-spacing: -0.03em;
        font-weight: 300;
        margin: 0 0 22px;
    }

    .VerticalList-text .Button--right {
        margin-right: -22px;
    }
}

/*---------------------------------*/
/*   12. Featured 2 (with icon)    */
/*---------------------------------*/
.Featured2 {
    background: #f4f4f4;
    padding: 40px 33%;
    text-align: center;
}

.Featured2.wide {
    padding: 40px 10% !important;
}

.Featured2-icon {
    height: 90px;
    width: 90px;
    margin: 0 auto;
    border: 2px solid #162056;
    border-radius: 50%;
    padding: 18px;
}

.Featured2-svg path {
    fill: #162056;
}

.Featured2-text .h4 {
    margin: 25px 0 40px;
}

.Featured2-text .t3 {
    margin: 40px 0 40px;
}

/*------------ 12-1. Featured 2 RESPONSIVE -----------*/
@media screen and (min-width: 781px) and (max-width: 1099px) {
    .Featured2 {
        padding: 40px 20%;
    }

    .Featured2-text .h4 {
        margin-bottom: 25px;
    }

    .Featured2-text .t3 {
        margin: 0 0 25px;
    }
}

@media screen and (max-width: 780px) {
    .Featured2 {
        padding: 25px 25px 20px;
        background: #ffffff;
    }

    .Featured2-icon {
        width: 60px;
        height: 60px;
        padding: 10px;
    }

    .Featured2-icon svg {
        width: 100%;
        height: 100%;
    }

    .Featured2-text .h4 {
        font-weight: 300;
        font-size: 25px;
        line-height: 30px;
        letter-spacing: -0.03em;
        margin: 25px 0 20px;
    }

    .Featured2-text .t3 {
        font-size: 13px;
        line-height: 16px;
        letter-spacing: -0.03em;
        font-weight: 300;
        margin: 0 0 20px;
    }
}

/*---------------------------------*/
/*       13. Solutions             */
/*---------------------------------*/
.Solutions {
    text-align: center;
    padding-top: 51px;
}

.Solutions .h2 {
    margin: 0 0 32px;
}

.Solutions .t4 {
    margin: 32px auto 20px;
    width: 50%;
}

.Solutions-grid {
    padding: 10px;
}

.Solutions-item {
    display: inline-block;
    vertical-align: top;
    width: 23%;
    margin: 10px;
    position: relative;
}

.Solutions-img {
    display: block;
    width: 100%;
}

.Solution-text {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(128, 194, 228, 0.9);
    opacity: 0;
    transition: 0.3s;
}

.Solution-text:hover {
    opacity: 1;
}

.Wrapper--set1 .Solution-text {
    background: rgba(128, 194, 228, 0.9);
}

.Wrapper--set2 .Solution-text {
    background: rgba(161, 214, 202, 0.9);
}

.Wrapper--set3 .Solution-text {
    background: rgba(196, 214, 0, 0.9);
}

.Solution-text .h4 {
    color: #ffffff;
    font-weight: 700;
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    margin: 0;
    padding: 20px;
}

/*------------ 13-1. Solutions RESPONSIVE -----------*/
@media screen and (max-width: 780px) {
    .Solutions {
        padding: 30px 0;
    }

    .Solutions .h2 {
        font-weight: 300;
        font-size: 25px;
        line-height: 30px;
        letter-spacing: -0.03em;
        margin: 0 0 17px;
    }

    .Solutions .t4 {
        font-size: 13px;
        line-height: 16px;
        letter-spacing: -0.03em;
        font-weight: 300;
        margin: 0 0 17px;
        padding: 0 20px;
        width: 100%;
    }

    .Solutions-grid {
        padding: 5px;
    }

    .Solutions-item {
        margin: 5px;
        width: 45%;
    }

    .Solution-text .h4 {
        font-size: 20px;
        line-height: 25px;
        letter-spacing: -0.03em;
        font-weight: 300;
        font-weight: 700;
    }
}

/*---------------------------------*/
/*          14. Video              */
/*---------------------------------*/
.VideoBlock {
    background: #7FC2E4;
    padding: 56px 8% 78px;
}

.Wrapper--set1 .VideoBlock {
    background: #7FC2E4;
}

.Wrapper--set2 .VideoBlock {
    background: #A1D6CA;
}

.Wrapper--set3 .VideoBlock {
    background: #c4d600;
}

.VideoBlock .h5 {
    margin: 0 0 35px;
}

.VideoBlock .t3 {
    margin: 35px 0 37px;
}

.VideoBlock-videoContainer {
    width: 100%;
    height: 0;
    padding-bottom: 50%;
    position: relative;
}

.VideoBlock-video {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
}

.VideoBlock-layer {
    background: rgba(22, 32, 86, 0.9);
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    cursor: pointer;
}

.Wrapper--set1 .VideoBlock-layer {
    background: rgba(22, 32, 86, 0.9);
}

.Wrapper--set2 .VideoBlock-layer {
    background: rgba(66, 20, 95, 0.9);
}

.Wrapper--set3 .VideoBlock-layer {
    background: rgba(0, 133, 155, 0.9);
}

.VideoBlock-play {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 90px;
    height: 90px;
    padding: 18px 30px;
    border: 2px solid #ffffff;
    border-radius: 50%;
    text-align: center;
    cursor: pointer;
}

/*------------ 14-1. Video RESPONSIVE -----------*/
@media screen and (min-width: 781px) and (max-width: 1099px) {
    .VideoBlock .h5 {
        margin-bottom: 25px;
    }

    .VideoBlock .t3 {
        margin: 0 0 25px;
    }
}

@media screen and (max-width: 780px) {
    .VideoBlock {
        padding: 22px 25px 27px;
    }

    .VideoBlock .h5 {
        font-weight: 300;
        font-size: 25px;
        line-height: 30px;
        letter-spacing: -0.03em;
        margin-bottom: 22px;
    }

    .VideoBlock .t3 {
        margin: 0 0 14px;
    }
}

/*-------------------------------*/
/*      15. Keyfigure2           */
/*-------------------------------*/
.Keyfigure2 {
    padding: 43px 0px 31px;
}

.Keyfigure2 .h2 {
    text-align: center;
    margin: 0 auto 50px;
    max-width: 50%;
}

.Keyfigure2-carou {
    position: relative;
    padding: 20px 8%;
}

.Keyfigure2-item {
    padding: 47px 10px 0;
    position: relative;
    min-height: 191px;
}

.Keyfigure2-bkg {
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}

.secondColor--yellow .Keyfigure2-bkg path {
    fill: #FFE282;
}

.secondColor--green .Keyfigure2-bkg path {
    fill: #E1EA80;
}

.secondColor--lila .Keyfigure2-bkg path {
    fill: #C5A3CC;
}

.Keyfigure2-text {
    position: relative;
    z-index: 2;
}

.Keyfigure2-text .h4 {
    font-weight: bold;
    margin: 0;
    text-align: center;
}

.Keyfigure2-text .t1 {
    margin: 0;
    text-align: center;
}

/*------------ 15-1. Keyfigure2 RESPONSIVE -----------*/
@media screen and (min-width: 781px) and (max-width: 1099px) {
    .Keyfigure2 .h2 {
        margin-bottom: 35px;
    }
}

@media screen and (max-width: 780px) {
    .Keyfigure2 {
        padding: 25px 0px 50px;
    }

    .Keyfigure2 .h2 {
        font-weight: 300;
        font-size: 25px;
        line-height: 30px;
        letter-spacing: -0.03em;
        margin-bottom: 25px;
    }

    .Keyfigure2-text .h4 {
        font-size: 27px;
        line-height: 26px;
        letter-spacing: -0.03em;
        font-weight: 300;
        font-weight: bold;
    }

    .Keyfigure2-text .t1 {
        font-size: 13px;
        line-height: 16px;
        letter-spacing: -0.03em;
        font-weight: 300;
    }

    .Keyfigure2-bkg {
        height: 96px;
    }

    .Keyfigure2-item {
        min-height: 96px;
        padding: 20px 40px;
    }
}

/*---------------------------------*/
/*  16. Featured3 (with image2)    */
/*---------------------------------*/
.Featured3 {
    background: #7FC2E4;
    overflow: hidden;
}

.Wrapper--set1 .Featured3 {
    background: #7FC2E4;
}

.Wrapper--set2 .Featured3 {
    background: #A1D6CA;
}

.Wrapper--set3 .Featured3 {
    background: #c4d600;
}

.Featured3-imgContainer {
    width: 52%;
    float: right;
    margin-top: 38px;
    overflow: hidden;
    margin-bottom: 38px;
}

.Featured3-ribbon {
    width: 100%;
    height: 85px;
    background-position: right top;
    background-repeat: no-repeat;
    background-size: 103%;
    border-radius: 50px 0 0 50px;
    overflow: hidden;
    margin: 4px 0;
    float: right;
}

.Featured3-ribbon:nth-child(2) {
    background-position: right -94px;
    background-size: 121%;
    width: 85%;
}

.Featured3-ribbon:nth-child(3) {
    background-position: right -187px;
    background-size: 104.5%;
    width: 98%;
}

.Featured3-ribbon:nth-child(4) {
    background-position: right -280px;
    background-size: 138%;
    width: 75%;
}

.Featured3-text {
    display: inline-block;
    width: 47%;
    padding: 60px 20px 47px 9%;
}

.Featured3-text .h1 {
    color: #ffffff;
    margin-bottom: 37px;
    margin-top: 0;
}

.Featured3-text .t3 {
    margin: 37px 0 40px;
}

/*------------ 16-1. Featured3 RESPONSIVE -----------*/
@media screen and (max-width: 780px) {
    .Featured3-imgContainer {
        display: block;
        width: 100%;
        margin-bottom: 0px;
        margin-top: 17px;
    }

    .Featured3-text {
        clear: both;
        width: 100%;
        padding: 15px 25px 22px;
        text-align: center;
    }

    .Featured3-text .h1 {
        font-size: 25px;
        line-height: 30px;
        letter-spacing: -0.03em;
        font-weight: 300;
        margin: 20px 0;
        text-align: left;
        margin: 0 0 22px;
    }

    .Featured3-text .t3 {
        font-size: 13px;
        line-height: 16px;
        letter-spacing: -0.03em;
        font-weight: 300;
        margin: 0 0 20px;
    }
}

@media screen and (max-width: 480px) {
    .Featured3-ribbon {
        width: 100%;
        height: 46px;
        background-position: right top;
        background-repeat: no-repeat;
        background-size: 103%;
        border-radius: 50px 0 0 50px;
        overflow: hidden;
        margin: 2px 0;
        float: right;
    }

    .Featured3-ribbon:nth-child(2) {
        background-position: right -50px;
        background-size: 121%;
        width: 85%;
    }

    .Featured3-ribbon:nth-child(3) {
        background-position: right -100px;
        background-size: 104.5%;
        width: 98%;
    }

    .Featured3-ribbon:nth-child(4) {
        background-position: right -150px;
        background-size: 138%;
        width: 75%;
    }
}

/*---------------------------------*/
/*          17. PUSHS              */
/*---------------------------------*/
.Pushs {
    background: #f4f4f4;
    padding: 50px 8% 40px 8%;
}

.Pushs .h4 {
    max-width: 33%;
    margin: 0 auto 64px;
    text-align: center;
}

.Pushs-item {
    display: inline-block;
    vertical-align: top;
    width: 33%;
    width: calc(100%/3 - 24px);
    margin: 0 10px;
    background: #ffffff;
}

.Pushs-img {
    display: block;
    width: 100%;
}

.Pushs-text {
    padding: 21px 20px 40px 20px;
    overflow: hidden;
}

.Pushs-text .t7 {
    margin: 0 0 23px;
    font-weight: 400;
}

.Pushs-text .t1 {
    margin: 0 0 40px;
}

.Pushs-item .Button--right {
    float: right;
    width: 129px;
    margin-right: -20px;
}

/*------------ 17-1. Pushs RESPONSIVE -----------*/
@media screen and (min-width: 781px) and (max-width: 1099px) {
    .Pushs .h4 {
        max-width: 50%;
        margin-bottom: 40px;
    }

    .Pushs-text {
        padding-bottom: 20px;
    }

    .Pushs-text .t7 {
        margin-bottom: 17px;
    }

    .Pushs-text .t1 {
        margin-bottom: 20px;
    }
}

@media screen and (max-width: 780px) {
    .Pushs {
        padding: 37px 25px 5px;
    }

    .Pushs .h4 {
        max-width: 100%;
        font-weight: 300;
        font-size: 25px;
        line-height: 30px;
        letter-spacing: -0.03em;
        margin: 0 0 20px;
    }

    .Pushs-item {
        display: block;
        width: 100%;
        margin: 0 0 20px;
    }

    .Pushs-text {
        padding: 20px;
    }

    .Pushs-text .t7 {
        margin-bottom: 27px;
    }

    .Pushs-text .t1 {
        font-size: 18px;
        line-height: 26px;
        letter-spacing: -0.03em;
        font-weight: 300;
        margin-bottom: 20px;
    }
}

/*---------------------------------*/
/*          18. TWITTER            */
/*---------------------------------*/
.Twitter {
    background: #162056;
    color: #ffffff;
    text-align: center;
    margin: 20px;
    padding: 60px 25% 64px;
}

.Twitter-info {
    font-size: 15px;
    line-height: 25px;
    letter-spacing: -0.03em;
    font-weight: 400;
}

.Twitter .t1 a,
.Twitter-info a {
    color: #00bff0;
    font-weight: 700;
}

.Twitter .t1 {
    margin: 33px 0 70px;
}

.Wrapper--set1 .Twitter .Button--white:hover {
    color: #7FC2E4;
    border-color: #7FC2E4;
}

.Wrapper--set2 .Twitter .Button--white:hover {
    color: #A1D6CA;
    border-color: #A1D6CA;
}

.Wrapper--set3 .Twitter .Button--white:hover {
    color: #c4d600;
    border-color: #c4d600;
}

/*------------ 18-1. TWITTER RESPONSIVE -----------*/
@media screen and (min-width: 781px) and (max-width: 1099px) {
    .Twitter {
        padding: 40px 10%;
    }

    .Twitter .t1 {
        margin-bottom: 40px;
    }
}

@media screen and (max-width: 780px) {
    .Twitter {
        padding: 20px 15px 15px;
        margin: 30px 25px;
    }

    .Twitter-info {
        font-size: 13px;
        line-height: 16px;
        letter-spacing: -0.03em;
        font-weight: 300;
    }

    .Twitter .t1 {
        font-size: 15px;
        line-height: 25px;
        letter-spacing: -0.03em;
        font-weight: 400;
        margin: 25px 0 27px;
    }
}

/*---------------------------------*/
/*         19. CAROUSEL 2          */
/*---------------------------------*/
.Carousel2 {
    padding: 34px 0 49px;
    margin: 23px 0;
}

.Carousel2.secondColor--yellow {
    background: #FFE282;
}

.Carousel2.secondColor--green {
    background: #E1EA80;
}

.Carousel2.secondColor--lila {
    background: #C5A3CC;
}

.Carousel2-title {
    text-align: center;
    margin: 0 0 59px;
}

.Carousel2-carou {
    position: relative;
    padding: 0 8%;
}

.Carousel2-text {
    background: #ffffff;
    margin: 0 10px;
    padding: 30px 20px;
}

.Carousel2-item .t1 {
    margin-top: 0;
    font-weight: 700;
}

.Carousel2-item .t5 {
    margin-bottom: 30px;
}

.Carousel2-link {
    font-weight: 700;
}

.Carousel2 .Carousel2-carou .slick-arrow {
    background-color: #162056;
}

.Carousel2 .Carousel2-carou .slick-prev {
    background-image: url("../images/arrow-left-w.png");
}

.Carousel2 .Carousel2-carou .slick-next {
    background-image: url("../images/arrow-right-w.png");
}

/*------------ 19-1. CAROUSEL2 RESPONSIVE -----------*/
@media screen and (min-width: 781px) and (max-width: 1099px) {
    .Carousel2-title {
        margin-bottom: 40px;
    }

    .Carousel2-item .t5 {
        margin-bottom: 20px;
    }

    .Carousel2-link {
        font-size: 15px;
    }
}

@media screen and (max-width: 780px) {
    .Carousel2 {
        padding: 30px 0 10px 0;
    }

    .Carousel2-title {
        font-weight: 300;
        font-size: 25px;
        line-height: 30px;
        letter-spacing: -0.03em;
        margin: 0 0 20px;
        padding: 0 25px;
    }

    .Carousel2-carou {
        padding: 0 20px;
    }

    .Carousel2-text {
        padding: 22px 10px;
    }

    .Carousel2-item .t1 {
        font-size: 18px;
        line-height: 26px;
        letter-spacing: -0.03em;
        font-weight: 300;
        font-weight: 700;
        margin: 0 0 17px;
    }

    .Carousel2-item .t5 {
        font-size: 13px;
        line-height: 16px;
        letter-spacing: -0.03em;
        font-weight: 300;
        margin: 0 0 20px;
    }

    .Carousel2-link {
        font-size: 13px;
        line-height: 16px;
        letter-spacing: -0.03em;
        font-weight: 300;
        font-weight: 700;
    }
}

/*---------------------------------*/
/*         20. CAROUSEL 3          */
/*---------------------------------*/
.Carousel3 {
    padding: 41px 0 22px;
}

.Carousel3-title {
    font-size: 27px;
    line-height: 26px;
    letter-spacing: -0.03em;
    font-weight: 300;
    padding: 0 9%;
    margin: 0 0 41px;
}

.Carousel3-carou {
    padding: 0 9%;
    position: relative;
}

.Carousel3-item {
    background: #f4f4f4;
    padding: 61px 9.5% 45px;
    overflow: hidden;
}

.Carousel3-figure {
    color: #7FC2E4;
    font-size: 255px;
    line-height: 255px;
    font-weight: 700;
    display: inline-block;
    float: left;
    margin-right: 8%;
}

.Wrapper--set1 .Carousel3-figure {
    color: #7FC2E4;
}

.Wrapper--set2 .Carousel3-figure {
    color: #A1D6CA;
}

.Wrapper--set3 .Carousel3-figure {
    color: #c4d600;
}

.Carousel3-text {
    overflow: hidden;
    padding-right: 10%;
}

.Carousel3-text .h6 {
    margin: 0 0 49px;
}

.Carousel3-text .t4 {
    margin-bottom: 10px;
}

/*------------ 20-1. CAROUSEL3 RESPONSIVE -----------*/
@media screen and (min-width: 781px) and (max-width: 1099px) {
    .Carousel3-text {
        padding-right: 20px;
    }

    .Carousel3-text .h6 {
        margin: 0 0 25px;
    }

    .Carousel3-figure {
        font-size: 200px;
        line-height: 150px;
    }
}

@media screen and (max-width: 780px) {
    .Carousel3 {
        margin: 27px 0 0px 0;
        padding: 0;
    }

    .Carousel3-title {
        font-weight: 300;
        font-size: 25px;
        line-height: 30px;
        letter-spacing: -0.03em;
        text-align: center;
        margin-bottom: 20px;
    }

    .Carousel3-carou {
        padding: 0 27px;
    }

    .Carousel3-item {
        padding: 35px 20px 62px;
    }

    .Carousel3-figure {
        font-size: 150px;
        line-height: 110px;
        display: block;
        width: 100%;
        margin: 0 0 25px;
        text-align: center;
    }

    .Carousel3-text {
        padding: 0;
        display: block;
        width: 100%;
    }

    .Carousel3-text .h6 {
        font-size: 18px;
        line-height: 26px;
        letter-spacing: -0.03em;
        font-weight: 300;
        margin-bottom: 25px;
    }

    .Carousel3-text .t4 {
        font-size: 13px;
        line-height: 16px;
        letter-spacing: -0.03em;
        font-weight: 300;
        margin: 0 0 7px;
    }

    .Carousel3 .slick-dots {
        margin-top: -52px;
        margin-bottom: 60px;
    }
}

/*---------------------------------*/
/*         21. KEYFIGURE 3         */
/*---------------------------------*/
.Keyfigure3 {
    text-align: center;
    padding: 22px 8% 16px;
}

.Keyfigure3-item {
    display: inline-block;
    vertical-align: top;
    width: 32.5%;
}

.Keyfigure3-item .h3 {
    margin: 0 0 20px;
    padding: 0 20px;
}

.Wrapper--set1 .Keyfigure3-item .h3 strong {
    color: #7FC2E4;
}

.Wrapper--set2 .Keyfigure3-item .h3 strong {
    color: #A1D6CA;
}

.Wrapper--set3 .Keyfigure3-item .h3 strong {
    color: #c4d600;
}

.Keyfigure3.secondColor--yellow path {
    fill: #FFE282;
}

.Keyfigure3.secondColor--green path {
    fill: #E1EA80;
}

.Keyfigure3.secondColor--lila path {
    fill: #C5A3CC;
}

/*------------ 21-1. Keyfigure3 RESPONSIVE -----------*/
@media screen and (max-width: 780px) {
    .Keyfigure3 {
        margin: 32px 20px 10px;
        padding: 0;
    }

    .Keyfigure3-item {
        display: block;
        width: 100%;
        margin: 0 0 22px;
    }

    .Keyfigure3-item .h3 strong {
        font-size: 25px;
        line-height: 30px;
        letter-spacing: -0.03em;
        font-weight: 300;
        margin: 20px 0;
        font-weight: 700;
    }

    .Keyfigure3-item .h3 {
        font-size: 20px;
        line-height: 25px;
        letter-spacing: -0.03em;
        font-weight: 300;
        margin: 0 0 15px;
    }
}

/*---------------------------------*/
/*     22. SIMPLE TEXT + CAROUSEL  */
/*---------------------------------*/
.ImgCarousel {
    margin: 16px 0 20px;
    padding: 0;
}

.ImgCarousel-text {
    padding: 0 8%;
}

.ImgCarousel-text .t2 {
    font-weight: 700;
    margin-bottom: 38px;
}

.ImgCarousel-text .t4 {
    margin-bottom: 40px;
}

.ImgCarousel-carou {
    padding: 0 8%;
    position: relative;
}

.ImgCarousel-item {
    position: relative;
}

.ImgCarousel-item img {
    width: 100%;
    display: block;
}

.ImgCarousel-item .t6 {
    color: #ffffff;
    position: absolute;
    bottom: 20px;
    left: 0;
    background: #162056;
    padding: 10px 20px;
    border-radius: 0 100px 100px 0;
    max-width: 70%;
}

.Wrapper--set1 .ImgCarousel-item .t6 {
    background: #162056;
}

.Wrapper--set2 .ImgCarousel-item .t6 {
    background: #42145F;
}

.Wrapper--set3 .ImgCarousel-item .t6 {
    background: #00859b;
}

/*------------ 22-1. SIMPLE TEXT + CAROUSE RESPONSIVE -----------*/
@media screen and (min-width: 781px) and (max-width: 1099px) {

    .ImgCarousel-text .t2,
    .ImgCarousel-text .t4 {
        margin-bottom: 25px;
    }
}

@media screen and (max-width: 780px) {
    .ImgCarousel {
        padding: 17px 0;
    }

    .ImgCarousel-text {
        padding: 0px 25px;
    }

    .ImgCarousel-text .t2 {
        text-align: center;
        font-size: 20px;
        line-height: 25px;
        letter-spacing: -0.03em;
        font-weight: 300;
        font-weight: 700;
        margin: 0 0 17px;
    }

    .ImgCarousel-text .t4 {
        font-size: 13px;
        line-height: 16px;
        letter-spacing: -0.03em;
        font-weight: 300;
        margin-bottom: 30px;
    }

    .ImgCarousel-carou {
        padding: 0;
    }

    .ImgCarousel-item .t6 {
        position: relative;
        bottom: 0;
        margin: 0;
        max-width: 100%;
        margin-right: 25px;
        font-size: 13px;
        line-height: 16px;
        letter-spacing: -0.03em;
        font-weight: 300;
    }
}

/*--------------------------*/
/*        23. QUOTE         */
/*--------------------------*/
.Quote {
    text-align: center;
    padding: 20px 20% 33px;
}

.Quote .h5 {
    margin: 40px 0 50px;
}

.Quote .t3 {
    margin: 0 0 50px;
}

.Quote .t3 strong {
    color: #7FC2E4;
    font-weight: 400;
}

.Wrapper--set1 .Quote .t3 strong {
    color: #7FC2E4;
}

.Wrapper--set2 .Quote .t3 strong {
    color: #A1D6CA;
}

.Wrapper--set3 .Quote .t3 strong {
    color: #c4d600;
}

.Quote.secondColor--yellow path {
    fill: #FFE282;
}

.Quote.secondColor--green path {
    fill: #E1EA80;
}

.Quote.secondColor--lila path {
    fill: #C5A3CC;
}

/*------------ 23-1. Quote RESPONSIVE -----------*/
@media screen and (min-width: 781px) and (max-width: 1099px) {
    .Quote {
        padding: 20px 10% 33px;
    }

    .Quote .h5 {
        margin: 30px 0 35px;
    }

    .Quote .t3 {
        margin-bottom: 30px;
    }
}

@media screen and (max-width: 780px) {
    .Quote {
        margin: 30px 20px;
        padding: 0;
    }

    .Quote .h5 {
        margin: 17px 0 22px;
        font-size: 20px;
        line-height: 25px;
        letter-spacing: -0.03em;
        font-weight: 300;
    }

    .Quote .t3 {
        font-size: 13px;
        line-height: 16px;
        letter-spacing: -0.03em;
        font-weight: 300;
        margin: 0 0 22px;
    }
}

/*--------------------------*/
/*      24. ACCORDION       */
/*--------------------------*/
.Accordion {
    padding: 0 8% 20px;
    padding-top: 33px;
}

.Accordion .h4 {
    margin: 0 0 39px;
}

.Accordion-container {
    background: #f4f4f4;
    padding: 12px 42px 12px;
}

.Accordion-item {
    border-bottom: 1px solid #162056;
}

.Accordion-item:last-child {
    border-bottom: 0;
}

.Accordion-title {
    display: block;
    padding: 29px 50px 34px 0;
    text-decoration: none;
    position: relative;
    font-weight: 700;
}

.Accordion-title svg {
    position: absolute;
    right: 0;
    top: 50%;
    margin-top: -17px;
    transition: 0.3s;
    display: block;
}

.Accordion-title svg path {
    fill: none;
    stroke: #162056;
    stroke-width: 4;
    stroke-linecap: round;
}

.Accordion-title.is-active svg {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
}

.Accordion-content {
    display: none;
    padding: 6px 0 49px;
    font-size: 18px;
    line-height: 26px;
    letter-spacing: -0.03em;
    font-weight: 300;
}

/*------------ 24-1. Accoridon RESPONSIVE -----------*/
@media screen and (min-width: 781px) and (max-width: 1099px) {
    .Accordion-content {
        font-size: 14px;
        line-height: 16px;
        letter-spacing: -0.03em;
        font-weight: 300;
        line-height: 20px;
    }
}

@media screen and (max-width: 780px) {
    .Accordion {
        margin: 30px 10px;
        padding: 0;
    }

    .Accordion .h4 {
        font-weight: 300;
        font-size: 25px;
        line-height: 30px;
        letter-spacing: -0.03em;
        text-align: center;
        margin: 0 0 20px;
        padding: 0 20px;
    }

    .Accordion-container {
        padding: 2px 0;
    }

    .Accordion-title {
        padding: 25px 50px 25px 20px;
        font-size: 13px;
        line-height: 16px;
        letter-spacing: -0.03em;
        font-weight: 300;
        font-weight: 700;
    }

    .Accordion-title svg {
        right: 10px;
        width: 10px;
        height: 15px;
        margin-top: -7px;
    }

    .Accordion-content {
        padding: 0 20px 25px;
        font-size: 13px;
        line-height: 16px;
        letter-spacing: -0.03em;
        font-weight: 300;
    }
}

/*--------------------------*/
/*      25. Carousel4       */
/*--------------------------*/
.Carousel4 {
    padding: 20px 0 40px;
    text-align: center;
}

.Carousel4 .h4 {
    padding: 0 8%;
    margin: 0 0 40px;
}

.Carousel4-carou {
    position: relative;
    padding: 0 8%;
}

.Carousel4-item {
    padding: 0 20px;
}

.Carousel4-img {
    margin: 0 auto;
    max-width: 100%;
}

.Carousel4-item .t5 {
    margin: 10px 0 0;
}

/*------------ 25-1. Carousel4 RESPONSIVE -----------*/
@media screen and (max-width: 780px) {
    .Carousel4 {
        margin: 30px 0;
        padding: 0;
    }

    .Carousel4 .h4 {
        font-weight: 300;
        font-size: 25px;
        line-height: 30px;
        letter-spacing: -0.03em;
        text-align: center;
        margin: 0 0 32px;
        padding: 0 20px;
    }

    .Carousel4-item .t5 {
        display: none;
    }
}

/*--------------------------*/
/*        26. Table         */
/*--------------------------*/
.TableBlock {
    padding: 40px 16% 40px 12%;
}

.TableBlock table {
    text-align: center;
    border-collapse: collapse;
}

.TableBlock th {
    background: #162056;
    color: #ffffff;
    font-size: 20px;
    line-height: 25px;
    letter-spacing: -0.03em;
    font-weight: 300;
    font-weight: 700;
    padding: 18px;
    border: 2px solid #ffffff;
}

.TableBlock th:first-child {
    background: none;
}

.TableBlock td {
    background: #f4f4f4;
    border: 2px solid #ffffff;
}

.TableBlock td:first-child {
    background: #7FC2E4;
    font-size: 15px;
    line-height: 25px;
    letter-spacing: -0.03em;
    font-weight: 400;
    width: 19%;
    padding: 20px;
}

.TableBlock td svg path {
    stroke: #7FC2E4;
    stroke-linecap: round;
    stroke-width: 6px;
}

.Wrapper--set1 .TableBlock th {
    background: #162056;
}

.Wrapper--set1 .TableBlock th:first-child {
    background: none;
}

.Wrapper--set2 .TableBlock th {
    background: #42145F;
}

.Wrapper--set2 .TableBlock th:first-child {
    background: none;
}

.Wrapper--set3 .TableBlock th {
    background: #00859b;
}

.Wrapper--set3 .TableBlock th:first-child {
    background: none;
}

.Wrapper--set1 .TableBlock td:first-child {
    background: #7FC2E4;
}

.Wrapper--set2 .TableBlock td:first-child {
    background: #A1D6CA;
}

.Wrapper--set3 .TableBlock td:first-child {
    background: #c4d600;
}

.Wrapper--set1 .TableBlock td svg path {
    stroke: #7FC2E4;
}

.Wrapper--set2 .TableBlock td svg path {
    stroke: #A1D6CA;
}

.Wrapper--set3 .TableBlock td svg path {
    stroke: #c4d600;
}

/*------------ 26-1. TABLE RESPONSIVE -----------*/
@media screen and (min-width: 781px) and (max-width: 1099px) {
    .TableBlock {
        padding: 40px 8%;
    }

    .TableBlock th {
        font-size: 18px;
        line-height: 26px;
        letter-spacing: -0.03em;
        font-weight: 300;
        font-weight: 700;
    }

    .TableBlock td:first-child {
        font-size: 13px;
        line-height: 16px;
        letter-spacing: -0.03em;
        font-weight: 300;
        font-weight: 400;
        line-height: 20px;
    }
}

@media screen and (max-width: 780px) {
    .TableBlock {
        padding: 0;
        margin: 20px 0;
        overflow-y: auto;
    }

    .TableBlock table {
        min-width: 800px;
        margin: 0 20px 20px;
    }

    .TableBlock th {
        font-size: 20px;
        line-height: 25px;
        letter-spacing: -0.03em;
        font-weight: 300;
        font-weight: 700;
        padding: 10px 5px;
    }

    .TableBlock td:first-child {
        font-size: 15px;
        line-height: 25px;
        letter-spacing: -0.03em;
        font-weight: 400;
        padding: 10px 5px;
        line-height: 20px;
    }
}

/*--------------------------*/
/*        27. FORM          */
/*--------------------------*/
.FormBlock {
    background: #7FC2E4;
    color: #ffffff;
    padding: 40px 9% 0;
    overflow: hidden;
    position: relative;
}

.Wrapper--set1 .FormBlock {
    background: #7FC2E4;
}

.Wrapper--set2 .FormBlock {
    background: #A1D6CA;
}

.Wrapper--set3 .FormBlock {
    background: #c4d600;
}

.FormBlock .h4 {
    color: #ffffff;
    margin: 0 20px 30px;
}

.FormBlock-imgContainer {
    width: 35%;
    position: absolute;
    bottom: 0;
    left: 9%;
    display: inline-block;
    border-radius: 400px 400px 0 0;
    overflow: hidden;
    margin-right: calc(6.5% - 20px);
    background: #bde7fb;
    top: 40px;
}

.FormaBlock-img {
    display: block;
    width: 100%;
}

.FormBlock-form {
    width: 52%;
    display: inline-block;
    vertical-align: top;
    padding-bottom: 40px;
    margin-left: 48%;
}

.FormBlock input,
.FormBlock select {
    border-radius: 40px;
    border: 2px solid #ffffff;
    background: none;
    padding: 7px 15px;
    color: #ffffff;
    margin-bottom: 40px;
    display: inline-block;
    margin-right: 20px;
    margin-left: 20px;
    width: calc(50% - 43px);
    font-size: 18px;
    line-height: 26px;
    letter-spacing: -0.03em;
    font-weight: 300;
    outline: none;
    font-family: 'Montserrat', arial;
    font-weight: 400;
}

.FormBlock ::-webkit-input-placeholder {
    /* Chrome/Opera/Safari */
    color: #ffffff;
}

.FormBlock ::-moz-placeholder {
    /* Firefox 19+ */
    color: #ffffff;
}

.FormBlock :-ms-input-placeholder {
    /* IE 10+ */
    color: #ffffff;
}

.FormBlock :-moz-placeholder {
    /* Firefox 18- */
    color: #ffffff;
}

.FormBlock textarea {
    border-radius: 80px;
    border: 2px solid #ffffff;
    background: none;
    padding: 15px 15px;
    color: #ffffff;
    margin-bottom: 40px;
    margin: 0 20px;
    display: block;
    width: calc(100% - 40px);
    font-size: 18px;
    line-height: 26px;
    letter-spacing: -0.03em;
    font-weight: 300;
    resize: vertical;
    min-height: 80px;
    outline: none;
    font-family: 'Montserrat', arial;
    font-weight: 400;
}

.FormBlock-buttons {
    text-align: right;
    margin-top: 40px;
    padding: 0 20px;
}

/*------------ 27-1. FORM RESPONSIVE -----------*/
@media screen and (min-width: 781px) and (max-width: 1099px) {
    .FormBlock-imgContainer {
        width: 30%;
    }

    .FormBlock-form {
        margin-left: 42%;
        width: 60%;
    }

    .FormBlock input,
    .FormBlock select {
        width: calc(50% - 24px);
        margin: 0 10px 20px;
        font-size: 14px;
        line-height: 16px;
        letter-spacing: -0.03em;
        font-weight: 300;
        line-height: 20px;
    }

    .FormBlock textarea {
        width: calc(100% - 24px);
        margin: 0 10px 20px;
        font-size: 14px;
        line-height: 16px;
        letter-spacing: -0.03em;
        font-weight: 300;
        line-height: 20px;
    }
}

@media screen and (max-width: 780px) {
    .FormBlock {
        padding: 20px 0 0 0;
    }

    .FormBlock-imgContainer {
        display: block;
        position: relative;
        top: 0;
        left: 0;
        border-radius: 0 400px 400px 0;
        width: calc(100% - 25px);
        height: 154px;
        max-width: 400px;
        text-align: right;
    }

    .FormaBlock-img {
        height: 200%;
        -webkit-transform: translate(15%, -25%);
        transform: translate(15%, -25%);
        width: auto;
        display: inline-block;
    }

    .FormBlock-form {
        display: block;
        width: 100%;
        margin: 25px 0 0;
        padding: 0 35px 30px;
    }

    .FormBlock .h4 {
        font-weight: 300;
        font-size: 25px;
        line-height: 30px;
        letter-spacing: -0.03em;
        margin: 0 0 35px;
    }

    .FormBlock input,
    .FormBlock select,
    .FormBlock textarea {
        display: block;
        width: 100%;
        margin: 0 0 20px;
        font-size: 13px;
        line-height: 16px;
        letter-spacing: -0.03em;
        font-weight: 300;
        border-width: 1px;
    }

    .FormBlock-buttons {
        text-align: center;
        margin-top: 20px;
        padding: 0;
    }

    .FormBlock-buttons .Button {
        margin: 5px 12px;
    }
}

/*--------------------------*/
/*      28. CAROUSEL 5      */
/*--------------------------*/
.Carousel5 {
    background: #f4f4f4;
    padding: 66px 0 55px;
}

.Carousel5 .h4 {
    text-align: center;
    margin: 0 0 52px;
}

.Carousel5-carou {
    position: relative;
    padding: 0 9%;
}

.Carousel5-text {
    background-color: #ffffff;
    margin: 0 10px;
    padding: 44px 25px 42px;
    overflow: hidden;
}

.Carousel5-text .t5 {
    margin: 0 0 36px;
}

.Carousel5-text .h6 {
    margin: 0 0 27px;
}

.Carousel5-text .Button--right {
    float: right;
    margin-right: -25px;
}

/*------------ 28-1. CAROUSEL 5 RESPONSIVE -----------*/
@media screen and (min-width: 781px) and (max-width: 1099px) {
    .Carousel5 .h4 {
        margin-bottom: 35px;
    }

    .Carousel5-text {
        padding: 25px;
    }

    .Carousel5-text .t5 {
        margin-bottom: 20px;
    }
}

@media screen and (max-width: 780px) {
    .Carousel5 {
        padding: 30px 0 1px;
    }

    .Carousel5 .h4 {
        font-weight: 300;
        font-size: 25px;
        line-height: 30px;
        letter-spacing: -0.03em;
        margin-bottom: 20px;
    }

    .Carousel5-carou {
        padding: 0 12px;
    }

    .Carousel5-text {
        padding: 20px;
    }

    .Carousel5-text .t5 {
        font-size: 13px;
        line-height: 16px;
        letter-spacing: -0.03em;
        font-weight: 300;
        margin: 0 0 25px;
    }

    .Carousel5-text .h6 {
        font-size: 18px;
        line-height: 26px;
        letter-spacing: -0.03em;
        font-weight: 300;
        margin: 0 0 20px;
    }
}

/*--------------------------*/
/*      29. LONG READ       */
/*--------------------------*/
.LongRead {
    padding: 30px 16% 75px;
}

.LongRead .h1 {
    margin: 30px 0 35px;
}

.LongRead-chapo {
    margin: 35px 0 100px;
    font-size: 20px;
    line-height: 25px;
    letter-spacing: -0.03em;
    font-weight: 300;
    font-weight: bold;
}

.LongRead-subtitle {
    text-transform: uppercase;
}

.LongRead .t4 {
    margin: 30px 0;
}

.LongRead-quote {
    padding: 0 60px;
    margin: 70px 0;
}

.LongRead-quoteText {
    font-size: 35px;
    font-weight: 300;
    margin: 30px 0px 35px;
}

.LongRead-quoteAuthor {
    font-size: 20px;
    line-height: 25px;
    letter-spacing: -0.03em;
    font-weight: 300;
}

.LongRead-quoteAuthor strong {
    display: block;
}

.Wrapper.Wrapper--set1 .LongRead-quoteAuthor strong {
    color: #7FC2E4;
}

.Wrapper.Wrapper--set2 .LongRead-quoteAuthor strong {
    color: #A1D6CA;
}

.Wrapper.Wrapper--set3 .LongRead-quoteAuthor strong {
    color: #c4d600;
}

.LongRead-imgContainer {
    margin: 70px -12%;
}

.LongRead-imgContainer--left {
    float: left;
    margin: 0 15px 0 -12%;
}

.LongRead-imgContainer--right {
    float: right;
    margin: 0 -12% 0 15px;
}

.LongRead-img {
    display: inline-block;
    vertical-align: top;
    margin: 0 10px;
}

.LongRead-img--66 {
    width: calc(66% - 20px);
}

.LongRead-img--33 {
    width: calc(33% - 20px);
}

.LongRead-ol {
    margin: 0 0 70px;
    padding: 0;
    counter-reset: li;
    list-style: none;
}

.LongRead-olItem {
    font-size: 18px;
    line-height: 26px;
    letter-spacing: -0.03em;
    font-weight: 300;
    margin: 30px 0;
    padding: 0 0 0 75px;
    position: relative;
}

.LongRead-olItem::before {
    counter-increment: li;
    content: counter(li);
    position: absolute;
    left: 0;
    top: 0;
    font-size: 60px;
    line-height: 60px;
    font-weight: 700;
}

.Wrapper.Wrapper--set1 .LongRead-olItem::before {
    color: #7FC2E4;
}

.Wrapper.Wrapper--set2 .LongRead-olItem::before {
    color: #A1D6CA;
}

.Wrapper.Wrapper--set3 .LongRead-olItem::before {
    color: #c4d600;
}

.LongRead ul {
    margin: 0 0 70px 75px;
    padding: 0;
    list-style: inside;
}

.LongRead ul li {
    font-size: 18px;
    line-height: 26px;
    letter-spacing: -0.03em;
    font-weight: 300;
    margin: 30px 0;
}

.LongRead-columns {
    margin: 70px 0;
}

.LongRead-column {
    display: inline-block;
    vertical-align: top;
}

.LongRead-column--35 {
    width: 35%;
}

.LongRead-column--65 {
    width: 64%;
}

.LongRead-column:nth-child(2) {
    padding-left: 20px;
}

.LongRead-column .LongRead-imgContainer {
    float: none;
    display: block;
}

.LongRead-column .LongRead-imgContainer--left {
    margin: 30px 0px 30px -12%;
}

.LongRead-column .LongRead-imgContainer--right {
    margin: 30px -12% 30px 0px;
}

.LongRead-column .LongRead-imgContainer img {
    width: 100%;
}

.LongRead-column--35 .LongRead-imgContainer--left {
    margin: 30px 0px 30px -30%;
}

.LongRead-column--35 .LongRead-imgContainer--right {
    margin: 30px -30% 30px 0;
}

.LongRead-column--65 .LongRead-imgContainer--left {
    margin: 30px 0px 30px -17%;
}

.LongRead-column--65 .LongRead-imgContainer--right {
    margin: 30px -17% 30px 0;
}

.LongRead-highlight {
    padding: 30px 40px 5px;
}

.LongRead-highlight .h4 {
    margin: 10px 40px 40px;
    font-weight: 700;
}

.Wrapper.Wrapper--set1 .LongRead-highlight {
    background: #7FC2E4;
}

.Wrapper.Wrapper--set2 .LongRead-highlight {
    background: #A1D6CA;
}

.Wrapper.Wrapper--set3 .LongRead-highlight {
    background: #c4d600;
}

/*------------ 29-1. LONG READ RESPONSIVE -----------*/
@media screen and (min-width: 781px) and (max-width: 1099px) {
    .LongRead-chapo {
        margin: 20px 0;
        font-size: 18px;
        line-height: 26px;
        letter-spacing: -0.03em;
        font-weight: 300;
        font-weight: 700;
    }

    .LongRead-quoteText {
        font-size: 25px;
        line-height: 30px;
    }

    .LongRead-quoteAuthor {
        font-size: 18px;
        line-height: 26px;
        letter-spacing: -0.03em;
        font-weight: 300;
    }

    .LongRead-olItem,
    .LongRead ul li {
        font-size: 14px;
        line-height: 16px;
        letter-spacing: -0.03em;
        font-weight: 300;
        line-height: 20px;
    }
}

@media screen and (max-width: 780px) {
    .LongRead {
        padding: 30px 25px 50px;
    }

    .LongRead-chapo {
        margin: 20px 0;
        font-size: 14px;
        line-height: 16px;
        letter-spacing: -0.03em;
        font-weight: 300;
        line-height: 20px;
        font-weight: 700;
    }

    .LongRead .t4 {
        margin: 20px 0;
    }

    .LongRead-quote {
        text-align: center;
        margin: 40px 0;
        padding: 0;
    }

    .LongRead-quoteText {
        font-size: 20px;
        line-height: 25px;
        letter-spacing: -0.03em;
        font-weight: 300;
        margin: 17px 0 22px;
    }

    .LongRead-quoteAuthor {
        font-size: 13px;
        line-height: 16px;
        letter-spacing: -0.03em;
        font-weight: 300;
    }

    .LongRead-ol {
        margin: 0 0 30px;
    }

    .LongRead-olItem {
        padding-left: 40px;
        font-size: 13px;
        line-height: 16px;
        letter-spacing: -0.03em;
        font-weight: 300;
        margin: 17px 0;
    }

    .LongRead-olItem::before {
        font-size: 30px;
        line-height: 30px;
    }

    .LongRead ul {
        margin: 0 0 30px 20px;
    }

    .LongRead ul li {
        font-size: 13px;
        line-height: 16px;
        letter-spacing: -0.03em;
        font-weight: 300;
    }

    .LongRead-imgContainer {
        margin: 30px -25px;
        float: none;
    }

    .LongRead-img--66,
    .LongRead-img--33,
    .LongRead-img {
        width: 100%;
        margin: 10px 0;
    }

    .LongRead-columns {
        margin: 30px 0;
    }

    .LongRead-column {
        width: 100%;
    }

    .LongRead-column:nth-child(2) {
        padding: 0;
    }

    .LongRead-column--35 .LongRead-imgContainer--left,
    .LongRead-column--35 .LongRead-imgContainer--right,
    .LongRead-column--65 .LongRead-imgContainer--left,
    .LongRead-column--65 .LongRead-imgContainer--right {
        margin: 0 -25px;
    }

    .LongRead-highlight {
        padding: 20px 20px 5px;
    }

    .LongRead-highlight .h4 {
        margin: 10px 0 20px;
    }
}

/*--------------------------*/
/*         30. MAP          */
/*--------------------------*/
.MapBlock {
    margin: 50px 0;
    padding: 0 8%;
}

.MapBlock-intro .h5 {
    margin: 0 0 25px;
}

.MapBlock-intro .t3 {
    margin: 0 0 60px;
}

.MapBlock-filterForm {
    margin: 0 -10px;
}

.MapBlock-halfInput,
.MapBlock-smallInput {
    border-radius: 40px;
    border: 2px solid #ffffff;
    background: none;
    padding: 5px 15px;
    color: #162056;
    margin-bottom: 20px;
    display: inline-block;
    margin-right: 10px;
    margin-left: 10px;
    width: calc(50% - 23px);
    font-size: 18px;
    line-height: 26px;
    letter-spacing: -0.03em;
    font-weight: 300;
    outline: none;
    font-family: 'Montserrat', arial;
    font-weight: 400;
}

.MapBlock-halfInput--small,
.MapBlock-smallInput--small {
    width: 17%;
}

.Wrapper--set1 .MapBlock-halfInput {
    border-color: #7FC2E4;
}

.Wrapper--set2 .MapBlock-halfInput {
    border-color: #A1D6CA;
}

.Wrapper--set3 .MapBlock-halfInput {
    border-color: #c4d600;
}

.MapBlock-filterForm ::-webkit-input-placeholder {
    /* Chrome/Opera/Safari */
    color: #162056;
}

.MapBlock-filterForm ::-moz-placeholder {
    /* Firefox 19+ */
    color: #162056;
}

.MapBlock-filterForm :-ms-input-placeholder {
    /* IE 10+ */
    color: #162056;
}

.MapBlock-filterForm :-moz-placeholder {
    /* Firefox 18- */
    color: #162056;
}

.MapBlock-buttons {
    float: right;
    margin-right: 10px;
}

.MapBlock-buttons .Button {
    padding: 5px 15px;
    margin-top: 0;
    outline: none;
    cursor: pointer;
}

.Wrapper--set1 .MapBlock-buttons .Button {
    border-color: #7FC2E4;
    background: #7FC2E4;
}

.Wrapper--set2 .MapBlock-buttons .Button {
    border-color: #A1D6CA;
    background: #A1D6CA;
}

.Wrapper--set3 .MapBlock-buttons .Button {
    border-color: #c4d600;
    background: #c4d600;
}

.Wrapper--set1 .MapBlock-buttons .Button:hover {
    border-color: #162056;
    background: #162056;
    color: #ffffff;
}

.Wrapper--set2 .MapBlock-buttons .Button:hover {
    border-color: #42145F;
    background: #42145F;
    color: #ffffff;
}

.Wrapper--set3 .MapBlock-buttons .Button:hover {
    border-color: #00859b;
    background: #00859b;
    color: #ffffff;
}

.MapBlock-map {
    width: 100%;
    height: 0px;
    padding-bottom: 50%;
    margin: 20px 0;
}

.map-infos-container {
    width: 300px !important;
    max-height: 150px;
}

.gm-style .gm-style-iw {
    padding: 5px 20px;
    left: 0 !important;
    width: 100% !important;
}

.gm-style .gm-style-iw>div {
    display: block;
    width: 100%;
}

.gm-style-bg {
    width: 300px !important;
    background: #7FC2E4 !important;
    max-height: 150px;
}

.map-info-content {
    width: 100%;
}

.map-info-location {
    color: #ffffff;
    text-align: center;
    font-size: 14px;
}

.map-infos-close {
    background: url("../images/close-map.png") no-repeat center;
}

.map-infos-close img {
    display: none;
}

.gm-style-arrow {
    display: none !important;
}

.MapBlock-focus {
    border-bottom: 1px solid #162056;
    overflow: hidden;
    height: 0;
    opacity: 0;
}

.MapBlock-focusText {
    font-size: 20px;
    padding: 25px 0;
    display: inline-block;
    vertical-align: top;
    width: 55%;
}

.MapBlock-focusText strong {
    font-size: 22px;
    display: block;
    margin-bottom: 20px;
}

.MapBlock-focusMap {
    width: 40%;
    display: inline-block;
    vertical-align: top;
    float: right;
    height: 0;
    padding-bottom: 25%;
    margin: 10px 0 60px;
}

.js-itineraire {
    display: inline-block;
    text-transform: uppercase;
    font-size: 18px;
    font-weight: 700;
    margin-top: 20px;
    cursor: pointer;
}

.MapBlock-focusTextItSvg line {
    fill: #FFFFFF;
    stroke: #162056;
    stroke-linecap: round;
    stroke-miterlimit: 10;
}

.MapBlock-focusTextItSvg polyline {
    fill: none;
    stroke: #162056;
    stroke-linecap: round;
    stroke-miterlimit: 10;
}

.MapBlock-focusSocial {
    margin-top: 80px;
}

.MapBlock-fb {
    display: inline-block;
    margin-right: 10px;
}

.MapBlock-fb .st0 {
    -webkit-clip-path: url(#SVGID_2_);
    clip-path: url(#SVGID_2_);
    fill: #7FC2E4;
}

.MapBlock-fb .st1 {
    -webkit-clip-path: url(#SVGID_2_);
    clip-path: url(#SVGID_2_);
    fill: #FFFFFF;
}

.MapBlock-tw {
    display: inline-block;
    margin-right: 10px;
}

.MapBlock-tw .st0 {
    -webkit-clip-path: url(#SVGID_2_);
    clip-path: url(#SVGID_2_);
    fill: #7FC2E4;
}

.MapBlock-tw .st1 {
    -webkit-clip-path: url(#SVGID_2_);
    clip-path: url(#SVGID_2_);
    fill: #FFFFFF;
}

.MapBlock-mail {
    display: inline-block;
    margin-right: 10px;
}

.MapBlock-mail .st0 {
    -webkit-clip-path: url(#SVGID_2_);
    clip-path: url(#SVGID_2_);
    fill: #7FC2E4;
}

.MapBlock-mail .st1 {
    -webkit-clip-path: url(#SVGID_2_);
    clip-path: url(#SVGID_2_);
    fill: #FFFFFF;
}

.MapBlock-travelMode {
    display: none;
    clear: both;
}

.MapBlock-travelMode select {
    border-radius: 40px;
    border: 2px solid #7FC2E4;
    background: none;
    padding: 5px 15px;
    color: #162056;
    margin-bottom: 10px;
    display: inline-block;
    margin-right: 10px;
    margin-left: 10px;
    width: 200px;
    font-size: 18px;
    line-height: 26px;
    letter-spacing: -0.03em;
    font-weight: 300;
    outline: none;
    font-family: 'Montserrat', arial;
    font-weight: 400;
}

.MapBlock-directionPanel {
    clear: both;
}

.adp-legal {
    font-size: 12px;
}

.adp,
.adp table {
    font-family: 'Montserrat', Helvetica, Arial, sans-serif;
    color: #162056 !important;
}

.adp-placemark {
    color: #ffffff !important;
    border: 0 !important;
    font-weight: 700 !important;
    padding: 15px 20px 15px 50px;
    background: #f4f4f4 url("../images/marker.png") no-repeat 20px center !important;
}

.adp-placemark img {
    display: none !important;
}

div[data-leg-index="0"] .adp-placemark {
    background: #f4f4f4 url("../images/own-marker.png") no-repeat 20px center !important;
}

.MapBlock-resultsItem {
    border-bottom: 1px solid #162056;
    padding: 30px 0px;
    background: url("../images/marker.png") no-repeat 5% center;
    font-size: 18px;
}

.MapBlock-resultsTitle {
    display: inline-block;
    vertical-align: top;
    width: 35%;
    padding-left: 10%;
}

.MapBlock-resultsAddress {
    display: inline-block;
    vertical-align: top;
    width: 35%;
    padding-right: 10px;
}

.MapBlock-resultsTel {
    display: inline-block;
    vertical-align: top;
    width: 30%;
}

.MapBlock-resultsItem.active .MapBlock-resultsTel {
    font-weight: 700;
}

/*------------ 30. map RESPONSIVE -----------*/
@media screen and (min-width: 781px) and (max-width: 1099px) {
    .MapBlock-intro .t3 {
        margin-bottom: 40px;
    }

    .MapBlock-halfInput,
    .MapBlock-smallInput {
        font-size: 14px;
        line-height: 16px;
        letter-spacing: -0.03em;
        font-weight: 300;
        line-height: 20px;
    }

    .MapBlock-focusText,
    .js-itineraire,
    .MapBlock-resultsItem {
        font-size: 16px;
    }

    .MapBlock-focusSocial {
        margin-top: 30px;
    }

    .MapBlock-focusSocial svg {
        width: 35px;
        height: 35px;
    }
}

@media screen and (max-width: 780px) {
    .MapBlock {
        padding: 0 25px;
    }

    .MapBlock-intro .t3 {
        margin: 0 0 20px;
    }

    .MapBlock-filterForm {
        margin: 0 0 20px;
        overflow: hidden;
    }

    .MapBlock-halfInput,
    .MapBlock-smallInput,
    .MapBlock-travelMode select {
        width: 100%;
        display: block;
        margin: 0 0 15px;
        font-size: 13px;
        line-height: 16px;
    }

    .MapBlock-travelMode select {
        display: inline-block;
        width: 150px;
        margin-bottom: 5px;
    }

    .MapBlock-focusText {
        width: 100%;
        display: block;
        padding: 10px 0;
    }

    .MapBlock-focusText,
    .js-itineraire,
    .MapBlock-resultsItem {
        font-size: 13px;
        line-height: 16px;
        letter-spacing: -0.03em;
        font-weight: 300;
    }

    .MapBlock-focusText strong {
        font-size: 15px;
        margin: 0 0 17px;
    }

    .js-itineraire {
        margin-top: 10px;
        font-weight: 700;
    }

    .js-itineraire svg {
        width: 10px;
        height: 10px;
    }

    .MapBlock-focusSocial {
        margin-top: 20px;
    }

    .MapBlock-focusSocial svg {
        width: 30px;
        height: 30px;
    }

    .MapBlock-focusMap {
        display: none;
    }

    .MapBlock-travelMode {
        margin-top: 20px;
    }

    .MapBlock-resultsItem {
        padding: 20px 20px 20px 20%;
    }

    .MapBlock-resultsTitle,
    .MapBlock-resultsAddress,
    .MapBlock-resultsTel {
        display: block;
        width: 100%;
        padding: 0;
        margin-bottom: 5px;
    }
}