a, abbr, acronym, address, applet, article, aside, audio, b, big, blockquote, body, canvas, caption, center, cite, code, dd, del, details, dfn, div, dl, dt, em, embed, fieldset, figcaption, figure, footer, form, h1, h2, h3, h4, h5, h6, header, hgroup, html, i, iframe, img, ins, kbd, label, legend, li, mark, menu, nav, object, ol, output, p, pre, q, ruby, s, samp, section, small, span, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, time, tr, tt, u, ul, var, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline
}

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

body {
    line-height: 1
}

ol, ul {
    list-style: none
}

blockquote, q {
    quotes: none
}

blockquote:after, blockquote:before, q:after, q:before {
    content: "";
    content: none
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

.columns-2 {
    -webkit-column-count: 1;
    column-count: 1;
    -webkit-column-gap: 0;
    column-gap: 0
}

@media only screen and (min-width: 768px) {
    .columns-2 {
        -webkit-column-count: 2;
        column-count: 2;
        -webkit-column-gap: 30px;
        column-gap: 30px
    }
}

.margin-bottom {
    margin-bottom: 30px
}

@media only screen and (min-width: 992px) {
    .margin-bottom {
        margin-bottom: 60px
    }
}

.margin-bottom-mobile {
    margin-bottom: 30px
}

@media only screen and (min-width: 992px) {
    .margin-bottom-mobile {
        margin-bottom: 0
    }
}

BODY {
    line-height: 1.7;
    font-size: 14px;
    border: 0;
    margin: 0
}

BODY, H1 {
    font-family: museo-slab, serif;
    font-weight: 300
}

H1 {
    font-size: 32px;
    line-height: 38px;
    text-align: center;
    margin-bottom: 60px;
    margin-top: 80px
}

@media only screen and (min-width: 992px) {
    H1 {
        margin-top: 60px
    }
}

.h2, H2 {
    font-size: 32px;
    line-height: 38px;
    font-weight: 300;
    text-align: left;
    margin-bottom: 30px;
    font-family: museo-slab, serif
}

.h2 {
    margin-top: 0
}

H3 {
    margin-top: 20px;
    font-weight: 400;
    color: #000
}

H3, H3 .title {
    font-size: 18px;
    line-height: 22px;
    margin-bottom: 10px
}

H3 .subtitle, H3 .title {
    display: block
}

H3 .subtitle {
    font-size: 14px;
    line-height: 19px;
    margin-bottom: 50px;
    font-family: Open Sans
}

H4 {
    font-size: 20px;
    line-height: 24px;
    margin-bottom: 20px;
    font-family: museo-slab, serif
}

@media only screen and (min-width: 768px) {
    H4 {
        font-size: 28px;
        line-height: 41px;
        margin-bottom: 10px
    }
}

H5 {
    color: #000;
    font-weight: 600;
    margin-bottom: 5px
}

H5, P {
    font-size: 14px;
    line-height: 1.6;
}

P, P .subtitle {
    margin-bottom: 10px
}

P .subtitle {
    display: block;
    font-size: 14px;
    line-height: 19px;
    font-family: Open Sans
}

P .big-content {
    display: block;
    font-size: 28px;
    line-height: 33px;
    margin-bottom: 50px
}

@media only screen and (min-width: 768px) {
    P .big-content {
        font-size: 32px;
        line-height: 38px
    }
}

P .small-content {
    display: block;
    font-size: 10px;
    line-height: 1.6
}

STRONG {
    font-weight: 700
}

.padding-bottom {
    padding-bottom: 30px !important
}

.margin-bottom {
    margin-bottom: 30px !important
}

.margin-top {
    margin-top: 30px !important
}

.page-content-top {
    padding: 80px 15px 30px
}

.page-content-top.loaction {
    color: #e4cc46
}

.navbar-default {
    background-clip: padding-box;
    border-radius: 0;
    border: none;
    background-color: #e4cc46;
    margin-bottom: 0;
    z-index: 6
}

.navbar-default .navbar-brand {
    -webkit-transform: translate(-50%);
    transform: translate(-50%);
    position: absolute;
    width: 120px;
    height: auto;
    left: 50%;
    right: 0;
    top: 30px
}

@media only screen and (min-width: 768px) {
    .navbar-default .navbar-brand {
        -webkit-transform: translate(-50%);
        transform: translate(-50%);
        top: 70px
    }
}

@media only screen and (min-width: 992px) {
    .navbar-default .navbar-brand {
        -webkit-transform: translate(0);
        transform: translate(0);
        left: 20px;
        top: 50px;
        padding: 0;
        width: 100px
    }
}

@media only screen and (min-width: 1200px) {
    .navbar-default .navbar-brand {
        width: 120px
    }
}

.navbar-default .navbar-brand .logo {
    width: 100%;
    height: 100%;
    margin-top: 0;
    margin-left: 0;
    transition: 2s
}

.navbar-default .navbar-brand .logo:hover {
    -webkit-transform: rotate(1turn);
    transform: rotate(1turn)
}

.navbar-default .navbar-header {
    width: auto
}

.navbar-default .navbar-header .navbar-toggle {
    background-clip: padding-box;
    border-radius: 0;
    margin-top: 8px;
    border: none;
    cursor: pointer;
    z-index: 5;
    float: left
}

@media only screen and (min-width: 768px) {
    .navbar-default .navbar-header .navbar-toggle {
        float: right
    }
}

.navbar-default .navbar-header .navbar-toggle.collapsed {
    position: relative
}

.navbar-default .navbar-header .navbar-toggle.collapsed .icon-bar {
    transition-duration: .3s;
    transition-property: transform, opacity, margin;
    opacity: 1 !important
}

.navbar-default .navbar-header .navbar-toggle.collapsed .icon-bar.first {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    margin-top: 4px
}

.navbar-default .navbar-header .navbar-toggle.collapsed .icon-bar.last {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    margin-bottom: 4px
}

.navbar-default .navbar-header .navbar-toggle:active, .navbar-default .navbar-header .navbar-toggle:focus, .navbar-default .navbar-header .navbar-toggle:hover, .navbar-default .navbar-header .navbar-toggle:visited {
    background-color: transparent
}

.navbar-default .navbar-header .navbar-toggle .icon-bar {
    transition-duration: .3s;
    transition-property: transform, opacity, margin;
    opacity: 0;
    background-color: #fff;
    width: 30px
}

.navbar-default .navbar-header .navbar-toggle .icon-bar + .icon-bar {
    margin-top: 9px
}

.navbar-default .navbar-header .navbar-toggle .icon-bar.first {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transform-origin: 0 50%;
    transform-origin: 0 50%;
    opacity: 1;
    margin-top: 0
}

.navbar-default .navbar-header .navbar-toggle .icon-bar.last {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    -webkit-transform-origin: 0 50%;
    transform-origin: 0 50%;
    opacity: 1;
    margin-bottom: 0
}

.navbar-default .navbar-collapse {
    box-shadow: none;
    border: none
}

.navbar-default .navbar-collapse .navbar-nav {
    padding-top: 80px
}

@media only screen and (min-width: 768px) {
    .navbar-default .navbar-collapse .navbar-nav {
        padding-top: 0
    }
}

.navbar-default .navbar-collapse .navbar-nav .navbar-item {
    padding: 10px 0;
    text-align: center
}

@media only screen and (min-width: 768px) {
    .navbar-default .navbar-collapse .navbar-nav .navbar-item {
        height: 100px;
        margin-bottom: 30px
    }
}

@media only screen and (min-width: 992px) {
    .navbar-default .navbar-collapse .navbar-nav .navbar-item {
        margin-bottom: 0
    }
}

.navbar-default .navbar-collapse .navbar-nav .navbar-item:last-child .item-link {
    margin-right: 0
}

.navbar-default .item-link {
    color: #000 !important;
    font-size: 14px;
    font-weight: 500;
    line-height: 17px;
    text-align: center;
    display: inline-block
}

@media only screen and (min-width: 768px) {
    .navbar-default .item-link {
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        top: 50%;
        display: block;
        margin-right: 10px;
        padding: 10px
    }
}

.navbar-default .item-link:before {
    right: 50%
}

.navbar-default .item-link:after, .navbar-default .item-link:before {
    content: "";
    position: absolute;
    bottom: 0;
    height: 2px;
    background-color: #000;
    width: 0;
    transition: .3s
}

.navbar-default .item-link:after {
    left: 50%
}

.navbar-default .item-link.active, .navbar-default .item-link:hover {
    color: #000
}

.navbar-default .item-link.active.item-link-lang:after, .navbar-default .item-link.active.item-link-lang:before, .navbar-default .item-link:hover.item-link-lang:after, .navbar-default .item-link:hover.item-link-lang:before {
    content: none
}

.navbar-default .item-link.active:after, .navbar-default .item-link.active:before, .navbar-default .item-link:hover:after, .navbar-default .item-link:hover:before {
    width: 50%
}

.navbar-default .second-navigation {
    height: 80px
}

@media only screen and (min-width: 768px) {
    .navbar-default .second-navigation {
        width: auto
    }
}

.navbar-default .second-navigation .navbar-item {
    height: 50px;
    float: right
}

@media only screen and (min-width: 768px) {
    .navbar-default .second-navigation .navbar-item {
        float: left
    }
}

.navbar-default .second-navigation .navbar-item:last-child .item-link {
    margin-right: 0
}

.navbar-default .second-navigation .navbar-item .item-link {
    color: #000;
    font-size: 14px;
    font-weight: 500;
    line-height: 17px;
    text-align: center;
    margin-right: 20px;
    padding: 10px 15px
}

.navbar-default .second-navigation .navbar-item .item-link SPAN {
    display: inline-block
}

@media only screen and (min-width: 768px) {
    .navbar-default .second-navigation .navbar-item .item-link {
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        top: 50%;
        margin-right: 0;
        padding: 10px
    }
}

@media only screen and (min-width: 992px) {
    .navbar-default .second-navigation .navbar-item .item-link {
        padding: 10px 15px
    }
}

.navbar-default .second-navigation .navbar-item .item-link.dropdown {
    margin-right: 0
}

.navbar-default .second-navigation .navbar-item .item-link.dropdown.active:after, .navbar-default .second-navigation .navbar-item .item-link.dropdown:hover:after {
    content: none
}

.navbar-default .second-navigation .navbar-item .item-link.dropdown.open .dropdown-menu {
    position: absolute;
    bottom: 0;
    min-height: 175px
}

.navbar-default .second-navigation .navbar-item .item-link.dropdown BUTTON {
    background-color: transparent;
    border: none;
    color: #8b7d2d;
    padding: 0
}

.navbar-default .second-navigation .navbar-item .item-link.dropdown BUTTON .caret {
    margin-left: 11px
}

.navbar-default .second-navigation .navbar-item .item-link.dropdown .dropdown-menu {
    background-clip: padding-box;
    border-radius: 0;
    border: none;
    margin: 0;
    padding: 0;
    background-color: #fff
}

.navbar-default .second-navigation .navbar-item .item-link.dropdown .dropdown-menu LI {
    padding: 10px
}

.navbar-default .second-navigation .navbar-item .item-link.dropdown .dropdown-menu LI:hover {
    background-color: #f2f4f4
}

.navbar-default .second-navigation .navbar-item .item-link.dropdown .dropdown-menu LI.dropdown-header:hover {
    background-color: transparent
}

.body-content {
    overflow-x: hidden;
    background-color: #f2f4f4
}

.body-content.white {
    background-color: #fff
}

.body-content .content {
    position: relative
}

.body-content .content.yellow {
    background-color: #e4cc46
}

.body-content .content.grey {
    background-color: #f2f4f4
}

.body-content .content.white {
    background-color: #fff
}

.body-content .content .underlined {
    border-bottom: 2px solid #000;
    padding: 10px;
    line-height: 60px
}

.body-content .content .link {
    display: inline-block;
    color: #e4cc46
}

.body-content .content .container-fluid.white, .body-content .content .container.white {
    background-color: #fff
}

@media only screen and (min-width: 768px) {
    .body-content .content .container-fluid.translate-left, .body-content .content .container.translate-left {
        -webkit-transform: translate(-50px);
        transform: translate(-50px)
    }
}

@media only screen and (min-width: 768px) {
    .body-content .content .container-fluid.translate-left .row, .body-content .content .container.translate-left .row {
        -webkit-transform: translate(25px);
        transform: translate(25px)
    }
}

@media only screen and (min-width: 768px) {
    .body-content .content .container-fluid.translate-right, .body-content .content .container.translate-right {
        -webkit-transform: translate(50px);
        transform: translate(50px)
    }
}

@media only screen and (min-width: 768px) {
    .body-content .content .container-fluid.translate-top-left, .body-content .content .container.translate-top-left {
        -webkit-transform: translate(-50px, -100px);
        transform: translate(-50px, -100px)
    }
}

@media only screen and (min-width: 768px) {
    .body-content .content .container-fluid.translate-top-left .row, .body-content .content .container.translate-top-left .row {
        -webkit-transform: translate(25px);
        transform: translate(25px)
    }
}

.body-content .content.opening {
    position: relative
}

.body-content .content.opening .container-inner {
    padding-right: 15px
}

@media only screen and (min-width: 768px) {
    .body-content .content.opening .container-inner {
        padding-right: 0
    }
}

.body-content .content.opening .container-inner .opening-hours-wrapper {
    position: relative
}

@media only screen and (min-width: 768px) {
    .body-content .content.opening .container-inner .opening-hours-wrapper {
        margin-top: 0
    }
}

.body-content .content.opening .container-inner .opening-hours-wrapper .opening-hours {
    color: #79888b;
    font-size: 18px;
    line-height: 33px;
    margin: 10px 0;
    text-align: center
}

@media only screen and (min-width: 768px) {
    .body-content .content.opening .container-inner .opening-hours-wrapper .opening-hours {
        text-align: left
    }
}

.body-content .content.opening .container-inner .opening-hours-wrapper .opening-hours.last {
    margin-bottom: 50px
}

@media only screen and (min-width: 768px) {
    .body-content .content.opening .container-inner .opening-hours-wrapper .opening-hours.last {
        margin-bottom: 0
    }
}

.body-content .content.opening .container-inner .opening-hours-table {
    padding-right: 15px
}

.body-content .content.opening .container-inner .opening-hours-table .opening-hours-row {
    margin: 10px 0;
    text-align: center
}

@media only screen and (min-width: 768px) {
    .body-content .content.opening .container-inner .opening-hours-table .opening-hours-row {
        text-align: center
    }
}

@media only screen and (min-width: 992px) {
    .body-content .content.opening .container-inner .opening-hours-table .opening-hours-row {
        text-align: left
    }
}

.body-content .content.opening .container-inner .opening-hours-table .opening-hours-row .opening-hours-period {
    vertical-align: top;
    color: #79888b;
    font-size: 18px;
    line-height: 33px;
    text-align: center;
    display: inline-block;
    width: 100%
}

.body-content .content.opening .container-inner .opening-hours-table .opening-hours-row .opening-hours-time {
    display: block;
    vertical-align: top;
    color: #79888b;
    font-size: 18px;
    line-height: 33px;
    min-width: 300px;
    text-align: center
}

@media only screen and (min-width: 768px) {
    .body-content .content.opening .container-inner .opening-hours-table .opening-hours-row .opening-hours-time {
        display: inline-block
    }
}

@media only screen and (min-width: 992px) {
    .body-content .content.opening .container-inner .opening-hours-table .opening-hours-row .opening-hours-time {
        text-align: left
    }
}

@media only screen and (min-width: 992px) {
    .body-content .content.opening .container-inner .opening-hours-table .opening-hours-row .opening-hours-time .time-detail {
        display: inline-block;
        white-space: nowrap;
        font-size: 14px
    }
}

.body-content .content .bg-image {
    position: relative;
    background-image: url(../media/images/bg-image3.jpg);
    background-repeat: no-repeat;
    background-position: 50%;
    background-size: cover;
    margin: 0 -15px
}

.body-content .content .bg-image:before {
    display: block;
    content: "";
    width: 100%;
    padding-top: 47.36842105%
}

.body-content .content .bg-image > .content {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0
}

.body-content .content .bg-image.team {
    background-image: url(../media/images/team.jpg)
}

.body-content .content .opening-description {
    position: relative;
    padding-bottom: 50px;
    padding-right: 15px
}

.body-content .content .contact-card {
    width: 100%;
    display: inline-block;
    vertical-align: top;
    margin-bottom: 50px;
    text-align: center
}

.body-content .content .contact-card .card-detail {
    margin-bottom: 50px
}

.body-content .content .contact-card .card-detail .detail {
    display: block;
    margin-bottom: 50px;
    text-align: center
}

@media only screen and (min-width: 768px) {
    .body-content .content .contact-card .card-detail .detail {
        margin-bottom: 50px
    }
}

.body-content .content .contact-card .card-detail .detail .small {
    color: #79888b;
    font-family: Open Sans;
    font-size: 14px;
    line-height: 19px;
    padding: 0;
    margin: 0;
    margin-bottom: 20px
}

.body-content .content .contact-card .card-detail .detail .contact-tel {
    color: #e4cc46;
    font-size: 16px;
    line-height: 19px;
    margin-bottom: 10px;
    text-decoration: none;
    display: block
}

@media only screen and (min-width: 768px) {
    .body-content .content .contact-card .card-detail .detail .contact-tel {
        font-size: 32px;
        line-height: 38px;
        margin-bottom: 20px
    }
}

.body-content .content .contact-card .card-detail .detail .contact-mail {
    color: #e4cc46;
    font-size: 16px;
    line-height: 19px;
    text-decoration: none;
    display: block
}

@media only screen and (min-width: 768px) {
    .body-content .content .contact-card .card-detail .detail .contact-mail {
        font-size: 18px;
        line-height: 22px
    }
}

.body-content .content .contact-card .cv {
    margin-bottom: 30px;
    padding-right: 0;
    padding-left: 15px
}

@media only screen and (min-width: 768px) {
    .body-content .content .contact-card .cv {
        padding-right: 15px;
        padding-left: 0
    }
}

.body-content .content .contact-card .cv LI {
    font-family: Open Sans;
    list-style-type: square;
    text-align: left;
    font-size: 16px
}

.body-content .content .contact-card .cv LI .highlight {
    font-weight: 600
}

.body-content .content.services {
    padding-bottom: 0
}

.body-content .content.services .service {
    font-family: Open Sans;
    font-size: 14px;
    line-height: 24px;
    margin-bottom: 30px;
    padding-right: 15px
}

.body-content .content.services .service.last {
    margin-bottom: 0
}

@media only screen and (min-width: 768px) {
    .body-content .content.services .service {
        margin-bottom: 0;
        text-align: left;
        padding-right: 0
    }
}

.body-content .content.urgences img {
    width: 100%;
    height: auto
}

.body-content .content.urgences .bg-image-urgence {
    position: relative;
    background-image: url(../media/images/centre-2.jpg);
    background-repeat: no-repeat;
    background-position: 50%;
    background-size: cover;
    width: 100%
}

.body-content .content.urgences .bg-image-urgence:before {
    display: block;
    content: "";
    width: 100%;
    padding-top: 56.25%
}

.body-content .content.urgences .bg-image-urgence > .content {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0
}

@media only screen and (min-width: 768px) {
    .body-content .content.urgences .bg-image-urgence {
        z-index: 1;
        width: calc(50% - 15px);
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        border: none
    }
}

.body-content .content.location .contact-details {
    width: 100%;
    position: relative;
    text-align: center
}

@media only screen and (min-width: 992px) {
    .body-content .content.location .contact-details {
        text-align: left
    }
}

.body-content .content.location .contact-details .link {
    font-family: museo-slab, serif;
    font-size: 18px;
    line-height: 33px;
    margin-bottom: 0
}

.body-content .content.location .info {
    color: #fff;
    position: relative;
    width: 100%;
    margin: 0 auto;
    bottom: auto;
    text-align: center;
    z-index: 4
}

@media only screen and (min-width: 768px) {
    .body-content .content.location .info {
        text-align: left;
        position: absolute;
        width: 80%;
        margin: 0 auto;
        bottom: -100px;
        right: 0;
        z-index: 3
    }
}

.body-content .content.location .info .inner {
    background-color: #79888b;
    padding: 30px
}

.body-content .content.location .info .inner P {
    font-family: Open Sans;
    font-size: 14px;
    line-height: 23px;
    margin-bottom: 30px
}

.body-content .content.location .info .inner .text-right {
    text-align: center
}

.body-content .content.location .info .inner .cta {
    margin-bottom: 40px
}

@media only screen and (min-width: 768px) {
    .body-content .content.location .info .inner .cta {
        margin-bottom: 0
    }
}

.body-content .content.contact {
    z-index: 2
}

.body-content .content.contact #contact-form {
    background-color: transparent;
    padding-bottom: 50px;
    margin-bottom: 50px;
    border-bottom: 1px solid #f2f4f4
}

