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

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after {
  content: '';
  content: none; }

q:before, q:after {
  content: '';
  content: none; }

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

/* Document
 * ========================================================================== */
/**
 * Add border box sizing in all browsers (opinionated).
 */
*,
::before,
::after {
  box-sizing: border-box; }

/**
 * 1. Add text decoration inheritance in all browsers (opinionated).
 * 2. Add vertical alignment inheritance in all browsers (opinionated).
 */
::before,
::after {
  text-decoration: inherit;
  /* 1 */
  vertical-align: inherit;
  /* 2 */ }

/**
 * 1. Use the default cursor in all browsers (opinionated).
 * 2. Change the line height in all browsers (opinionated).
 * 3. Use a 4-space tab width in all browsers (opinionated).
 * 4. Remove the grey highlight on links in iOS (opinionated).
 * 5. Prevent adjustments of font size after orientation changes in
 *    IE on Windows Phone and in iOS.
 * 6. Breaks words to prevent overflow in all browsers (opinionated).
 */
html {
  cursor: default;
  /* 1 */
  line-height: 1.5;
  /* 2 */
  -moz-tab-size: 4;
  /* 3 */
  -o-tab-size: 4;
     tab-size: 4;
  /* 3 */
  -webkit-tap-highlight-color: transparent;
  -ms-text-size-adjust: 100%;
  /* 5 */
  -webkit-text-size-adjust: 100%;
  /* 5 */
  word-break: break-word;
  /* 6 */ }

/* Sections
 * ========================================================================== */
/**
 * Remove the margin in all browsers (opinionated).
 */
body {
  margin: 0; }

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Edge, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0; }

/* Grouping content
 * ========================================================================== */
/**
 * Remove the margin on nested lists in Chrome, Edge, IE, and Safari.
 */
dl dl,
dl ol,
dl ul,
ol dl,
ul dl {
  margin: 0; }

/**
 * Remove the margin on nested lists in Edge 18- and IE.
 */
ol ol,
ol ul,
ul ol,
ul ul {
  margin: 0; }

/**
 * 1. Add the correct sizing in Firefox.
 * 2. Show the overflow in Edge 18- and IE.
 */
hr {
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */ }

/**
 * Add the correct display in IE.
 */
main {
  display: block; }

/**
 * Remove the list style on navigation lists in all browsers (opinionated).
 */
nav ol,
nav ul {
  list-style: none;
  padding: 0; }

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */ }

/* Text-level semantics
 * ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent; }

/**
 * Add the correct text decoration in Edge 18-, IE, and Safari.
 */
abbr[title] {
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted; }

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder; }

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */ }

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%; }

/* Embedded content
 * ========================================================================== */
/*
 * Change the alignment on media elements in all browsers (opinionated).
 */
audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle; }

/**
 * 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 iframes in all browsers (opinionated).
 */
iframe {
  border-style: none; }

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

/**
 * Change the fill color to match the text color in all browsers (opinionated).
 */
svg:not([fill]) {
  fill: currentColor; }

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

/* Tabular data
 * ========================================================================== */
/**
 * Collapse border spacing in all browsers (opinionated).
 */
table {
  border-collapse: collapse; }

/* Forms
 * ========================================================================== */
/**
 * Remove the margin on controls in Safari.
 */
button,
input,
select {
  margin: 0; }

/**
 * 1. Show the overflow in IE.
 * 2. Remove the inheritance of text transform in Edge 18-, Firefox, and IE.
 */
button {
  overflow: visible;
  /* 1 */
  text-transform: none;
  /* 2 */ }

/**
 * Correct the inability to style buttons in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button; }

/**
 * 1. Change the inconsistent appearance in all browsers (opinionated).
 * 2. Correct the padding in Firefox.
 */
fieldset {
  border: 1px solid #a0a0a0;
  /* 1 */
  padding: 0.35em 0.75em 0.625em;
  /* 2 */ }

/**
 * Show the overflow in Edge 18- and IE.
 */
input {
  overflow: visible; }

/**
 * 1. Correct the text wrapping in Edge 18- and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 */
legend {
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  white-space: normal;
  /* 1 */ }

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

/**
 * Remove the inheritance of text transform in Firefox.
 */
select {
  text-transform: none; }

/**
 * 1. Remove the margin in Firefox and Safari.
 * 2. Remove the default vertical scrollbar in IE.
 * 3. Change the resize direction in all browsers (opinionated).
 */
textarea {
  margin: 0;
  /* 1 */
  overflow: auto;
  /* 2 */
  resize: vertical;
  /* 3 */ }

/**
 * Remove the padding in IE 10-.
 */
[type="checkbox"],
[type="radio"] {
  padding: 0; }

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

/**
 * Correct the cursor style of increment and decrement buttons in Safari.
 */
::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto; }

/**
 * Correct the text style of placeholders in Chrome, Edge, and Safari.
 */
::-webkit-input-placeholder {
  color: inherit;
  opacity: 0.54; }

/**
 * Remove the inner padding in Chrome, Edge, and Safari on macOS.
 */
::-webkit-search-decoration {
  -webkit-appearance: none; }

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

/**
 * Remove the inner border and padding of focus outlines in Firefox.
 */
::-moz-focus-inner {
  border-style: none;
  padding: 0; }

/**
 * Restore the focus outline styles unset by the previous rule in Firefox.
 */
:-moz-focusring {
  outline: 1px dotted ButtonText; }

/**
 * Remove the additional :invalid styles in Firefox.
 */
:-moz-ui-invalid {
  box-shadow: none; }

/* Interactive
 * ========================================================================== */
/*
 * Add the correct display in Edge 18- and IE.
 */
details {
  display: block; }

/*
 * Add the correct styles in Edge 18-, IE, and Safari.
 */
dialog {
  background-color: white;
  border: solid;
  color: black;
  display: block;
  height: -moz-fit-content;
  height: -webkit-fit-content;
  height: fit-content;
  left: 0;
  margin: auto;
  padding: 1em;
  position: absolute;
  right: 0;
  width: -moz-fit-content;
  width: -webkit-fit-content;
  width: fit-content; }

dialog:not([open]) {
  display: none; }

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

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

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

/* User interaction
 * ========================================================================== */
/*
 * 1. Remove the tapping delay in IE 10.
 * 2. Remove the tapping delay on clickable elements
      in all browsers (opinionated).
 */
a,
area,
button,
input,
label,
select,
summary,
textarea,
[tabindex] {
  /* 1 */
  touch-action: manipulation;
  /* 2 */ }

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

/* Accessibility
 * ========================================================================== */
/**
 * Change the cursor on busy elements in all browsers (opinionated).
 */
[aria-busy="true"] {
  cursor: progress; }

/*
 * Change the cursor on control elements in all browsers (opinionated).
 */
[aria-controls] {
  cursor: pointer; }

/*
 * Change the cursor on disabled, not-editable, or otherwise
 * inoperable elements in all browsers (opinionated).
 */
[aria-disabled="true"],
[disabled] {
  cursor: not-allowed; }

/*
 * Change the display on visually hidden accessible elements
 * in all browsers (opinionated).
 */
[aria-hidden="false"][hidden] {
  display: inline;
  display: initial; }

[aria-hidden="false"][hidden]:not(:focus) {
  clip: rect(0, 0, 0, 0);
  position: absolute; }

