@charset "UTF-8";
/*
Theme Name: Le Château des Milandes v2018
Theme URI: https://julienriou.fr
Author: Agence Julien Riou
Version: 20240813-1
*/
/* ----------------------------------------------------------------------------- */
/* == Table Of Content           */
/* ----------------------------------------------------------------------------- */
/* 1. Variables */
/* 2. Custom Normalize */
/* 3. Grille de mise en page */
/* 4. Thème */
/* -----------------------------------------------------------------------------

        1. Custom Normalize = _rvb_base.scss

----------------------------------------------------------------------------- */
/* Inspired by https://github.com/necolas/normalize.css */
/*  1.1 - Document
========================================================================== */
html {
  box-sizing: border-box;
}

* {
  box-sizing: inherit;
}

html {
  /* set base font-size to equiv "10px", which is adapted to rem unit */
  font-size: 62.5%;
  /* IE9-IE11 math fixing. See http://bit.ly/1g4X0bX */
  /* thanks to @guardian, @victorbritopro and @eQRoeil */
  font-size: calc(1em * 0.625);
  font-family: sans-serif;
  line-height: 1.4;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

/*  1.2 - Sections
========================================================================== */
body {
  margin: 0;
  padding: 0;
}

article,
aside,
figcaption,
figure footer,
header,
main,
nav,
section {
  display: block;
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

/* max values */
blockquote,
code,
img,
input,
pre,
table,
td,
textarea,
svg,
video {
  max-width: 100%;
}

img {
  height: auto;
}

/* margins */
h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
  margin-top: 2rem;
  margin-bottom: 1.4rem;
  line-height: 1.1;
}

figure {
  margin: 0.45rem 0 0;
  padding: 0;
}

blockquote,
form,
p,
ul {
  margin-top: 0.45rem;
}

/* Styling for Table & Table display elements */
table,
.table {
  table-layout: fixed;
  border-collapse: collapse;
  width: 100%;
  max-width: 100%;
  margin: 0;
  vertical-align: top;
}

.row {
  display: table-row;
}

.cell {
  display: table-cell;
}

/*  1.3 - Layout (float + flexbox + inline-block)
========================================================================== */
/* floating elements */
.fl {
  float: left;
}

.fr {
  float: right;
}

/* blocks that needs to be placed under floats */
.clear {
  clear: both;
}

/* blocks that must contain floats */
.clearfix::after {
  content: "";
  display: table;
  clear: both;
  border-collapse: collapse;
}

/* flexbox layout */
[class*="flex"],
.flex {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
}

.flex-h {
  flex-direction: row;
}

.flex-v {
  flex-direction: column;
}

.flex-item-center {
  margin: auto;
}

/* inline-block layout */
.inbl {
  display: inline-block;
}

/*  1.4 - Typography & Text-level semantics
========================================================================== */
body {
  font-family: "Barlow", "Helvetica Neue", Helvetica, arial, sans-serif;
  font-weight: 400;
  color: #000;
  background: #fff;
}

@media screen and (min-width: 0px) {
  body {
    font-size: 1.6rem;
  }
}

@media screen and (min-width: 1680px) {
  body {
    font-size: 1.8rem;
  }
}

a,
a:visited {
  color: #000;
  text-decoration: none;
  border-bottom: 1px solid #bbbbbb;
  transition: color 0.2s;
}

a:hover,
a:active {
  color: #000;
  border-bottom: 1px solid #000;
  transition: color 0.2s;
}

a[x-apple-data-detectors] {
  color: #fff !important;
  text-decoration: none !important;
  font-size: inherit !important;
  font-family: inherit !important;
  font-weight: inherit !important;
  line-height: inherit !important;
}

/* Titles font-sizing */
@media screen and (min-width: 0px) {
  h1,
  .h1 {
    font-size: 4.4rem;
  }
  h2,
  .h2 {
    font-size: 3.2rem;
  }
  h3,
  .h3 {
    font-size: 2.4rem;
  }
  h4,
  .h4 {
    font-size: 2rem;
  }
  h5,
  .h5 {
    font-size: 1.8rem;
  }
  h6,
  .h6 {
    font-size: 1.6rem;
  }
}

@media screen and (min-width: 720px) {
  h1,
  .h1 {
    font-size: 4.95rem;
  }
  h2,
  .h2 {
    font-size: 3.6rem;
  }
  h3,
  .h3 {
    font-size: 2.7rem;
  }
  h4,
  .h4 {
    font-size: 2.25rem;
  }
  h5,
  .h5 {
    font-size: 2.025rem;
  }
  h6,
  .h6 {
    font-size: 1.8rem;
  }
}

@media screen and (min-width: 1440px) {
  h1,
  .h1 {
    font-size: 5.5rem;
  }
  h2,
  .h2 {
    font-size: 4rem;
  }
  h3,
  .h3 {
    font-size: 3rem;
  }
  h4,
  .h4 {
    font-size: 2.5rem;
  }
  h5,
  .h5 {
    font-size: 2.25rem;
  }
  h6,
  .h6 {
    font-size: 2rem;
  }
}

@media screen and (min-width: 1920px) {
  h1,
  .h1 {
    font-size: 5.5rem;
  }
  h2,
  .h2 {
    font-size: 4rem;
  }
  h3,
  .h3 {
    font-size: 3rem;
  }
  h4,
  .h4 {
    font-size: 2.5rem;
  }
  h5,
  .h5 {
    font-size: 2.25rem;
  }
  h6,
  .h6 {
    font-size: 2rem;
  }
}

/**
* Prevent `sub` and `sup` elements from affecting the line height in all browsers.
*/
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* alternate font-sizing */
@media screen and (min-width: 0px) {
  .smallest {
    font-size: 1.066666672rem;
  }
  .smaller {
    font-size: 1.244444448rem;
  }
  .small {
    font-size: 1.422222224rem;
  }
  .big {
    font-size: 1.777777792rem;
  }
  .bigger {
    font-size: 1.955555568rem;
  }
  .biggest {
    font-size: 2.133333344rem;
  }
}

@media screen and (min-width: 720px) {
  .smallest {
    font-size: 1.200000006rem;
  }
  .smaller {
    font-size: 1.400000004rem;
  }
  .small {
    font-size: 1.600000002rem;
  }
  .big {
    font-size: 2.000000016rem;
  }
  .bigger {
    font-size: 2.200000014rem;
  }
  .biggest {
    font-size: 2.400000012rem;
  }
}

@media screen and (min-width: 1920px) {
  .smallest {
    font-size: 1.33333334rem;
  }
  .smaller {
    font-size: 1.55555556rem;
  }
  .small {
    font-size: 1.77777778rem;
  }
  .big {
    font-size: 2.22222224rem;
  }
  .bigger {
    font-size: 2.44444446rem;
  }
  .biggest {
    font-size: 2.66666668rem;
  }
}

/**
* Monospace style
*/
code,
pre,
samp,
kbd {
  /* IE fix */
  white-space: pre-line;
  white-space: pre-wrap;
  font-family: Consolas, "DejaVu Sans Mono", Courier, monospace;
  line-height: normal;
}

/**
* Italic style
*/
em,
.italic,
address,
cite,
dfn,
i,
var {
  font-style: italic;
}

/**
* Prevent the duplicate application of `bolder` by the next rule in Safari 6.
* Then, Add the correct font weight in Chrome, Edge, and Safari.
*/
b,
strong,
.strong {
  font-weight: 700;
}

/* alignment */
.aleft {
  text-align: left;
}

.acenter {
  text-align: center;
}

.aright {
  text-align: right;
}

/* text-transform */
.caps {
  text-transform: uppercase;
}

/* font-smoothing */
.fs {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* font-family */
.ff_sans {
  font-family: "Barlow", "Helvetica Neue", Helvetica, arial, sans-serif;
}

.ff_serif {
  font-family: "Cormorant Garamond", Georgia, serif;
}

/* 1.5 - Embedded content
========================================================================== */
/**
* Add the correct display in IE 9-.
*/
audio,
video {
  display: inline-block;
}

/**
* Add the correct display in iOS 4-7.
*/
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
* Remove the border on images inside links in IE 10-.
*/
img {
  border-style: none;
}

/**
* Hide the overflow in IE.
*/
svg:not(:root) {
  overflow: hidden;
}

/* 1.6 - Forms
========================================================================== */
/**
* 1. Change the font styles in all browsers (opinionated).
* 2. Remove the margin in Firefox and Safari.
*/
button,
input,
optgroup,
select,
textarea {
  font-family: "Barlow", "Helvetica Neue", Helvetica, arial, sans-serif;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1;
  /* 1 */
  margin: 0;
  /* 2 */
}

/**
* Show the overflow in IE.
* 1. Show the overflow in Edge.
*/
button,
input {
  /* 1 */
  overflow: visible;
}

/**
* Remove the inheritance of text transform in Edge, Firefox, and IE.
* 1. Remove the inheritance of text transform in Firefox.
*/
button,
select {
  /* 1 */
  text-transform: none;
}

/**
* 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
*    controls in Android 4.
* 2. Correct the inability to style clickable types in iOS and Safari.
*/
button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
}

/**
* Remove the inner border and padding in Firefox.
*/
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
* Restore the focus styles unset by the previous rule.
*/
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted #000;
}

/**
* Change the border, margin, and padding in all browsers (opinionated).
*/
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0;
  padding: 0.35em 0.625em 0.75em;
}

/**
* 1. Correct the text wrapping in Edge and IE.
* 2. Correct the color inheritance from `fieldset` elements in IE.
* 3. Remove the padding so developers are not caught out when they zero out
*    `fieldset` elements in all browsers.
*/
legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}

/**
* 1. Add the correct display in IE 9-.
* 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
*/
progress {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */
}

/**
* Remove the default vertical scrollbar in IE.
*/
textarea {
  overflow: auto;
}

/**
* 1. Add the correct box sizing in IE 10-.
* 2. Remove the padding in IE 10-.
*/
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
* Correct the cursor style of increment and decrement buttons in Chrome.
*/
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
* 1. Correct the odd appearance in Chrome and Safari.
* 2. Correct the outline style in Safari.
*/
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