@media only screen and (min-width: 768px) {
    .body-content .content.contact #contact-form {
        box-shadow: 0 1px 4px 0 rgba(0, 0, 0, .1);
        margin-top: 0;
        background-color: #fff;
        border: none;
        margin-bottom: 0;
        padding-bottom: 0
    }
}

.body-content .content.contact #contact-form H4 {
    margin-bottom: 40px
}

@media only screen and (min-width: 768px) {
    .body-content .content.contact #contact-form H4 {
        padding: 50px 50px 0
    }
}

@media only screen and (min-width: 992px) {
    .body-content .content.contact #contact-form H4 {
        padding: 50px 100px 0
    }
}

.body-content .content.contact #contact-form .form-group {
    margin-bottom: 25px
}

@media only screen and (min-width: 768px) {
    .body-content .content.contact #contact-form .form-group {
        padding: 0 50px
    }
}

@media only screen and (min-width: 992px) {
    .body-content .content.contact #contact-form .form-group {
        padding: 0 100px
    }
}

.body-content .content.contact #contact-form .form-group INPUT, .body-content .content.contact #contact-form .form-group TEXTAREA {
    background-clip: padding-box;
    border-radius: 0;
    box-shadow: none;
    border: none;
    border-bottom: 1px solid #f2f4f4;
    font-family: Open Sans;
    font-size: 16px;
    line-height: 22px;
    padding: 10px 0
}

