* {
    margin: 0;
    padding: 0;
}

@font-face {
    font-family: 'MyFZShuSong';
    src: url('../fonts/song.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'MyFZKai';
    src: url('../fonts/kai.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Mytexgyrechorus';
    src: url('../fonts/texgyrechorus-mediumitalic.otf') format('truetype');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'BebasNeue';
    src: url('../fonts/BebasNeue-Regular.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'CormorantGaramond';
    src: url('../fonts/CormorantGaramond-Bold.woff2') format('woff2');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'CormorantGaramond1';
    src: url('../fonts/CormorantGaramond-Bold.woff2') format('woff2');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'PlayfairDisplay';
    src: url('../fonts/PlayfairDisplay-Regular.otf') format('opentype');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

.foreignstyle {
    font-family: 'Mytexgyrechorus';
}

.fzKai {
    font-family: 'MyFZKai';
}

.shuSong {
    font-family: 'MyFZShuSong';
}


/*!
 * animate.css -https://daneden.github.io/animate.css/
 * Version - 3.7.2
 * Licensed under the MIT license - http://opensource.org/licenses/MIT
 *
 * Copyright (c) 2019 Daniel Eden
 */
@-webkit-keyframes bounceIn {

    from,
    20%,
    40%,
    60%,
    80%,
    to {
        -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    }

    0% {
        opacity: 0;
        -webkit-transform: scale3d(0.3, 0.3, 0.3);
        transform: scale3d(0.3, 0.3, 0.3);
    }

    20% {
        -webkit-transform: scale3d(1.1, 1.1, 1.1);
        transform: scale3d(1.1, 1.1, 1.1);
    }

    40% {
        -webkit-transform: scale3d(0.9, 0.9, 0.9);
        transform: scale3d(0.9, 0.9, 0.9);
    }

    60% {
        opacity: 1;
        -webkit-transform: scale3d(1.03, 1.03, 1.03);
        transform: scale3d(1.03, 1.03, 1.03);
    }

    80% {
        -webkit-transform: scale3d(0.97, 0.97, 0.97);
        transform: scale3d(0.97, 0.97, 0.97);
    }

    to {
        opacity: 1;
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
    }
}

@keyframes bounceIn {

    from,
    20%,
    40%,
    60%,
    80%,
    to {
        -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    }

    0% {
        opacity: 0;
        -webkit-transform: scale3d(0.3, 0.3, 0.3);
        transform: scale3d(0.3, 0.3, 0.3);
    }

    20% {
        -webkit-transform: scale3d(1.1, 1.1, 1.1);
        transform: scale3d(1.1, 1.1, 1.1);
    }

    40% {
        -webkit-transform: scale3d(0.9, 0.9, 0.9);
        transform: scale3d(0.9, 0.9, 0.9);
    }

    60% {
        opacity: 1;
        -webkit-transform: scale3d(1.03, 1.03, 1.03);
        transform: scale3d(1.03, 1.03, 1.03);
    }

    80% {
        -webkit-transform: scale3d(0.97, 0.97, 0.97);
        transform: scale3d(0.97, 0.97, 0.97);
    }

    to {
        opacity: 1;
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
    }
}

.bounceIn {
    -webkit-animation-duration: calc(1s * 0.75);
    animation-duration: calc(1s * 0.75);
    -webkit-animation-name: bounceIn;
    animation-name: bounceIn;
}

@-webkit-keyframes slideInLeft {
    from {
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0);
        visibility: visible;
    }

    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

@keyframes slideInLeft {
    from {
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0);
        visibility: visible;
    }

    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

.slideInLeft {
    -webkit-animation-name: slideInLeft;
    animation-name: slideInLeft;
}

@-webkit-keyframes fadeIn {
    from {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@keyframes fadeIn {
    from {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

.fadeIn {
    -webkit-animation-name: fadeIn;
    animation-name: fadeIn
}

@-webkit-keyframes fadeInHide {
    from {
        transform: translateY(-100%)
    }

    to {
        transform: translateY(0)
    }
}

@keyframes fadeInHide {
    from {
        transform: translateY(100%)
    }

    to {
        transform: translateY(0)
    }
}

.fadeInHide {
    overflow: hidden
}

.fadeInHide>* {
    visibility: hidden;
    animation-name: none;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    display: inline-block
}

.fadeInHide.animated>* {
    -webkit-animation-name: fadeInHide;
    animation-name: fadeInHide;
    visibility: visible
}

@-webkit-keyframes fadeInDown {
    from {
        opacity: 0;
        -webkit-transform: translate3d(0, -50px, 0);
        transform: translate3d(0, -50px, 0)
    }

    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }
}

@keyframes fadeInDown {
    from {
        opacity: 0;
        -webkit-transform: translate3d(0, -50px, 0);
        transform: translate3d(0, -50px, 0)
    }

    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }
}

.fadeInDown {
    -webkit-animation-name: fadeInDown;
    animation-name: fadeInDown
}

@-webkit-keyframes fadeInLeft {
    from {
        opacity: 0;
        -webkit-transform: translate3d(-50px, 0, 0);
        transform: translate3d(-50px, 0, 0)
    }

    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }
}

@keyframes fadeInLeft {
    from {
        opacity: 0;
        -webkit-transform: translate3d(-50px, 0, 0);
        transform: translate3d(-50px, 0, 0)
    }

    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }
}

.fadeInLeft {
    -webkit-animation-name: fadeInLeft;
    animation-name: fadeInLeft
}

@-webkit-keyframes fadeInRight {
    from {
        opacity: 0;
        -webkit-transform: translate3d(50px, 0, 0);
        transform: translate3d(50px, 0, 0)
    }

    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }
}

@keyframes fadeInRight {
    from {
        opacity: 0;
        -webkit-transform: translate3d(50px, 0, 0);
        transform: translate3d(50px, 0, 0)
    }

    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }
}

.fadeInRight {
    -webkit-animation-name: fadeInRight;
    animation-name: fadeInRight
}

@-webkit-keyframes fadeInUp {
    from {
        opacity: 0;
        -webkit-transform: translate3d(0, 50px, 0);
        transform: translate3d(0, 50px, 0)
    }

    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        -webkit-transform: translate3d(0, 50px, 0);
        transform: translate3d(0, 50px, 0)
    }

    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }
}

.fadeInUp {
    -webkit-animation-name: fadeInUp;
    animation-name: fadeInUp
}

@-webkit-keyframes zoomIn {
    from {
        opacity: 0;
        -webkit-transform: scale(1.1);
        transform: scale(1.1)
    }

    50% {
        opacity: 1;
        -webkit-transform: scale(1);
        transform: scale(1)
    }
}

@keyframes zoomIn {
    from {
        opacity: 0;
        -webkit-transform: scale(1.05);
        transform: scale(1.05)
    }

    50% {
        opacity: 1;
        -webkit-transform: scale(1);
        transform: scale(1)
    }
}

.zoomIn {
    -webkit-animation-name: zoomIn;
    animation-name: zoomIn;
    animation-fill-mode: forwards;
    -webkit-animation-fill-mode: forwards
}

.animated {
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both
}

.animated.infinite {
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite
}

.animated.delay-025s {
    -webkit-animation-delay: .25s;
    animation-delay: .25s
}

.animated.delay-05s {
    -webkit-animation-delay: .5s;
    animation-delay: .5s
}

.animated.delay-075s {
    -webkit-animation-delay: .75s;
    animation-delay: .75s
}

.animated.delay-1s {
    -webkit-animation-delay: 1s;
    animation-delay: 1s
}

.animated.delay-125s {
    -webkit-animation-delay: 1.25s;
    animation-delay: 1.25s
}

.animated.delay-15s {
    -webkit-animation-delay: 1.5s;
    animation-delay: 1.5s
}

.animated.delay-175s {
    -webkit-animation-delay: 1.75s;
    animation-delay: 1.75s
}

.animated.delay-2s {
    -webkit-animation-delay: 2s;
    animation-delay: 2s
}

.animated.delay-3s {
    -webkit-animation-delay: 3s;
    animation-delay: 3s
}

.animated.delay-4s {
    -webkit-animation-delay: 4s;
    animation-delay: 4s
}

.animated.delay-5s {
    -webkit-animation-delay: 5s;
    animation-delay: 5s
}

.animated.fast {
    -webkit-animation-duration: 800ms;
    animation-duration: 800ms
}

.animated.faster {
    -webkit-animation-duration: 500ms;
    animation-duration: 500ms
}

.animated.slow {
    -webkit-animation-duration: 2s;
    animation-duration: 2s
}

.animated.slower {
    -webkit-animation-duration: 3s;
    animation-duration: 3s
}

@-webkit-keyframes fadeInHide {
    from {
        transform: translateY(-100%)
    }

    to {
        transform: translateY(0)
    }
}

@keyframes fadeInHide {
    from {
        transform: translateY(100%)
    }

    to {
        transform: translateY(0)
    }
}

#menu-main>li>a {
    overflow: hidden
}

#menu-main>li>a>* {
    visibility: hidden;
    animation-name: none;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    display: inline-block
}

.mainnav.active #menu-main>li>a>* {
    -webkit-animation-name: fadeInHide;
    animation-name: fadeInHide;
    visibility: visible;
    animation-delay: .2s
}

.mainnav.active .podcast,
.mainnav.active .mainnav_menus {
    animation-delay: .2s;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    -webkit-animation-name: fadeIn;
    animation-name: fadeIn
}

*,
*:after,
*:before {
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-font-smoothing: antialiased;
    font-smoothing: antialiased;
    text-rendering: optimizeLegibility
}

html {
    font-size: 62.5%
}

body {
    font-weight: 400;
    font-size: 1.5rem;
    line-height: 2.8rem;
    font-family: "Larsseit";
    color: #282828;
    margin: 0;
    background: #ffffff;
    letter-spacing: .02em
}