/**
* Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
*/
[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
* 1. Correct the inability to style clickable types in iOS and Safari.
* 2. Change font properties to `inherit` in Safari.
*/
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

/* 1.7 - Interactive
========================================================================== */
/*
* Add the correct display in IE 9-.
* 1. Add the correct display in Edge, IE, and Firefox.
*/
details,
menu {
  display: block;
}

/*
* Add the correct display in all browsers.
*/
summary {
  display: list-item;
}

/* 1.8 - Scripting
========================================================================== */
/**
* Add the correct display in IE 9-.
*/
canvas {
  display: inline-block;
}

/**
* Add the correct display in IE.
*/
template {
  display: none;
}

/* 1.9 - Hidden
========================================================================== */
/**
* Add the correct display in IE 10-.
*/
[hidden] {
  display: none;
}

/* -----------------------------------------------------------------------------

        2. Grille de mise en page Flex = _rvb_grid.scss

----------------------------------------------------------------------------- */
@media screen and (min-width: 0px) {
  [class*="rvb_grid-"],
  [class*="rvb_col-"] {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  [class*="rvb_col-"] > *,
  [class*="rvb_grid-"] > * {
    width: 100%;
  }
  [class*="rvb_col-"] > *:last-child {
    margin-bottom: auto;
  }
}

@media screen and (min-width: 720px) {
  [class*="rvb_col-"] > *:last-child {
    margin-bottom: auto;
  }
  .rvb_col-2 > *,
  .rvb_col-3 > *,
  .rvb_col-4 > *,
  .rvb_col-5 > *,
  .rvb_col-6 > * {
    width: 49%;
  }
}

@media screen and (min-width: 960px) {
  [class*="rvb_grid-"] > * {
    width: calc(100% / 2);
  }
  [class*="rvb_col-"] > * {
    margin-bottom: 0;
  }
}

@media screen and (min-width: 1440px) {
  .rvb_grid-2 > * {
    width: calc(100% / 2);
  }
  .rvb_grid-3 > * {
    width: calc(100% / 3);
  }
  .rvb_grid-4 > * {
    width: calc(100% / 4);
  }
  .rvb_grid-5 > * {
    width: calc(100% / 5);
  }
  .rvb_col-2 > * {
    width: 49%;
  }
  .rvb_col-3 > * {
    width: 32%;
  }
  .rvb_col-4 > * {
    width: 23.5%;
  }
  .rvb_col-5 > * {
    width: 18.4%;
  }
  .rvb_col-6 > * {
    width: 15%;
  }
}

/* -----------------------------------------------------------------------------

5. Thème = _rvb_theme.scss

----------------------------------------------------------------------------- */
/*  Global
========================================================================== */
.MainWrapper {
  max-width: 1920px;
  margin: 0 auto;
}

body {
  scroll-behavior: smooth;
}

body.noscroll .Main {
  display: none;
}

.Wrapper {
  max-width: 1440px;
  margin: 0 auto;
}

.abutton,
.abutton:hover,
.abutton:active,
.abutton:visited {
  display: inline-block;
  padding: 1rem 4rem;
  font-weight: 700;
  color: #fff !important;
  background: #b19d37 !important;
  border: none;
  border-radius: 3px;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/*  Schedule
========================================================================== */
.Toolbar {
  position: fixed;
  z-index: 8000;
  top: 0;
  left: 0;
  right: 0;
  color: #fff;
  background: #c0b06e;
}

@media screen and (min-width: 0px) {
  .ToolbarMobile {
    display: block;
  }
  .ToolbarDesktop {
    display: none;
  }
}

@media screen and (min-width: 1280px) {
  .ToolbarMobile {
    display: none;
  }
  .ToolbarDesktop {
    display: block;
  }
}

.ToolbarShadow {
  position: fixed;
  z-index: 7999;
  top: 0;
  left: 0;
  right: 0;
  background: rgba(255, 255, 255, 0.75);
}

@media screen and (min-width: 0px) {
  .Toolbar {
    box-shadow: 0 -1px 5px black;
  }
  .ToolbarShadow {
    display: none;
  }
}

@media screen and (min-width: 960px) {
  .ToolbarShadow {
    height: 73px;
  }
}

@media screen and (min-width: 1280px) {
  .ToolbarShadow {
    height: 107px;
  }
}

.Toolbar_Wrapper {
  justify-content: space-between;
}

.Schedule {
  flex-grow: 1;
}

@media screen and (max-width: 640px) {
  .Schedule_Header {
    position: relative;
  }

  .Schedule_Header::after {
    position: absolute;
    content: "";
    right: 30px;
    top: 50%;
    width: 20px;
    height: 20px;
    background-image: url("./img/chevron.svg");
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    transform: translate(0, -50%);
    transition-duration: 300ms;
  }

  .do_Close.Schedule_Header::after {
    transform: translate(0, -50%) rotate(-90deg);
    transition-duration: 300ms;
  }
}

@keyframes top_and_down {
  0% {
    transform: translate(-50%, 0%);
  }
  50% {
    transform: translate(-50%, 0%) scale(1.2);
  }
  100% {
    transform: translate(-50%, 0%);
  }
}

.Schedule_Header {
  z-index: 8003;
  align-items: center;
  padding: 2rem 4rem 2rem 2rem;
}

.Schedule_Header_Icn {
  display: inline-block;
  background: url(img/icn_schedule_clock.svg) no-repeat;
  background-size: cover;
}

@media screen and (min-width: 0px) {
  .Schedule_Header_Icn {
    width: 24px;
    height: 24px;
    margin: 0 1rem 0 0;
  }
}

@media screen and (min-width: 640px) {
  .Schedule_Header_Icn {
    width: 32px;
    height: 32px;
    margin: 0 2rem 0 0;
  }
}

.Schedule_Header_Txt {
  line-height: 1;
}

.Schedule_Header_Month {
  text-transform: capitalize;
}

.Schedule_Item_Icn {
  width: 48px;
  height: 48px;
  margin-right: 2rem;
}

.ToolbarMobile .Schedule_Content {
  display: none;
}

.Schedule_Content {
  position: relative;
  flex-grow: 1;
  padding: 2rem 0;
  background: transparent;
  align-items: center;
  justify-content: space-around;
  overflow: hidden;
}

@media screen and (min-width: 0px) {
  .Schedule_Header {
    width: 100%;
    justify-content: center;
  }
  .Schedule_Content {
    width: 100%;
    padding: 2rem 0 0;
  }
}

@media screen and (min-width: 640px) {
  .Schedule_Header {
    justify-content: flex-start;
  }
}

@media screen and (min-width: 1280px) {
  .Schedule_Header {
    width: auto;
    justify-content: flex-start;
  }
  .Schedule_Content {
    width: auto;
    padding: 2rem 0;
  }
}

.Schedule_Content::after {
  position: absolute;
  z-index: 8002;
  content: " ";
  width: 100%;
  height: 100%;
  background: #d5c78c;
}

.Schedule_Content.is_Hidden::after {
  left: -200%;
  transition: 0.5s left;
}

.Schedule_Content.is_Visible::after {
  left: 0;
  transition: 0.5s left;
}

a.Schedule_Content_Item {
  z-index: 8003;
  justify-content: center;
  height: 0;
  color: #fff;
  border: none;
  opacity: 0;
  transition: 2s height, 0.25s color;
}

a.Schedule_Content_Item.is_Visible {
  opacity: 1;
  height: auto;
  transition: 0.25s height, 2s opacity, 0.25s color;
}

a.Schedule_Content_Item:hover {
  border: none;
  transform: scale(1.06);
  transition: 0.25s color, 0.25s transform;
}

@media screen and (min-width: 0px) {
  a.Schedule_Content_Item {
    width: 100%;
    margin: 0 0 1rem 0;
    padding: 0 0 1rem 0;
    border-bottom: 1px dotted #c0b06e;
  }
  a.Schedule_Content_Item:first-child {
    margin: 2rem 0 1rem 0;
  }
  a.Schedule_Content_Item:last-child {
    margin: 0;
  }
  a.Schedule_Content_Item:hover {
    border-bottom: 1px dotted #c0b06e;
  }
}

@media screen and (min-width: 640px) {
  a.Schedule_Content_Item {
    width: 32%;
    border-bottom: none;
  }
  a.Schedule_Content_Item:hover {
    border-bottom: none;
  }
}

@media screen and (min-width: 1280px) {
  a.Schedule_Content_Item {
    width: auto;
    margin: auto;
    padding: 0;
    border-bottom: none;
  }
  a.Schedule_Content_Item:first-child,
  a.Schedule_Content_Item:last-child {
    margin: auto;
  }
  a.Schedule_Content_Item:hover {
    border-bottom: none;
  }
}

.Schedule_Item_Title {
  color: #7e6241;
}

/*  Widget Infos
========================================================================== */
@media screen and (min-width: 767px) {
  .WidgetInfos {
    box-shadow: 0 0 5px black;
  }
}

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

.WidgetInfos_Item {
  display: block;
}

@media screen and (min-width: 0px) {
  .WidgetInfos_List {
    display: flex;
    justify-content: center;
    background: #353534;
  }
}

@media screen and (min-width: 768px) {
  .WidgetInfos_List {
    position: fixed;
    z-index: 8000;
    display: block;
    width: auto;
    top: 50%;
    transform: translateY(-50%);
    right: 0;
    background: none;
  }
}

@media screen and (min-width: 1440px) {
  .WidgetInfos {
    position: fixed;
    z-index: 8000;
    right: 0;
    top: 460px;
  }
  .WidgetInfos_List {
    display: block;
  }
}

.WidgetInfos_Link,
.WidgetInfos_Link:hover {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 56px;
  height: 56px;
  font-size: 3.2rem;
  line-height: 3.2rem;
  border: none;
  cursor: pointer;
  outline: none;
}

@media screen and (max-width: 767px) {
  .WidgetInfos_Link {
    width: 50px;
    height: 50px;
  }
}

.WidgetInfos_Link,
.WidgetInfos_Link:visited {
  color: white;
  background: #353534;
}

.WidgetInfos_Link-gold,
.WidgetInfos_Link-gold:visited {
  color: white;
  background: #d5c68c;
}

.WidgetInfos_Link:hover {
  color: white;
}

.WidgetInfos_Link_Prices {
  background-image: url(img/icn_widget_prices.svg);
  background-repeat: no-repeat;
  background-size: 30px 30px;
  background-position: center;
}

@media screen and (min-width: 0px) {
  .WidgetInfos_Stroke {
    position: absolute;
    content: " ";
    top: 10px;
    bottom: 10px;
    right: 0;
    width: 1px;
    background: rgba(255, 255, 255, 0.3);
  }
}

@media screen and (min-width: 768px) {
  .WidgetInfos_Stroke {
    position: absolute;
    content: " ";
    top: auto;
    left: 10px;
    right: 10px;
    bottom: 0;
    width: auto;
    height: 1px;
    background: rgba(255, 255, 255, 0.3);
  }
}

.WidgetInfos_Tooltip {
  position: absolute;
  z-index: 8001;
  display: none;
  padding: 10px;
  right: 76px;
  width: 150px;
  font-size: 1.4rem;
  line-height: 1;
  color: #353534;
  background: #fff;
  border: 2px solid #353534;
}

@media screen and (min-width: 768px) {
  .WidgetInfos_Link:hover .WidgetInfos_Tooltip {
    display: block;
  }
}

.WidgetInfos_Tooltip_Inner {
  position: relative;
}

.WidgetInfos_Tooltip_Inner::after {
  position: absolute;
  z-index: 8002;
  content: " ";
  right: -19px;
  top: 50%;
  margin-top: -7px;
  width: 12px;
  height: 12px;
  background: #fff;
  border-top: 2px solid #353534;
  border-right: 2px solid #353534;
  transform: rotate(45deg);
}

@media screen and (min-width: 0px) {
  .WidgetInfos_FollowUs_List {
    position: absolute;
    z-index: 8100;
    display: none;
    margin: 0;
    padding: 0;
    width: 56px;
    top: 56px;
    right: 0;
    list-style-type: none;
    color: #353534;
    background: #fff;
    border: 1px solid #353534;
    box-shadow: 0 0 5px black;
  }
}

@media screen and (min-width: 768px) {
  .WidgetInfos_FollowUs_List {
    position: absolute;
    z-index: 8100;
    display: none;
    margin: 0;
    padding: 0;
    width: 170px;
    top: 0;
    right: 56px;
    list-style-type: none;
    color: #353534;
    background: #fff;
    border: 1px solid #353534;
    box-shadow: 0 0 5px black;
  }
}

.WidgetInfos_FollowUs_Link,
.WidgetInfos_FollowUs_Link:hover,
.WidgetInfos_FollowUs_Link:visited {
  display: flex;
  width: 56px;
  height: 54px;
  justify-content: center;
  align-items: center;
  font-size: 3rem;
  color: #353534;
  border: none;
}
@media screen and (max-width: 767px) {
  .WidgetInfos_FollowUs_Link {
    width: 50px;
    height: 50px;
  }
}

.WidgetInfos_Link:hover .WidgetInfos_FollowUs_List {
  display: flex;
}

@media screen and (min-width: 0px) {
  .WidgetInfos_Link:hover .WidgetInfos_FollowUs_List {
    display: block;
  }
}

@media screen and (min-width: 768px) {
  .WidgetInfos_Link:hover .WidgetInfos_FollowUs_List {
    display: flex;
  }
}

/*  Nav
========================================================================== */
.Nav_Menu_List {
  display: flex;
  margin: 0;
  padding: 0;
  height: 100%;
}

.Nav_Menu_List > li {
  position: relative;
  padding: 0;
  height: 100%;
  list-style-type: none;
}

.Nav_Menu_List > li > a {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  font-weight: 700;
}

.Nav_Menu_List > li > a,
.Nav_Menu_List > li > a:hover,
.Nav_Menu_List > li > a:visited,
.Nav_Menu_List > li > a:active {
  border: none;
}

.Nav_Menu .sub-menu {
  position: absolute;
  z-index: 9000;
  left: -2rem;
  top: 100px;
  width: 320px;
  padding: 0 4rem 3rem;
  background: #fff;
  opacity: 0;
  transform: scale(1, 0);
  transform-origin: top;
  overflow: hidden;
}

.Nav_Menu .sub-menu.is-visible {
  opacity: 1;
  overflow: visible;
  transform: scale(1, 1);
  transform-origin: top;
  transition: transform 0.4s, overflow 0.5s;
}

.Nav_Menu .sub-menu li {
  padding: 0 0 0 2rem;
  list-style-type: none;
  opacity: 0;
}

.Nav_Menu .sub-menu.is-visible li {
  opacity: 1;
  transition: opacity 0.6s 0.4s;
}

.Nav_Menu .sub-menu li.current-menu-item {
  font-weight: 700;
  color: black;
}

.Nav_Menu .sub-menu a,
.Nav_Menu .sub-menu a:hover,
.Nav_Menu .sub-menu a:visited,
.Nav_Menu .sub-menu a:active {
  position: relative;
  display: block;
  margin: 0 0 0.5rem;
  border: none;
}

.Nav_Menu .sub-menu a,
.Nav_Menu .sub-menu a:visited,
.Nav_Menu .sub-menu a:active {
  color: rgba(0, 0, 0, 0.7);
}

.Nav_Menu .sub-menu a:hover {
  color: black;
}

.Nav_Menu .sub-menu a::before {
  position: absolute;
  display: inline-block;
  content: "*";
  left: -18px;
  top: 16px;
  width: 12px;
  height: 12px;
  line-height: 0;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: 2.4rem;
  color: #b19d37;
  opacity: 0;
  transition: opacity 0.5s;
}

.Nav_Menu .sub-menu li:hover a::before {
  opacity: 1;
  transition: opacity 0.5s;
}

.nav-menu-link-wrapper {
  position: relative;
}

.Nav_Menu_List > li > a .nav-menu-link-wrapper::after {
  position: absolute;
  display: block;
  content: " ";
  bottom: -5px;
  left: 0;
  width: 0px;
  height: 1px;
  background: #b19d37;
}

.Nav_Menu_List > li:hover a .nav-menu-link-wrapper::after {
  width: 100%;
  transition: width 0.25s;
}

@media screen and (min-width: 0px) {
  .Nav_Wrapper {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 72px;
    padding: 2rem;
  }
  .Nav_Logo_Img {
    width: 100%;
    max-width: 200px;
    line-height: 0;
  }
  .Nav_Button_Container {
    position: relative;
    width: 32px;
    height: 32px;
  }
  .Nav_Button_Stroke {
    position: absolute;
    display: block;
    content: " ";
    top: 15px;
    width: 32px;
    height: 3px;
    background: #000;
  }
  .Nav_Button.do_close .Nav_Button_Stroke {
    background: #fff;
  }
  .Nav_Button_Stroke::before,
  .Nav_Button_Stroke::after {
    position: absolute;
    display: block;
    content: " ";
    width: 32px;
    height: 3px;
    background: #000;
  }
  .Nav_Button_Stroke::before {
    top: -8px;
    transition: transform 0.25s;
  }
  .Nav_Button_Stroke::after {
    top: 8px;
    transition: transform 0.25s;
  }
  .Nav_Button.do_close .Nav_Button_Stroke::before {
    top: 0px;
    transform: rotate(45deg);
    transition: transform 0.25s;
  }
  .Nav_Button.do_close .Nav_Button_Stroke::after {
    top: 0px;
    transform: rotate(-45deg);
    transition: transform 0.25s;
  }
  .Nav_Menu {
    display: none;
    visibility: hidden;
  }
  .Nav_Menu_List > li > a {
    font-size: 1.6rem;
  }
  .Nav_Button,
  .Nav_Tickets_Languages {
    width: 20%;
  }
  .Nav_Logo {
    width: 48%;
  }
  .Nav_Cta_Tickets {
    display: none;
    visibility: hidden;
  }
  .Cta_Tickets_Link {
    font-size: 1.8rem;
    border-radius: none;
  }
  .Mobile_Menu {
    display: flex;
    justify-content: center;
    padding: 0 2rem 2rem;
  }
  .Mobile_Menu_Booking {
    display: block;
    visibility: visible;
    margin: 2rem;
  }
  .Mobile_Menu_Booking a {
    padding: 1.5rem 4rem;
    border-radius: 8px;
  }
  .Mobile_Menu a,
  .Mobile_Menu a:hover,
  .Mobile_Menu a:visited,
  .Mobile_Menu a:active {
    border: none;
  }
  .Mobile_Menu.is_closed {
    display: none;
    visibility: hidden;
  }
  .Mobile_Menu_List {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 0 0 0 2rem;
    list-style-type: none;
  }
  .Mobile_Menu_List > li {
    width: 100%;
    margin: 0 0 2rem;
  }
  .Mobile_Menu_List > li > a {
    font-weight: 700;
  }
  .Mobile_Menu .sub-menu {
    padding: 0 0 0 2rem;
    list-style-type: none;
  }
}

@media screen and (min-width: 640px) {
  .Mobile_Menu_List {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 2rem 2rem 0;
  }
  .Mobile_Menu_List > li {
    width: 48%;
  }
}

@media screen and (min-width: 960px) {
  .Mobile_Menu {
    display: block;
  }
  .Mobile_Menu_List > li {
    width: 32%;
  }
}

@media screen and (min-width: 1140px) {
  .Mobile_Menu,
  .Mobile_Menu.is_closed,
  .Mobile_Menu_Booking {
    display: none;
    visibility: hidden;
  }
  .Nav_Wrapper {
    justify-content: space-between;
    align-items: center;
    padding: 3rem 2rem 3rem;
  }
  .Nav_Button {
    display: none;
    visibility: hidden;
  }
  .Nav_Logo,
  .Nav_Tickets_Languages {
    width: auto;
  }
  .Nav_Logo_Img {
    max-width: 150px;
  }
  .Nav_Menu {
    display: flex;
    justify-content: center;
    visibility: visible;
    height: 145px;
    padding: 0 1%;
  }
  .Nav_Menu_List > li {
    margin: 0;
  }
  .Nav_Menu_List > li > a {
    padding: 0 1rem;
    font-size: 1.5rem;
  }
  .Nav_Cta_Tickets {
    display: block;
    visibility: visible;
  }
  .Cta_Tickets_Link {
    padding: 0.5rem 1.5rem;
    font-size: 1.5rem;
    border-radius: 8px;
  }
  .Nav_Languages_Switcher {
    margin-left: 2rem;
  }
}

@media screen and (min-width: 1280px) {
  .Nav_Wrapper {
    margin-top: 180px;
  }
  .Nav_Logo_Img {
    max-width: 200px;
  }
}

@media screen and (min-width: 1440px) {
  .Nav_Menu {
    flex-grow: 1;
    padding: 0 1%;
  }
  .Nav_Logo_Img {
    max-width: 250px;
  }
  .Nav_Menu_List > li {
    margin: 0;
  }
  .Nav_Menu_List > li > a {
    font-size: 1.7rem;
  }
  .Cta_Tickets_Link {
    padding: 1.5rem 2rem;
    font-size: 1.7rem;
  }
  .Nav_Languages_Switcher {
    margin-left: 5rem;
  }
}

@media screen and (min-width: 1528px) {
  .Nav_Wrapper {
    margin-top: 107px;
  }
}

@media screen and (min-width: 1680px) {
  .Nav_Menu_List > li > a {
    padding: 0 3rem;
    font-size: 1.8rem;
  }
  .Cta_Tickets_Link {
    font-size: 1.8rem;
  }
}

@media screen and (min-width: 1920px) {
  .Nav_Logo_Img {
    max-width: 300px;
  }
}

.Nav_Logo_Title {
  margin: 0;
  line-height: 0;
}

a.Nav_Logo_Link,
a.Nav_Logo_Link:hover {
  border: none;
}

.Nav_Button {
  align-items: center;
  cursor: pointer;
}

.Nav_Button .ion {
  font-size: 4rem;
}

.Nav_Button_Txt {
  margin: 0 0 0 1.5rem;
}

@media screen and (min-width: 0px) {
  .Nav_Button_Txt {
    display: none;
  }
}

@media screen and (min-width: 640px) {
  .Nav_Button_Txt {
    display: block;
  }
}

a.Nav_Tools_Social_Link,
a.Nav_Tools_Social_Link:hover {
  display: inline-block;
  padding: 0 0.5rem;
  color: #97886c;
  border: none;
}

.Cta_Tickets_Link {
  display: block;
}

.Cta_Tickets_Link,
.Cta_Tickets_Link:hover,
.Cta_Tickets_Link:visited,
.Cta_Tickets_Link:active {
  font-weight: 700;
  color: #b19d37;
  border: 2px solid #b19d37;
  transition: all 0.3s;
}

.Cta_Tickets_Link .fa {
  display: inline-block;
  margin: 0 0 0 1rem;
}

.Nav_Tickets_Languages {
  justify-content: space-between;
  align-items: center;
}

.Nav_Languages_Switcher {
  position: relative;
  width: 80px;
  color: #585857;
}

.Nav_Languages_Btn {
  padding: 0.5rem 1rem;
  color: #585857;
  background: #fff;
  border: none;
}

.Nav_Languages_List {
  display: flex;
  margin: 0;
  padding: 0;
  justify-content: center;
  align-items: center;
  list-style-type: none;
  background: #fff;
}

.Nav_Languages_Item {
  margin: 0;
  padding: 0;
}

.Nav_Languages_Link {
  display: block;
  padding: 0.25rem 1rem;
}

.Nav_Languages_Item:first-child .Nav_Languages_Link {
  border-right: 1px solid #ddd;
}

.Nav_Languages_List a,
.Nav_Languages_List a:hover {
  color: #585857;
  border: none;
}

/*  Breadcrumb
========================================================================== */
.Breadcrumb_Wrapper {
  padding: 1rem 2rem 2rem;
}

.Breadcrumb_Link,
.Breadcrumb_Link:visited {
  color: #b19d37;
  text-decoration: none;
  border: none;
}

.Breadcrumb_Separator {
  display: inline-block;
  margin: 0 1rem;
  color: #b19d37;
}

/*  Header
========================================================================== */
.Home_Header,
.Page_Header {
  position: relative;
  background: #ddd;
}

.Home_Header_Figure,
.Page_Header_Carousel {
  position: relative;
  padding-bottom: 38.75%;
  /* ratio of image height to width */
  height: 0;
  overflow: hidden;
  line-height: 0;
}

@media screen and (min-width: 0px) {
  .Home_Header_Banner,
  .Page_Header_Banner {
    position: static;
  }
}

@media screen and (min-width: 800px) {
  .Home_Header_Banner,
  .Page_Header_Banner {
    position: absolute;
    z-index: 222;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    align-items: center;
    justify-content: center;
  }
}

.Home_Header_Banner.alignleft {
  justify-content: flex-start;
}

.Home_Header_Banner.aligncenter {
  justify-content: center;
}

.Home_Header_Banner.alignright {
  justify-content: flex-end;
}

.Carousel {
  position: relative;
}

.Home_Header_Item {
  display: none;
  visibility: hidden;
  width: 100%;
  line-height: 0;
}

.Home_Header_Item:first-child {
  display: block;
  visibility: visible;
}

.Home_Header_Banner_Wrapper {
  position: relative;
}

@media screen and (min-width: 0px) {
  .Home_Header_Banner_Wrapper,
  .Page_Header_Banner_Wrapper {
    padding: 2rem;
    margin: 0;
    width: 100%;
    color: #fff;
    background: black;
    border: none;
  }
  .Home_Header_Title,
  .Page_Header_Title {
    font-size: 2.4rem;
  }
  .Home_Header_Subtitle,
  .Page_Header_Subtitle {
    color: #b19d37;
  }
}

@media screen and (min-width: 800px) {
  .Home_Header_Banner_Wrapper,
  .Page_Header_Banner_Wrapper {
    padding: 4rem;
    margin: 2rem 10%;
    width: auto;
    background: rgba(0, 0, 0, 0.6);
    border: 2px solid #fff;
  }
  .Home_Header_Title,
  .Page_Header_Title {
    font-size: 3.2rem;
  }
  .Home_Header_Subtitle,
  .Page_Header_Subtitle {
    color: #fff;
  }
}

.Home_Header_Banner_Wrapper {
  line-height: 1.4;
}

.Home_Header_Img,
.Page_Header_Img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}

.Home_Header_Img.doPreload,
.Page_Header_Img.doPreload {
  opacity: 0;
}

.Home_Header_Img.isLoaded,
.Page_Header_Img.isLoaded {
  opacity: 1;
  transition: opacity 0.5s linear 0.5s;
}

.Home_Header_Title,
.Page_Header_Title {
  margin: 0 0 1rem;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-weight: 400;
}

.Home_Header_Subtitle,
.Page_Header_Subtitle {
  margin: 0;
}

.Home_Header_Cta {
  position: absolute;
  display: block;
  z-index: 1;
  bottom: -70px;
  right: -25px;
  padding: 1rem 4rem;
  line-height: 25px;
  text-transform: none;
  border-radius: 4px;
}

.Home_Header_Cta,
.Home_Header_Cta:hover,
.Home_Header_Cta:visited {
  color: #fff;
  background: #b19d37;
}

.Home_Header_Cta .ion {
  margin: 0 0 0 1rem;
}

@media screen and (min-width: 0px) {
  .Home_Header_Cta {
    position: static;
    margin: 2rem 0;
  }
  .Home_Header_Cta,
  .Home_Header_Cta:hover,
  .Home_Header_Cta:visited {
    border: none;
  }
}

@media screen and (min-width: 800px) {
  .Home_Header_Cta {
    position: absolute;
    margin: 0;
    bottom: -25px;
  }
  .Home_Header_Cta,
  .Home_Header_Cta:hover,
  .Home_Header_Cta:visited {
    border: 2px solid #fff;
  }
}

@media screen and (min-width: 1281px) {
  .Home_Header_Cta {
    bottom: -70px;
  }
}

.Carousel_Pager {
  position: absolute;
  z-index: 333;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 4rem;
}

@media screen and (min-width: 0px) {
  .Carousel_Pager {
    display: none;
  }
}

@media screen and (min-width: 800px) {
  .Carousel_Pager {
    display: block;
  }
}

.Carousel_Pager_Item {
  display: inline-block;
  margin: 0 0.5rem;
  width: 15px;
  height: 15px;
  border-radius: 15px;
  border: 2px solid #fff;
  background: transparent;
  cursor: pointer;
}

.Carousel_Pager_Item.cycle-pager-active {
  border: 2px solid transparent;
  background: #fff;
  cursor: default;
}

/*  Home
========================================================================== */
@media screen and (min-width: 0px) {
  .Home_Section {
    padding: 8rem 0 0;
  }
}

@media screen and (min-width: 768px) {
  .Home_Section {
    padding: 8rem 0;
  }
}

.Home_Section_Title {
  margin: 0;
  font-weight: 400;
}

.Home_Section_Chapo {
  margin: 0 0 2rem;
  font-size: 2.1rem;
  line-height: 1.2;
  color: #b19d37;
}

.Home_Section_Text {
  position: relative;
  font-size: 2.1rem;
  line-height: 1.2;
}

.Home_Section_Text strong {
  font-size: 2.4rem;
  font-style: italic;
}

.Home_Section_Text_Deco {
  position: absolute;
  top: 0px;
  right: -24px;
  width: 48px;
  height: 48px;
  background: url(img/icn_deco_cta.svg) no-repeat;
  background-size: contain;
}

.Home_Section_Text_Stroke {
  position: absolute;
  top: 32px;
  right: 0;
  bottom: -5rem;
  width: 1px;
  border-right: 2px solid #b19d37;
}

@media screen and (min-width: 0px) {
  .Home_Section_Text_Deco,
  .Home_Section_Text_Stroke {
    display: none;
  }
  .Home_Section_Text_Cta {
    position: static;
    display: block;
    margin: 2rem 0 0;
  }
  .Home_Section_Text_Cta .ion {
    color: transparent;
  }
}

@media screen and (min-width: 1280px) {
  .Home_Section_Text_Deco,
  .Home_Section_Text_Stroke {
    display: block;
  }
  .Home_Section_Text_Cta {
    position: absolute;
    margin: 0;
  }
  .Home_Section_Text_Cta .ion {
    color: #fff;
  }
}

.Home_Section_Text_Cta {
  right: -24px;
  bottom: -110px;
  width: 48px;
  height: 48px;
  line-height: 48px;
  border: none;
  border-radius: 48px;
  color: #fff;
  background: #b19d37;
}

.Home_Section_Text_Cta:hover {
  border: none;
  color: #fff;
}

.Cta_More {
  position: relative;
  color: #000;
}

@media screen and (min-width: 0px) {
  .Cta_More_Txt {
    position: absolute;
    z-index: 0;
    top: 0;
    left: 0;
    bottom: 0;
    right: -160px;
    padding: 0 2rem;
    color: #fff;
    background: #b19d37;
    border-radius: 48px;
    border: none;
  }
  .Cta_More_Txt span {
    color: #fff;
  }
}

@media screen and (min-width: 1280px) {
  .Cta_More_Txt {
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    bottom: 0;
    right: auto;
    padding: 0;
    background: #fff;
    border-radius: 48px;
    border: 1px solid #b19d37;
    transition: 0.125s all;
  }
  .Cta_More_Txt span {
    color: rgba(0, 0, 0, 0);
    transition: 0s color;
  }
  .Home_Section_Text_Cta:hover .Cta_More_Txt {
    right: -160px;
    padding: 0 2rem 0 5rem;
    color: black;
    transition: 0.5s all;
  }
  .Home_Section_Text_Cta:hover .Cta_More_Txt span {
    color: black;
    transition: 0.5s color;
  }
}

.hasFrame {
  border: 12px solid #fff;
}

/* News */
.Home_Section_News {
  justify-content: space-evenly;
}

@media screen and (min-width: 0px) {
  .Home_Section_News {
    padding: 3rem 0 0;
  }
}

@media screen and (min-width: 1280px) {
  .Home_Section_News {
    padding: 3rem 0 8rem;
  }
}

@media screen and (min-width: 0px) {
  .Home_Section_News {
    margin: 0 2rem;
  }
  .NewsGrid_3,
  .NewsGrid_4 {
    width: 100%;
    margin: 0 0 4rem;
  }
}

@media screen and (min-width: 640px) {
  .NewsCard {
    width: 48%;
  }
}

@media screen and (min-width: 1280px) {
  .NewsGrid_2 {
    width: 48%;
    margin: 0;
  }
  .NewsGrid_3 {
    width: 32%;
    margin: 0;
  }
  .NewsGrid_4 {
    width: 23.5%;
    margin: 0;
  }
}

@media screen and (min-width: 1920px) {
  .Home_Section_News {
    margin: 0;
  }
}

.NewsCard_Link,
.NewsCard_Link:hover {
  display: block;
  border: none;
}

.NewsCard_Img {
  width: 100%;
}

.NewsCard_Title {
  font-weight: 300;
}

.NewsCard_Infos {
  padding: 1rem 0;
  border-top: 2px dotted #a8a8a8;
  border-bottom: 2px dotted #a8a8a8;
}

.NewsCard_More_Btn {
  display: inline-block;
  margin: 2rem 0 0;
  padding: 1rem 2rem;
  color: #fff;
  background: #b19d37;
  border-radius: 5px;
  transform: scale(1);
  transition: 0.25s transform;
}

.NewsCard_Link:hover .NewsCard_More_Btn {
  transform: scale(1.125);
  transition: 0.25s transform;
}

/* Le Château */
.Home_Section_Castle {
  position: relative;
}

@media screen and (min-width: 0px) {
  .Home_Section_Castle .Home_Section_Content {
    width: 90%;
    margin: auto;
  }
  .Section_Images_Sub {
    display: none;
  }
  .Home_Section_Castle .Home_Section_Images {
    position: relative;
    max-width: 100%;
  }
}

@media screen and (min-width: 768px) {
  .Home_Section_Castle .Home_Section_Content {
    width: 60%;
    margin-left: 13%;
  }
  .Section_Images_Sub {
    display: block;
  }
  .Home_Section_Castle .Home_Section_Images {
    position: relative;
    max-width: 88%;
  }
}

.Section_Images_Sub {
  position: absolute;
  z-index: 2;
  top: -13%;
  right: -13%;
  width: 26%;
}

.Section_Images_Sub img {
  display: block;
}

.Home_Section_Castle .Section_Img_02,
.Home_Section_Castle .Section_Img_03 {
  margin: auto;
}

.Home_Section_Castle .Section_Img_02 {
  width: 85%;
  margin-bottom: 4rem;
}

.Home_Section_Castle .Section_Img_03 {
  width: 100%;
  margin-top: 4rem;
}

@media screen and (min-width: 0px) {
  .Home_Section_Castle .Home_Section_Text {
    max-width: 100%;
    margin: 2rem auto 0;
    padding: 0;
  }
  .Home_Section_Castle_Bg {
    display: none;
  }
}

@media screen and (min-width: 768px) {
  .Home_Section_Castle .Home_Section_Text {
    max-width: 50%;
    margin: 2rem 31% 0 19%;
    padding: 0 2rem 0 0;
  }
  .Home_Section_Castle_Bg {
    display: block;
  }
}

.Home_Section_Castle_Bg {
  position: absolute;
  z-index: -2;
  left: 0;
  margin-top: -6rem;
  width: calc(100% / 3);
}

.Home_Section_Castle_Bg img {
  width: 100%;
  max-width: 100%;
  height: auto;
}

/* Joséphine Baker */
.Home_Section_Josephine {
  justify-content: space-between;
  padding-bottom: 0;
}

@media screen and (min-width: 0px) {
  .Home_Section_Josephine {
    margin-top: 0;
  }
  .Home_Section_Ghost {
    display: none;
  }
  .Home_Section_Josephine > div {
    width: 90%;
    margin: 0 auto;
  }
  .Home_Section_Josephine .Home_Section_Content {
    padding: 0;
    margin: 0 auto 4rem;
  }
  .Home_Section_Josephine .Home_Section_Text {
    width: 100%;
    padding: 0 auto;
  }
}

@media screen and (min-width: 768px) {
  .Home_Section_Josephine {
    margin-top: 8rem;
  }
  .Home_Section_Josephine > div {
    width: calc(100% / 2);
  }
  .Home_Section_Josephine .Home_Section_Content {
    padding: 8rem 6rem 0 4rem;
    margin: 0 auto;
  }
  .Home_Section_Josephine .Home_Section_Text {
    width: 90%;
    padding: 0 2rem 0 0;
  }
}

@media screen and (min-width: 1280px) {
  .Home_Section_Josephine div:first-child {
    display: block;
  }
  .Home_Section_Josephine .Home_Section_Ghost {
    width: 26%;
  }
  .Home_Section_Josephine .Home_Section_Content {
    width: 30%;
  }
  .Home_Section_Josephine .Home_Section_Images {
    width: 26%;
    margin-right: 0;
  }
  .Home_Section_Josephine .Home_Section_Content {
    padding: 8rem 6rem 0 0;
  }
}

/* Le Jardin */
@media screen and (min-width: 0px) {
  .Home_Section_Garden {
    padding: 8rem 0 0;
  }
}

@media screen and (min-width: 1280px) {
  .Home_Section_Garden {
    padding: 8rem 0 10rem;
  }
}

.Home_Section_Garden .Home_Section_Title {
  position: relative;
}

.Home_Section_Garden .Section_Img_01 {
  width: 100%;
  max-width: 100%;
  height: auto;
}

.Home_Section_Title_Banner {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  justify-content: center;
  align-items: center;
  color: #fff;
}

.Section_Garden_Container > * {
  justify-content: space-between;
}

@media screen and (min-width: 0px) {
  .Section_Garden_Fig_1,
  .Section_Garden_Fig_2 {
    display: none;
  }
}

@media screen and (min-width: 768px) {
  .Section_Garden_Fig_1,
  .Section_Garden_Fig_2 {
    display: block;
  }
}

.Section_Garden_Fig_1 {
  width: 30%;
}

.Section_Garden_Fig_2 {
  width: 30%;
}

@media screen and (min-width: 0px) {
  .Section_Garden_ChapoText {
    width: 90%;
    margin: 4rem auto 0;
    padding: 0;
  }
  .Home_Section_Garden .Home_Section_Text {
    padding: 0;
  }
}

@media screen and (min-width: 768px) {
  .Section_Garden_ChapoText {
    width: 40%;
    margin: 4rem 0 0;
  }
  .Home_Section_Garden .Home_Section_Text {
    padding: 0 2rem 0 0;
  }
}

@media screen and (min-width: 1280px) {
  .Section_Garden_ChapoText {
    width: 40%;
    margin: 4rem 0 0;
    padding: 0 0 0 20rem;
  }
}

.Section_Garden_Fig_1 .Container {
  position: relative;
  max-width: 75%;
  margin: -10% 0 0 10%;
  line-height: 0;
}

.Section_Garden_Fig_2 .Container {
  position: relative;
  max-width: 50%;
  margin: -30% 0 0 30%;
  line-height: 0;
}

.Section_Garden_Fig_2 img,
.Section_Garden_Fig_3 img {
  position: absolute;
}

/* Les rapaces */
@media screen and (min-width: 0px) {
  .Home_Section_Birds {
    padding: 8rem 0 0;
  }
}

@media screen and (min-width: 1280px) {
  .Home_Section_Birds {
    padding: 8rem 0 10rem;
  }
}

@media screen and (min-width: 1680px) {
  .Home_Section_Birds {
    padding: 8rem 0 20rem;
  }
}

.Section_Birds_Container {
  justify-content: space-between;
}

@media screen and (min-width: 0px) {
  .Section_Birds_ChapoText {
    width: 90%;
    padding: 0;
    margin: 0 auto;
  }
  .Section_Birds_Fig {
    width: 90%;
    margin: 0 auto;
  }
  .Home_Section_Birds .Home_Section_Text {
    padding: 0;
  }
}

@media screen and (min-width: 768px) {
  .Section_Birds_ChapoText {
    width: 50%;
    padding: 0 6rem;
  }
  .Section_Birds_Fig {
    width: 50%;
  }
  .Home_Section_Birds .Home_Section_Text {
    padding: 0 2rem 0 0;
  }
}

@media screen and (min-width: 1280px) {
  .Section_Birds_ChapoText {
    width: 30%;
    margin: 0;
  }
  .Section_Birds_Fig {
    width: 60%;
    margin: 0;
  }
}

.Section_Birds_Fig {
  position: relative;
}

.Section_Birds_Fig .Container_1 {
  position: absolute;
  z-index: -2;
  width: 100%;
  max-width: 855px;
  left: -20%;
  top: -80%;
}

.Section_Birds_Fig .Container_2 {
  margin: 4rem 0 0;
}

@media screen and (min-width: 0px) {
  .Section_Birds_Fig .Container_1 {
    display: none;
  }
  .Section_Birds_Fig .Container_2 {
    display: block;
  }
}

@media screen and (min-width: 1280px) {
  .Section_Birds_Fig .Container_1 {
    display: block;
  }
  .Section_Birds_Fig .Container_2 {
    display: none;
  }
}

@media screen and (min-width: 1680px) {
  .Section_Birds_Fig .Container_1 {
    max-width: 90%;
    top: -130%;
  }
}

/* Video promo */
.Video_Wrapper {
  position: relative;
  padding-bottom: 41.5625%;
  /* 1920:798 */
  padding-top: 25px;
  height: 0;
}

.Home_Section_Video iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* Infos */
.Home_Section_Infos {
  justify-content: space-between;
}

.Section_Infos_Item {
  position: relative;
  line-height: 0;
}

@media screen and (min-width: 0px) {
  .Home_Section_Infos {
    margin-bottom: 8rem;
    padding-right: 2rem;
    padding-left: 2rem;
  }
  .Section_Infos_Item {
    width: 100%;
  }
  .Section_Infos_Item img {
    width: 100%;
  }
}

@media screen and (min-width: 640px) {
  .Section_Infos_Item {
    width: 48%;
  }
}

@media screen and (min-width: 768px) {
  .Home_Section_Infos {
    margin-bottom: 0;
    padding-right: 4rem;
    padding-left: 4rem;
  }
  .Section_Infos_Item {
    width: 30%;
  }
}

.Section_Infos_Prices,
.Section_Infos_Restaurant {
  border: 8px solid #b19d37;
}

@media screen and (min-width: 0px) {
  .Section_Infos_Schedule,
  .Section_Infos_Restaurant {
    margin-top: 2rem;
  }
  .Section_Infos_Prices {
    margin-top: 2rem;
    margin-bottom: 0;
  }
}

@media screen and (min-width: 768px) {
  .Section_Infos_Schedule,
  .Section_Infos_Restaurant {
    margin-top: 8rem;
  }
  .Section_Infos_Prices {
    margin-top: 0;
    margin-bottom: 8rem;
  }
}

.Section_Infos_Link,
.Section_Infos_Link:hover {
  display: block;
  border: none;
}

.Section_Infos_Title {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: 0;
  padding: 4rem;
  justify-content: center;
  align-items: center;
  font-weight: 400;
  color: #fff;
}

@media screen and (min-width: 0px) {
  .Section_Infos_Title {
    font-size: 2.1rem;
  }
}

@media screen and (min-width: 960px) {
  .Section_Infos_Title {
    font-size: 2.7rem;
  }
}

.Section_Infos_Title.hasOverlay {
  background: rgba(0, 0, 0, 0.4);
}

.Section_Infos_Prices .Section_Infos_Title {
  color: #000;
}

/*  Headline
========================================================================== */
@media screen and (min-width: 0px) {
  .Page_Headline {
    width: 90%;
    margin: auto;
    padding: 4rem 0;
    color: #b19d37;
  }
  .videoContainer {
    padding: 2rem 0 0;
  }
  .videoContainer > p {
    position: relative;
    height: 0;
    padding-bottom: 56.25%;
    overflow: hidden;
  }
  .videoContainer > p > iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
}

@media screen and (min-width: 640px) {
  .Page_Headline {
    max-width: 120rem;
    padding: 8rem 4rem;
  }
}

/*  Zoom
========================================================================== */
.Zoom {
  margin: 0 0 8rem;
}

.Zoom_Img img {
  margin: auto;
}

@media screen and (min-width: 0px) {
  .Zoom_Element {
    width: 100%;
  }
  .Zoom_Element_Container {
    width: 90%;
    margin: 0 auto 4rem;
    padding: 0;
    text-align: center;
  }
  .Zoom_Text {
    font-size: 2.6rem;
  }
}

@media screen and (min-width: 768px) {
  .Zoom_Element {
    width: 50%;
  }
  .Zoom_Element_Container {
    max-width: 75%;
    margin: 0 8rem 0 2rem;
    padding: 0;
    text-align: right;
  }
  .Zoom_Text {
    font-size: 3.6rem;
  }
}

.Zoom_Element {
  align-items: center;
}

.Zoom_Text {
  font-weight: 600;
  line-height: 1.2;
}

.Zoom_Text.flexend {
  justify-content: flex-end;
}

/*  Solo
========================================================================== */
@media screen and (min-width: 0px) {
  .Solo {
    margin: 0 auto 6rem;
    padding: 4rem 0 0;
  }
}

@media screen and (min-width: 768px) {
  .Solo {
    margin: 0 auto 12rem;
    padding: 4rem 0 0;
  }
}

.Solo_Header {
  position: relative;
  margin: 0 12rem;
  padding: 4rem 0;
  align-items: center;
}

.Solo_Header_Initial {
  position: absolute;
  top: -1rem;
  left: -7rem;
  font-size: 10rem;
  font-weight: 600;
  color: #b19d37;
  opacity: 0.3;
}

.Solo_Header_Title {
  max-width: 40%;
  font-weight: 400;
  color: #767468;
}

.Solo_Header_Decoration {
  flex-grow: 1;
  margin: 0 0 0 2%;
  border-top: 2px dotted rgba(177, 157, 55, 0.5);
}

@media screen and (min-width: 0px) {
  .Solo_Container {
    width: 90%;
    padding: 0;
    margin: auto;
  }
}

@media screen and (min-width: 768px) {
  .Solo_Container {
    width: 50%;
    margin: auto;
    padding: 0;
  }
}

.Solo_Container_Chapo {
  margin: 0 0 2rem;
  font-size: 2.4rem;
  line-height: 1.2;
  color: #b19d37;
}

.Solo_Container_Text em {
  color: #97886c;
}

.Solo_Container_Text a,
.Solo_Container_Text a {
  color: #b19d37;
  border-bottom: 1px solid #b19d37;
}

.Solo_Container_Text a:hover,
.Solo_Container_Text a:hover {
  color: #97886c;
  border-bottom: 1px solid #97886c;
}

/*  Hero
========================================================================== */
.Hero {
  padding: 6rem 0 4rem;
  align-items: center;
  border-top: 2px dotted rgba(177, 157, 55, 0.5);
  border-bottom: 2px dotted rgba(177, 157, 55, 0.5);
}

@media screen and (min-width: 0px) {
  .Hero {
    width: 90%;
    margin: 0 auto 8rem;
  }
  .Hero_Caption {
    max-width: 90%;
    margin: 2rem auto 0;
    color: #767468;
  }
}

@media screen and (min-width: 1280px) {
  .Hero {
    width: auto;
    margin: 0 12rem 8rem;
  }
  .Hero_Caption {
    max-width: 50%;
  }
}

.Hero_Img {
  line-height: 0;
}

/*  TxtImg, ImgTxt, Txt, Duo
========================================================================== */
.TxtImg_Header,
.ImgTxt_Header,
.Txt_Header,
.Duo_Header {
  position: relative;
  padding: 4rem 0;
  align-items: center;
}

@media screen and (min-width: 0px) {
  .TxtImg,
  .ImgTxt,
  .Txt,
  .Duo {
    margin: 0 0 8rem;
    padding: 7rem 0 0;
  }
  .Page_Comps > .TxtImg,
  .Page_Comps > .ImgTxt,
  .Page_Comps > .Txt,
  .Page_Comps > .Duo {
    padding: 0;
  }
  .TxtImg_Header,
  .ImgTxt_Header,
  .Txt_Header,
  .Duo_Header {
    margin: 0 5% 0 9rem;
  }
}

@media screen and (min-width: 768px) {
  .TxtImg_Header,
  .ImgTxt_Header,
  .Txt_Header,
  .Duo_Header {
    margin: 0 12rem;
  }
}

@media screen and (min-width: 1024px) {
  .TxtImg,
  .ImgTxt,
  .Txt,
  .Duo {
    padding: 0;
  }
}

.TxtImg_Header_Initial,
.ImgTxt_Header_Initial,
.Txt_Header_Initial,
.Duo_Header_Initial {
  position: absolute;
  top: -1rem;
  left: -7rem;
  font-size: 10rem;
  font-weight: 600;
  color: #b19d37;
  opacity: 0.3;
}

.TxtImg_Header_Title,
.ImgTxt_Header_Title,
.Txt_Header_Title,
.Duo_Header_Title {
  font-weight: 400;
  color: #767468;
}

@media screen and (min-width: 0px) {
  .TxtImg_Header_Title,
  .ImgTxt_Header_Title,
  .Txt_Header_Title,
  .Duo_Header_Title {
    max-width: 100%;
  }
}

@media screen and (min-width: 768px) {
  .TxtImg_Header_Title,
  .ImgTxt_Header_Title,
  .Txt_Header_Title,
  .Duo_Header_Title {
    max-width: 40%;
  }
}

.TxtImg_Header_Decoration,
.ImgTxt_Header_Decoration,
.Txt_Header_Decoration,
.Duo_Header_Decoration {
  flex-grow: 1;
  margin: 0 0 0 2%;
  border-top: 2px dotted rgba(177, 157, 55, 0.5);
}

@media screen and (min-width: 0px) {
  .TxtImg_Header_Decoration,
  .ImgTxt_Header_Decoration,
  .Txt_Header_Decoration,
  .Duo_Header_Decoration {
    display: none;
  }
}

@media screen and (min-width: 768px) {
  .TxtImg_Header_Decoration,
  .ImgTxt_Header_Decoration,
  .Txt_Header_Decoration,
  .Duo_Header_Decoration {
    display: block;
  }
}

.ImgTxt_Container {
  flex-direction: row-reverse;
}

@media screen and (min-width: 0px) {
  .TxtImg_Container,
  .ImgTxt_Container,
  .Txt_Container,
  .Duo_Container {
    margin: 0;
    justify-content: space-between;
  }
  .TxtImg_Content,
  .ImgTxt_Content,
  .Txt_Content,
  .Duo_Content {
    width: 90%;
    margin: auto;
    padding: 0 0 2rem;
  }
}

@media screen and (min-width: 768px) {
  .TxtImg_Container,
  .ImgTxt_Container,
  .Txt_Container,
  .Duo_Container {
    margin: 0 12rem;
  }
  .TxtImg_Content,
  .ImgTxt_Content,
  .Txt_Content,
  .Duo_Content {
    width: 55%;
    padding: 0;
  }
  .Duo_Content {
    width: 45%;
    padding: 0;
  }
}

.Txt_Content {
  margin: auto;
}

.TxtImg_Chapo,
.ImgTxt_Chapo,
.Txt_Chapo {
  margin: 0 0 2rem;
  font-size: 2.4rem;
  line-height: 1.2;
  color: #b19d37;
}

@media screen and (min-width: 0px) {
  .Duo_Chapo {
    width: 90%;
    margin: 0 auto 2rem;
    padding: 0 0;
    font-size: 2.4rem;
    line-height: 1.2;
    color: #b19d37;
  }
}

@media screen and (min-width: 768px) {
  .Duo_Chapo {
    margin: 0 12rem 2rem;
    padding: 0;
  }
}

.TxtImg_Text em,
.ImgTxt_Text em,
.Txt_Text em {
  color: #97886c;
}

.TxtImg_Text a,
.ImgTxt_Text a,
.Txt_Text a,
.Duo_Text a {
  color: #b19d37;
  border-bottom: 1px solid #b19d37;
}

.TxtImg_Text a:hover,
.ImgTxt_Text a:hover,
.Txt_Text a:hover,
.Duo_Text a:hover {
  color: #97886c;
  border-bottom: 1px solid #97886c;
}

@media screen and (min-width: 0px) {
  .TxtImg_Media,
  .ImgTxt_Media {
    width: 100%;
    justify-content: center;
  }
}

@media screen and (min-width: 768px) {
  .TxtImg_Media,
  .ImgTxt_Media {
    width: 40%;
    justify-content: center;
  }
}

.TxtImg_Figure,
.ImgTxt_Figure {
  align-items: center;
  margin: 0;
}

.TxtImg_Figure_Caption,
.ImgTxt_Figure_Caption {
  margin: 1rem 2rem 0;
  color: #767468;
}

/*  Video
========================================================================== */
.Video {
  position: relative;
  margin: 0 0 8rem;
}

.Video_Player {
  width: 100%;
}

.Video_Caption {
  top: 0;
  bottom: 0;
  z-index: 555;
  align-items: center;
  justify-content: flex-end;
  cursor: pointer;
}

@media screen and (min-width: 0px) {
  .Video_Caption {
    width: 90%;
    position: static;
    margin: 2rem auto 0;
    color: #000;
  }
  .Video_Caption_Title {
    font-size: 2.1rem;
    line-height: 1.1;
    color: #b19d37;
  }
  .Video_Caption.alignleft {
    justify-content: flex-start;
    padding-left: 0;
  }
  .Video_Caption_Container {
    width: 75%;
    padding: 1rem 4rem 1rem 0;
  }
}

@media screen and (min-width: 768px) {
  .Video_Caption {
    position: absolute;
    margin: 0;
    color: #fff;
  }
  .Video_Caption_Title {
    font-size: 2.8rem;
    line-height: 1.1;
    color: #fff;
  }
  .Video_Caption.alignleft {
    justify-content: flex-start;
    padding-left: 8rem;
  }
  .Video_Caption_Container {
    width: 500px;
    padding: 1rem 4rem;
  }
}

.Video_Caption.alignleft {
  justify-content: flex-start;
}

.Video_Caption.aligncenter {
  right: 50%;
}

.Video_Caption.alignright {
  left: 40%;
  right: 0;
  padding-right: 24rem;
}

.Video_Caption_Container {
  position: relative;
  border-right: 2px solid #b19d37;
}

.vjs-milandes-skin .vjs-big-play-button {
  width: 8rem;
  height: 8rem;
  top: 50%;
  left: 50%;
  margin-top: -4rem;
  font-size: 6rem;
  line-height: 0;
  border: none;
  background-color: transparent;
}

.video-js:hover .vjs-big-play-button,
.video-js .vjs-big-play-button:focus {
  background-color: transparent;
}

.vjs-milandes-skin .vjs-icon-placeholder {
  line-height: 8rem;
}

.Video_Caption_Btn {
  position: absolute;
  z-index: 666;
  top: 50%;
  margin-top: -2.5rem;
  right: -8rem;
}

.Video_Caption_Btn .ion {
  font-size: 5rem;
}

/*  Slideshow
========================================================================== */
.Slideshow {
  position: relative;
  margin: 0 0 8rem;
  padding: 0 12rem;
}

.Slideshow_Controls {
  position: absolute;
  z-index: 222;
  top: 0;
  right: 12rem;
  bottom: 0;
  left: 12rem;
  justify-content: space-between;
}

.Slideshow_Control {
  padding: 4rem;
  border: none;
  color: #fff;
  background: transparent;
  cursor: pointer;
  outline: none;
}

.Slideshow_Pager {
  position: absolute;
  z-index: 333;
  left: 0;
  right: 0;
  bottom: 4rem;
  padding: 4rem;
}

.Slideshow_Pager_Item {
  display: inline-block;
  margin: 0 0.5rem;
  width: 15px;
  height: 15px;
  border-radius: 15px;
  border: 2px solid #fff;
  background: transparent;
}

.Slideshow_Pager_Item.cycle-pager-active {
  border: 2px solid transparent;
  background: #fff;
}

.Slideshow_Caption {
  max-width: 50%;
  margin: 0 auto 0;
  padding: 2rem 0 0;
  color: #767468;
}

.Slider {
  position: relative;
}

.Slider_Img {
  display: none;
}

/*  DataTable
========================================================================== */
.DataTable {
  margin: 0 0 8rem;
  width: auto;
}

.DataTable_Header {
  padding: 1rem 4rem;
  background: #e8e3db;
}

@media screen and (min-width: 0px) {
  .DataTable {
    padding: 0 5%;
  }
  .TableMobile {
    display: flex;
  }
  .TableDesktop {
    display: none;
  }
  .alternateTable .TableMobile {
    display: none;
  }
  .alternateTable .TableDesktop {
    display: table;
  }
}

@media screen and (min-width: 768px) {
  .DataTable {
    padding: 0 8rem 0 2rem;
  }
  .TableDesktop {
    display: table;
  }
  .TableMobile {
    display: none;
  }
}

.TableMobile_Row {
  width: 50%;
}

.DataTable_Header_Title {
  color: #585857;
}

.DataTable_Header_Desc {
  color: #97886c;
}

.DataTable_Footer {
  padding: 3rem 4rem;
  font-size: 2rem;
  color: #fff;
  background: #97886c;
}

.Table_Header_Row,
.TableMobile_Header_Row {
  line-height: 1.1;
  color: #97886c;
}

@media screen and (min-width: 0px) {
  .Table_Header_Row {
    font-size: 1.6rem;
  }
  .Table_Body {
    font-size: small;
  }
}

@media screen and (min-width: 768px) {
  .Table_Body {
    font-size: medium;
  }
}

@media screen and (min-width: 1280px) {
  .Table_Header_Row {
    font-size: 2rem;
  }
}

@media screen and (min-width: 1440px) {
  .Table_Header_Row {
    font-size: 2.2rem;
  }
}

.Table_Cell {
  padding: 2rem 1rem;
  border-right: 1px solid rgba(177, 157, 55, 0.5);
  border-bottom: 1px solid rgba(177, 157, 55, 0.5);
  border-left: 1px solid rgba(177, 157, 55, 0.5);
}

.TableMobile_Cell {
  border-right: 1px solid rgba(177, 157, 55, 0.5);
  border-bottom: 1px solid rgba(177, 157, 55, 0.5);
  border-left: 1px solid rgba(177, 157, 55, 0.5);
}

.TableMobile_Cell {
  height: 6rem;
  padding: 1rem 0.5rem;
}

/*  Separator
========================================================================== */
.Separator {
  margin: 4rem 0;
  padding: 0 12rem;
}

.Separator_Container {
  border-top: 2px dotted rgba(177, 157, 55, 0.5);
}

/*  Archive
========================================================================== */
.Archive {
  max-width: 1360px;
  margin: 8rem auto 0;
  padding: 0 4rem;
}

.Archive_Item_Content_Title {
  margin: 0 0 1rem;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-weight: 400;
  text-transform: uppercase;
  color: #b19d37;
}

.Archive_Item_Content_link:link,
.Archive_Item_Content_link:visited {
  display: inline-block;
  padding: 1rem 4rem;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: 2rem;
  color: #fff;
  background: #b19d37;
  border: 2px solid #fff;
  border-radius: 8px;
}

@media screen and (min-width: 0px) {
  .Archive_Item {
    margin: 0 0 12rem;
  }
  .Archive_Item_Fig {
    margin: 0 0 2rem;
  }
  .Archive_Item_Content_Title {
    font-size: 2.4rem;
  }
}

@media screen and (min-width: 800px) {
  .Archive_Item {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
  }
  .Archive_Item.reverse {
    flex-direction: row-reverse;
  }
  .Archive_Item > * {
    width: 48%;
  }
  .Archive_Item_Fig {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    margin: 0;
  }
  .Archive_Item_Fig_Img {
    height: 300px;
    object-fit: contain;
  }
  .Archive_Item_Content_Title {
    font-size: 3.2rem;
  }
}

/*  Search Form
========================================================================== */
.Search {
  position: fixed;
  z-index: 9000;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  justify-content: space-between;
  background: #353534;
}

.Search.is_Closed {
  display: none;
  opacity: 0;
  transition: 0.25s opacity;
}

.Search.is_Open {
  display: flex;
  opacity: 1;
  transition: 0.25s opacity;
}

.Search > div {
  opacity: 1;
  transition: 0.5s opacity;
}

.Search > div.is_Hidden {
  opacity: 0;
  transition: 0.5s opacity;
}

.Search_Header {
  justify-content: space-between;
  background: #fff;
}

.Search_Header_Btn {
  padding: 4rem;
  font-size: 4rem;
  color: #353534;
  background: transparent;
  border: none;
  cursor: pointer;
  outline: none;
}

@media screen and (min-width: 0px) {
  .Search_Header_Logo {
    padding: 0 4rem 4rem;
  }
}

@media screen and (min-width: 480px) {
  .Search_Header_Logo {
    padding: 4rem;
  }
}

.Search_Header_Logo,
.Search_Header_Logo:hover,
.Search_Header_Logo:visited {
  border: none;
}

.Search_Content {
  justify-content: center;
  padding: 0 2rem;
}

.Search_Form {
  width: 100%;
  max-width: 960px;
}

.Search_Form_Field {
  padding: 0 2rem;
  flex-grow: 1;
  border: none;
}

.Search_Form_Submit {
  width: 64px;
  height: 64px;
  color: #fff;
  background: #b19d37;
  border: none;
  cursor: pointer;
  outline: none;
}

.Search_Footer {
  justify-content: center;
  padding: 0 2rem;
}

.Search_Footer_Content {
  color: #fff;
}

.Search_Footer_Link,
.Search_Footer_Link:hover {
  color: #fff;
  border: none;
}

/*  Nous contacter
========================================================================== */
/* Hides the reCAPTCHA on every page */
.grecaptcha-badge {
  visibility: hidden !important;
}

.Recaptcha_Credits {
  font-size: 12px;
  font-style: italic;
  color: rgba(255, 255, 255, 0.5);
}

.Recaptcha_Credits a {
  color: rgba(255, 255, 255, 0.5);
  text-decoration: none;
  border: none;
}

.Contact {
  margin: 4rem 0 12rem;
  justify-content: space-between;
  flex-direction: row-reverse;
}

.Contact_Section_Title,
.Contact_Section_Intro_Title {
  display: block;
  margin: 0 0 2rem;
  font-size: 2.4rem;
  line-height: 1.25;
}

.Contact_Section_Title .ion,
.Contact_Section_Intro_Title .ion {
  align-items: center;
  margin: 0 1.5rem 0 0;
  font-size: 3.2rem;
  color: #b19d37;
}

.download-link:link,
.download-link:visited {
  display: inline-block;
  padding: 1rem 2rem;
  color: #fff;
  background: #b19d37;
  text-decoration: none;
  border: none;
  border-radius: 8px;
}

.download-link .ion {
  margin: 0 0 0 1.5rem;
  font-size: 2rem;
}

.Contact_Section_Intro {
  margin: 4rem 0;
}

.Contact_Content {
  color: #fff;
  background: #353534;
}

@media screen and (min-width: 0px) {
  .Contact_Content {
    width: 100%;
    margin: 4rem 0 0;
    padding: 4rem;
  }
  .Contact_Map {
    width: 90%;
    margin: auto;
  }

  .Contact_Map > * {
    margin-right: 66px;
  }
}

@media screen and (min-width: 840px) {
  .Contact_Content {
    width: 40%;
    margin: 0;
  }
  .Contact_Map {
    width: 55%;
    margin: 0;
  }
}

@media screen and (min-width: 1280px) {
  .Contact_Content {
    padding: 8rem;
  }
  .Contact_Map {
    width: 55%;
  }
}

.Contact_Form {
  margin: 4rem 0 0;
}

.Contact_Form form p {
  margin: 0;
}

.Contact_Form form input,
.Contact_Form form textarea {
  width: 100%;
  padding: 1rem 2rem;
  border: none;
}

.Contact_Form form textarea {
  margin: 0 0 2rem;
}

.Contact_Form form input[type="submit"] {
  margin: 2rem 0 0;
  padding: 2rem;
  width: 100%;
  color: #fff;
  background: #b19d37;
  border-radius: 5px;
  cursor: pointer;
  outline: none;
}

.Contact_Card {
  padding: 0 0 4rem;
  border-bottom: 1px dotted rgba(255, 255, 255, 0.3);
}

.Contact_Card_Name {
  display: inline-block;
  color: #b19d37;
}

#Gmap {
  height: 60vh;
}

/*  Scolaires - formulaire
========================================================================== */
.Schools_Form {
  padding: 8rem 0;
  background: #353534;
}

.Schools_Form form,
.Schools_Form .Solo_Container_Text > p {
  max-width: 768px;
  margin: auto;
}

.Schools_Form .Solo_Container_Text > p {
  font-size: 2.4rem;
  color: #fff;
}

.Schools_Form form p {
  margin: 0;
}

.Schools_Form form input,
.Schools_Form form textarea {
  width: 100%;
  padding: 1rem 2rem;
  border: none;
}

.Schools_Form form textarea {
  margin: 0 0 2rem;
}

.Schools_Form form input[type="submit"] {
  margin: 2rem 0 0;
  padding: 2rem;
  width: 100%;
  color: #fff;
  background: #b19d37;
  border-radius: 5px;
  cursor: pointer;
  outline: none;
}

/*  Resultats de recherche
========================================================================== */
.Results {
  margin: 0 12rem;
}

.Results_Title {
  margin: 0;
  font-weight: 300;
}

.Results_List {
  margin: 5rem 0;
  padding: 0;
  list-style-type: none;
}

.Results_List_Item {
  margin: 0 0 2rem;
  border: 1px solid #efebd8;
}

.Results_List_Item:hover {
  border: 1px solid rgba(177, 157, 55, 0.5);
}

.Results_Item_Link,
.Results_Item_Link:hover {
  border: none;
}

.Results_Item_Title {
  margin: 0;
}

.Results_Item_Fig {
  width: 30%;
  line-height: 0;
}

.Results_Item_Content {
  width: 50%;
  padding: 2rem;
}

/*  Footer
========================================================================== */
.Footer {
  color: #fff;
  background: #97886c;
}

.Footer_Wrapper {
  padding: 4rem 6rem;
  justify-content: space-around;
  align-items: center;
}

.Footer_Labels {
  padding: 8rem 6rem;
  background: #fff;
  color: #000;
}

.Footer_Labels_List {
  justify-content: space-around;
}

.Footer_Links_Item,
.Footer_Links_Item:hover,
.Footer_Links_Item:visited {
  color: #fff;
  border: none;
}

.Footer_Labels_Link:link,
.Footer_Labels_Link:visited {
  display: inline-block;
  text-decoration: none;
  border: none;
}

.backToTop {
  display: flex;
  justify-content: center;
  width: 100%;
  padding: 0 0 8rem;
  background: #fff;
}

.backToTop_Btn {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 2rem 4rem;
  color: #fff;
  background: #d5c78c;
  border: none;
  border-radius: 12px;
  cursor: pointer;
}

.backToTop_Btn > svg {
  margin-top: 1.5rem;
  opacity: 0.5;
  transition: opacity 0.25s;
}

.backToTop_Btn:hover > svg {
  opacity: 1;
  transition: opacity 0.25s;
}

@media screen and (min-width: 0px) {
  .Footer_Labels_Item {
    width: 100px;
    height: 100px;
    margin: 2rem 1rem;
  }
  .Footer_Labels_Item.visites-en-perigord {
    width: 200px;
    height: 100px;
    margin: 2rem 1rem;
  }
}

@media screen and (min-width: 1000px) {
  .Footer_Labels_Item {
    width: 120px;
    height: 120px;
    margin: 4rem 8rem;
  }
  .Footer_Labels_Item.visites-en-perigord {
    width: 240px;
    height: 120px;
    margin: 4rem 8rem;
  }
}

/*  Parcours
========================================================================== */
.parcours {
  max-width: 844px;
  margin: 0 auto;
  padding: 0 0 5rem;
}

.parcours_languages_btn {
  z-index: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 5rem;
  font-weight: 700;
  text-align: center;
  color: #000;
  background: #fff;
  border: none;
  border-bottom: 1px solid #eee;
  cursor: pointer;
}

.parcours_languages_btn .triangle {
  display: inline-block;
  width: 0;
  height: 0;
  margin: 0.4rem 0 0 1rem;
  border-style: solid;
  border-width: 10.4px 6px 0 6px;
  border-color: #000000 transparent transparent transparent;
  transform: rotate(0);
}

.parcours_languages_btn.open .triangle {
  transform: rotate(180deg);
}

.parcours_languages_switcher {
  height: auto;
  transform: translateY(0);
  margin-bottom: 2rem;
  border-bottom: 1px solid #eee;
  transition: transform 0.5s;
}

.parcours_languages_switcher.is-hidden {
  height: 0;
  transform: translateY(-200px);
  overflow: hidden;
  border-bottom: 1px solid #fff;
  transition: transform 0.5s;
}

.parcours_languages_list {
  z-index: -1;
  padding: 2rem 1rem;
  text-align: center;
  opacity: 1;
  transition: 0.5s 0.25s opacity;
}

.parcours_languages_switcher.is-hidden .parcours_languages_list {
  opacity: 0;
  transition: 0.125s opacity;
}

.parcours_languages_item {
  margin: 1rem 0;
  font-size: 1.8rem;
}

.parcours_wrapper {
  padding: 0 3rem;
}

.erreur-de-parcours {
  display: none;
  visibility: hidden;
}

@media screen and (min-width: 844px) {
  .parcours {
    display: none;
    visibility: hidden;
  }
  .erreur-de-parcours {
    position: fixed;
    visibility: visible;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 20rem;
    font-family: "Cormorant Garamond", Georgia, serif;
    font-weight: 700;
    color: #b19d37;
  }
}

.parcours_title {
  margin: 0 0 3rem;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: 3.6rem;
  color: #b19d37;
}

.parcours_content {
  font-size: 2rem;
}

.parcours_video_wrapper {
  position: relative;
  overflow: hidden;
  width: 100%;
  margin: 0 0 3rem;
  padding-top: 56.25%;
  /* 16:9 Aspect Ratio (divide 9 by 16 = 0.5625) */
}

.parcours_video_wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

.retour_header {
  position: fixed;
  bottom: 10px;
  right: 0;
  transition-duration: 1500ms;
  z-index: 8888;
}

.contact-cta {
  margin-bottom: 2rem;
}

.fadeIn {
  opacity: 1;
  transition: opacity 700ms linear;
}

.fadeOut {
  opacity: 0;
  z-index: -1;
}

.wpcf7-form.sent .form_field,
.wpcf7-form.sent p {
  display: none;
  visibility: hidden;
}

.Contact_Form:has(.wpcf7-form.sent) .contact_form-mention {
  display: none;
  visibility: hidden;
}

.my_pagination .cta {
  display: inline-block;
  padding: 1rem 4rem;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: 2rem;
  color: #fff;
  background: #b19d37;
  border: 2px solid #fff;
  border-radius: 8px;
}

@media screen and (max-width: 767px) {
  .my_pagination .cta {
    display: none;
  }
}

.my_pagination {
  width: 100%;
}

.my_pagination .page-numbers {
  font-family: "Cormorant Garamond", Georgia, serif;
  font-weight: 400;
  text-transform: uppercase;
  color: #b19d37;
  margin: 0 1rem;
  font-size: 3rem;
}

.my_pagination .page-numbers.current {
  color: #000;
}

.my_pagination-flex {
  display: flex;
}

.my_pagination-justify-center {
  justify-content: center;
}