.body-content .content.contact #contact-form .form-group TEXTAREA {
    resize: none;
    border: none
}

.body-content .content.contact #contact-form .error {
    color: red;
    font-family: Open Sans;
    font-size: 14px;
    line-height: 22px;
    margin-bottom: 20px
}

@media only screen and (min-width: 768px) {
    .body-content .content.contact #contact-form .error {
        padding: 0 100px
    }
}

.body-content .content.contact #contact-form #submit-contact {
    background-clip: padding-box;
    border-radius: 0;
    border: none;
    background-color: #e4cc46;
    padding: 20px 10px;
    width: 100%;
    color: #fff;
    font-size: 16px;
    line-height: 19px
}

@media only screen and (min-width: 992px) {
    .body-content .content.contact #contact-form #submit-contact {
        padding: 40px 20px
    }
}

.body-content .content.contact .contact-card, .body-content .content.contact H3 {
    text-align: left
}

.body-content .content.contact .contact-card H2 {
    text-align: left;
    font-size: 16px;
    margin-bottom: 10px
}

.body-content .content.contact .contact-card .link {
    margin-bottom: 10px
}

.body-content .content.contact .copyright {
    color: #79888b
}

.body-content .content.contact .logo {
    position: absolute;
    right: 15px;
    top: 0;
    width: 80px
}