html {
  font-size: 10px;
  font-family: "Lato", sans-serif;
  color: #333; }

body {
  font-size: 1.5rem;
  overflow-x: hidden; }

svg {
  width: 1em;
  height: auto; }

h1, h2, h3, h4, h5 {
  font-family: "Bitter", serif;
  margin-bottom: .8em; }

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

a {
  text-decoration: none;
  color: #553f8b; }

p {
  margin-bottom: 1rem; }

h1 {
  font-size: 3.2rem; }

h2 {
  font-size: 2.4rem; }

h3 {
  font-size: 1.6rem; }

em {
  font-style: italic; }

@media (max-width: 720px) {
  iframe {
    max-width: 100%;
    height: auto; } }

/**======================================================
||                                                   ||
||                      UTILITIES                    ||
||                                                   ||
=======================================================*/
/**=====================================================
||                                                   ||
||                      WRAPPERS                     ||
||                                                   ||
=======================================================*/
/**=====================================================
||                                                   ||
||                      TITLES                       ||
||                                                   ||
=======================================================*/
/**=====================================================
||                                                   ||
||                       FORMS                       ||
||                                                   ||
=======================================================*/
/**=====================================================
||                                                   ||
||                      SWIPER                       ||
||                                                   ||
=======================================================*/
.container, .container-withoutMargin, .container-content {
  display: block;
  margin: 0 auto;
  width: calc(100% - 4rem);
  max-width: 1366px; }

.container-withoutMargin {
  width: 100%; }

.container-content {
  max-width: 1230px; }

.social-networks {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  padding-left: 0;
  display: flex;
  -webkit-justify-content: space-around;
          justify-content: space-around;
  width: 100%;
  -webkit-box-align: center;
  -webkit-align-items: center;
          align-items: center; }

.social-networks__item svg {
  width: 3rem;
  height: auto; }
  @media (max-width: 720px) {
    .social-networks__item svg {
      width: 2rem; } }

.header-menu-left {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex; }
  @media (max-width: 1130px) {
    .header-menu-left {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
              flex-direction: column; } }
  .header-menu-left .menu-level0 {
    position: relative; }
  .header-menu-left .menu__item {
    margin-right: 0; }
    @media (max-width: 1130px) {
      .header-menu-left .menu__item {
        font-size: 1.9rem;
        font-weight: bold; }
        .header-menu-left .menu__item:not(:last-child) {
          margin-bottom: 1.5rem; } }

.menu.header-menu-left__submenu {
  position: absolute;
  display: block;
  background: #fff;
  margin-top: 2rem;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: 1;
  border: solid 1px #ccc;
  opacity: 0;
  left: -200vw; }
  .menu.header-menu-left__submenu:before, .menu.header-menu-left__submenu:after {
    content: '';
    display: block;
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    bottom: 100%;
    width: 0;
    height: 0; }
    @media (max-width: 1130px) {
      .menu.header-menu-left__submenu:before, .menu.header-menu-left__submenu:after {
        display: none; } }
  .menu.header-menu-left__submenu:before {
    border: 11px solid transparent;
    border-bottom-color: #ccc; }
  .menu.header-menu-left__submenu:after {
    border: 10px solid transparent;
    border-bottom-color: #fff; }

.header-menu-left__item.menu-level0 {
  padding: 2rem 0; }
  @media (min-width: 1130px) {
    .header-menu-left__item.menu-level0:hover > a::after, .header-menu-left__item.menu-level0:focus > a::after {
      content: '';
      width: 100%;
      display: block;
      height: .15rem;
      background: #ea5b0b;
      position: absolute;
      margin-top: .2rem; } }
  @media (min-width: 1130px) {
    .header-menu-left__item.menu-level0:hover .header-menu-left__submenu, .header-menu-left__item.menu-level0:focus .header-menu-left__submenu {
      opacity: 1;
      left: 50%; } }
  @media (max-width: 1130px) {
    .header-menu-left__item.menu-level0 {
      padding: .75rem 0; } }

.header-menu-left__item.menu-level1 .linktext {
  position: relative; }

.header-menu-left__item.menu-level1:not(:first-child) {
  border-top: solid 1px #ccc; }

.header-menu-left__item.menu-level1 a {
  padding: 1.5rem 2rem 1.5rem;
  min-width: 22rem;
  display: block;
  line-height: 1.25; }

@media (min-width: 1130px) {
  .header-menu-left__item.menu-level1:hover > a .linktext, .header-menu-left__item.menu-level1:focus > a .linktext {
    text-decoration: underline;
    -webkit-text-decoration-color: #ea5b0b;
            text-decoration-color: #ea5b0b; } }

.header-menu-left.header-menu-left--landing {
  font-size: 2rem !important; }
  @media (max-width: 1130px) {
    .header-menu-left.header-menu-left--landing {
      font-size: 2rem !important; } }
  .header-menu-left.header-menu-left--landing .menu__item:not(:last-child) {
    margin-right: 4rem; }
  @media (max-width: 1130px) {
    .header-menu-left.header-menu-left--landing .menu__item {
      margin-bottom: 3rem;
      margin-right: 0 !important; } }

@media (max-width: 1130px) {
  .header-menu-left .menu--submenu {
    text-align: center; }
    .header-menu-left .menu--submenu .submenu__toggle {
      position: relative;
      display: inline-block; }
      .header-menu-left .menu--submenu .submenu__toggle::after {
        content: '';
        display: inline-block;
        margin-left: 1rem;
        border: solid #ea5b0b;
        border-width: 0 0.2rem 0.2rem 0;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        width: 1.75rem;
        height: 1.75rem;
        position: relative;
        bottom: .25rem; }
  .header-menu-left .menu--submenu.submenu--open .submenu__toggle::after {
    -webkit-transform: rotate(225deg);
            transform: rotate(225deg);
    bottom: inherit;
    top: .75rem; }
  .header-menu-left .menu--submenu.submenu--open .header-menu-left__submenu {
    margin-top: 1.5rem;
    opacity: 1;
    position: static;
    -webkit-transform: inherit;
            transform: inherit;
    border: 0; }
    .header-menu-left .menu--submenu.submenu--open .header-menu-left__submenu li {
      border-top: 0;
      font-size: 1.6rem;
      font-weight: normal; }
      .header-menu-left .menu--submenu.submenu--open .header-menu-left__submenu li:not(:last-child) {
        margin-bottom: .8rem; } }

@media (min-width: 1130px) {
  .header-menu-left__item.menu--active::after {
    content: '';
    width: 100%;
    display: block;
    height: .15rem;
    background: black;
    position: absolute;
    margin-top: .2rem; } }

.menu.main {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  width: 100%;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
          justify-content: center; }
  @media (max-width: 720px) {
    .menu.main {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
              flex-direction: column; } }

.main__item {
  font-size: 1.6rem; }
  .main__item:not(:last-child) {
    margin-right: 2rem; }
    @media (max-width: 720px) {
      .main__item:not(:last-child) {
        margin-bottom: 1rem;
        margin-right: 0; } }

.menu.top-menu {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex; }
  @media (max-width: 1130px) {
    .menu.top-menu {
      margin-top: 2rem;
      margin-bottom: 2rem; } }
  @media (max-width: 720px) {
    .menu.top-menu {
      margin-top: inherit;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
              flex-direction: column;
      margin-bottom: 2rem; } }

@media (max-width: 1130px) {
  #block-menuentetepublics {
    -webkit-box-ordinal-group: 5;
    -webkit-order: 4;
            order: 4; } }

@media (max-width: 720px) {
  .menu .top-menu__item:not(:last-child) {
    margin-right: 0;
    margin-bottom: .5rem; } }

.block-menuentetepublics-menu.menu__prefix {
  font-size: 1.7rem;
  font-family: "Bitter", serif;
  color: #553f8b; }
  .block-menuentetepublics-menu.menu__prefix::after {
    content: ' :';
    margin-right: 1rem; }
  @media (max-width: 1130px) {
    .block-menuentetepublics-menu.menu__prefix {
      color: #fff; } }

.menu.top-menu {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex; }
  .menu.top-menu:not(:last-child) {
    margin-right: 2rem; }

.button, input[type=submit], form button {
  border: solid 0;
  border-radius: 1rem;
  display: inline-block;
  font-size: 1.35rem;
  font-family: "Lato", sans-serif;
  letter-spacing: .05rem;
  margin: 1rem 0;
  padding: 1rem 3.25rem;
  text-decoration: none;
  text-transform: uppercase;
  text-align: center;
  -webkit-transition: all .5s;
  transition: all .5s; }
  .button.button--border, input.button--border[type=submit], form button.button--border {
    border: solid 2px transparent; }
  .button:hover, input:hover[type=submit], form button:hover {
    cursor: pointer; }

.button--violet {
  background-color: #553f8b;
  color: white; }

.button--orange {
  background-color: #ea5b0b;
  color: white; }

.mini-teaser {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  margin-bottom: 1rem; }

.mini-teaser__title {
  color: #553f8b;
  font-size: 2rem;
  font-family: "Bitter", serif;
  margin-top: .5rem;
  margin-bottom: .5rem; }
  @media (max-width: 720px) {
    .mini-teaser__title {
      font-size: 1.5rem;
      margin-top: 0; } }
  .mini-teaser__title * {
    color: #553f8b; }
  .mini-teaser__title a {
    text-decoration: none; }

.mini-teaser__content {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
          flex: 1; }

.mini-teaser__icon {
  margin-right: 1rem; }
  .mini-teaser__icon svg {
    width: 4.5rem; }
    @media (max-width: 720px) {
      .mini-teaser__icon svg {
        width: 3.25rem; } }

.mini-teaser__link-icon {
  margin-top: .75rem;
  margin-left: 1rem; }
  .mini-teaser__link-icon svg {
    width: 2rem; }
  .mini-teaser__link-icon path {
    fill: #ea5b0b; }
  @media (max-width: 720px) {
    .mini-teaser__link-icon {
      display: none; } }

.mini-teaser__description {
  font-size: 1.5rem;
  line-height: 1.3; }
  .mini-teaser__description a {
    color: #000; }
  @media (max-width: 720px) {
    .mini-teaser__description {
      font-size: 1.4rem; } }

.arrow {
  width: 5rem;
  height: 2px;
  position: relative;
  background: #ea5b0b;
  margin: 1rem 0; }
  @media (max-width: 720px) {
    .arrow {
      margin: .7rem 0; } }
  .arrow:before, .arrow::after {
    content: '';
    width: 1rem;
    height: .15rem;
    position: absolute;
    right: -.2rem;
    background: #ea5b0b; }
  .arrow::before {
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
    top: .35rem; }
  .arrow::after {
    bottom: .35rem;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg); }

.teaser-picture {
  position: relative;
  display: inline-block;
  padding-right: 2.5rem; }
  @media (max-width: 720px) {
    .teaser-picture {
      margin-bottom: 1.5rem; } }

@media (max-width: 720px) {
  .teaser-picture__bg-pic img {
    width: 100%; } }

.teaser-picture__title {
  position: absolute;
  display: block;
  background: #553f8b;
  padding: 2.5rem 1.5rem;
  width: 25rem;
  bottom: 6rem;
  -webkit-transform: translateY(50%);
          transform: translateY(50%);
  right: 0;
  color: #fff;
  font-family: "Bitter", serif;
  font-size: 1.7rem; }
  @media (max-width: 1130px) {
    .teaser-picture__title {
      min-width: 15rem; } }
  @media (max-width: 720px) {
    .teaser-picture__title {
      bottom: 2rem;
      -webkit-transform: inherit;
              transform: inherit;
      padding-left: 2.5rem;
      min-width: 23rem; } }
  .teaser-picture__title a {
    color: #fff; }
  .teaser-picture__title h3 {
    margin-bottom: 0; }

.teaser-picture--recto .teaser-picture__recto {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1;
  opacity: 0;
  background: rgba(255, 255, 255, 0.7);
  font-size: 1.8rem;
  -webkit-transition: opacity .4s;
  transition: opacity .4s;
  padding: 1.5rem; }

.teaser-picture:hover .teaser-picture__recto, .teaser-picture:focus .teaser-picture__recto {
  opacity: 1; }

.teaser-pict-desc {
  position: relative;
  color: #333;
  margin: 1rem 0;
  -webkit-perspective: 1000px;
          perspective: 1000px;
  /* Remove this if you don't want the 3D effect */ }
  .teaser-pict-desc p {
    margin-bottom: .5rem; }

.teaser-pict-desc__bg-image {
  background: #fff; }
  @media (max-width: 720px) {
    .teaser-pict-desc__bg-image img {
      width: 100%; } }

.teaser-pict-desc__title {
  font-size: 2rem;
  font-family: "Bitter", serif;
  color: #707070; }

.teaser-pict-desc__content-recto, .teaser-pict-desc__content-verso {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  -webkit-transition: opacity .4s;
  transition: opacity .4s;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden; }

.teaser-pict-desc__content-recto {
  z-index: 2;
  opacity: 1; }

.teaser-pict-desc__content-verso {
  padding: 1.5rem;
  background: white;
  font-size: 1.8rem;
  -webkit-transform: rotateY(180deg);
          transform: rotateY(180deg); }

.teaser-pict-desc__inner {
  -webkit-transition: -webkit-transform 0.8s;
  transition: -webkit-transform 0.8s;
  transition: transform 0.8s;
  transition: transform 0.8s, -webkit-transform 0.8s;
  -webkit-transform-style: preserve-3d;
          transform-style: preserve-3d; }

.teaser-pict-desc:hover .teaser-pict-desc__inner, .teaser-pict-desc:focus .teaser-pict-desc__inner {
  -webkit-transform: rotateY(180deg);
          transform: rotateY(180deg); }

.teaser-pict-desc:hover .teaser-pict-desc__bg-image, .teaser-pict-desc:focus .teaser-pict-desc__bg-image {
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden; }

.teaser-pict-desc__link_icon {
  position: absolute;
  bottom: 1rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: 4; }
  .teaser-pict-desc__link_icon svg {
    width: 2rem; }
  .teaser-pict-desc__link_icon path {
    fill: #ea5b0b; }

.teaser-pict-text-above {
  display: block;
  color: #000;
  max-width: 23rem;
  outline: none; }
  @media (max-width: 720px) {
    .teaser-pict-text-above {
      max-width: 35rem; } }
  .teaser-pict-text-above:hover .teaser-pict-text-above__title, .teaser-pict-text-above:focus .teaser-pict-text-above__title {
    text-decoration: underline; }

.teaser-pict-text-above__title {
  font-size: 1.8rem;
  text-align: center;
  margin-top: 2rem;
  font-weight: bold; }

.teaser-pict-text-above__image img {
  width: 100%; }

.big-teaser {
  position: relative; }
  .big-teaser a {
    color: #fff; }
  .big-teaser .big-teaser__title {
    font-size: 1.9rem; }

.big-teaser__bg {
  width: 60%;
  margin: 0 auto; }
  .big-teaser__bg img {
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center;
       object-position: center; }
  @media (max-width: 720px) {
    .big-teaser__bg {
      width: 90%;
      margin-left: 0; } }

.big-teaser__box {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
          justify-content: space-between;
  position: absolute;
  min-height: 30rem;
  width: 48rem;
  padding: 3rem;
  background: #553f8b;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%); }
  @media (max-width: 720px) {
    .big-teaser__box {
      min-height: 17rem;
      width: 70%;
      top: 55%;
      min-width: 27rem;
      padding: 2.5rem 2.5rem 1.5rem; } }

.big-teaser__read-more {
  -webkit-align-self: end;
          align-self: end;
  width: 12rem;
  font-size: 1.5rem; }
  .big-teaser__read-more .arrow {
    width: 100%; }

.teaser-modal__popin img {
  max-height: 65vh;
  display: block; }

.teaser-modal__popin .button, .teaser-modal__popin input[type=submit], .teaser-modal__popin form button, form .teaser-modal__popin button {
  background: #553f8b;
  color: #fff;
  margin-top: 1rem; }

.teaser-modal__popin .popin__inner-content {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
          align-items: center; }

.teaser {
  max-width: 40rem;
  margin-bottom: 2rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
          flex-direction: column;
  border: solid 1px #553f8b;
  border-radius: 1rem; }

.teaser__img img {
  border-top-left-radius: 1rem;
  border-top-right-radius: 1rem; }

.teaser__img {
  position: relative;
  min-height: 25rem; }
  .teaser__img img {
    position: absolute;
    top: 0;
    height: 100%;
    left: 0;
    right: 0;
    -o-object-position: 50% 50%;
       object-position: 50% 50%;
    -o-object-fit: cover;
       object-fit: cover;
    width: 100%; }

.teaser__bottom {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
          flex: 1;
  padding: 1.6rem; }

.teaser__tags {
  position: absolute;
  bottom: 1rem;
  right: 1rem;
  left: 1rem; }

.teaser__title {
  font-weight: bold;
  font-size: 2rem;
  margin-bottom: 1rem; }

.article-header {
  position: relative;
  margin-bottom: 7rem; }
  @media (max-width: 1130px) {
    .article-header {
      margin-bottom: 4.5rem;
      padding-bottom: 8rem; } }

.article-header__visual {
  width: 90%;
  min-height: 42rem;
  position: relative; }
  @media (max-width: 1130px) {
    .article-header__visual {
      width: 100%; } }
  .article-header__visual img {
    width: 100%; }

.article-header__informations {
  padding: 3rem;
  background: #553f8b;
  color: #fff;
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 36rem; }
  @media (max-width: 1130px) {
    .article-header__informations {
      padding: 1.75rem 2rem;
      width: 90%;
      left: 50%;
      -webkit-transform: translateX(-50%);
              transform: translateX(-50%);
      top: inherit;
      bottom: 0; } }

.article-header__time {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  margin-bottom: 3rem;
  margin-top: 1rem; }
  .article-header__time path {
    fill: #ea5b0b; }
  .article-header__time svg {
    width: 2.5rem; }

.article__date {
  margin-right: 2rem; }

.article-header__share {
  border: none;
  background-color: transparent;
  color: #fff;
  cursor: pointer; }
  .article-header__share svg {
    margin-left: 1rem;
    width: 2rem; }
  .article-header__share path {
    fill: #ea5b0b; }

.article-header__links {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
          justify-content: space-between;
  font-size: 1.5rem;
  -webkit-box-align: center;
  -webkit-align-items: center;
          align-items: center; }

.article-header__title {
  position: absolute;
  top: 5rem;
  left: 4.75rem;
  max-width: 71rem;
  color: #fff;
  margin: 0; }
  @media (max-width: 720px) {
    .article-header__title {
      width: 90%;
      left: 50%;
      -webkit-transform: translateX(-50%);
              transform: translateX(-50%);
      top: 2rem; } }

.article-header__arrow {
  width: 9rem;
  height: 2px;
  position: relative;
  background: #ea5b0b;
  margin: 1rem 0;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
  position: absolute;
  left: 50%;
  bottom: -2rem; }
  @media (max-width: 720px) {
    .article-header__arrow {
      margin: .7rem 0; } }
  .article-header__arrow:before, .article-header__arrow::after {
    content: '';
    width: 1rem;
    height: .15rem;
    position: absolute;
    right: -.2rem;
    background: #ea5b0b; }
  .article-header__arrow::before {
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
    top: .35rem; }
  .article-header__arrow::after {
    bottom: .35rem;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg); }

.article-header__readmore {
  position: relative;
  font-weight: bold; }
  .article-header__readmore .arrow {
    width: 100%;
    position: absolute; }

.article-footer {
  -webkit-box-align: center;
  -webkit-align-items: center;
          align-items: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
          justify-content: space-between;
  margin-top: 2rem;
  margin-bottom: 2rem; }
  @media (max-width: 720px) {
    .article-footer {
      display: block; } }

.article-footer__share {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
          align-items: center; }
  @media (max-width: 720px) {
    .article-footer__share {
      margin-top: 3rem; } }

.sn-share {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
          align-items: center; }
  .sn-share > *:not(:last-child) {
    margin-right: 1rem; }
  .sn-share svg {
    width: 2.5rem; }
  .sn-share path {
    fill: #553f8b; }

#popin {
  position: fixed;
  z-index: 100;
  visibility: hidden;
  opacity: 0;
  left: 200vw;
  -webkit-transition: opacity .3s;
  transition: opacity .3s;
  background: rgba(100, 100, 100, 0.4);
  cursor: pointer; }
  #popin.popin--active {
    opacity: 1;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    visibility: inherit; }

.popin__content {
  padding: 2rem;
  background: white;
  border-radius: 2rem;
  position: absolute;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
          flex-direction: column;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  cursor: auto;
  cursor: initial; }
  @media (max-width: 720px) {
    .popin__content {
      min-width: 85%;
      max-width: 92vw; } }

#popin.popin--small .popin__content {
  min-width: 40rem;
  min-height: 15rem; }
  @media (max-width: 720px) {
    #popin.popin--small .popin__content {
      min-width: 85%;
      max-width: 92vw; } }

.popin__title {
  font-weight: bold;
  font-size: 2.5rem;
  font-family: "Bitter", serif;
  margin-bottom: 2rem; }

.popin__close {
  text-decoration: underline;
  font-size: 1.2rem;
  margin-top: 1.5rem;
  cursor: pointer; }

.popin__opener {
  cursor: pointer; }

.popin-content {
  display: none; }

.pager__items {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
          justify-content: center;
  margin: 2rem 0; }

.pager__item:not(:last-child) {
  margin-right: 1rem; }

.pager__item.is-active {
  text-decoration: underline; }

#iestop {
  position: fixed;
  top: 50%;
  left: 50%;
  background: orange;
  padding: 2rem;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%); }

.view--planning .view__content, .view--archives .view__content {
  max-width: 80rem;
  margin: 0 auto; }

.view--table {
  margin-bottom: 3rem;
  table-layout: fixed;
  width: 100%; }
  .view--table caption {
    text-align: left;
    font-size: 2rem;
    margin-bottom: 1.2rem; }
  .view--table table {
    width: 100%; }
  .view--table tr {
    width: 100%; }
    @media (max-width: 720px) {
      .view--table tr {
        display: -webkit-box;
        display: -webkit-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
                flex-wrap: wrap; } }
    .view--table tr:nth-child(2n) {
      background-color: rgba(85, 63, 139, 0.1); }
  .view--table th {
    font-weight: bold;
    padding: .75rem .75rem; }
    .view--table th:first-child {
      border-top-left-radius: 5px; }
    .view--table th:last-child {
      border-top-right-radius: 5px; }
  .view--table td {
    padding: .5rem .75rem; }
  .view--table thead {
    background-color: #553f8b;
    color: white;
    border-radius: 2px; }
  .view--table th, .view--table td {
    text-align: left; }
  .view--table .views-field-field-son .label {
    display: none; }

.player {
  margin: 2rem;
  text-align: center;
  max-width: 34rem; }

.tag {
  display: inline-block; }
  .tag a {
    background-color: #ea5b0b;
    color: whitesmoke;
    border-radius: 5px;
    display: inline-block;
    padding: .5rem .5rem;
    font-size: 1.3rem;
    display: inline-block;
    margin-bottom: 1rem; }
  .tag:not(:last-child) {
    margin-right: 1rem; }

#page {
  overflow: hidden; }

.main:not(.menu) {
  min-height: 40vh; }

.page {
  overflow: hidden; }

.main h1 {
  text-align: center;
  margin-top: 2rem;
  margin-bottom: 5rem; }

.local-tasks {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  border-bottom: solid 1px #553f8b;
  margin-bottom: 2rem; }
  .local-tasks li {
    margin-right: 1rem;
    border: solid 1px #553f8b;
    color: #553f8b;
    border-bottom: none;
    padding: .5rem 1rem; }
    .local-tasks li a {
      text-decoration: none;
      color: #553f8b; }
      .local-tasks li a.is-active {
        text-decoration: underline; }

.footer {
  background-color: black;
  color: #fff;
  padding: 1rem 0; }
  .footer a {
    color: #fff; }

.menu.footer {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
          justify-content: center; }
  .menu.footer > *:not(:last-child) {
    margin-right: .5rem; }
    .menu.footer > *:not(:last-child)::after {
      content: ' - '; }

.header {
  position: relative;
  background-color: transparent;
  -webkit-transition: background-color 1s;
  transition: background-color 1s;
  position: relative; }
  @media (min-width: 1130px) {
    .header {
      z-index: 10; } }
  @media (max-width: 1130px) {
    .header {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
              flex-direction: column;
      -webkit-box-align: center;
      -webkit-align-items: center;
              align-items: center;
      margin-bottom: 0;
      width: 100%; } }
  @media (max-width: 720px) {
    .header {
      position: absolute;
      top: 0; } }

.header__top {
  background-color: #553f8b;
  color: #fff;
  padding: .7rem 0; }
  .header__top #close-menu {
    display: none; }
  @media (max-width: 1130px) {
    .header__top {
      opacity: 0;
      position: absolute;
      left: -10000px;
      padding-bottom: 2rem;
      max-height: 0;
      -webkit-transition: max-height .5s;
      transition: max-height .5s; }
      .header__top #close-menu {
        display: block;
        position: absolute;
        top: 2rem;
        right: 2rem; } }

.header__top-container {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
          align-items: center;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
          justify-content: flex-end; }
  @media (max-width: 1130px) {
    .header__top-container {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
              flex-direction: column; } }

.header__top-separator {
  display: inline-block;
  width: 0.2rem;
  height: 3rem;
  background: #fff;
  border-radius: .1rem;
  margin: 0 4.5rem; }
  @media (max-width: 1130px) {
    .header__top-separator {
      display: none; } }

.header__bottom-wrapper {
  position: relative;
  min-height: 12rem; }
  @media (max-width: 1130px) {
    .header__bottom-wrapper {
      min-height: inherit;
      border-top-left-radius: 2rem;
      border-top-right-radius: 2rem;
      background: #fff;
      margin-top: -2rem;
      opacity: 0;
      left: -200vw;
      position: absolute;
      max-height: 0;
      -webkit-transition: max-height .5s;
      transition: max-height .5s; } }

.header__bottom {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  z-index: 1;
  -webkit-box-align: center;
  -webkit-align-items: center;
          align-items: center;
  position: absolute;
  top: 0;
  left: 50%;
  padding: 2rem 0;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  background: #fff; }
  .header__bottom:after {
    content: '';
    display: block;
    width: 100vw;
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    background: #fff;
    bottom: 0;
    top: 0;
    z-index: -1; }
    @media (max-width: 1130px) {
      .header__bottom:after {
        display: none; } }
  @media (max-width: 1130px) {
    .header__bottom {
      position: static;
      -webkit-transform: inherit;
              transform: inherit; } }

@media (max-width: 1130px) {
  .header__left {
    display: none; } }

.header__search {
  margin-left: 1rem;
  position: absolute;
  right: 0;
  overflow: hidden; }
  .header__search svg {
    width: 1.8rem; }
    .header__search svg path {
      fill: #553f8b; }
  .header__search button {
    cursor: pointer; }
  .header__search #close-menu {
    display: none; }
  .header__search .box-search {
    position: absolute;
    left: 100vw;
    opacity: 0;
    -webkit-transition: opacity .5s;
    transition: opacity .5s;
    margin-top: 1rem; }
  .header__search .close {
    display: none; }
  .header__search .header-search-toggle {
    border: none;
    background: none;
    padding: 0; }
  .header__search.header__search--open {
    overflow: visible;
    overflow: initial; }
    .header__search.header__search--open .box-search {
      opacity: 1;
      left: inherit;
      right: 0; }
    .header__search.header__search--open .close {
      display: block; }
    .header__search.header__search--open .open {
      display: none; }

.header__right {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
          justify-content: space-between;
  margin-left: 4.5rem;
  position: relative;
  -webkit-box-align: center;
  -webkit-align-items: center;
          align-items: center;
  padding-top: .75rem; }
  @media (max-width: 1130px) {
    .header__right {
      margin-left: 0;
      position: absolute;
      visibility: hidden;
      left: -200vw;
      margin-left: 0;
      opacity: 0;
      background-color: transparent;
      -webkit-transition: opacity 1s;
      transition: opacity 1s; } }
  @media (max-width: 720px) {
    .header__right {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
              flex-direction: column; } }

.header__right-listen {
  margin-left: 2rem; }
  @media (max-width: 720px) {
    .header__right-listen {
      margin-left: 0; } }

.header__right-menu {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
          flex: 1; }

.header__logo a {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
          align-items: center; }

.header__logo .feuille svg, .header__logo .feuille img {
  width: 8rem; }

.header__logo .texte {
  margin-left: 2rem;
  font-size: 3rem; }
  .header__logo .texte .slogan {
    font-size: 1.4rem; }

.header__logo svg, .header__logo img {
  display: inline-block;
  height: auto; }

@media (max-width: 1130px) {
  .header__sn svg {
    width: 3rem; } }

@media (max-width: 720px) {
  .header__sn {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
            order: 1;
    margin: 0rem 0 1rem; } }

.header__sn .social-networks__item svg {
  width: 2.6rem; }

.header__sn path {
  fill: #fff;
  -webkit-transition: fill 1s;
  transition: fill 1s; }

.header__sn li + li {
  margin-left: 4rem; }

@media (max-width: 720px) {
  .header__sn {
    min-width: 10rem; }
    .header__sn .block--menu {
      display: block !important;
      margin-bottom: 1rem !important; } }

.header.header--landing {
  -webkit-box-align: center;
  -webkit-align-items: center;
          align-items: center; }
  .header.header--landing .header__top svg path {
    fill: white; }
  .header.header--landing .header__top-container {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
            justify-content: space-between; }
    .header.header--landing .header__top-container a {
      color: #fff; }
  @media (max-width: 1130px) {
    .header.header--landing {
      margin-top: 0; } }
  .header.header--landing .header__back-to-root a {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
            align-items: center; }
  .header.header--landing .header__back-to-root svg {
    width: 2rem;
    margin-right: 1rem; }
  .header.header--landing .header__right {
    padding: 1rem 0; }
  .header.header--landing .header__right-b {
    -webkit-box-pack: end;
    -webkit-justify-content: end;
            justify-content: end; }
  @media (max-width: 720px) {
    .header.header--landing .header__left {
      -webkit-box-pack: center;
      -webkit-justify-content: center;
              justify-content: center;
      min-height: 11.5rem;
      -webkit-box-flex: inherit;
      -webkit-flex: inherit;
              flex: inherit; } }
  .header.header--landing .header__logo {
    margin-bottom: 0; }
    .header.header--landing .header__logo img {
      max-width: 25rem; }

.header__landing-top-right {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
          align-items: center; }
  @media (max-width: 1130px) {
    .header__landing-top-right {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
              flex-direction: column;
      margin-top: 2rem; } }

header.header.sticky .header__bottom {
  position: fixed;
  z-index: 100;
  background: white;
  margin: 0 auto;
  top: 0;
  bottom: inherit;
  padding: 1rem 0; }
  @media (max-width: 1130px) {
    header.header.sticky .header__bottom {
      position: static; } }

header.header.sticky .feuille {
  width: 8rem; }
  header.header.sticky .feuille svg {
    width: 6rem; }

.header__mobile {
  position: absolute;
  visibility: hidden;
  left: -200vw;
  cursor: pointer; }
  @media (max-width: 1130px) {
    .header__mobile {
      margin: 2rem 0;
      position: relative;
      visibility: visible;
      left: inherit; } }
  .header__mobile svg {
    width: 1.8rem; }
  .header__mobile #open-menu {
    position: absolute;
    top: 50%;
    left: 2rem;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%); }
  .header__mobile .header__logo-mobile {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
            justify-content: center; }
    .header__mobile .header__logo-mobile svg, .header__mobile .header__logo-mobile img {
      width: 13rem; }
      .header__mobile .header__logo-mobile svg path, .header__mobile .header__logo-mobile img path {
        fill: #553f8b; }

@media (max-width: 1130px) {
  .header__search {
    right: 2rem;
    bottom: auto;
    bottom: initial;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    visibility: visible; } }

@media (max-width: 1130px) {
  .header--menu-open.header {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
            flex-direction: column;
    z-index: 101;
    opacity: 1 !important; }
  .header--menu-open .header__right {
    visibility: inherit;
    left: inherit;
    position: static;
    opacity: 1;
    padding: .5rem 0;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
            justify-content: flex-start; }
  .header--menu-open .header__left {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
            flex: 0 0 auto; }
  .header--menu-open .header__logo svg path, .header--menu-open .sn svg path {
    fill: #fff; }
  .header--menu-open .header__bottom-wrapper, .header--menu-open .header__top {
    max-height: 40rem; } }

.header--menu-open .header__search path {
  fill: #fff; }

.header__logo-mobile {
  display: none;
  margin-bottom: 2rem; }
  @media (max-width: 1130px) {
    .header__logo-mobile {
      display: block; } }
  .header__logo-mobile svg, .header__logo-mobile img {
    width: 13rem; }
    .header__logo-mobile svg path, .header__logo-mobile img path {
      fill: white; }

.header.header--menu-open-2 {
  opacity: 0; }
  @media (max-width: 1130px) {
    .header.header--menu-open-2.header {
      position: fixed;
      left: 0;
      right: 0;
      top: inherit;
      bottom: 0;
      visibility: inherit; }
    .header.header--menu-open-2 .header__bottom-wrapper {
      left: inherit;
      position: static;
      opacity: 1; }
    .header.header--menu-open-2 .header__top {
      opacity: 1;
      position: static; } }

.header__overlay-mobile {
  display: none; }
  @media (max-width: 1130px) {
    .header__overlay-mobile {
      display: block;
      opacity: 0;
      background: black;
      position: absolute;
      left: -200vw;
      -webkit-transition: opacity .3s;
      transition: opacity .3s; }
      .header__overlay-mobile.open-2 {
        position: fixed;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0; }
      .header__overlay-mobile.open {
        opacity: .2; } }

.header .menu {
  font-family: "Bitter", serif;
  font-size: 1.55rem; }
  @media (max-width: 1130px) {
    .header .menu {
      -webkit-box-align: center;
      -webkit-align-items: center;
              align-items: center; } }

.header__top .menu a {
  color: #fff;
  text-decoration: none; }

.header__bottom .menu a {
  color: #333;
  text-decoration: none; }
  @media (max-width: 1130px) {
    .header__bottom .menu a {
      color: #553f8b; } }

.header .menu__item {
  margin-right: 2.6rem; }
  .header .menu__item:last-child {
    margin-right: 0; }
  @media (max-width: 1130px) {
    .header .menu__item {
      margin-right: 0;
      font-family: "Lato", sans-serif !important;
      margin-bottom: .2rem; } }

.header .menu__prefix {
  display: none; }

.header .block--menu {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex; }
  @media (max-width: 1130px) {
    .header .block--menu {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
              flex-direction: column;
      -webkit-box-align: center;
      -webkit-align-items: center;
              align-items: center; }
      .header .block--menu .menu__prefix {
        color: #fff;
        font-size: 1.55rem;
        font-weight: bold;
        margin-bottom: .8rem; } }

input, textarea {
  max-width: 100%; }

.js-form-item {
  margin: 1rem 0;
  position: relative; }
  .js-form-item label {
    color: #553f8b; }
  .js-form-item input, .js-form-item textarea {
    width: 100%; }

.js-form-type-textfield,
.js-form-type-tel,
.js-form-type-email,
.js-form-type-password,
.js-form-type-textarea,
.js-form-type-search {
  padding: 0; }
  .js-form-type-textfield input, .js-form-type-textfield textarea,
  .js-form-type-tel input,
  .js-form-type-tel textarea,
  .js-form-type-email input,
  .js-form-type-email textarea,
  .js-form-type-password input,
  .js-form-type-password textarea,
  .js-form-type-textarea input,
  .js-form-type-textarea textarea,
  .js-form-type-search input,
  .js-form-type-search textarea {
    padding: 1.6rem 1rem .9rem;
    outline: 0;
    border: solid 1px #553f8b;
    border-radius: 3px;
    color: #553f8b; }
  .js-form-type-textfield:not(.no-label-up) label,
  .js-form-type-tel:not(.no-label-up) label,
  .js-form-type-email:not(.no-label-up) label,
  .js-form-type-password:not(.no-label-up) label,
  .js-form-type-textarea:not(.no-label-up) label,
  .js-form-type-search:not(.no-label-up) label {
    font-size: 1.5rem;
    position: absolute;
    top: 1.5rem;
    left: 1rem;
    -webkit-transition: all .5s;
    transition: all .5s;
    pointer-events: none; }
  .js-form-type-textfield.label-up:not(.no-label-up) label,
  .js-form-type-tel.label-up:not(.no-label-up) label,
  .js-form-type-email.label-up:not(.no-label-up) label,
  .js-form-type-password.label-up:not(.no-label-up) label,
  .js-form-type-textarea.label-up:not(.no-label-up) label,
  .js-form-type-search.label-up:not(.no-label-up) label {
    top: .5rem;
    font-size: 1rem;
    -webkit-transform: inherit;
            transform: inherit; }
  .js-form-type-textfield .description,
  .js-form-type-tel .description,
  .js-form-type-email .description,
  .js-form-type-password .description,
  .js-form-type-textarea .description,
  .js-form-type-search .description {
    margin-top: .75rem; }

.js-form-type-textarea {
  position: relative;
  outline: 0; }
  .js-form-type-textarea label:not(.visually-hidden) {
    display: block; }
  .js-form-type-textarea ::-webkit-input-placeholder {
    color: #553f8b; }
  .js-form-type-textarea ::-moz-placeholder {
    color: #553f8b; }
  .js-form-type-textarea :-ms-input-placeholder {
    color: #553f8b; }
  .js-form-type-textarea ::-ms-input-placeholder {
    color: #553f8b; }
  .js-form-type-textarea ::placeholder {
    color: #553f8b; }

input[type=submit], form button {
  color: #ea5b0b;
  background: #fff; }

.form-item-captcha-response label {
  display: none !important; }

.form-item-captcha-response input {
  display: inline-block;
  width: 4rem; }

.webform-submission-footer-contact-form .webform-flexbox, .webform-submission-contact-landing-form .webform-flexbox {
  margin: 0;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
          justify-content: space-between; }

.webform-submission-footer-contact-form .webform-flex, .webform-submission-contact-landing-form .webform-flex {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 calc(50% - 0.5rem);
          flex: 0 0 calc(50% - 0.5rem); }

.webform-submission-footer-contact-form .webform-button--submit, .webform-submission-contact-landing-form .webform-button--submit {
  margin-top: inherit;
  width: 100%;
  margin-bottom: 0; }

.webform-submission-footer-contact-form .webform-flex--container, .webform-submission-contact-landing-form .webform-flex--container {
  margin: 0 0; }
  .webform-submission-footer-contact-form .webform-flex--container:first-child, .webform-submission-contact-landing-form .webform-flex--container:first-child {
    margin: 0; }

.webform-submission-footer-contact-form .footer__rgpd, .webform-submission-contact-landing-form .footer__rgpd {
  width: 100%; }

.form-header-search {
  background: #fff; }
  .form-header-search input {
    display: block;
    border: none;
    padding: .5rem 1rem; }
  .form-header-search .form-group {
    border: solid 2px #000;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
            align-items: center; }
  .form-header-search .btn-submit {
    margin: 0;
    padding: 1rem 1rem; }
  .form-header-search ::-webkit-input-placeholder {
    /* WebKit, Blink, Edge */
    font-family: "Bitter", serif;
    color: #000;
    opacity: 1; }
  .form-header-search ::-moz-placeholder {
    /* Mozilla Firefox 19+ */
    font-family: "Bitter", serif;
    color: #000;
    opacity: 1; }
  .form-header-search :-ms-input-placeholder {
    /* Internet Explorer 10-11 */
    font-family: "Bitter", serif;
    color: #000; }
  .form-header-search ::-ms-input-placeholder {
    /* Microsoft Edge */
    font-family: "Bitter", serif;
    color: #000; }
  .form-header-search ::placeholder {
    /* Most modern browsers support this now. */
    font-family: "Bitter", serif;
    color: #000; }

.search-form {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
          align-items: center; }
  .search-form .js-form-type-search {
    min-width: 30rem; }
  .search-form label {
    width: inherit;
    height: inherit;
    clip: inherit; }
  @media (max-width: 720px) {
    .search-form {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
              flex-direction: column;
      margin-bottom: 1rem; } }

.toggle__text {
  font-size: 1.8rem; }

.toggle__elements {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: baseline;
  -webkit-align-items: baseline;
          align-items: baseline;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
          flex-direction: column; }
  @media (max-width: 720px) {
    .toggle__elements {
      display: block; } }

.toggle--double .toggle__text {
  margin-right: 2rem; }

.toggle--double .toggle__elements {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
          flex-direction: row;
  -webkit-flex-wrap: wrap;
          flex-wrap: wrap; }
  .toggle--double .toggle__elements > * {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 40%;
            flex: 1 1 40%;
    max-width: 50%; }
    @media (max-width: 720px) {
      .toggle--double .toggle__elements > * {
        max-width: inherit; } }

.togglebox {
  margin-right: 5rem;
  border-bottom: solid 0.2rem #ea5b0b;
  width: 100%; }

.togglebox__title {
  font-family: "Bitter", serif;
  font-size: 2rem;
  font-weight: bold;
  cursor: pointer;
  margin: 1.75rem 0; }

.togglebox__text {
  position: relative;
  display: none;
  margin: 1.5rem 0;
  background: #ea5b0b;
  color: #fff;
  padding: 1.5rem 2rem 1rem;
  line-height: 1.75em;
  font-size: 1.8rem; }
  .togglebox__text a {
    color: #fff; }
  .togglebox__text::before {
    content: '';
    display: inline-block;
    height: 0;
    width: 0;
    border-left: 1.1rem solid transparent;
    border-right: 1.1rem solid transparent;
    border-top: 0.9rem solid #fff;
    position: absolute;
    top: 0;
    left: .7rem; }

.togglebox--open {
  border-bottom-color: transparent; }
  .togglebox--open .togglebox__text {
    display: block; }

.slice-text__text {
  line-height: 1.75em; }

.slice-text h1, .slice-text h2, .slice-text h3, .slice-text h4, .slice-text h5, .slice-text h6 {
  color: #553f8b; }

.slice-img-txt {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
          align-items: center; }
  @media (max-width: 720px) {
    .slice-img-txt {
      display: block; } }

.slice-img-txt__left {
  padding: 3rem;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
          flex: 1; }
  @media (max-width: 720px) {
    .slice-img-txt__left {
      padding: 0; } }

.slice-img-txt__right {
  max-width: 50%;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
          flex: 1; }
  @media (max-width: 720px) {
    .slice-img-txt__right {
      max-width: inherit; } }
  .slice-img-txt__right iframe {
    width: 100%; }

.slice-img-txt.slice-img-txt--left {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
          flex-direction: row-reverse; }

.slice {
  margin-top: 3rem;
  margin-bottom: 3rem; }

.slice:first-child {
  margin-top: 0; }

.slice__title-highlight {
  display: block; }

.slice__title, .slice__title h1, .slice__title h2 {
  font-family: "Bitter", serif;
  font-size: 2.75rem;
  font-weight: bold;
  line-height: 1.22;
  margin-bottom: 1rem; }
  @media (max-width: 1130px) {
    .slice__title, .slice__title h1, .slice__title h2 {
      font-size: 3rem; } }
  @media (max-width: 720px) {
    .slice__title, .slice__title h1, .slice__title h2 {
      font-size: 2.1rem; } }

.slice ul {
  padding-left: 1rem;
  margin-bottom: 1rem; }

.slice li {
  list-style-type: disc; }

.slice__text {
  line-height: 1.3; }

.slice.background {
  position: relative;
  padding: 3rem 0; }
  .slice.background::after {
    content: '';
    background-image: url("svgs/bg2.svg");
    position: absolute;
    top: 0;
    bottom: 0;
    left: 50%;
    right: 0;
    z-index: -1;
    width: 100vw;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    background-size: 100%; }
  .slice.background.background--light::after {
    background-image: url("svgs/bg1.svg"); }
  .slice.background.background--half::after {
    top: 25%;
    bottom: 25%; }

.slice.no-global-link .rel-ctnt-icons__morelink, .slice.no-global-link .slice-3-teaser-pic-desc__link {
  display: none; }

.slice-son {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
          align-items: center; }

.slice-son__legend {
  font-size: 1.3rem;
  max-width: 50rem;
  margin-top: 1rem;
  text-align: center;
  display: inline-block; }

.slice-imgs__imgs {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex; }
  .slice-imgs__imgs > *:not(:last-child) {
    margin-right: 1.5rem; }

.search-api-page-block-form-rechercher .form-item-keys {
  border: solid 2px #000;
  border-radius: 0; }
  .search-api-page-block-form-rechercher .form-item-keys input {
    border: 0;
    border-radius: 0;
    background: transparent;
    color: black; }
  .search-api-page-block-form-rechercher .form-item-keys label {
    font-family: "Bitter", serif;
    color: black; }

.search-api-page-block-form-rechercher .form-submit {
  background: #553f8b;
  color: #fff;
  margin-left: 2rem; }

#block-views-block-planning-block-1 {
  max-width: 80rem;
  margin: 0 auto;
  padding: 2rem 2rem;
  border-radius: 2rem;
  text-align: center;
  border: solid 2px #ff7f3a;
  background-color: white;
  margin-bottom: 2rem; }
  #block-views-block-planning-block-1 .view--planning {
    display: block; }
  #block-views-block-planning-block-1 thead {
    background-color: transparent;
    color: black; }
  #block-views-block-planning-block-1 a {
    color: black;
    font-weight: bold; }
  #block-views-block-planning-block-1 tr:nth-child(2n) {
    background-color: white; }

.view--planning {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
          flex-wrap: wrap; }
  @media (max-width: 720px) {
    .view--planning {
      -webkit-box-orient: vertical;
      -webkit-box-direction: reverse;
      -webkit-flex-direction: column-reverse;
              flex-direction: column-reverse; } }
  .view--planning .view__header {
    max-width: 20%; }
    @media (max-width: 720px) {
      .view--planning .view__header {
        max-width: 100%; } }
  .view--planning .view__content {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
            flex: 1; }
  .view--planning > nav {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
            flex: 0 0 100%;
    text-align: center; }
  .view--planning th:nth-child(1), .view--planning td:nth-child(1) {
    width: 20%; }
    @media (max-width: 720px) {
      .view--planning th:nth-child(1), .view--planning td:nth-child(1) {
        width: 35%; } }
  .view--planning th:nth-child(2), .view--planning th:nth-child(3), .view--planning td:nth-child(2), .view--planning td:nth-child(3) {
    width: 10%; }
    @media (max-width: 720px) {
      .view--planning th:nth-child(2), .view--planning th:nth-child(3), .view--planning td:nth-child(2), .view--planning td:nth-child(3) {
        width: 20%; } }
  .view--planning th:nth-child(4), .view--planning td:nth-child(4) {
    width: 15%; }
    @media (max-width: 720px) {
      .view--planning th:nth-child(4), .view--planning td:nth-child(4) {
        width: 25%; } }
  @media (max-width: 720px) {
    .view--planning td.views-field-field-description::before {
      content: "description:";
      font-weight: bold; } }
  @media (max-width: 720px) {
    .view--planning th.views-field-field-description {
      display: none; } }

.view--archives th:nth-child(1), .view--archives td:nth-child(1) {
  width: 25%; }

.view--archives th:nth-child(2), .view--archives td:nth-child(2) {
  width: 10%; }

.view--archives th:nth-child(3), .view--archives td:nth-child(3) {
  width: 50%; }

.view--archives th:nth-child(4), .view--archives td:nth-child(4) {
  width: 15%; }

.view--jingles {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex; }
  @media (max-width: 720px) {
    .view--jingles {
      -webkit-box-orient: vertical;
      -webkit-box-direction: reverse;
      -webkit-flex-direction: column-reverse;
              flex-direction: column-reverse; } }
  .view--jingles .view__header {
    margin-right: 3rem; }
  .view--jingles .view__content {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
            flex: 1; }
  @media (max-width: 720px) {
    .view--jingles .tr {
      display: -webkit-box;
      display: -webkit-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
              flex-wrap: wrap; } }
  .view--jingles th:nth-child(1), .view--jingles td:nth-child(1) {
    width: 18%; }
  .view--jingles th:nth-child(2), .view--jingles td:nth-child(2) {
    width: 33%; }
  .view--jingles th:nth-child(3), .view--jingles td:nth-child(3) {
    width: 34%; }
  .view--jingles th:nth-child(4), .view--jingles td:nth-child(4) {
    width: 15%; }
  @media (max-width: 720px) {
    .view--jingles th.views-field-field-media-audio-file-1, .view--jingles th.views-field-field-son-singleton {
      display: none; } }
  @media (max-width: 720px) {
    .view--jingles td.views-field-field-media-audio-file-1, .view--jingles td.views-field-field-son-singleton {
      -webkit-box-flex: 0;
      -webkit-flex: 0 0 100%;
              flex: 0 0 100%; } }

.article__header {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
          align-items: center;
  margin-bottom: 2rem; }

.article__summary {
  font-style: italic;
  max-width: 60rem;
  margin-top: 1rem; }

.article__tags {
  margin: 1rem 0; }

.view--blog .view__content {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
          flex-wrap: wrap; }
  .view--blog .view__content > * {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 calc(33.333% - 1rem);
            flex: 0 0 calc(33.333% - 1rem); }
    .view--blog .view__content > *:nth-child(3n + 1), .view--blog .view__content > *:nth-child(3n + 2) {
      margin-right: 1.5rem; }

.view--blog .views-row {
  margin-bottom: 2rem; }
  .view--blog .views-row .teaser {
    height: 100%; }

.view--visuels {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex; }
  @media (max-width: 720px) {
    .view--visuels {
      -webkit-box-orient: vertical;
      -webkit-box-direction: reverse;
      -webkit-flex-direction: column-reverse;
              flex-direction: column-reverse; } }
  .view--visuels .view__header {
    width: 20%;
    margin-right: 2rem; }
    @media (max-width: 720px) {
      .view--visuels .view__header {
        width: 100%; } }
  .view--visuels .view__content {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
            flex: 1; }
  .view--visuels .views-field-title {
    margin-top: .5rem;
    margin-bottom: .5rem;
    font-size: 1.5rem;
    font-weight: bold; }
  .view--visuels .views-field-field-who {
    font-style: italic; }
  .view--visuels .views-col {
    text-align: center;
    margin-bottom: 2rem; }
    .view--visuels .views-col:nth-child(2n + 1) {
      padding-right: 1rem; }
    .view--visuels .views-col:nth-child(2n) {
      padding-left: 1rem; }
