/*variables*/
/*mixins*/
@media (max-width: 1200px) {
  html .mobile {
    display: inline;
  }
  html .nomobile {
    display: none;
  }
  html .center {
    position: relative;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 30px;
    padding-right: 30px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  html header {
    height: auto;
    overflow: visible;
  }
  html header .logo {
    position: relative;
    z-index: 2000;
    margin-top: 50px;
  }
  html header .logo.active {
    filter: brightness(1) invert(0);
  }
  html header nav {
    display: none;
    position: absolute;
    width: 100%;
    margin-top: 0px;
    margin-left: 0px;
    padding-top: 0px;
    padding-bottom: 0px;
    border-left: 0;
  }
  html header .menumobile {
    position: absolute;
    z-index: 2000;
    top: 70px;
    right: 0px;
    width: auto;
    padding-right: 80px;
  }
  html header .menumobile .text {
    float: left;
    margin-top: -11px;
    color: #fff;
    letter-spacing: 0.1em;
    font-size: 1.2em;
    font-family: "novecento-sans-wide", sans-serif;
    font-weight: 200;
    font-style: normal;
    text-transform: uppercase;
  }
  html header .menumobile .text.active {
    color: #008a99;
  }
  html header .menumobile .menu {
    position: absolute;
    width: 32px;
    height: 32px;
    top: 0px;
    right: 0px;
    transform: translate(-50%, -50%);
    overflow: hidden;
    padding: 10px;
    cursor: pointer;
  }
  html header .menumobile .menu.active:before {
    animation: slideLeft 0.2s 0.05s ease-out forwards;
  }
  html header .menumobile .menu.active:after {
    animation: slideRight 0.2s 0.05s ease-out forwards;
  }
  html header .menumobile .menu.active .bar {
    animation: rotate45 0.2s ease-out forwards;
  }
  html header .menumobile .menu.active .bar:last-child {
    animation: rotate135 0.2s 0.2s ease-out forwards;
  }
  html header .menumobile .menu.back:before {
    transform: translateX(-120%);
    animation: slideBack 0.2s 0.05s ease-out forwards;
  }
  html header .menumobile .menu.back:after {
    transform: translateX(120%);
    animation: slideBack 0.2s 0.05s ease-out forwards;
  }
  html header .menumobile .menu.back .bar {
    transform: rotate(-45deg);
    animation: rotateBack 0.2s ease-out forwards;
  }
  html header .menumobile .menu.back .bar:last-child {
    transform: rotate(-135deg);
    animation: rotateBack 0.2s 0.2s ease-out forwards;
  }
  html header .menumobile .menu:before {
    content: '';
    display: block;
    width: 32px;
    height: 2px;
    background: #fff;
  }
  html header .menumobile .menu:after {
    content: '';
    display: block;
    width: 32px;
    height: 2px;
    background: #fff;
  }
  html header .menumobile .menu .bar {
    display: block;
    width: 32px;
    height: 2px;
    background: #fff;
    margin: 10px 0;
  }
  html header .menumobile .menu .bar:last-child {
    opacity: 0;
    transform: rotate(-45deg);
    position: absolute;
    top: 12px;
  }
  html header .menumobile .menu.active .bar {
    background: #008a99;
  }
  html header nav.active {
    display: inline;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1000;
    width: 100%;
    height: 100dvh;
    min-height: 100dvh;
    padding: 0;
    padding-top: 180px;
    background: rgba(255, 255, 255, 0.9);
  }
  html header nav.active ul {
    float: left;
    width: 100%;
  }
  html header nav.active ul li {
    float: left;
    z-index: 100000000;
    width: 100%;
  }
  html header nav.active ul li a {
    float: left;
    width: 100%;
    padding-top: 10px;
    padding-bottom: 10px;
    padding-left: 0px;
    padding-right: 0px;
    margin-top: 10px;
    margin-bottom: 10px;
    margin-left: 0px;
    text-align: center;
    font-size: 1.8em;
    font-family: "novecento-sans-wide", sans-serif;
    font-weight: 200;
    font-style: normal;
    color: #6f6f6f;
  }
  html header nav.active ul li a.active {
    color: #008a99;
  }
  html header nav.active ul li a:hover,
  html header nav.active ul li a.active:hover {
    color: #008a99;
  }
  html header .lang-switcher {
    right: 30px;
  }
  html header.scrolled {
    height: auto;
    padding-bottom: 50px;
    -moz-transition: all 0.2s ease 0s;
    -webkit-transition: all 0.2s ease 0s;
    -o-transition: all 0.2s ease 0s;
    transition: all 0.2s ease 0s;
  }
  html header.scrolled .logo {
    margin-top: 50px;
    filter: brightness(1) invert(0);
  }
  html header.scrolled nav {
    margin-top: 0px;
    margin-left: 0px;
    padding-bottom: 0px;
    padding-top: 180px;
    border-left: 0;
  }
  html header.scrolled nav ul li a {
    color: #6f6f6f;
  }
  html header.scrolled nav ul li a.active {
    color: #008a99;
  }
  html header.scrolled nav ul li a:hover,
  html header.scrolled nav ul li a.active:hover {
    color: #008a99;
  }
  html header.scrolled .menumobile .text {
    color: #008a99;
  }
  html header.scrolled .menumobile .menu:before {
    background: #008a99;
  }
  html header.scrolled .menumobile .menu:after {
    background: #008a99;
  }
  html header.scrolled .menumobile .menu .bar {
    background: #008a99;
  }
}
@media (max-width: 900px) {
  html header nav.active ul li a {
    padding-top: 10px;
    padding-bottom: 10px;
    margin-top: 10px;
    margin-bottom: 10px;
    font-size: 1.4em;
  }
  html main .bloc,
  html main .bloc3 {
    height: 600px;
  }
  html main .bloc .image,
  html main .bloc3 .image {
    position: absolute;
    bottom: 0;
    width: 100%;
    height: 50%;
  }
  html main .bloc .text,
  html main .bloc3 .text {
    width: 100%;
    height: 50%;
    padding-bottom: 50px;
  }
  html main .bloc2 {
    width: 100%;
    margin-right: 0;
    padding-left: 0px;
  }
  html main .bloc2:nth-child(even) {
    padding-right: 0px;
  }
  html main .bloc4 {
    height: auto;
  }
  html main .bloc4 img {
    max-width: 100%;
    height: auto;
  }
}
@media (max-width: 780px) {
  html .slideshow .rslides li .content .title {
    font-size: 1.8em;
    line-height: 1.4em;
    letter-spacing: 0.05em;
  }
  html main .map {
    height: 360px;
  }
  html main .map .coord {
    float: left;
    bottom: 0;
    left: 0;
    width: 100%;
    height: auto;
    padding-bottom: 20px;
    right: initial;
    top: initial;
    font-size: 1em;
  }
  html main .map .coord h2 {
    padding: 0;
    padding-top: 10px;
    font-size: 1.2em;
  }
  html main .map .coord p {
    padding-bottom: 5px;
  }
  html main .map .coord p br {
    display: none;
  }
  html .form section.small-left {
    width: 100%;
    margin-right: 0;
  }
  html .form section.small-right {
    width: 100%;
    margin-left: 0;
  }
}
@media (max-width: 380px) {
  html header .menumobile .text {
    display: none;
  }
  html main .bloc .text {
    padding-top: 30px;
  }
}
@keyframes rotate135 {
  form {
    opacity: 1;
    transform: rotate(-45deg);
  }
  to {
    opacity: 1;
    transform: rotate(-135deg);
  }
}
@keyframes rotate45 {
  to {
    transform: rotate(-45deg);
  }
}
@keyframes rotateBack {
  to {
    transform: rotate(0);
  }
}
@keyframes slideRight {
  to {
    transform: translateX(142%);
  }
}
@keyframes slideLeft {
  to {
    transform: translateX(-142%);
  }
}
@keyframes slideBack {
  to {
    transform: translateX(0);
  }
}
/*# sourceMappingURL=responsive.css.map */