@media only screen and (min-width: 768px) {
    .body-content .content.contact .logo {
        top: -40px
    }
}

.body-content .content.rv .contact-card, .body-content .content.rv .contact-card .card-detail .detail {
    margin-bottom: 0
}

.cta {
    display: inline-block;
    font-family: museo-slab, serif;
    font-size: 18px;
    font-weight: 500;
    line-height: 22px;
    position: relative;
    text-align: center;
    margin: 10px 0;
    color: #000;
    padding: 0 30px 20px
}

@media only screen and (min-width: 992px) {
    .cta {
        margin-bottom: 0;
        font-size: 18px
    }
}

.cta:active, .cta:focus, .cta:hover, .cta:visited {
    text-decoration: none;
    color: #000
}

.cta:active:before, .cta:focus:before, .cta:hover:before, .cta:visited:before {
    width: 100%
}

.cta:active:after, .cta:focus:after, .cta:hover:after, .cta:visited:after {
    height: 60px
}

.cta:before {
    border-top: 2px solid #e4cc46;
    top: -20px;
    width: 0
}

.cta:after, .cta:before {
    content: "";
    height: 12px;
    position: absolute;
    left: 0;
    right: 0;
    transition: .3s
}

.cta:after {
    border-left: 2px solid #e4cc46;
    border-right: 2px solid #e4cc46;
    border-bottom: 2px solid #e4cc46;
    bottom: 0
}