p,
h1,
h2,
h3,
h4,
ul,
a,
figcaption,
input,
textarea {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.clear {
    *zoom: 1
}

.clear:before,
.clear:after {
    content: " ";
    display: table
}

.clear:after {
    clear: both
}

.flex {
    display: flex
}

img,
video {
    max-width: 100%;
    vertical-align: bottom;
    height: auto
}

a {
    color: inherit;
    display: inline-block;
    text-decoration: none;
    -webkit-tap-highlight-color: rgba(255, 255, 255, 0);
    outline: 0;
    transition: all .3s
}

a[target=_blank] {
    padding-right: 20px;
    background-image: url(https://www.chateau-cheval-blanc.com/wp-content/themes/base/img/arrow-external-black.svg);
    background-repeat: no-repeat;
    background-position: right center
}

a[target=_blank].link_white {
    background-image: url(https://www.chateau-cheval-blanc.com/wp-content/themes/base/img/arrow-external.svg)
}

a:focus {
    outline: 0
}

span,
li,
div {
    -webkit-tap-highlight-color: rgba(255, 255, 255, 0)
}

input:focus,
select:focus {
    outline: 0
}

ul {
    list-style: none;
    padding: 0;
    margin: 0
}

.overflow {
    overflow: hidden;
}

.alignnone,
a img.alignnone {
    margin: 5px 20px 20px 0
}

.aligncenter,
div.aligncenter,
a img.aligncenter {
    display: block;
    margin: 5px auto 5px auto
}

.alignright,
a img.alignright {
    float: right;
    margin: 5px 0 20px 20px
}

.alignleft,
a img.alignleft {
    float: left;
    margin: 5px 20px 20px 0
}

.textcenter {
    text-align: center
}

.acf-map {
    width: 100%;
    height: 810px;
    max-height: 90vh;
    border: 0;
    margin: 20px 0
}

.acf-map img {
    max-width: inherit !important
}

.no_desktop {
    display: none
}

.button,
input[type=submit] {
    background-color: rgba(0, 0, 0, 0);
    -webkit-appearance: none;
    padding: 7px 28px;
    display: inline-block;
    cursor: pointer;
    font-weight: 700;
    transition: all .3s;
    font-size: 1.3rem;
    border: 1px solid rgba(40, 40, 40, .3);
    text-transform: uppercase
}

.button:hover,
.button.active,
input[type=submit]:hover,
input[type=submit].active {
    background-color: #282828;
    color: #fff
}

.button_disabled {
    background-color: #979696;
    text-transform: none;
    color: #fff;
    cursor: not-allowed
}

.button_disabled:hover {
    background-color: #282828
}

.button_black,
input[type=submit] {
    background-color: #282828;
    color: #fff
}

.button_black:hover,
input[type=submit]:hover {
    background-color: rgba(0, 0, 0, 0);
    color: #282828
}

.button_download[target=_blank] {
    background-image: none
}

.button_download:before {
    content: "";
    display: inline-block;
    vertical-align: middle;
    background: url(https://www.chateau-cheval-blanc.com/wp-content/themes/base/img/telechargement.svg) no-repeat;
    margin-right: 10px;
    width: 16px;
    height: 13px;
    background-size: 100%
}

.button_download:hover:before {
    background-image: url(https://www.chateau-cheval-blanc.com/wp-content/themes/base/img/telechargement_black.svg)
}

.link,
.entete_podcast .menu a {
    /* font-weight: 700; */
    cursor: pointer;
    text-transform: uppercase;
    display: inline-block;
    font-family: "Larsseit";
    line-height: 1.2;
    font-size: 1.3rem;
    position: relative;
    float: right;
}

.link:after,
.entete_podcast .menu a:after {
    content: "";
    display: block;
    height: 1px;
    background-color: #282828;
    width: 100%;
    transition: all .3s;
    position: absolute;
    right: 0
}

.link:hover:after,
.entete_podcast .menu a:hover:after {
    width: 0
}

.link.link_white:after,
.entete_podcast .menu a.link_white:after {
    background-color: #fff
}

.upp,
.upp2 {
    font-weight: 700;
    font-size: 1.3rem;
    text-transform: uppercase;
    display: inline-block;
    font-family: "Larsseit";
    line-height: 1.1;
    position: relative
}

.upp:after,
.upp2:after {
    content: "";
    display: block;
    height: 1px;
    background-color: #282828;
    width: 100%;
    transition: all .3s;
    position: absolute;
    right: 0
}

.container {
    max-width: 1500px;
    margin: 20px auto;
    padding: 20px 0;
    width: 97%
}

.container_min {
    max-width: 1243px;
    width: 90%;
    margin: 0 auto
}

.container_3 {
    max-width: 1046px;
    width: 90%;
    margin: 0 auto
}

.container_4 {
    max-width: 750px;
    width: 90%;
    margin: 0 auto
}

.openMenu {
    cursor: pointer;
    display: block;
    width: 21px;
    height: 21px
}

.openMenu span,
.openMenu:before,
.openMenu:after {
    display: block;
    content: "";
    width: 21px;
    height: 1px;
    background-color: #fff;
    margin: 5px 0;
    transition: all .5s
}

.openMenu.black span,
.openMenu.black:before,
.openMenu.black:after {
    background-color: #282828
}

.header {
    display: flex;
    padding: 13px 1.5%;
    justify-content: space-between;
    align-items: center;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 9;
    color: #fff
}

.header>div {
    flex: 1
}

.header .logo img {
    /* max-width: 250px; */
    max-width: 200px;
    transition: all .5s;
   
}

.header .logo .logo_noir,
.header .logo .logo_mini {
    display: none
}

.header .header_right {
    display: flex;
    justify-content: flex-end
}

.header.black {
    color: #282828
}

.header.black a[target=_blank] {
    background-image: url(https://www.chateau-cheval-blanc.com/wp-content/themes/base/img/arrow-external-black.svg)
}

.header.black .openMenu span,
.header.black .openMenu:before,
.header.black .openMenu:after {
    background-color: #282828
}

.header.black .logo .logo_blanc {
    display: none
}

.header.black .logo .logo_noir {
    display: block
}

.header.black .link_white {
    border-color: #282828
}

.header.sticky {
    background-color: #f7f6f3;
    color: #282828
}

.header.sticky a[target=_blank] {
    background-image: url(https://www.chateau-cheval-blanc.com/wp-content/themes/base/img/arrow-external-black.svg)
}

.header.sticky .openMenu span,
.header.sticky .openMenu:before,
.header.sticky .openMenu:after {
    background-color: #282828
}

.header.sticky .logo .logo_blanc {
    display: none
}

.header.sticky .logo .logo_noir {
    display: block
}

.header.sticky .link_white {
    border-color: #282828
}

.header.active {
    color: #282828;
    background-color: transparent;
    z-index: 15
}

.header.active .openMenu span {
    display: none
}

.header.active .openMenu:before,
.header.active .openMenu:after {
    background-color: #282828;
    position: absolute
}

.header.active .openMenu:before {
    transform: rotate(45deg)
}

.header.active .openMenu:after {
    transform: rotate(-45deg)
}

.header.active .logo .logo_blanc,
.header.active .logo .logo_mini {
    display: none
}

.header.active .logo .logo_noir {
    display: block
}

.header.active .link_white {
    border-color: #282828
}

.mainnav {
    position: fixed;
    top: 0;
    left: 0;
    background-color: #faf7f1;
    transform: translateX(-100%);
    transition: all .5s;
    width: 100%;
    z-index: 11;
    line-height: 1.2;
    font-size: 1.3rem;
    height: 100vh;
    overflow: scroll
}

.mainnav .content {
    padding: 170px 5% 70px;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    position: relative;
    min-height: 100%;
    background: url(../img/bg_menu.png);
    background-repeat: no-repeat;
    background-position-x: center;
}

.mainnav.active {
    transform: none;
    z-index: 10
}

.mainnav .menu-main {
    text-align: center
}

.mainnav .menu-main .upp {
    margin-left: 10px;
    letter-spacing: normal
}

.mainnav .menu-main .upp:after {
    display: none
}

.mainnav .menu-main>li {
    margin: 41px 0 30px
}

.mainnav .menu-main>li::marker {
    text-align: center
}

.mainnav .menu-main>li>a {
    font-size: 2.8rem;
    font-family: "Pepetua";
    line-height: 2.8rem;
    font-weight: 300;
    letter-spacing: -.3rem
}

.mainnav .menu-main>li>a>span {
    font-size: 3.6rem;
    font-family: 'MyFZKai';
}

.mainnav .menu-main>li ul {
    display: flex;
    justify-content: center
}

.mainnav .menu-main>li li a {
    margin: 0 16px;
    text-transform: uppercase;
    font-weight: 700;
    font-size: 1.3rem;
    position: relative
}

.mainnav .menu-main>li li a:after {
    content: "";
    display: block;
    height: 1px;
    background-color: #282828;
    width: 100%;
    transition: all .3s;
    position: absolute;
    right: 0
}

.mainnav .menu-main>li li a:hover:after {
    width: 0
}

.mainnav .menu-second,
.mainnav .menu-third {
    position: absolute;
    right: 12px;
    top: 60px;
    text-align: right
}

.mainnav .menu-second li,
.mainnav .menu-third li {
    margin: 20px 0
}

.mainnav .menu-second a,
.mainnav .menu-third a {
    margin: 0 10px;
    text-transform: uppercase;
    font-weight: 700;
    font-size: 1.3rem;
    position: relative
}

.mainnav .menu-second a:after,
.mainnav .menu-third a:after {
    content: "";
    display: block;
    height: 1px;
    background-color: #282828;
    width: 100%;
    transition: all .3s;
    position: absolute;
    right: 0
}

.mainnav .menu-second a:hover:after,
.mainnav .menu-third a:hover:after {
    width: 0
}

.mainnav .menu-third {
    top: auto;
    bottom: 7px
}

.mainnav .podcast {
    position: absolute;
    width: 23%;
    bottom: 22px;
    left: 21px;
    z-index: 1
}

.mainnav .podcast .audio {
    position: relative;
    margin-top: 12px;
    overflow: hidden
}

.mainnav .podcast .audio .play {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: 38px;
    background-position: center center;
    background-repeat: no-repeat;
    display: block;
    z-index: 2;
    transition: all .8s
}

/* ══════════════════════════════════════════════════
   French nav – hub-and-spoke overlay
══════════════════════════════════════════════════ */

/* Hide header's own logo when French nav is open so nav logo shows cleanly */
body:has(.mainnav-fr.active) .header .logo {
    visibility: hidden;
}

.mainnav-fr .content {
    padding: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    min-height: 100vh;
    background-size: auto 95%;
    background-position: center 60%;
}

.nav-fr-logo {
    display: block;
    text-align: center;
    padding: 32px 0 16px;
}

.nav-fr-logo img {
    height: 110px;
    width: auto;
}

.nav-fr-grid {
    display: grid;
    grid-template-columns: 1fr 200px 1fr;
    grid-template-rows: auto auto;
    width: 100%;
    max-width: 1140px;
    padding: 20px 5% 0;
    flex: 1;
    align-content: center;
    gap: 56px 0;
}

/* Quadrant positions */
.nav-fr-tl {
    grid-column: 1;
    grid-row: 1;
    text-align: center;
    /* padding-right: 70px; */
}

.nav-fr-tr {
    grid-column: 3;
    grid-row: 1;
    text-align: center;
    /* padding-left: 70px; */
}

.nav-fr-bl {
    grid-column: 1;
    grid-row: 2;
    text-align: center;
    /* padding-right: 70px; */
}

.nav-fr-br {
    grid-column: 3;
    grid-row: 2;
    text-align: center;
    /* padding-left: 70px; */
}

.nav-fr-center {
    grid-column: 2;
    grid-row: 1 / 3;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 18px;
}

/* Section title */
.nav-fr-title {
    display: block;
    font-family: 'BebasNeue', sans-serif;
    font-size: 2.4rem;
    letter-spacing: 0.10em;
    color: #7a5c2e;
    text-transform: uppercase;
    text-decoration: none;
    margin-bottom: 12px;
    transition: color .2s;
    /* font-weight:700; */
}

.nav-fr-title:hover {
    color: #a07840;
}

/* Sub-links */
.nav-fr-group ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.nav-fr-group ul li {
    margin: 6px 0;
}

.nav-fr-group ul li a {
    font-family: 'BebasNeue', sans-serif;
    font-size: 1.4rem;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: #3a3a3a;
    text-decoration: none;
    transition: color .2s;
    font-weight: 700;
}

.nav-fr-group ul li a:hover {
    color: #7a5c2e;
}

/* Center oval – NOS VINS */
.nav-fr-oval {
    display: block;
    border: 1.5px solid #7a5c2e;
    border-radius: 40px;
    padding: 13px 34px;
    font-family: 'BebasNeue', sans-serif;
    font-size: 1.6rem;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: #3a3a3a;
    text-decoration: none;
    text-align: center;
    white-space: nowrap;
    transition: background .2s, color .2s;
}

.nav-fr-oval:hover {
    background: #7a5c2e;
    color: #fff;
}

/* Center label – LA MAISON RICHELIEU */
.nav-fr-maison {
    display: block;
    font-family: 'BebasNeue', sans-serif;
    font-size: 2.2rem;
    letter-spacing: 0.10em;
    text-transform: uppercase;
    color: #3a3a3a;
    text-decoration: none;
    text-align: center;
    transition: color .2s;
}

.nav-fr-maison:hover {
    color: #7a5c2e;
}

/* Footer links */
.nav-fr-footer {
    padding: 18px 0 26px;
    display: flex;
    gap: 32px;
    justify-content: center;
    border-top: 1px solid rgba(58, 58, 58, .15);
    width: 100%;
}

.nav-fr-footer a {
    font-family: 'BebasNeue', sans-serif;
    font-size: 1.3rem;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: #3a3a3a;
    text-decoration: none;
    transition: color .2s;
}

.nav-fr-footer a:hover {
    color: #7a5c2e;
}

/* Mobile fallback */
@media (max-width: 768px) {
    .nav-fr-grid {
        grid-template-columns: 1fr;
        grid-template-rows: none;
        gap: 28px 0;
        padding-bottom: 20px;
    }

    .nav-fr-tl,
    .nav-fr-tr,
    .nav-fr-bl,
    .nav-fr-br {
        grid-column: 1;
        grid-row: auto;
        text-align: center;
        padding: 0;
    }

    .nav-fr-center {
        grid-column: 1;
        grid-row: auto;
    }
}

.mainnav .podcast .audio img {
    transition: all .8s
}

.mainnav .podcast .audio:hover img {
    opacity: .7;
    transform: scale(1.02)
}

.mainnav .podcast .audio:hover .play {
    transform: scale(1.05)
}

.footer {
    font-size: 1.3rem;

}

.footer .container {
    border-top: 1px solid #282828;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px 0
}



.footer .menu {
    display: flex
}

.footer .menu a {
    margin-left: 20px
}

.footer p {
    margin: 0
}

.footer a:hover {
    opacity: .8
}

.title_big {
    font-size: 13.6rem;
    text-transform: uppercase;
    font-weight: 300;
    margin: 0;
    line-height: 13.6rem;
    font-family: "Pepetua";
    letter-spacing: -.3rem
}

.title_0 {
    font-size: 9.8rem;
    text-transform: uppercase;
    font-weight: 300;
    margin: 0;
    line-height: 10.8rem;
    font-family: "Pepetua";
    letter-spacing: -.3rem
}

.title {
    font-size: 7.2rem;
    text-transform: uppercase;
    font-weight: 300;
    margin: 0;
    line-height: 8rem;
    font-family: "Pepetua";
    letter-spacing: -.12rem
}

.title_1 {
    font-size: 6.2rem;
    text-transform: uppercase;
    font-weight: 300;
    margin: 0;
    line-height: 7rem;
    font-family: "Pepetua";
    letter-spacing: -.12rem
}

.title_15 {
    font-weight: 300;
    font-size: 3.6rem;
    line-height: 4rem;
    margin: 0;
    text-transform: uppercase;
    font-family: "Pepetua"
}

.title_2 {
    font-weight: 400;
    font-size: 2.4rem;
    line-height: 3.6rem;
    margin: 0;
    font-family: "Joan", serif
}

.title_3 {
    font-weight: 400;
    font-size: 1.5rem;
    line-height: 2.4rem;
    margin: 0;
    font-family: "Joan", serif
}

.title_cite {
    font-weight: 400;
    font-size: 2.8rem;
    line-height: 4.2rem;
    margin: 0;
    font-family: "Joan", serif
}

.title_cite p {
    margin: 0
}

.title_upp {
    text-transform: uppercase;
    font-size: 1.3rem;
    font-weight: 700
}

.popin {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 10;
    background: rgba(40, 40, 40, .8);
    display: flex;
    justify-content: center;
    align-items: center;
    display: none
}

.popin.active {
    display: flex
}

.popin .content {
    background-color: #fff;
    padding: 110px 7%;
    max-width: 690px;
    margin: auto;
    font-size: 1.8rem;
    text-align: center;
    line-height: 3rem
}

.popin .content p {
    margin: 30px 0
}

.popin .free_content a {
    font-weight: inherit;
    font-size: inherit;
    text-transform: none;
    margin: 0
}

.popin .button {
    margin-top: 20px
}

.popin .wpml-ls-legacy-list-horizontal {
    margin: 0 0 40px 0
}

.popin .wpml-ls-legacy-list-horizontal>ul li {
    color: #282828;
    text-underline-offset: 3px
}

.popin .wpml-ls-legacy-list-horizontal>ul li.wpml-ls-current-language {
    color: #282828;
    font-weight: 700
}

.wpml-ls-legacy-list-horizontal {
    text-align: center;
    font-size: 1.3rem;
    text-transform: uppercase;
    border: 0;
    margin: 0 0 0 20px;
    padding: 0
}

.wpml-ls-legacy-list-horizontal li:not(:last-child):after {
    content: "/"
}

.wpml-ls-legacy-list-horizontal a {
    display: inline-block
}

.wpml-ls-legacy-list-horizontal a:hover {
    opacity: .8
}

.slider {
    overflow: hidden
}

.slider .slides {
    position: relative;
    display: flex
}

.slider .slides .slide {
    flex: 1
}

.slider .slides .slide img {
    width: 100%
}

.slider .slider_entete {
    display: flex;
    justify-content: space-between;
    align-items: center
}

.nav span {
    display: inline-flex;
    width: 36px;
    height: 36px;
    border: 1px solid rgba(40, 40, 40, .3);
    border-radius: 100%;
    justify-content: center;
    align-items: center;
    transition: all .3s;
    cursor: pointer
}

.nav span:hover {
    background-color: #282828
}

.nav span:hover:before {
    border-color: #fff
}

.nav span:before {
    content: "";
    display: block;
    width: 10px;
    height: 10px;
    transform: rotate(45deg);
    border: 1px solid #282828;
    border-width: 1px 1px 0 0
}

.nav span.prev:before {
    transform: rotate(-135deg);
    margin-left: 3px
}

.nav span.next:before {
    margin-right: 3px
}

.bloc_saisons_entete {
    position: relative;
    height: 100vh;
    padding: 91px 3% 53px
}

.bloc_saisons_entete .mois {
    position: sticky;
    top: 90px;
    margin: 0;
    z-index: 1;
    color: #fff;
    height: 0
}

.bloc_saisons_entete .mois .meteo {
    font-family: "Joan", serif;
    font-size: 1.5rem;
    text-transform: capitalize
}

.bloc_saisons_entete .avancement {
    position: absolute;
    width: 0;
    background: #fff;
    bottom: 0;
    left: 0;
    height: 3px
}

.bloc_saisons_entete .title_3 {
    margin-top: 10px
}

.bloc_saisons_entete .title_3 .link:after {
    background-color: #fff
}

.bloc_saisons_entete figure {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100vh
}

.bloc_saisons_entete figure img {
    width: 100%;
    height: 100vh;
    object-fit: cover
}

.bloc_saisons_entete figure:after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background-color: rgba(40, 40, 40, .1);
    position: absolute;
    top: 0;
    left: 0
}

.bloc_saisons_entete .content {
    position: relative;
    color: #fff;
    max-width: 730px;
    text-align: center;
    display: flex;
    flex-direction: column;
    height: 100%;
    margin: auto;
    justify-content: center;
    padding: 82px 0 0
}

.bloc_saisons_entete .content .title_cite {
    margin: auto auto 0
}

.bloc_saisons_entete .content .title {
    margin: auto 0 10px
}

.bloc_galerie .container {
    max-width: 690px
}

.bloc_saisons .container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px 0 0;
    margin: 0 auto
}

.bloc_saisons .left {
    flex-basis: 62%
}

.bloc_saisons .right {
    width: 26%
}

.bloc_saisons .content {
    width: 58%;
    margin: 20px auto 90px
}

.bloc_saisons .content .title_2 {
    margin-top: 21px
}

.video-container {
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 30px;
    height: 0;
    overflow: hidden
}

.video-container iframe,
.video-container embed {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0
}

.bloc_titre_texte {
    background-color: #fff;
    padding-top: 151px;
    padding-bottom: 100px
}

.bloc_titre_texte .title_big {
    line-height: .88;
    letter-spacing: -.65rem
}

.bloc_titre_texte .container {
    display: flex;
    justify-content: space-between
}

.bloc_titre_texte .container .content_left {
    flex-basis: 50%
}

.bloc_titre_texte .container .content {
    flex-basis: 46%;
    padding: 0 10%
}

.bloc_titre_texte .free_content p {
    margin-top: 1em;
    margin-bottom: 1em
}

.bloc_vins .container {
    display: flex;
    flex-wrap: wrap;
    margin: 0 auto;
    padding: 89px 0 61px
}

.bloc_vins .container article,
.bloc_vins .container .content {
    flex-basis: 37%
}

.bloc_vins .container .content {
    padding: 99px 0 100px 13%;
    flex-basis: 50%
}

.bloc_vins .container .content .free_content {
    margin-bottom: 30px
}

.bloc_vins figure {
    overflow: hidden
}

.bloc_vins figure img {
    display: block;
    transition: all .5s
}

.bloc_vins figure:hover img {
    transform: scale(1.02)
}

.bloc_vins article .link {
    margin-bottom: 20px;
    display: inline-block
}

.bloc_vins article:last-of-type {
    order: 2;
    margin-left: 13%
}

.bloc_vins article:first-of-type {
    margin-right: 14%;
    padding-top: 136px
}

.bloc_vins article:nth-of-type(2) {
    padding-right: 12%
}

.image_full img,
.bloc_image_pleine_largeur img {
    max-height: 720px;
    width: 100%;
    object-fit: cover
}

.bloc_image_pleine_largeur {
    padding: 0 20px
}

.bloc_texte {
    margin: 90px 0
}

.bloc_texte .chapo {
    padding-right: 33%
}

.bloc_texte .title_2 {
    margin: 20px 0 13px
}

.bloc_texte.border-chapo .chapo {
    border-bottom: 1px solid #282828;
    padding-bottom: 20px;
    margin-bottom: 40px
}

.bloc_texte.border-bottom .container_3 {
    border-bottom: 1px solid #282828;
    padding-bottom: 94px
}

.bloc_texte.border-top .container_3 {
    border-top: 1px solid #282828;
    padding-top: 85px
}

.bloc_texte.column-center {
    text-align: center
}

.bloc_texte.column-center .chapo {
    padding: 0 17%
}

.bloc_texte.column-center .free_content {
    margin: 0 auto
}

.bloc_texte .free_content p {
    margin-top: 1em;
    margin-bottom: 1em
}

.chapo {
    font-family: "Joan", serif;
    font-size: 1.8rem;
    line-height: 3rem;
    margin: 0 auto;
    font-weight: 400
}

.free_content {
    column-gap: 8%
}

.free_content a {
    line-height: 1.2;
    margin-right: 5px;
    font-size: 1.5rem;
    position: relative
}

.free_content a:after {
    content: "";
    display: block;
    height: 1px;
    background-color: #282828;
    width: 100%;
    transition: all .3s;
    position: absolute;
    right: 0
}

.free_content a:hover:after {
    width: 0
}

.free_content p:first-of-type {
    margin-top: 0;
    margin-bottom: 0
}

.free_content ul {
    list-style: disc;
    padding-left: 15px
}

.free_content ul li {
    margin: 5px 0
}

.free_content.col_1 {
    max-width: 700px
}

.free_content .chapo p:first-of-type {
    margin-bottom: 30px
}

.bloc_entete {
    height: 100vh
}

.bloc_entete figure {
    overflow: hidden
}

.bloc_entete figure img {
    height: 100vh;
    width: 100%;
    object-fit: cover
}

.bloc_entete figure:after {
    position: absolute;
    top: 0;
    left: 0;
    content: "";
    display: block;
    width: 100%;
    height: 100vh;
    background-color: rgba(40, 40, 40, .3)
}

.bloc_entete .content {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    color: #fff;
    padding: 80px 5% 54px;
    text-align: center
}

.bloc_entete .content .texte {
    max-width: 750px;
    margin: auto
}

.bloc_bas {
    text-align: center;
    background-color: #fff;
    height: 540px;
    margin: 50px 0
}

.bloc_bas.white {
    color: #fff
}

.bloc_bas.white .link:after {
    background-color: #fff
}

.bloc_bas .content {
    padding: 100px 5%;
    position: relative;
    z-index: 1;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-content: center
}

.bloc_bas .content .upp {
    margin-left: 10px;
    letter-spacing: normal
}

.bloc_bas .content .upp:after {
    display: none
}

.bloc_bas figure {
    position: absolute;
    opacity: 0;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: -1;
    overflow: hidden;
    transition: all .5s
}

.bloc_bas figure img {
    transition: all .5s;
    transform: scale(1.02);
    height: 100%;
    width: 100%;
    object-fit: cover
}

.bloc_bas figure:after {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    background: rgba(40, 40, 40, .3);
    width: 100%;
    height: 100%
}

.bloc_bas .liens {
    display: flex;
    justify-content: center;
    font-size: 1.3rem
}

.bloc_bas .liens .title_0 {
    line-height: 1
}

.bloc_bas .liens li {
    margin: 0 15px
}

.bloc_bas .liens li a {
    position: static
}

.bloc_bas .liens li a:hover:after {
    width: 100%
}

.bloc_bas .liens li a.active:after {
    width: 0%
}

.bloc_bas .liens li a:after {
    position: static;
    float: right
}

.bloc_bas .liens li span {
    display: block
}

.bloc_bas .liens li span:hover+figure {
    opacity: 1
}

.bloc_bas .liens li span:hover+figure img {
    transform: scale(1)
}

.download {
    font-family: "Joan", serif;
    font-size: 1.5rem
}

.download .img {
    width: 36px;
    display: inline-block;
    height: 36px;
    border: 1px solid #282828;
    border-radius: 100%;
    margin-right: 5px;
    vertical-align: middle
}

.download .link {
    margin-left: 2px
}

.bloc_accordeon {
    margin-top: 89px;
    margin-bottom: 92px
}

.bloc_accordeon .title_1 {
    text-align: center;
    margin-bottom: 79px;
    margin-top: 147px
}

.bloc_accordeon .container {
    margin: 0 auto;
    padding: 0;
    position: relative
}

.bloc_accordeon .accordeon_detail .content_open {
    display: flex;
    justify-content: space-between
}

.bloc_accordeon .accordeon_detail .content_open>.auto {
    display: none
}

.bloc_accordeon .accordeon_detail .content_open .openAcc:last-child {
    display: none
}

.bloc_accordeon .accordeon_detail .content_open figure {
    flex-basis: 56%
}

.bloc_accordeon .accordeon_detail .content_open .content {
    flex-basis: 27.5%;
    display: flex;
    flex-direction: column
}

.bloc_accordeon .accordeon_detail .content_open .content .auto {
    margin-top: auto;
    margin-bottom: 0
}

.bloc_accordeon .accordeon_detail .content_open .audio {
    margin-top: 25px
}

.bloc_accordeon .accordeon_detail.active .content_close {
    max-height: 5000px
}

.bloc_accordeon .accordeon_detail.active .content_open .openAcc:last-child {
    display: inline-block
}

.bloc_accordeon .accordeon_detail.active .content_open .openAcc:first-child {
    display: none
}

.bloc_accordeon .accordeon_detail .content_close {
    overflow: hidden;
    max-height: 0;
    overflow: hidden;
    transition: all 1s;
    padding: 0;
    margin-bottom: 0;
    border: 0
}

.bloc_accordeon .accordeon_detail .content_close>.content:first-child {
    padding-top: 69px
}

.bloc_accordeon .accordeon_detail .content_close .auto {
    margin: 0 0 59px
}

.bloc_accordeon .accordeon_detail .content_close .content {
    width: 57%;
    clear: both
}

.bloc_accordeon .accordeon_detail .content_close .content p {
    margin: 28px 0
}

.bloc_accordeon .accordeon_detail .content_close .content p.author {
    margin-bottom: 0;
    margin-top: 41px
}

.bloc_accordeon .accordeon_detail .content_close .content p.author+.title_cite {
    margin-top: 0
}

.bloc_accordeon .accordeon_detail .content_close .content .title_cite {
    margin: 41px 0
}

.bloc_accordeon .accordeon_detail .content_close>figure:first-of-type {
    float: left;
    width: 28%;
    margin-top: 372px;
    margin-bottom: 92px
}

.bloc_accordeon .accordeon_detail .content_close>figure:nth-of-type(2) {
    float: right;
    width: 42%;
    margin-right: 14%;
    margin-top: 56px;
    margin-bottom: 92px
}

.bloc_accordeon .accordeon_detail .content_close>figure:last-of-type {
    float: right;
    width: 42%;
    margin-right: 14%;
    margin-top: 57px;
    margin-bottom: 44px
}

.bloc_accordeon .accordeon_detail .content_close>figure:last-of-type+* {
    clear: both
}

.bloc_accordeon .accordeon_detail .content_close .slider {
    margin: 82px 0
}

.bloc_accordeon .accordeon_detail .content_close .slider .slide {
    transition: all .5s;
    opacity: .3;
    padding-right: 15px;
    overflow: hidden
}

.bloc_accordeon .accordeon_detail .content_close .slider .slide>div {
    background-color: #fff;
    padding: 25px
}

.bloc_accordeon .accordeon_detail .content_close .slider .slide p {
    border-top: 1px solid #282828;
    margin: 8px 0 0;
    padding-top: 22px
}

.bloc_accordeon .accordeon_detail .content_close .slider .slide:first-child {
    opacity: 1
}

.bloc_image_texte {
    margin: 90px 0
}

.bloc_image_texte .container_3 {
    display: flex;
    justify-content: space-between;
    align-items: center
}

.bloc_image_texte .container_3 figure {
    flex-basis: 46%;
    margin-left: -7%
}

.bloc_image_texte .container_3 .content {
    flex-basis: 46%;
    padding-top: 32px
}

.bloc_image_texte .container_3 .content p {
    margin: 14px 0 27px
}

.bloc_image_texte.img-droite .container_3 {
    flex-direction: row-reverse
}

.bloc_image_texte.img-droite .container_3 figure {
    margin: 0;
    flex-basis: 32%
}

.bloc_citation {
    text-align: center;
    margin: 60px auto 90px
}

.bloc_citation .download {
    margin-top: 47px
}

.bloc_citation .label:after {
    content: " — "
}

.vin_entete {
    margin-top: 250px;
    text-align: center
}

.vin_entete .chapo {
    width: 65%;
    margin: 45px auto
}

.vin_entete .img-intro {
    display: inline-block;
    margin: 0 10px
}

.vin_entete .img-intro img {
    max-width: 158px
}

.vin_entete .free_content {
    columns: 2;
    column-gap: 78px;
    border-top: 1px solid #282828;
    padding-top: 93px;
    margin-top: 70px;
    text-align: left;
    margin-bottom: 63px
}

.page-template-tpl-outrouver .page_content .entete_page {
    text-align: center
}

.carousel {
    width: 100%;
    overflow: hidden
}

.carousel .slides {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center
}

.millesimes_entete {
    margin: 88px 0 0
}

.millesimes_onglets_decennies {
    margin: 31px auto
}

.millesimes_onglets_decennies .link {
    text-transform: none
}

.millesimes_onglets_decennies .container_min {
    display: flex;
    justify-content: center;
    text-align: center
}

.millesimes_onglets_decennies .container_min>div {
    width: 80px;
    padding: 8px 20px;
    border-left: 1px solid rgba(40, 40, 40, .3)
}

.millesimes_onglets_decennies .container_min>div:first-child {
    border-left: 0
}

.millesimes_onglets {
    margin: 61px auto 50px;
    position: relative
}

.millesimes_onglets .container_min {
    overflow: hidden;
    max-width: none;
    width: 75%;
    z-index: 2;
    position: relative
}

.millesimes_onglets .container {
    width: calc(80% + 36px + 36px);
    max-width: none
}

.millesimes_onglets .nav {
    width: calc(80% + 36px + 36px);
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    justify-content: space-between;
    display: flex;
    left: 0;
    right: 0;
    margin: auto
}

.millesimes_onglets .nav .prev {
    margin: 0 0 0 5px
}

.millesimes_onglets .nav .next {
    margin: 0 5px 0 0
}

.millesimes_onglets figure {
    max-width: 130px
}

.millesimes_onglets .slide {
    padding: 0 20px;
    width: 100px;
    text-align: center
}

.millesimes_onglets .slide figure {
    width: 0;
    overflow: hidden;
    display: inline-block;
    transition: width 0s .5s;
    vertical-align: middle
}

.millesimes_onglets .slide figure img {
    opacity: 0;
    transition: opacity .5s 0s
}

.millesimes_onglets .slide span {
    opacity: 1;
    width: 35px;
    transition: opacity 0s 0s, width 0s 0s
}

.millesimes_onglets .slide.active {
    width: 310px;
    transition: width 0s 0s
}

.millesimes_onglets .slide.active figure {
    width: auto;
    transition: width 0s .5s
}

.millesimes_onglets .slide.active figure img {
    opacity: 1;
    transition: opacity .5s .5s
}

.millesimes_onglets .slide.active span {
    opacity: 0;
    width: 0;
    overflow: hidden;
    transition: opacity 0s 0s, width 0s 0s
}

.dropdown_millesime {
    display: none
}

.millesimes {
    position: relative
}

.millesimes .entete_millesime {
    text-align: center;
    max-width: 691px;
    margin-bottom: 66px
}

.millesimes .entete_millesime .title_big {
    margin-top: 18px
}

.millesimes .entete_millesime .chapo p {
    margin: 0
}

.millesimes .sticky {
    height: 1px;
    width: 0
}

.millesimes .sub_menu {
    text-align: center;
    position: sticky;
    top: -1px;
    background-color: #f7f6f3;
    padding: 17px 1.5% !important;
    z-index: 5;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1.3rem
}

.millesimes .sub_menu p {
    margin: 0
}

.millesimes .sub_menu .openMenu {
    margin-right: 20px
}

.millesimes .sub_menu .openMenu,
.millesimes .sub_menu .title_upp {
    display: none
}

.millesimes .sub_menu .title_upp {
    border-right: 1px solid rgba(40, 40, 40, .3);
    padding-right: 12px
}

.millesimes .sub_menu a {
    margin: 0 15px;
    display: inline-block
}

.millesimes .sub_menu .button {
    text-transform: none;
    font-size: 1.5rem;
    padding: 7px 17px;
    font-weight: 400;
    order: 2
}

.millesimes .sub_menu.is-pinned {
    position: fixed;
    width: 100%;
    top: 0;
    left: 0;
    z-index: 10
}

.millesimes .sub_menu.is-pinned .openMenu,
.millesimes .sub_menu.is-pinned .title_upp {
    display: block
}

.millesimes .sub_menu.is-pinned .dropdown {
    margin-right: auto
}

.millesimes .sub_menu.is-pinned .button {
    margin-left: auto;
    margin-top: -5px;
    margin-bottom: -5px
}

.millesimes .sub_menu .dropdown .fixed {
    display: none
}

.millesimes .onglet {
    margin: 70px 0
}

.millesimes .onglet:nth-of-type(even) .container_min,
.millesimes .onglet:nth-of-type(even) .container,
.millesimes .onglet:nth-of-type(even) .container_3 {
    flex-direction: row-reverse
}

.millesimes .onglet .container_min,
.millesimes .onglet .container,
.millesimes .onglet .container_3 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px
}

.millesimes .onglet .container_min>*,
.millesimes .onglet .container>*,
.millesimes .onglet .container_3>* {
    flex-basis: 45%
}

.millesimes .onglet .container_min .title_2,
.millesimes .onglet .container .title_2,
.millesimes .onglet .container_3 .title_2 {
    margin-bottom: 15px
}

.millesimes .onglet#assemblage .container {
    flex-direction: row
}

.millesimes .onglet .bloc_onglet {
    background: #fff;
    padding: 44px 2%;
    align-self: normal
}

.millesimes .onglet .bloc_onglet .title_2 {
    margin-bottom: 24px
}

.millesimes .onglet .bloc_onglet p {
    margin: 15px 0 0
}

.millesimes .onglet .bloc_onglet .percents {
    margin-bottom: 35px
}

.millesimes .onglet .bloc_onglet .percent {
    margin-top: 0
}

.millesimes .onglet .bloc_onglet .percent_line {
    padding: 2px 0 7px;
    border-bottom: 1px solid rgba(40, 40, 40, .3);
    margin: 0;
    margin-bottom: 9px
}

.millesimes .onglet.degustation {
    margin-bottom: 165px
}

.millesimes .onglet.degustation .container_min,
.millesimes .onglet.degustation .container,
.millesimes .onglet.degustation .container_3 {
    flex-direction: row
}

.millesimes .onglet.degustation .container_min .content,
.millesimes .onglet.degustation .container .content,
.millesimes .onglet.degustation .container_3 .content {
    flex-basis: 65%
}

.millesimes .onglet.degustation .container_min .content p,
.millesimes .onglet.degustation .container .content p,
.millesimes .onglet.degustation .container_3 .content p {
    margin: 0
}

.millesimes .onglet.degustation .container_min .content>p,
.millesimes .onglet.degustation .container .content>p,
.millesimes .onglet.degustation .container_3 .content>p {
    margin: 2px 0 5px
}

.millesimes .onglet.degustation .title_2 p:before {
    content: "‘"
}

.millesimes .onglet.degustation .title_2 p:after {
    content: "’"
}

.millesimes .onglet.degustation .title_2 ul li:first-child:before {
    content: "‘"
}

.millesimes .onglet.degustation .title_2 ul li:last-child:after {
    content: "’"
}

.millesimes .onglet.onglet_full {
    text-align: center
}

.millesimes .onglet.onglet_full .container_min,
.millesimes .onglet.onglet_full .container,
.millesimes .onglet.onglet_full .container_3 {
    display: block;
    max-width: 691px
}

.grecaptcha-badge {
    visibility: hidden !important
}

.precipitation {
    background: #fff;
    padding: 80px 0
}

.precipitation .precipitations_entete {
    display: flex;
    justify-content: space-between;
    margin-bottom: 50px;
    padding: 0 25px
}

.precipitation .precipitations_entete p {
    margin: 0
}

.precipitation .precipitations_synthese {
    display: flex;
    justify-content: space-between
}

.precipitation .precipitations_synthese>div {
    flex-basis: 48%;
    border: 1px solid rgba(40, 40, 40, .3);
    padding: 30px
}

.precipitation .precipitations_synthese .legende {
    margin: 0
}

.precipitation .precipitations_synthese .legende img {
    vertical-align: middle;
    margin-right: 10px
}

.precipitation .precipitations_synthese .legende:first-of-type {
    font-size: 1.5rem
}

.precipitation .precipitations_synthese .legende:nth-of-type(2) {
    color: rgba(40, 40, 40, .5)
}

.precipitation .precipitations_synthese .total {
    margin: 0
}

.precipitation .precipitations_synthese .total:nth-of-type(3) {
    margin-top: 20px
}

.precipitation .precipitations_synthese .total:nth-of-type(3) strong {
    font-size: 1.5rem
}

.precipitation .precipitations_synthese .tag {
    border: 1px solid #af885c;
    border-radius: 2px;
    color: #af885c;
    font-weight: 700;
    padding: 1px 6px;
    vertical-align: middle;
    display: inline-block;
    margin-left: 10px
}

.percent {
    width: 100%;
    margin-top: 0
}

.percent span {
    display: block;
    height: 5px;
    background-color: #282828
}

.chapo {
    margin-bottom: 50px
}

.bloc_map {
    background-color: #fff;
    position: relative;
    padding: 1px 0;
    margin: 50px 0
}

.bloc_map .container {
    margin: 0 auto;
    padding: 0
}

.bloc_map .bloc_map_menu {
    display: inline-block;
    position: absolute;
    border-radius: 23px;
    background: rgba(40, 40, 40, .05);
    font-size: 1.3rem;
    text-transform: uppercase;
    font-weight: 700;
    top: 46px
}

.bloc_map .bloc_map_menu span {
    padding: 8px 22px;
    cursor: pointer;
    display: inline-block;
    border-radius: 23px
}

.bloc_map .bloc_map_menu span.active {
    background: #282828;
    color: #fff
}

.bloc_map .boussole {
    position: absolute;
    z-index: 1;
    right: 31px;
    top: 41px;
    width: 97px
}

.bloc_map .bloc_map_detail {
    display: none;
    align-items: center;
    justify-content: space-between
}

.bloc_map .bloc_map_detail.active {
    display: flex
}

.bloc_map .bloc_map_detail .left {
    flex-basis: 37%;
    margin-top: 100px
}

.bloc_map .bloc_map_detail .left span {
    display: inline-block
}

.bloc_map .bloc_map_detail .left.grey img {
    filter: grayscale(1)
}

.bloc_map .bloc_map_detail .left img {
    display: block
}

.bloc_map .bloc_map_detail .left img:hover {
    filter: grayscale(0)
}

.bloc_map .bloc_map_detail .right {
    flex-basis: 58%;
    position: relative;
    margin-right: 20px
}

.bloc_map .bloc_map_detail .right img {
    position: absolute;
    width: 100%;
    display: block;
    top: 0;
    left: 0;
    opacity: 0;
    transition: all .1s
}

.bloc_map .bloc_map_detail .right img[data-display=all] {
    position: static
}

.bloc_map .bloc_map_detail .right img.active {
    opacity: 1
}

.bloc_map .bloc_map_detail .right svg {
    position: absolute;
    width: 100%;
    display: block;
    top: 0;
    left: 0
}

.bloc_map .bloc_map_detail .right svg g {
    cursor: pointer
}

.bloc_map .map_list {
    margin-top: 20px;
    border-bottom: 1px solid #282828;
    padding-bottom: 35px;
    margin-bottom: 40px
}

.bloc_map .map_list:last-of-type {
    border-bottom: 0
}

.bloc_map .map_list li {
    margin: 10px 0
}

.bloc_map .map_list li>span {
    font-size: 1.3rem;
    font-weight: 700;
    text-transform: uppercase;
    min-width: 173px;
    display: inline-block;
    vertical-align: middle
}

.bloc_map .map_list div {
    margin: 0;
    display: inline-block;
    vertical-align: middle
}

.bloc_map .map_list div span {
    display: inline-block;
    position: relative;
    vertical-align: middle
}

.bloc_map .map_list div span .info {
    display: none;
    background-color: #282828;
    width: 218px;
    color: #fff;
    padding: 10px;
    position: absolute;
    transform: translateX(-50%);
    cursor: default;
    bottom: 100%;
    text-align: center;
    left: 50%
}

.bloc_map .map_list div span .info:after {
    content: "";
    display: block;
    height: 0;
    width: 0;
    border-top: 6px solid #282828;
    border-right: 6px solid rgba(0, 0, 0, 0);
    border-left: 6px solid rgba(0, 0, 0, 0);
    bottom: 0;
    position: absolute;
    left: 50%;
    transform: translate(-50%, 100%)
}

.bloc_map .map_list div span.active .info {
    display: block
}

.bloc_map .map_list img {
    width: 55px;
    cursor: pointer
}

.bloc_map .parcelle_detail {
    opacity: 0
}

.bloc_map .parcelle_detail.active {
    opacity: 1
}

.bloc_map .parcelle_detail ul {
    border-top: 1px solid #282828;
    padding-top: 20px;
    margin-top: 20px;
    display: flex;
    justify-content: space-between;
    margin-bottom: 30px
}

.bloc_map .parcelle_detail ul li {
    padding-right: 10px
}

.bloc_map .parcelle_detail ul p {
    margin: 0
}

.bloc_map .parcelle_detail ul p:first-child {
    font-size: 1.3rem
}

.bloc_map #carte g {
    cursor: pointer
}

.bloc_contact .container {
    border-bottom: 1px solid #282828;
    text-align: center;
    padding: 27px 0
}

.bloc_contact_white .container_min {
    background: #fff;
    text-align: center;
    padding: 50px 14%;
    margin-top: 75px
}

.bloc_formulaire {
    margin: 87px 0 63px
}

.bloc_formulaire .container_min {
    max-width: 690px
}

.bloc_formulaire form {
    margin-top: 36px
}

.bloc_formulaire .title_2 {
    text-align: center
}

form [type=text],
form [type=email],
form [type=tel],
form [type=password],
form textarea,
form select {
    border-radius: 0;
    border: 0;
    background: #fff;
    padding: 13px 16px;
    resize: none;
    width: 100%;
    display: block;
    -webkit-appearance: none
}

form select {
    background-image: url(https://www.chateau-cheval-blanc.com/wp-content/themes/base/img/down_dark.svg);
    background-repeat: no-repeat;
    background-position: right 15px center
}

form textarea {
    height: 102px
}

form p {
    margin: 12px 0
}

form label span:first-child {
    display: inline-block;
    margin-bottom: 7px
}

form .button,
form input[type=submit] {
    padding: 15px 28px
}

form .wpcf7-list-item {
    margin: 0 20px 0 0
}

form .wpcf7-spinner {
    display: block
}

form .textcenter {
    margin-top: 44px
}

form [type=radio] {
    position: relative;
    padding-left: 35px;
    -webkit-appearance: none
}

form [type=radio]:focus,
form [type=radio]:active {
    border: 0;
    outline: 0
}

form [type=radio]:before {
    content: "";
    display: block;
    width: 24px;
    height: 24px;
    border-radius: 100%;
    border: 1px solid rgba(40, 40, 40, .3);
    position: absolute;
    left: 0;
    top: 50%;
    transform: translate(0, -18px)
}

form [type=radio]:after {
    content: "";
    display: block;
    width: 12px;
    height: 12px;
    border-radius: 100%;
    background: #282828;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translate(6px, -12px);
    opacity: 0;
    transition: all .3s
}

form [type=radio]:checked:after {
    opacity: 1
}

form .cols {
    display: flex;
    gap: 20px
}

form .cols>* {
    flex: 1
}

.gm-style .gm-style-iw-c {
    background: rgba(0, 0, 0, 0);
    box-shadow: 0 0 0
}

.gm-style .gm-style-iw-tc {
    display: none
}

.page_content .entete_page {
    margin-top: 150px;
    text-align: center;
    margin-bottom: 69px
}

.page_content .chapo {
    width: 56%;
    margin: 31px auto
}

.page_content h2 {
    font-weight: 400;
    font-size: 2.8rem;
    line-height: 4.2rem;
    margin: 0;
    font-family: "Joan", serif;
    margin-top: 30px
}

.page_content h3 {
    font-weight: 300
}

.galerie_entete {
    margin-top: 162px;
    text-align: center;
    margin-bottom: 36px
}

.galerie_entete a img {
    margin-right: 11px;
    vertical-align: middle
}

.galerie_entete .title {
    margin-top: 22px
}

.galerie_entete .link_archive {
    position: absolute;
    right: 2%;
    top: 70px
}

.galerie_entete .sub_menu {
    text-align: center;
    margin: 0
}

.galerie_entete .sub_menu a {
    margin: 0 15px
}

.galerie_entete .chapo {
    width: 56%;
    margin: 40px auto
}

.galerie_entete+.container_min .sub_menu {
    text-align: center;
    margin: 0
}

.galerie_entete+.container_min .sub_menu a {
    margin: 0 15px
}

.galerie_list .content {
    border-bottom: 1px solid rgba(40, 40, 40, .3)
}

.galerie_list .content .title_2 {
    padding: 8px 0
}

.galerie_list .content p {
    margin: 0;
    padding: 5px 0;
    border-top: 1px solid rgba(40, 40, 40, .3)
}

.galerie_list.galerie_list_private .title_2 {
    border-bottom: 1px solid #282828
}

.galerie_list.galerie_list_private .content {
    border: 0
}

.galerie_list.galerie_list_private p {
    border: 0
}

.galerie_list .slider {
    overflow: hidden
}

.galerie_list .slider .number {
    float: left
}

.galerie_list .slider .nav {
    float: right
}

.galerie_list .slider .slides {
    clear: both
}

.galerie_list .slider .slide {
    overflow: hidden
}

.galerie_list .slider .slide img {
    height: 720px;
    max-height: 90vh;
    width: 100%;
    object-fit: cover;
    display: block;
    transform: scale(1.02);
    transition: all .5s
}

.galerie_list .slider .slide:first-child {
    opacity: 1
}

.galerie_list .slider .slide:first-child img {
    transform: scale(1)
}

.tpl-galerie .galerie_entete {
    margin-top: 253px;
    margin-bottom: 65px
}

.tpl-galerie .galerie_single {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    flex-wrap: wrap;
    margin-bottom: 80px
}

.tpl-galerie .galerie_single .content {
    flex-basis: 22%;
    margin-right: 2%
}

.tpl-galerie .galerie_single .slider,
.tpl-galerie .galerie_single>figure {
    flex-basis: 74.5%
}

.tpl-galerie .galerie_single>figure img {
    width: 100%
}

.tpl-galerie .galerie_single .img img,
.tpl-galerie .galerie_single .img2 img {
    width: 100%
}

.tpl-galerie .galerie_single:nth-of-type(2),
.tpl-galerie .galerie_single:nth-of-type(3) {
    flex-direction: row-reverse
}

.tpl-galerie .galerie_single:nth-of-type(2) .content,
.tpl-galerie .galerie_single:nth-of-type(3) .content {
    margin-left: 2%;
    margin-right: 0
}

.tpl-galerie .galerie_single:nth-of-type(1) .img {
    flex-basis: 24%;
    margin: -43px 0 0 auto;
    align-self: flex-start;
    position: relative
}

.tpl-galerie .galerie_single:nth-of-type(1) .img2 {
    margin: 90px 0 0 auto;
    flex-basis: 49%
}

.tpl-galerie .galerie_single:nth-of-type(4) .img {
    flex-basis: 24%;
    margin: -43px 0 0 auto;
    align-self: flex-start;
    position: relative
}

.tpl-galerie .galerie_single:nth-of-type(4) .img2 {
    margin: 90px auto 0 auto;
    flex-basis: 35%
}

.tpl-galerie .galerie_single:nth-of-type(2) .img2 {
    flex-basis: 24%;
    margin: 0 auto 0;
    align-self: flex-end
}

.tpl-galerie .galerie_single:nth-of-type(2) .img {
    flex-basis: 37%;
    margin: 89px auto 89px 0
}

.tpl-galerie .galerie_single:nth-of-type(3) {
    margin-top: 77px;
    margin-bottom: 80px
}

.tpl-galerie .galerie_single:nth-of-type(3) .img {
    flex-basis: 24%;
    margin: 315px 0 0
}

.tpl-galerie .galerie_single:nth-of-type(3) .img2 {
    flex-basis: 50%;
    margin: 0 auto 132px
}

.tpl-galerie .galerie_single:nth-of-type(5) .img {
    flex-basis: 45%;
    margin: 80px auto 50px
}

.tpl-galerie .galerie_single:nth-of-type(5) .img2 {
    flex-basis: 30%;
    margin: 0 auto 0
}

.tpl-galerie-archive .galerie_list {
    display: flex;
    flex-wrap: wrap;
    gap: 20px
}

.tpl-galerie-archive .galerie_list .year {
    flex-basis: 100%;
    border-bottom: 1px solid #282828;
    padding-bottom: 17px;
    margin: 10px 0 0 0;
    font-size: 1.3rem
}

.tpl-galerie-archive .galerie_list section {
    width: 49%;
    margin-bottom: 56px
}

.tpl-galerie-archive .galerie_list .content {
    width: 45%;
    margin-top: 10px
}

.tpl-galerie-archive .slider .slides img {
    max-height: 450px
}

.bloc_revendeur {
    margin-bottom: 12px
}

.bloc_revendeur_online {
    border-bottom: 1px solid #282828;
    padding: 0;
    padding-bottom: 30px;
    margin-top: 0
}

.bloc_revendeur_online .revendeurs_list {
    display: flex;
    flex-wrap: wrap;
    gap: 2%;
    margin-top: 44px
}

.bloc_revendeur_online .revendeurs_list:hover article {
    opacity: .7
}

.bloc_revendeur_online .revendeurs_list article {
    flex-basis: 27.5%;
    background: #fff;
    transition: all .3s;
    text-align: center;
    margin-bottom: 20px
}

.bloc_revendeur_online .revendeurs_list article:hover {
    opacity: 1
}

.bloc_revendeur_online .revendeurs_list article a {
    background: none;
    padding: 0
}

.bloc_revendeur_online .revendeurs_list article a .link {
    margin-left: 10px
}

.bloc_revendeur_online .revendeurs_list article a figure {
    padding: 32px;
    height: 336px;
    display: flex;
    flex-direction: column;
    width: 100%;
    text-align: center
}

.bloc_revendeur_online .revendeurs_list article a figure img {
    margin: auto;
    transform: scale(1.02);
    transition: all .5s;
    max-height: 100%
}

.bloc_revendeur_online .revendeurs_list article a:hover figure img {
    transform: scale(1)
}

.bloc_revendeur_online .revendeurs_list article p {
    margin: 0;
    padding: 0 20px 27px;
    font-size: 1.3rem
}

.bloc_revendeur_online .filters {
    margin-top: 47px
}

.bloc_revendeur_online .filters select {
    width: 27.5%
}

.entete_podcast {
    margin-top: 136px
}

.entete_podcast .container_min {
    display: flex;
    flex-direction: column;
    align-items: center
}

.entete_podcast .player figure img {
    object-fit: contain
}

.entete_podcast .menu {
    display: flex;
    gap: 40px
}

.entete_podcast .menu .current-menu-item a:after {
    width: 0
}

.entete_podcast .square {
    padding: 50px 0;
    text-align: center;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 1.3rem;
    margin-bottom: 45px
}

.entete_podcast .square img {
    max-width: 500px
}

.entete_podcast .square p {
    margin: 19px 0 0
}

.entete_podcast .chapo {
    margin: 11px 0;
    width: 56%
}

.list_podcasts {
    margin-top: 62px
}

.list_podcasts article {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 50px 10px;
    position: relative
}

.list_podcasts article:before {
    content: "";
    width: 1px;
    height: 100%;
    position: absolute;
    top: 0;
    left: 50%;
    background-color: #282828;
    transform: translateX(-50%)
}

.list_podcasts article>.upp {
    background: #f7f6f3;
    position: relative;
    margin: 0;
    padding: 20px 0;
    margin-bottom: 150px
}

.list_podcasts article>.upp:before {
    content: "";
    display: block;
    width: 6px;
    height: 6px;
    border-radius: 100%;
    background-color: #282828;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%)
}

.list_podcasts article>.upp:after {
    display: none
}

.list_podcasts article .content,
.list_podcasts article .free_content {
    flex-basis: 42%
}

.list_podcasts article .free_content {
    margin-bottom: 123px
}

.list_podcasts article .content {
    text-align: center
}

.list_podcasts article .content figure,
.list_podcasts article .content .video-container {
    margin-bottom: 26px
}

.list_podcasts article .content p {
    margin: 0
}

.list_podcasts article .content .audio {
    margin-top: 15px
}

.list_podcasts article:nth-of-type(even) {
    flex-direction: row-reverse
}

.list_podcasts article.mentions {
    flex-direction: row;
    align-items: flex-start;
    padding-top: 0
}

.list_podcasts article.mentions .free_content {
    margin-bottom: 0
}

.list_podcasts article.mentions .free_content:last-of-type {
    margin-top: 50px
}

.player {
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 2;
    width: 100%;
    transform: translateY(110%);
    transition: all .5s;
    background-color: #282828;
    color: #fff;
    display: flex
}

.player p {
    margin: 0
}

.player figure {
    width: 90px !important;
    flex-basis: 90px !important;
    height: 90px !important;
    margin: 0 !important
}

.player figure img {
    width: 100%;
    height: 100%;
    object-fit: cover
}

.player.active {
    transform: translateY(0%)
}

.player .content {
    padding: 12px 15px;
    flex-basis: calc(100% - 90px) !important;
    text-align: left !important
}

.player .content>div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%
}

.player .content .play {
    margin-right: 0
}

.player .avancement_container {
    background-color: rgba(255, 255, 255, .3);
    position: relative;
    width: calc(100% - 100px)
}

.player .avancement {
    width: 0;
    background: #fff;
    height: 5px;
    display: block
}

.coulisses {
    margin-top: 137px;
    margin-bottom: 90px
}

.coulisses .container_3 {
    padding-top: 90px;
    border-top: 1px solid #282828
}

.coulisses .title_cite {
    margin-bottom: 49px
}

.audio audio {
    display: none
}

.audio .play {
    width: 36px;
    height: 36px;
    display: inline-block;
    background: url(https://www.chateau-cheval-blanc.com/wp-content/themes/base/img/play.svg);
    background-size: 100%;
    cursor: pointer;
    transition: all .3s;
    vertical-align: middle;
    margin-right: 10px
}

.audio .play:hover {
    opacity: .8
}

.audio .play+.title_3 .onplay {
    display: none
}

.audio .play.active {
    background-image: url(https://www.chateau-cheval-blanc.com/wp-content/themes/base/img/pause.svg)
}

.audio .play.active+.title_3 .onplay {
    display: inline-block
}

.audio .play.active+.title_3 .toplay {
    display: none
}

.audio .play.play_white {
    background-image: url(https://www.chateau-cheval-blanc.com/wp-content/themes/base/img/play_white.svg)
}

.audio .play.play_white.active {
    background-image: url(https://www.chateau-cheval-blanc.com/wp-content/themes/base/img/pause_white.svg)
}

.audio.audio_white .play {
    background-image: url(https://www.chateau-cheval-blanc.com/wp-content/themes/base/img/play_white.svg)
}

.audio.audio_white .play.active {
    background-image: url(https://www.chateau-cheval-blanc.com/wp-content/themes/base/img/pause_white.svg)
}

.with_number {
    position: relative
}

.with_number>div {
    margin-left: 12.5%;
    border-top: 1px solid #282828;
    padding-top: 31px;
    margin-bottom: 32px
}

.with_number .nb {
    position: absolute;
    left: 0;
    margin-top: 9px;
    font-size: 1.3rem
}

.chartdiv {
    width: 100%;
    height: 500px
}

.more_seasons .title_2 {
    margin-bottom: 50px
}

.bloc_image_texte.bloc_push_actu {
    margin: 40px 0
}

.bloc_image_texte.bloc_push_actu>a {
    display: block;
    margin: 0 auto
}

.bloc_image_texte.bloc_push_actu .container_3 {
    /* border-top: 1px solid #282828;
    border-bottom: 1px solid #282828; */
    padding: 40px 0
}

.bloc_image_texte.bloc_push_actu .container_3 figure {
    margin-left: 0;
    flex-basis: 50%
}

.bloc_image_texte.bloc_push_actu .container_3 .content {
    flex-basis: 45%
}

.bloc_image_texte.bloc_push_actu+.bloc_image_texte.bloc_push_actu .container_3 {
    border-top: 0;
    padding-top: 0
}

.home .bloc_image_texte.bloc_push_actu {
    margin-bottom: 80px
}

.galerie_detail ul {
    columns: 3;
    gap: 20px
}

.galerie_detail ul li {
    position: relative;
    margin-bottom: 20px;
    overflow: hidden
}

.galerie_detail ul li:hover img {
    transform: scale(1.02)
}

.galerie_detail ul a.download {
    position: absolute;
    background-color: #282828;
    right: 20px;
    top: 20px;
    color: #fff;
    background-image: url(https://www.chateau-cheval-blanc.com/wp-content/themes/base/img/download_white.svg);
    background-repeat: no-repeat;
    background-position: center center;
    width: 46px;
    height: 46px;
    color: #282828;
    padding: 0 10px 0 36px;
    transition: background-color .3s
}

.galerie_detail ul a.download:hover {
    width: auto;
    background-color: #fff;
    background-image: url(https://www.chateau-cheval-blanc.com/wp-content/themes/base/img/download.svg);
    background-position: left 10px center
}

.galerie_detail ul a.download:hover span {
    display: block;
    margin-top: 8px
}

.galerie_detail ul a.download span {
    display: none
}

.galerie_detail ul a[data-lightbox] {
    display: block
}

.galerie_detail ul a[data-lightbox]:after {
    content: "";
    display: block;
    width: 36px;
    height: 36px;
    position: absolute;
    bottom: 20px;
    right: 20px;
    background: url(https://www.chateau-cheval-blanc.com/wp-content/themes/base/img/more.svg);
    background-size: 100%
}

.galerie_detail ul a[data-lightbox] img {
    width: 100%
}

.galerie_detail ul p {
    margin: 0;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 20px 60px 20px 20px;
    color: #fff
}

.galerie_detail img {
    width: 100%;
    transition: all .5s
}

.lightbox .lb-image {
    border: 0;
    border-radius: 0
}

.lb-outerContainer {
    position: static
}

.lb-dataContainer {
    margin-top: -57px;
    padding: 20px 0
}

@media screen and (max-width:980px) {
    .lb-dataContainer {
        margin-top: 0
    }
}

.lb-data .lb-number {
    padding: 0;
    font-size: inherit;
    color: #fff
}

.galerie_detail .detail_lightbox,
.galerie_detail .button_download {
    display: none
}

.lightbox:before {
    content: "";
    display: block;
    width: 275px;
    height: 42px;
    background: url(https://www.chateau-cheval-blanc.com/wp-content/themes/base/img/logo.svg);
    background-repeat: no-repeat;
    margin: -30px auto 20px
}

.lightbox .detail_lightbox {
    display: block;
    position: absolute;
    z-index: 99999999;
    top: 0;
    color: #fff;
    margin-top: -37px;
    padding-left: 20px
}

@media screen and (max-width:980px) {
    .lightbox .detail_lightbox {
        position: static;
        margin: 20px
    }
}

.lightbox .button_download {
    display: inline-block;
    position: relative;
    float: right;
    border: 1px solid rgba(255, 255, 255, .3);
    padding: 16px 20px;
    margin-top: -50px;
    margin-right: 20px
}

.lightbox .button_download:hover {
    background-color: #fff
}

@media screen and (max-width:980px) {
    .lightbox .button_download {
        float: none;
        margin: 0
    }
}

.lb-data .lb-details {
    display: flex;
    padding: 0 20px;
    flex-direction: row-reverse;
    width: 100%;
    float: none;
    justify-content: center;
    gap: 10px;
    font-family: "Joan", serif;
    font-size: 1.5rem
}

.lb-data .lb-caption {
    color: #fff
}

.lb-data .lb-close {
    position: fixed;
    top: 20px;
    right: 20px;
    background-image: url(https://www.chateau-cheval-blanc.com/wp-content/themes/base/img/close.svg);
    width: 36px;
    height: 36px;
    background-size: 100%
}

.lb-nav {
    top: 48%;
    left: 0;
    height: 38px
}

.lb-nav a.lb-prev {
    width: 36px;
    background-image: url(https://www.chateau-cheval-blanc.com/wp-content/themes/base/img/prev.svg);
    background-size: 100% auto;
    background-repeat: no-repeat;
    opacity: 1;
    margin: 0 50px
}

.lb-nav a.lb-prev:hover {
    background-image: url(https://www.chateau-cheval-blanc.com/wp-content/themes/base/img/prev_hover.svg)
}

@media screen and (max-width:980px) {
    .lb-nav a.lb-prev {
        margin: 0 20px
    }
}

.lb-nav a.lb-next {
    width: 36px;
    background-image: url(https://www.chateau-cheval-blanc.com/wp-content/themes/base/img/next.svg);
    background-size: 100% auto;
    background-repeat: no-repeat;
    opacity: 1;
    margin: 0 50px
}

.lb-nav a.lb-next:hover {
    background-image: url(https://www.chateau-cheval-blanc.com/wp-content/themes/base/img/next_hover.svg)
}

@media screen and (max-width:980px) {
    .lb-nav a.lb-next {
        margin: 0 20px
    }
}

.lightboxOverlay {
    background-color: #282828;
    opacity: 1
}

.lightboxOverlay:after {
    background: #000;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, .7021402311) 100%);
    content: "";
    display: block;
    width: 100%;
    position: absolute;
    height: 80%;
    left: 0;
    bottom: 0
}

.password_protected {
    max-width: 690px
}

.password_protected .post-password-form {
    background-color: #fff;
    padding: 50px;
    margin-bottom: 50px;
    margin-top: 40px
}

.password_protected .post-password-form .inputs {
    margin-top: 20px;
    display: flex
}

.password_protected .post-password-form .inputs input[type=password] {
    background-color: #f7f6f3
}

.password_protected .wpcf7-form {
    text-align: left
}

.single-galerie_private .entete_page a {
    margin-bottom: 20px
}

.single-galerie_private .entete_page a img {
    vertical-align: middle
}

@media screen and (max-width:1100px) {
    .bloc_titre_texte .title_big {
        font-size: 9rem;
        line-height: 9rem
    }

    .bloc_titre_texte .container .content {
        padding: 0
    }

    .bloc_vins article:nth-of-type(2) {
        padding: 0
    }
}

@media screen and (max-width:980px) {
    .no_desktop {
        display: block
    }

    .no_mobile {
        display: none
    }

    .title_big {
        font-size: 6.9rem;
        line-height: 6.9rem;
        letter-spacing: -.3rem
    }

    .title_0 {
        font-size: 5rem;
        line-height: 10.8rem;
        letter-spacing: -.3rem
    }

    .title {
        font-size: 5rem;
        line-height: 7rem;
        letter-spacing: -.12rem
    }

    .title_1 {
        font-size: 4.6rem;
        line-height: 5.2rem;
        letter-spacing: -.12rem
    }

    .title_15 {
        font-size: 2.8rem;
        line-height: 4rem
    }

    .title_2 {
        font-size: 2rem;
        line-height: 3.2rem
    }

    .title_cite {
        font-size: 2.4rem;
        line-height: 3.6rem
    }

    .container {
        width: 90%
    }

    .header {
        padding: 14px 5%
    }

    .header .logo img {
        width: 170px
    }

    .header .wpml-ls-legacy-list-horizontal {
        margin: 0
    }

    .header .wpml-ls-legacy-list-horizontal a {
        padding: 5px 5px
    }

    .mainnav {
        height: 100vh;
        overflow: scroll
    }

    .mainnav .content {
        flex-direction: column-reverse;
        justify-content: flex-end
    }

    .mainnav .menu-main>li {
        margin: 16px 0
    }

    .mainnav .menu-main>li>a {
        font-size: 2.5rem;
        letter-spacing: -.2rem;
        line-height: 4rem
    }

    .mainnav .menu-main>li ul {
        display: block;
        max-height: 0;
        transition: all .5s;
        overflow: hidden
    }

    .mainnav .menu-main>li ul li {
        margin: 25px 0
    }

    .mainnav .menu-main>li.active ul,
    .mainnav .menu-main>li.current-menu-parent ul {
        max-height: 500px
    }

    .mainnav .menu-second,
    .mainnav .menu-third {
        position: static;
        text-align: center;
        margin: 0
    }

    .mainnav .menu-second li,
    .mainnav .menu-third li {
        margin: 31px 0
    }

    .mainnav .menu-second:before {
        content: "";
        display: block;
        width: 50px;
        height: 1px;
        background-color: rgba(0, 0, 0, .5);
        margin: auto
    }

    .mainnav .podcast {
        position: static;
        width: 100%;
        margin-top: auto;
        padding-top: 18px;
        text-align: center
    }

    .footer .container {
        display: block;
        text-align: center
    }

    .footer .menu {
        justify-content: center
    }

    .bloc_saisons_entete {
        padding-top: 79px
    }

    .bloc_saisons_entete .content {
        padding: 20px 5% 0
    }

    .bloc_saisons_entete .content .title {
        margin: auto 0 2px
    }

    .bloc_saisons_entete .mois {
        top: 80px;
        text-align: center
    }

    .bloc_saisons_entete .title_cite {
        font-size: 1.8rem;
        line-height: 3rem
    }

    .bloc_saisons .container {
        flex-direction: column
    }

    .bloc_saisons .content {
        margin: 20px 0 40px;
        width: auto
    }

    .bloc_saisons .content .title_2 {
        margin-top: 8px
    }

    .bloc_saisons .right {
        width: 50%;
        margin: 0 0 57px auto
    }

    .bloc_titre_texte {
        padding: 36px 0 20px
    }

    .bloc_titre_texte .container {
        flex-direction: column
    }

    .bloc_titre_texte .container .title_big {
        margin-bottom: 10px
    }

    .bloc_titre_texte .container .content {
        padding: 0;
        margin-top: 38px
    }

    .bloc_titre_texte .container .content .title_2 {
        margin-bottom: 15px
    }

    .bloc_vins .container {
        flex-direction: column;
        padding: 60px 0 35px
    }

    .bloc_vins .container .content {
        margin: 0 0 35px;
        padding: 0;
        order: -1
    }

    .bloc_vins .container .content .title_1 {
        margin-bottom: 15px
    }

    .bloc_vins .container .content .free_content {
        margin-bottom: 0
    }

    .bloc_vins .container .free_content {
        order: 2
    }

    .bloc_vins .container .free_content p a {
        display: block;
        width: fit-content;
        margin: 10px 0 !important
    }

    .bloc_vins article:first-of-type,
    .bloc_vins article:nth-of-type(2),
    .bloc_vins article:last-of-type {
        margin: 0;
        padding: 0;
        margin-bottom: 22px
    }

    .vin_entete {
        margin-top: 131px
    }

    .vin_entete .free_content {
        columns: 1;
        padding-top: 44px;
        margin-top: 41px;
        margin-bottom: 0
    }

    .vin_entete .chapo {
        width: auto;
        margin: 38px auto
    }

    .vin_entete .img-intro img {
        max-width: 120px
    }

    .bloc_map .boussole {
        right: 20px;
        top: 128px;
        width: 48px
    }

    .bloc_map .bloc_map_detail {
        flex-direction: column-reverse;
        overflow: hidden
    }

    .bloc_map .bloc_map_detail .right {
        margin-top: 118px;
        margin-right: 0
    }

    .bloc_map .bloc_map_detail .left {
        width: 100%;
        margin-top: 10px
    }

    .bloc_map .map_list {
        margin-top: 10px;
        padding-bottom: 20px;
        margin-bottom: 20px
    }

    .bloc_map .map_list img {
        width: 33px
    }

    .bloc_map .map_list li>span {
        min-width: 155px
    }

    .millesimes_entete {
        margin: 60px 0 0
    }

    .millesimes_entete .title_cite {
        font-size: 2.4rem;
        line-height: 3.6rem
    }

    .millesimes_onglets_decennies {
        display: none
    }

    .millesimes_onglets {
        margin: 61px auto 15px
    }

    .millesimes .entete_millesime {
        margin-bottom: 47px
    }

    .millesimes .title_2 {
        font-size: 2.4rem;
        line-height: 3.6rem
    }

    .millesimes .title_big {
        font-size: 10rem;
        line-height: 1
    }

    .millesimes .onglet {
        margin: 26px 0
    }

    .millesimes .onglet.degustation {
        margin-bottom: 64px
    }

    .millesimes .onglet .container_min,
    .millesimes .onglet .container,
    .millesimes .onglet .container_3 {
        display: block
    }

    .millesimes .onglet .container_min .title_2,
    .millesimes .onglet .container .title_2,
    .millesimes .onglet .container_3 .title_2 {
        margin-bottom: 9px
    }

    .millesimes .onglet .bloc_onglet {
        margin: 10px 0;
        padding: 38px 6%
    }

    .millesimes .onglet .bloc_onglet .percents {
        margin-bottom: 19px
    }

    .millesimes .sub_menu {
        display: block;
        padding: 17px 5% !important
    }

    .millesimes .sub_menu.is-pinned {
        display: flex;
        justify-content: flex-start
    }

    .millesimes .sub_menu.is-pinned .dropdown {
        margin: 0;
        display: none
    }

    .millesimes .sub_menu.is-pinned .dropdown .fixed {
        padding: 8px 30px 8px 10px;
        line-height: 1.2
    }

    .millesimes .sub_menu.is-pinned .openMenu {
        margin-right: 10px
    }

    .millesimes .sub_menu.is-pinned .title_upp {
        padding-right: 10px;
        margin-right: 10px;
        margin-left: 0;
        border-right: 0
    }

    .millesimes .sub_menu.is-pinned .button {
        margin: 0;
        padding: 8px 10px;
        line-height: 1.2;
        position: fixed;
        bottom: 0;
        left: 0;
        width: 100%;
        display: none
    }

    .millesimes .sub_menu .button {
        order: 0
    }

    .millesimes .sub_menu .dropdown {
        display: none
    }

    .millesimes .sub_menu .dropdown .fixed {
        display: block
    }

    .dropdown {
        margin: 20px 0;
        position: relative;
        z-index: 6
    }

    .dropdown .fixed {
        border: 1px solid #282828;
        padding: 9px 25px 9px 15px;
        background: url(https://www.chateau-cheval-blanc.com/wp-content/themes/base/img/drop.svg) no-repeat;
        background-position: right 10px center;
        font-size: 1.5rem;
        cursor: pointer;
        margin: 0
    }

    .dropdown .fixed+div {
        z-index: 2;
        display: none;
        position: absolute;
        border: 1px solid #282828;
        background-color: #f7f6f3;
        width: 100%;
        max-height: 65vh;
        overflow: scroll
    }

    .dropdown .fixed+div a,
    .dropdown .fixed+div span {
        display: block;
        padding: 10px;
        margin: 0
    }

    .dropdown .fixed+div a:after,
    .dropdown .fixed+div span:after {
        display: none
    }

    .dropdown.active>div {
        display: flex;
        flex-direction: column
    }

    .dropdown.dropdown_millesime {
        display: block
    }

    .bloc_bas {
        margin: 30px 0;
        height: auto;
        min-height: 375px
    }

    .bloc_bas .content {
        padding: 76px 5%
    }

    .bloc_bas .title_0 {
        line-height: 5.8rem
    }

    .bloc_bas .liens {
        display: block;
        text-align: center
    }

    .bloc_bas .liens li {
        margin: 20px 0
    }

    .bloc_bas .liens li span+figure {
        display: none
    }

    .bloc_image_texte {
        margin: 31px 0
    }

    .bloc_image_texte .container_3,
    .bloc_image_texte.img-droite .container_3 {
        flex-direction: column
    }

    .bloc_image_texte .container_3 figure,
    .bloc_image_texte.img-droite .container_3 figure {
        margin: 0 13%
    }

    .bloc_accordeon {
        margin: 70px 0 38px
    }

    .bloc_accordeon .title_1 {
        font-size: 4.2rem;
        line-height: 5rem;
        margin: 50px 0 30px
    }

    .bloc_accordeon .accordeon_detail .content_open {
        flex-direction: column
    }

    .bloc_accordeon .accordeon_detail .content_open figure {
        margin-top: 30px
    }

    .bloc_accordeon .accordeon_detail .content_open .audio {
        margin-top: 11px
    }

    .bloc_accordeon .accordeon_detail .content_open .content .auto {
        display: none
    }

    .bloc_accordeon .accordeon_detail .content_open>.auto {
        display: block
    }

    .bloc_accordeon .accordeon_detail .content_close .content {
        width: auto
    }

    .bloc_accordeon .accordeon_detail .content_close .content:first-child {
        padding-top: 0
    }

    .bloc_accordeon .accordeon_detail .content_close .content .title_cite {
        margin: 20px 0
    }

    .bloc_accordeon .accordeon_detail .content_close .slider {
        margin: 40px 0
    }

    .with_number {
        padding-top: 25px;
        border-top: 1px solid #282828
    }

    .with_number>div {
        margin-left: 0;
        padding-top: 11px;
        border-top: 0;
        margin-bottom: 7px
    }

    .with_number .nb {
        position: static
    }

    .entete_podcast {
        margin-top: 122px
    }

    .entete_podcast .chapo {
        width: auto;
        margin: 5px 0
    }

    .entete_podcast .square {
        padding: 88px 68px 81px
    }

    .entete_podcast .square p {
        margin: 10px 0 0
    }

    .list_podcasts {
        margin-top: 30px
    }

    .list_podcasts article:first-child>.upp:before {
        display: none
    }

    .list_podcasts article,
    .list_podcasts article:nth-of-type(even),
    .list_podcasts article.mentions {
        flex-direction: column;
        padding: 0;
        margin-bottom: 20px
    }

    .list_podcasts article:before,
    .list_podcasts article:nth-of-type(even):before,
    .list_podcasts article.mentions:before {
        display: none
    }

    .list_podcasts article>.upp,
    .list_podcasts article:nth-of-type(even)>.upp,
    .list_podcasts article.mentions>.upp {
        margin: 0 auto;
        order: -1;
        padding-top: 80px
    }

    .list_podcasts article>.upp:after,
    .list_podcasts article:nth-of-type(even)>.upp:after,
    .list_podcasts article.mentions>.upp:after {
        content: "";
        width: 1px;
        height: calc(100% - 55px);
        position: absolute;
        top: 0;
        left: 50%;
        background-color: #282828
    }

    .list_podcasts article>.upp:before,
    .list_podcasts article:nth-of-type(even)>.upp:before,
    .list_podcasts article.mentions>.upp:before {
        top: 0;
        bottom: auto
    }

    .list_podcasts article .content figure,
    .list_podcasts article .content .video-container,
    .list_podcasts article:nth-of-type(even) .content figure,
    .list_podcasts article:nth-of-type(even) .content .video-container,
    .list_podcasts article.mentions .content figure,
    .list_podcasts article.mentions .content .video-container {
        margin-bottom: 20px
    }

    .list_podcasts article .free_content,
    .list_podcasts article:nth-of-type(even) .free_content,
    .list_podcasts article.mentions .free_content {
        margin: 30px auto 0;
        width: 100%
    }

    .coulisses {
        margin: 50px 0
    }

    .coulisses .container_3 {
        padding-top: 58px
    }

    .coulisses .title_cite {
        margin-bottom: 26px
    }

    .free_content {
        columns: 1 !important
    }

    .popin {
        padding: 5%
    }

    .popin .content {
        padding: 50px 11%
    }

    .popin .chapo {
        font-size: 1.6rem;
        line-height: 2.8rem
    }

    .popin .wpml-ls-legacy-list-horizontal {
        margin: 0 0 28px 0
    }

    .popin .button {
        margin: 0
    }

    .bloc_texte {
        margin: 60px 0 61px
    }

    .bloc_texte .title_2 {
        margin: 12px 0 13px
    }

    .bloc_texte .chapo {
        padding: 0
    }

    .bloc_entete .title {
        word-break: break-word
    }

    .bloc_citation {
        margin: 30px 0
    }

    .bloc_citation .download {
        margin-top: 25px
    }

    .bloc_citation .download .img,
    .bloc_citation .download .label {
        display: block;
        margin: auto;
        text-align: center
    }

    .bloc_citation .download .img:after,
    .bloc_citation .download .label:after {
        display: none
    }

    .precipitation .precipitations_synthese {
        flex-direction: column
    }

    .precipitation .precipitations_synthese>div {
        margin: 10px 0
    }

    .tpl-galerie .galerie_single {
        display: block
    }

    .tpl-galerie .galerie_single .content {
        margin-bottom: 20px
    }

    .tpl-galerie .galerie_single .img,
    .tpl-galerie .galerie_single .img2 {
        margin: 10px 0 !important
    }

    .galerie_list .slider .slide img {
        height: 400px
    }

    .galerie_detail ul {
        columns: 2
    }
}

@media screen and (max-width:440px) {
    .bloc_titre_texte .title_big {
        font-size: 5rem;
        line-height: 5rem;
        letter-spacing: -.1rem
    }

    .mainnav .content {
        padding: 280px 5% 70px;
    }

    .mainnav .menu-main>li>a>span {
        font-size: 3rem;
    }

    .mainnav .menu-main>li {
        margin: 22px 0;
    }

    .mainnav .menu-main>li>a {
        font-size: 2rem;
        line-height: 3rem
    }

    .bloc_entete .title {
        font-size: 3.9rem;
        line-height: 6rem
    }
}



.bloc_saisons .content {
    width: 70%;
}

footer {
    text-align: center;
    font-family: 'PlayfairDisplay';
}

footer h1 {
    font-size: 4rem;
    margin-bottom: 2rem;
}

footer img {
    width: 70px;
    margin: 10px auto 20px;
}

.center {
    text-align: center;
}

.container .row {
    width: 85%;
    margin: 0 auto;
}

@media (max-width: 990px) {
    /* .col-md-12 {
        text-align: center;
    } */

    .bloc_saisons .content {
        width: 80%;
        margin: 20px auto 40px;
    }
}


footer {
    background: #fbfcfd;
}

.foot-logo-icon {
    width: 70px;
    /* 你可以调节大小 */
    height: auto;
    margin: 40px auto 30px auto;
    display: block;
}

.menu-list a {
    font-size: 16px;
    margin: 0 15px;
    color: #333;
    text-underline-offset: 4px;
    text-decoration-thickness: 1px;
}

.menu-list a:hover {
    color: #000;
}