.cta.black:after {
    border-left: 2px solid #000;
    border-right: 2px solid #000;
    border-bottom: 2px solid #000
}

.cta.black:before {
    border-top: 2px solid back
}

.cta.white {
    color: #fff;
    background: none !important
}

.cta.white:after {
    border-left: 2px solid #fff;
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff
}

.cta.white:before {
    border-top: 2px solid #fff
}

.footer {
    background-color: #f2f4f4;
    padding: 30px 0;
    opacity: 0;
    text-align: center
}

@media only screen and (min-width: 768px) {
    .footer {
        teXt-align: left
    }
}

.footer .content {
    min-height: 50px
}

.footer .content.cta-button {
    margin-bottom: 30px
}

@media only screen and (min-width: 768px) {
    .footer .content.cta-button {
        margin: 0;
        text-align: right
    }
}

.footer .content.cta-button .cta {
    margin: 0
}

@media only screen and (min-width: 768px) {
    .footer .content.cta-button .cta {
        position: absolute;
        right: 60px;
        bottom: 0
    }
}

.footer .content .copyright {
    display: block
}

@media only screen and (min-width: 768px) {
    .footer .content .copyright {
        display: inline-block;
        text-align: left;
        padding-top: 20px
    }
}

.footer .content .copyright .link {
    margin-right: 15px;
    color: #000
}

.request-message {
    padding-top: 50px
}

.box {
    margin-bottom: 30px
}

.box .box-link {
    background-color: #fff;
    padding: 20px;
    min-height: 100px;
    position: relative;
    display: block;
    color: #000;
    text-decoration: none;
    border-left: 8px solid #e4cc46
}

@media only screen and (min-width: 768px) {
    .box .box-link {
        min-height: 300px
    }
}

@media only screen and (min-width: 992px) {
    .box .box-link {
        min-height: 240px
    }
}

@media only screen and (min-width: 1200px) {
    .box .box-link {
        min-height: 200px
    }
}

.box .box-link H3 {
    margin-top: 0
}

.box .box-link .link {
    position: relative;
    bottom: auto;
    margin-bottom: 0;
    padding-right: 15px;
    display: inline-block;
    color: #e4cc46
}

@media only screen and (min-width: 768px) {
    .box .box-link .link {
        position: absolute;
        bottom: 0;
        margin-bottom: 15px
    }
}

.box :hover {
    background-color: #e4cc46;
    cursor: pointer;
    color: #fff
}

.box :hover .link {
    color: #fff
}

.container-inner {
    position: relative
}

.extend-left:before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    right: 100%;
    width: 100vw;
    background-color: #fff
}

.extend-left.grey, .extend-left.grey:before {
    background-color: #f2f4f4
}

.extend-left.top {
    margin-top: 0;
    background-color: #fff
}

@media only screen and (min-width: 768px) {
    .extend-left.top {
        margin-top: -100px
    }
}

.extend-right:before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 100%;
    width: 100vw;
    background-color: #fff
}

.extend-right.grey, .extend-right.grey:before {
    background-color: #f2f4f4
}

.container .white {
    background-color: #fff
}

.sub-title {
    display: block;
    font-size: 18px;
    padding-top: 30px
}

.height-100 {
    height: 100px
}

.modal-backdrop {
    background-color: #fff
}

.modal-backdrop.in {
    opacity: .9;
    filter: alpha(opacity=90)
}

.modal .modal-content {
    background: transparent;
    background-clip: padding-box;
    border-radius: 0;
    border: 0;
    box-shadow: none
}

.modal .modal-content .modal-header {
    border-bottom: 0
}

.modal .modal-content .modal-header h4 {
    text-align: center
}

.modal .modal-content .modal-body .vacation-note {
    background: #e4cc46;
    display: block;
    margin-top: -15px;
    padding: 15px;
    font-size: 16px;
    line-height: 24px;
    text-align: center;
    color: #fff;
    font-family: museo-slab, serif
}

.modal .modal-content .modal-body .contact-card {
    box-shadow: inset 0 0 0 2px #e4cc46;
    padding: 20px;
    background: #fff;
    display: block;
    transition: .3s;
    margin-bottom: 15px
}

@media only screen and (min-width: 768px) {
    .modal .modal-content .modal-body .contact-card {
        padding: 30px
    }
}

.modal .modal-content .modal-body .contact-card:focus, .modal .modal-content .modal-body .contact-card:hover {
    cursor: pointer;
    box-shadow: inset 0 0 0 4px #e4cc46;
    text-decoration: none
}

.modal .modal-content .modal-body .contact-card.disabled {
    position: relative
}

.modal .modal-content .modal-body .contact-card.disabled .message-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: hsla(0, 0%, 100%, .8);
    cursor: auto;
    box-shadow: inset 0 0 0 2px #e4cc46
}

.modal .modal-content .modal-body .contact-card.disabled .message-overlay .overlay-content {
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    position: absolute;
    top: 50%;
    color: #000;
    font-family: museo-slab, serif;
    font-weight: 700;
    font-size: 16px;
    line-height: 24px;
    text-align: center;
    padding: 0 20px
}

.modal .modal-content .modal-body .contact-card.disabled:focus, .modal .modal-content .modal-body .contact-card.disabled:hover {
    cursor: auto;
    box-shadow: inset 0 0 0 2px #e4cc46;
    text-decoration: none
}

.modal .modal-content .modal-body .contact-card .contact-image {
    text-align: left;
    margin: 0;
    width: 80px;
    height: 80px;
    display: inline-block
}

@media only screen and (min-width: 768px) {
    .modal .modal-content .modal-body .contact-card .contact-image {
        text-align: center;
        width: 140px;
        height: 140px;
        margin: 0 auto 30px;
        display: block
    }
}

.modal .modal-content .modal-body .contact-card .detail {
    text-align: left;
    display: inline-block;
    margin-left: 20px
}

@media only screen and (min-width: 768px) {
    .modal .modal-content .modal-body .contact-card .detail {
        text-align: center;
        display: block;
        margin-left: 0
    }
}

.modal .modal-content .modal-body .contact-card .detail h4 {
    text-align: left;
    font-size: 18px;
    line-height: 1.2;
    margin-bottom: 5px;
    margin-top: 8px;
    font-weight: 500;
    color: #000
}

@media only screen and (min-width: 768px) {
    .modal .modal-content .modal-body .contact-card .detail h4 {
        text-align: center
    }
}

.modal .modal-content .modal-body .contact-card .detail p {
    margin-bottom: 0
}

.modal .modal-content .modal-body .contact-card .detail .small {
    font-size: 14px;
    color: #79888b
}

.modal .modal-content .modal-body .contact-tel {
    color: #e4cc46;
    font-size: 16px;
    line-height: 19px;
    margin-bottom: 10px;
    text-decoration: none;
    display: block;
    text-align: center
}

@media only screen and (min-width: 768px) {
    .modal .modal-content .modal-body .contact-tel {
        font-size: 32px;
        line-height: 38px;
        margin-bottom: 20px
    }
}

.modal .modal-content .modal-footer {
    border-top: 0;
    text-align: center
}

.modal .modal-content .modal-footer button {
    width: 60px;
    height: 60px;
    transition: .3s;
    margin: 0 auto
}

.modal .modal-content .modal-footer button.close {
    color: #000;
    font-size: 50px;
    opacity: 1;
    filter: alpha(opacity=100);
    text-shadow: none;
    float: none
}

.modal .modal-content .modal-footer button.close SPAN {
    width: 60px;
    height: 60px;
    display: inline-block;
    padding: 1px;
    font-weight: 300
}

.modal .modal-content .modal-footer button:hover {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg)
}

.contact-image {
    background-clip: padding-box;
    border-radius: 50%;
    width: 160px;
    height: 160px;
    margin: 0 auto 30px;
    background-repeat: no-repeat;
    background-position: 50%;
    background-size: cover;
    display: block;
    text-align: center;
    vertical-align: top
}

@media only screen and (min-width: 768px) {
    .contact-image {
        width: 240px;
        height: 240px
    }
}

.contact-image.elisabeth {
    background-image: url(../media/images/photo-senninger.jpg)
}

.contact-image.susanne {
    background-image: url(../media/images/photo-folschette.jpg)
}

.link-block {
    position: relative;
    margin-top: 40px
}

.urgences H1 {
    padding-right: 15px
}

@media only screen and (min-width: 768px) {
    .urgences H1 {
        padding-right: 15px
    }
}

.urgences H2 {
    margin-top: 30px
}

.urgences .container-inner .info {
    padding: 0 30px 0 0
}

#map {
    height: 300px;
    width: 100%
}

@media only screen and (min-width: 768px) {
    #map {
        height: 500px
    }
}

.book-doctena {
    padding: 60px 0 160px;
    height: 100%;
    margin-bottom: 100px
}

.book-doctena .doctena-calendar-widget {
    position: relative
}

.book-doctena .doctena-calendar-widget #doctenaCalendarWidget {
    -webkit-transform: scale(1);
    transform: scale(1);
    -webkit-transform-origin: 50% 0;
    transform-origin: 50% 0
}

@media only screen and (min-width: 768px) {
    .book-doctena .doctena-calendar-widget #doctenaCalendarWidget {
        -webkit-transform: scale(1);
        transform: scale(1)
    }
}

@media only screen and (min-width: 992px) {
    .book-doctena .doctena-calendar-widget #doctenaCalendarWidget {
        -webkit-transform: scale(1.2);
        transform: scale(1.2)
    }
}

@media only screen and (min-width: 1200px) {
    .book-doctena .doctena-calendar-widget #doctenaCalendarWidget {
        -webkit-transform: scale(1.4);
        transform: scale(1.4)
    }
}

.book-doctena .doctena-calendar-widget #doctenaCalendarWidget.calendar-widget {
    font-family: museo-slab, serif;
    font-weight: 300;
    line-height: 1.7;
    border: none
}

.book-doctena .doctena-calendar-widget #doctenaCalendarWidget.calendar-widget .next-week, .book-doctena .doctena-calendar-widget #doctenaCalendarWidget.calendar-widget .previous-week {
    color: #8b7d2d
}

.book-doctena .doctena-calendar-widget #doctenaCalendarWidget.calendar-widget .next-week:hover, .book-doctena .doctena-calendar-widget #doctenaCalendarWidget.calendar-widget .previous-week:hover {
    color: #000;
    text-decoration: none
}

.book-doctena .doctena-calendar-widget #doctenaCalendarWidget.calendar-widget .next-week:hover :before, .book-doctena .doctena-calendar-widget #doctenaCalendarWidget.calendar-widget .previous-week:hover :before {
    text-decoration: none
}

.book-doctena .doctena-calendar-widget #doctenaCalendarWidget.calendar-widget .even {
    background: #f2f4f4
}

.book-doctena .doctena-calendar-widget #doctenaCalendarWidget.calendar-widget .btn-link {
    color: #8b7d2d
}

.book-doctena .doctena-calendar-widget #doctenaCalendarWidget.calendar-widget .btn-link:hover {
    text-decoration: none;
    color: #000
}

.book-doctena .doctena-calendar-widget #doctenaCalendarWidget.calendar-widget .btn-success {
    border: none;
    background-color: #e4cc46;
    background-clip: padding-box;
    border-radius: 0
}

.book-doctena .doctena-calendar-widget #doctenaCalendarWidget.calendar-widget .btn-success:active, .book-doctena .doctena-calendar-widget #doctenaCalendarWidget.calendar-widget .btn-success:active:hover, .book-doctena .doctena-calendar-widget #doctenaCalendarWidget.calendar-widget .btn-success:hover {
    border: none;
    background-color: #8cc051
}

.message-banner {
    background-color: #e4cc46;
    color: #fff;
    text-align: center;
    padding: 15px 45px
}

.message-banner, .message-banner P {
    font-family: museo-slab, serif !important;
    font-size: 16px;
    line-height: 24px
}

.message-banner P {
    margin: 0
}

@media only screen and (min-width: 768px) {
    .message-banner {
        margin: 0 15px 0 0
    }
}

.vacation-banner {
    background-color: #79888b;
    padding: 15px 20px;
    font-family: museo-slab, serif !important;
    color: #fff;
    font-size: 16px;
    line-height: 24px;
    text-align: center
}

.vacation-banner A {
    color: #fff;
    text-decoration: underline
}

.banner-offset {
    margin-top: 30px
}

.admin-login, .admin-settings {
    height: 100%
}

.banner-status .toggle-slider {
    height: 30px;
    width: 60px;
    border: 2px solid #79888b;
    display: block;
    position: relative
}

.banner-status .toggle-slider:after {
    content: " ";
    height: 22px;
    width: 22px;
    position: absolute;
    display: block;
    top: 2px;
    left: 2px;
    transition-duration: .3s
}

.banner-status .toggle-slider[data-active=true]:after {
    background-color: #8cc051;
    left: 31px
}

.banner-status .toggle-slider[data-active=false]:after {
    background-color: #79888b
}

* {
    outline: none !important;
    box-sizing: border-box
}

section.card {
    max-width: 960px;
    margin: 80px auto 80px;
    padding: 36px 24px;
    background-color: #fff;
    border: 1px solid rgba(121, 136, 139, .18);
    box-shadow: 0 20px 45px rgba(0, 0, 0, .08);
}

section.card .hero {
    text-align: center;
    padding-bottom: 28px;
    margin-bottom: 28px;
    border-bottom: 1px solid #f2f4f4;
}

section.card h1 {
    margin: 0 0 18px;
}

section.card .lead {
    max-width: 680px;
    margin: 0 auto;
    color: #79888b;
    font-size: 17px;
    line-height: 1.8;
}

section.card .grid {
    display: grid;
    gap: 20px;
}

section.card .block {
    padding: 24px;
    background-color: #fff;
    border-left: 6px solid #e4cc46;
}

section.card .block h2 {
    margin-bottom: 14px;
    font-size: 26px;
    line-height: 1.25;
}

section.card .block p:last-child {
    margin-bottom: 0;
}

section.card .contact {
    color: #8b7d2d;
    font-weight: 700;
    text-decoration: none;
}

section.card .contact:hover,
section.card .contact:focus {
    color: #000;
    text-decoration: underline;
}

section.card .alert {
    margin-top: 16px;
    margin-bottom: 0;
    color: #000;
    font-weight: 700;
}

@media only screen and (min-width: 768px) {
    section.card {
        padding: 48px;
    }

    section.card .grid {
        grid-template-columns:repeat(2, minmax(0, 1fr));
    }
}

@media only screen and (max-width: 767px) {
    section.card {
        margin: 110px auto 50px;
        padding: 28px 20px;
    }

    section.card .block {
        padding: 20px;
    }

    section.card .block h2 {
        font-size: 22px;
    }

    section.card .lead {
        font-size: 16px;
    }
}

html,
body {
    min-height: 100%;
}

body {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

.body-content {
    flex: 1 0 auto;
}

.footer {
    margin-top: auto;
}
