@charset "UTF-8";
/*
sass/
|
|– abstracts/
|   |– _variables.scss                  # Sass Variables
|   |– _mixins.scss                     # Sass Mixins
|   |– _keyframes.scss                  # Sass Keyframes animations
|
|– vendor/
|   |– _tinyMce.scss                    # Tiny MCE SDK styles
|
|– base/
|   |– _reset.scss                      # Reset/normalize
|   |– _typography.scss                 # Typography rules
|   |– _global.scss                     # Global rules
|
|– layout/
|   |– _wrapper.scss                    # Wrapper styles
|   |– _grid.scss                       # Grid styles
|   |– _row.scss                        # Row styles
|   |– _umbraco-block-grid.scss         # Umbraco Block Grid styles
|
|– components/
|   |– _menu.scss                       # Menu styles
|   |– _footer.scss                     # Footer styles
|   |– _header.scss                     # Header styles
|   |– _banner.scss                     # Banner styles
|   |- _breadcrumb.scss                 # Breadcrumb styles
|   |- _sidebar.scss                    # Sidebar styles
|
|– template/
|   |– _uikit.scss                      # Uikit specific styles
|   |– _error-404.scss                  # 404 error page styles
|   |- _page-abonnement.scss
|   |- _page-magazine.scss
|
|– page/
|   |– _accueil.scss                    # Accueil page styles
|   |– _page-texte.scss                 # Page texte styles
|   |- _nous-joindre.scss               # Nous joindre styles
|   |- _articles.scss 
|   |- _article.scss 
|   |- _blogues.scss 
|   |- _blogue.scss 
|   |- _questions-reponses.scss 
|   |- _videos.scss 
|   |- _auteurs.scss 
|   |- _auteur.scss 
|
|– themes/
|   |– _theme.scss                      # Default theme
    |- buttons/
        |- _buttons.scss                # Buttons styles
    |- fields/
        |- _forms.scss                  # Form styles
    |- links/
        |- _icons.scss                  # Icons styles
        |- _links.scss                  # Links styles
|
| – site.scss                           # Main Sass input file
*/
/* 02- IMPORTATION DES MIXINS */
/*********************
BREAKPOINTS
*********************/
/*
* HoverMobile
* Hover option with media query for mobile device
* Prevent hover from showing on no pointer devide
*/
/*
* Only browser css
*
*/
/*
Usage:
@include target-metro {
  color: cyan;
}
*/
@-webkit-keyframes loading-orbit1 {
  0% {
    -webkit-transform: rotate(225deg);
    transform: rotate(225deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
    opacity: 1;
  }
  6% {
    -webkit-transform: rotate(350deg);
    transform: rotate(350deg);
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
  }
  29% {
    -webkit-transform: rotate(495deg);
    transform: rotate(495deg);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
  39% {
    -webkit-transform: rotate(710deg);
    transform: rotate(710deg);
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
  }
  62% {
    -webkit-transform: rotate(855deg);
    transform: rotate(855deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  66% {
    -webkit-transform: rotate(945deg);
    transform: rotate(945deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 1;
  }
  67% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@keyframes loading-orbit1 {
  0% {
    -webkit-transform: rotate(225deg);
    transform: rotate(225deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
    opacity: 1;
  }
  6% {
    -webkit-transform: rotate(350deg);
    transform: rotate(350deg);
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
  }
  29% {
    -webkit-transform: rotate(495deg);
    transform: rotate(495deg);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
  39% {
    -webkit-transform: rotate(710deg);
    transform: rotate(710deg);
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
  }
  62% {
    -webkit-transform: rotate(855deg);
    transform: rotate(855deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  66% {
    -webkit-transform: rotate(945deg);
    transform: rotate(945deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 1;
  }
  67% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@-webkit-keyframes loading-orbit2 {
  0% {
    -webkit-transform: rotate(215deg);
    transform: rotate(215deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
    opacity: 1;
  }
  6% {
    -webkit-transform: rotate(340deg);
    transform: rotate(340deg);
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
  }
  29% {
    -webkit-transform: rotate(485deg);
    transform: rotate(485deg);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
  39% {
    -webkit-transform: rotate(700deg);
    transform: rotate(700deg);
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
  }
  62% {
    -webkit-transform: rotate(845deg);
    transform: rotate(845deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  66% {
    -webkit-transform: rotate(935deg);
    transform: rotate(935deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 1;
  }
  67% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@keyframes loading-orbit2 {
  0% {
    -webkit-transform: rotate(215deg);
    transform: rotate(215deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
    opacity: 1;
  }
  6% {
    -webkit-transform: rotate(340deg);
    transform: rotate(340deg);
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
  }
  29% {
    -webkit-transform: rotate(485deg);
    transform: rotate(485deg);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
  39% {
    -webkit-transform: rotate(700deg);
    transform: rotate(700deg);
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
  }
  62% {
    -webkit-transform: rotate(845deg);
    transform: rotate(845deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  66% {
    -webkit-transform: rotate(935deg);
    transform: rotate(935deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 1;
  }
  67% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@-webkit-keyframes loading-orbit3 {
  0% {
    -webkit-transform: rotate(205deg);
    transform: rotate(205deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
    opacity: 1;
  }
  6% {
    -webkit-transform: rotate(330deg);
    transform: rotate(330deg);
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
  }
  29% {
    -webkit-transform: rotate(475deg);
    transform: rotate(475deg);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
  39% {
    -webkit-transform: rotate(690deg);
    transform: rotate(690deg);
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
  }
  62% {
    -webkit-transform: rotate(835deg);
    transform: rotate(835deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  66% {
    -webkit-transform: rotate(925deg);
    transform: rotate(925deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 1;
  }
  67% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@keyframes loading-orbit3 {
  0% {
    -webkit-transform: rotate(205deg);
    transform: rotate(205deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
    opacity: 1;
  }
  6% {
    -webkit-transform: rotate(330deg);
    transform: rotate(330deg);
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
  }
  29% {
    -webkit-transform: rotate(475deg);
    transform: rotate(475deg);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
  39% {
    -webkit-transform: rotate(690deg);
    transform: rotate(690deg);
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
  }
  62% {
    -webkit-transform: rotate(835deg);
    transform: rotate(835deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  66% {
    -webkit-transform: rotate(925deg);
    transform: rotate(925deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 1;
  }
  67% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@-webkit-keyframes loading-orbit4 {
  0% {
    -webkit-transform: rotate(195deg);
    transform: rotate(195deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
    opacity: 1;
  }
  6% {
    -webkit-transform: rotate(320deg);
    transform: rotate(320deg);
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
  }
  29% {
    -webkit-transform: rotate(465deg);
    transform: rotate(465deg);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
  39% {
    -webkit-transform: rotate(680deg);
    transform: rotate(680deg);
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
  }
  62% {
    -webkit-transform: rotate(825deg);
    transform: rotate(825deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  66% {
    -webkit-transform: rotate(915deg);
    transform: rotate(915deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 1;
  }
  67% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@keyframes loading-orbit4 {
  0% {
    -webkit-transform: rotate(195deg);
    transform: rotate(195deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
    opacity: 1;
  }
  6% {
    -webkit-transform: rotate(320deg);
    transform: rotate(320deg);
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
  }
  29% {
    -webkit-transform: rotate(465deg);
    transform: rotate(465deg);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
  39% {
    -webkit-transform: rotate(680deg);
    transform: rotate(680deg);
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
  }
  62% {
    -webkit-transform: rotate(825deg);
    transform: rotate(825deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  66% {
    -webkit-transform: rotate(915deg);
    transform: rotate(915deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 1;
  }
  67% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@-webkit-keyframes loading-orbit5 {
  0% {
    -webkit-transform: rotate(185deg);
    transform: rotate(185deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
    opacity: 1;
  }
  6% {
    -webkit-transform: rotate(310deg);
    transform: rotate(310deg);
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
  }
  29% {
    -webkit-transform: rotate(455deg);
    transform: rotate(455deg);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
  39% {
    -webkit-transform: rotate(670deg);
    transform: rotate(670deg);
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
  }
  62% {
    -webkit-transform: rotate(815deg);
    transform: rotate(815deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  66% {
    -webkit-transform: rotate(905deg);
    transform: rotate(905deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 1;
  }
  67% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@keyframes loading-orbit5 {
  0% {
    -webkit-transform: rotate(185deg);
    transform: rotate(185deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
    opacity: 1;
  }
  6% {
    -webkit-transform: rotate(310deg);
    transform: rotate(310deg);
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
  }
  29% {
    -webkit-transform: rotate(455deg);
    transform: rotate(455deg);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
  39% {
    -webkit-transform: rotate(670deg);
    transform: rotate(670deg);
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
  }
  62% {
    -webkit-transform: rotate(815deg);
    transform: rotate(815deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  66% {
    -webkit-transform: rotate(905deg);
    transform: rotate(905deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 1;
  }
  67% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
/* TinyMC Plugin override styles */
body .tox-tinymce {
  border-radius: 0;
  border-color: #b2b2b2;
  border-width: 1px;
}
body .tox:not(.tox-tinymce-inline) .tox-editor-header {
  border-bottom: 1px solid #b2b2b2;
}
body .tox .tox-statusbar {
  border-color: #b2b2b2;
}

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  -webkit-box-sizing: content-box;
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/**
 * 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;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted; /* 2 */
}

/**
 * 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%;
}

/**
 * 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;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 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;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

/**
 * 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 ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 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 {
  -webkit-box-sizing: border-box;
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type=checkbox],
[type=radio] {
  -webkit-box-sizing: border-box;
  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 in Chrome and Safari on macOS.
 */
[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 */
}

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

/*
* Typography file
* 01. Import all necessary font
* 02. All text styles
*/
h1, h2, h3, h4, h5, p, ol, ul, li, a, button,
* {
  font-weight: inherit;
  margin: 0;
  color: inherit;
  font-family: var(--text), BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;
}

.bold, strong {
  font-weight: 700 !important;
}

.semibold {
  font-weight: 500 !important;
}

.light {
  font-weight: 100 !important;
}

.underline {
  text-decoration: underline;
}

h1, .h1 {
  font-family: var(--title), sans-serif;
  font-weight: 700;
  font-size: 34px;
  font-size: 2.125rem;
}
@media (min-width: 600px) {
  h1, .h1 {
    font-size: 50px;
    font-size: 3.125rem;
  }
}
@media (min-width: 768px) {
  h1, .h1 {
    font-size: 80px;
    font-size: 5rem;
  }
}

h2, .h2 {
  font-family: var(--title), sans-serif;
  font-weight: 700;
  font-size: 26px;
  font-size: 1.625rem;
}
@media (min-width: 768px) {
  h2, .h2 {
    font-size: 30px;
    font-size: 1.875rem;
  }
}

h3, .h3 {
  font-family: var(--title), sans-serif;
  font-weight: 700;
  font-size: 23px;
  font-size: 1.4375rem;
}
@media (min-width: 768px) {
  h3, .h3 {
    font-size: 26px;
    font-size: 1.625rem;
  }
}

h4, .h4 {
  font-family: var(--title), sans-serif;
  font-weight: 700;
  font-size: 20px;
  font-size: 1.25rem;
}
@media (min-width: 768px) {
  h4, .h4 {
    font-size: 22px;
    font-size: 1.375rem;
  }
}

h5, .h5 {
  font-family: var(--title), sans-serif;
  font-weight: 700;
  font-size: 18px;
  font-size: 1.125rem;
}
@media (min-width: 768px) {
  h5, .h5 {
    font-size: 20px;
    font-size: 1.25rem;
  }
}

.subtitle {
  font-family: var(--title), sans-serif;
  font-weight: 400;
  font-size: 40px;
  font-size: 2.5rem;
}
@media (min-width: 768px) {
  .subtitle {
    font-size: 60px;
    font-size: 3.75rem;
  }
}

.btn, button {
  font-family: var(--text), sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 18px;
  font-size: 1.125rem;
}
.btn *, button * {
  font-family: var(--title), sans-serif;
  font-size: 18px;
  font-size: 1.125rem;
}

p, .p, li {
  font-family: var(--text), sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.5;
}
p *, .p *, li * {
  font-family: var(--text), sans-serif;
}
@media (min-width: 768px) {
  p, .p, li {
    font-size: 18px;
    font-size: 1.125rem;
  }
}

.p1 {
  font-family: var(--text), sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 18px;
  font-size: 1.125rem;
  line-height: 1.5;
}
@media (min-width: 768px) {
  .p1 {
    font-size: 20px;
    font-size: 1.25rem;
  }
}

.exergue {
  font-family: var(--text), sans-serif;
  font-weight: 700;
  font-size: 24px;
  font-size: 1.5rem;
  line-height: 1.5;
}
@media (min-width: 768px) {
  .exergue {
    font-size: 30px;
    font-size: 1.875rem;
  }
}

small, .small {
  font-family: var(--text), sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 12px;
  font-size: 0.75rem;
}
@media (min-width: 768px) {
  small, .small {
    font-size: 14px;
    font-size: 0.875rem;
  }
}

a, .link {
  font-family: var(--text), sans-serif;
  text-decoration: underline;
  font-size: 16px;
  font-size: 1rem;
}
@media (min-width: 768px) {
  a, .link {
    font-size: 18px;
    font-size: 1.125rem;
  }
}

.lm {
  font-family: var(--text), sans-serif;
  font-weight: 400;
  text-decoration: none;
  font-style: normal;
  font-size: 16px;
  font-size: 1rem;
}
@media (min-width: 768px) {
  .lm {
    font-size: 18px;
    font-size: 1.125rem;
  }
}

.lu {
  font-family: var(--text), sans-serif;
  font-weight: 400;
  text-decoration: none;
  font-style: normal;
  font-size: 14px;
  font-size: 0.875rem;
}
@media (min-width: 768px) {
  .lu {
    font-size: 16px;
    font-size: 1rem;
  }
}

.ls {
  text-decoration: underline;
}
@-moz-document url-prefix() {
  .ls {
    text-decoration-thickness: 1.5px;
  }
}
@media (min-width: 768px) {
  @-moz-document url-prefix() {
    .ls {
      text-decoration-thickness: 2px;
    }
  }
}

.lf {
  font-family: var(--text), sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  font-size: 1rem;
  text-decoration: none;
}
@media (min-width: 768px) {
  .lf {
    font-size: 18px;
    font-size: 1.125rem;
  }
}

.l-spec {
  font-family: var(--text), sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 20px;
  font-size: 1.25rem;
}
@media (min-width: 768px) {
  .l-spec {
    font-size: 24px;
    font-size: 1.5rem;
  }
}

.field label, .field .label {
  font-family: var(--text), sans-serif;
  font-weight: 400;
  font-size: 16px;
  font-size: 1rem;
}
@media (min-width: 768px) {
  .field label, .field .label {
    font-size: 18px;
    font-size: 1.125rem;
  }
}
.field input, .field textarea, .field select {
  font-family: var(--text), sans-serif;
  font-size: 18px;
  font-size: 1.125rem;
}
.field select option {
  -webkit-text-size-adjust: none;
  -moz-text-size-adjust: none;
  -ms-text-size-adjust: none;
  text-size-adjust: none;
  font-family: var(--text), sans-serif;
  font-size: 18px;
  font-size: 1.125rem;
}
.field.radio label, .field.checkbox label {
  font-family: var(--text), sans-serif;
  font-weight: 400;
  font-size: 16px;
  font-size: 1rem;
}
@media (min-width: 768px) {
  .field.radio label, .field.checkbox label {
    font-size: 18px;
    font-size: 1.125rem;
  }
}

::-webkit-input-placeholder {
  /* Most modern browsers support this now. */
  font-family: var(--text), sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  font-size: 1rem;
}

::-moz-placeholder {
  /* Most modern browsers support this now. */
  font-family: var(--text), sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  font-size: 1rem;
}

:-ms-input-placeholder {
  /* Most modern browsers support this now. */
  font-family: var(--text), sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  font-size: 1rem;
}

::-ms-input-placeholder {
  /* Most modern browsers support this now. */
  font-family: var(--text), sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  font-size: 1rem;
}

::placeholder {
  /* Most modern browsers support this now. */
  font-family: var(--text), sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  font-size: 1rem;
}
@media (min-width: 768px) {
  ::-webkit-input-placeholder {
    font-size: 18px;
    font-size: 1.125rem;
  }
  ::-moz-placeholder {
    font-size: 18px;
    font-size: 1.125rem;
  }
  :-ms-input-placeholder {
    font-size: 18px;
    font-size: 1.125rem;
  }
  ::-ms-input-placeholder {
    font-size: 18px;
    font-size: 1.125rem;
  }
  ::placeholder {
    font-size: 18px;
    font-size: 1.125rem;
  }
}

::-webkit-input-placeholder {
  /* WebKit, Blink, Edge */
  font-family: var(--text), sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  font-size: 1rem;
}
@media (min-width: 768px) {
  ::-webkit-input-placeholder {
    font-size: 18px;
    font-size: 1.125rem;
  }
}

:-moz-placeholder {
  /* Mozilla Firefox 4 to 18 */
  font-family: var(--text), sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  font-size: 1rem;
}
@media (min-width: 768px) {
  :-moz-placeholder {
    font-size: 18px;
    font-size: 1.125rem;
  }
}

::-moz-placeholder {
  /* Mozilla Firefox 19+ */
  font-family: var(--text), sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  font-size: 1rem;
}
@media (min-width: 768px) {
  ::-moz-placeholder {
    font-size: 18px;
    font-size: 1.125rem;
  }
}

:-ms-input-placeholder {
  /* Internet Explorer 10-11 */
  font-family: var(--text), sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  font-size: 1rem;
}
@media (min-width: 768px) {
  :-ms-input-placeholder {
    font-size: 18px;
    font-size: 1.125rem;
  }
}

::-ms-input-placeholder {
  /* Microsoft Edge */
  font-family: var(--text), sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  font-size: 1rem;
}
@media (min-width: 768px) {
  ::-ms-input-placeholder {
    font-size: 18px;
    font-size: 1.125rem;
  }
}

/*
* Prevent site from scrolling left and right if there is some overflow items
*/
html {
  overflow-x: hidden;
  -ms-scroll-chaining: none;
  overscroll-behavior: none;
  background-color: #ffffff;
  color: #000000;
}
html::first-letter {
  text-transform: capitalize;
}
html.hidden {
  overflow: hidden;
}

body {
  overflow-x: hidden;
}

main {
  background-color: #ffffff;
}

header.fixed {
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 50;
}

/*
* By default align all image ay bottom. Prevent some weird bottom line in some browser.
*/
img {
  vertical-align: bottom;
  max-width: 100%;
  height: auto;
}

/*
* Most component and dom elment will include padding
*/
* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

/*
* Sync with a js fonction, this will prevent animation when page resizing. Better user expert less laggy
*/
.resize-animation-stopper * {
  -webkit-animation: none !important;
  animation: none !important;
  -webkit-transition: none !important;
  transition: none !important;
}

/*
* Removing default padding indentation to list.
*/
ul, ol, li {
  padding: 0;
  list-style: none;
}

/*
* Changing color of selected element
*/
::-moz-selection {
  background: #008be0;
}

::selection {
  background: #008be0;
}

/*
* Changing color of focus element
*/
/* Remove outline for non-keyboard :focus */
*:focus:not(:focus-visible) {
  outline: none;
}

/* Optional: Customize .focus-visible */
:focus-visible {
  outline: 3px solid #008be0;
  outline-offset: 3px;
}

/*
* Changing color of scrollbar
*/
/* For MacOS default scrollbar style */
/*body {
    scrollbar-width: thin;
    scrollbar-color: $black $white;
}
// Width
body::-webkit-scrollbar {
    width: 10px;
}

// Track
body::-webkit-scrollbar {
    background-color: $white;
}

// Handle
body::-webkit-scrollbar-thumb {
    background: $black; 
    border-radius: 0;
}

// Handle on hover
body::-webkit-scrollbar-thumb:hover {
    background: $secondary;
}

// Set button(top and bottom of the scrollbar)
body::-webkit-scrollbar-button {
    display:none;
}*/
.form {
  padding: 40px 100px;
  background-color: #f4f4f4;
}
.form--callToAction {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.form .section {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.form .section--center {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.form .field {
  margin: 0 0 20px 0;
}
.form .field--full {
  -ms-flex-preferred-size: 100%;
  flex-basis: 100%;
}
.form .field--half {
  -ms-flex-preferred-size: 50%;
  flex-basis: 50%;
}
.form .field--half:first-child {
  margin-right: 20px;
}
.form .field.radio > div:not(:last-child), .form .field.checkbox > div:not(:last-child) {
  margin-bottom: 20px;
}
.form .field.radio label, .form .field.checkbox label {
  cursor: pointer;
}
.form .field input.input-validation-error, .form .field select.input-validation-error, .form .field textarea.input-validation-error, .form .field.error input, .form .field.error select, .form .field.error textarea {
  border-color: #ff0505;
}
.form .field span.error, .form .field span.field-validation-error {
  color: #ff0505;
  display: block;
  margin-top: 5px;
}
.form .validation-summary-errors {
  background-color: #ffcccc;
  color: #ff0505;
  padding: 20px;
  margin-bottom: 20px;
}
@media (max-width: 768px) {
  .form {
    padding: 40px 60px;
  }
  .form .section {
    display: block;
  }
  .form .field--half {
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
  }
  .form .field--half:first-child {
    margin-right: 0;
  }
}
@media (max-width: 600px) {
  .form {
    padding: 40px 20px;
  }
}

label {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  display: inline;
  position: relative;
  color: #363636;
  z-index: 1;
}
label.checkbox, label.radio {
  display: inline;
  -webkit-transform: translateY(0);
  transform: translateY(0);
  margin: 5px 0;
  cursor: pointer;
}
@media (max-width: 600px) {
  label.checkbox, label.radio {
    width: auto;
  }
  label.checkbox input, label.radio input {
    width: auto;
  }
}

input, select, textarea {
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  outline: none;
  -webkit-transition: all 300ms cubic-bezier(0.58, 0, 0.32, 1);
  transition: all 300ms cubic-bezier(0.58, 0, 0.32, 1);
  border: solid 1px #0179c2;
  border-radius: 4px;
  padding: 10px 20px 10px 20px;
  background-color: #ffffff;
  position: relative;
  z-index: 1;
  color: #000000;
  width: 100%;
  margin-top: 5px;
}
input[type=text].search, select[type=text].search, textarea[type=text].search {
  border: none;
  border-bottom: 1px solid #000000;
  border-radius: 0;
  padding: 10px 20px 10px 0;
  background-image: url(/media/icones/recherche.svg);
  background-position: center right;
  background-repeat: no-repeat;
  background-size: 22px;
}
input[type=checkbox], select[type=checkbox], textarea[type=checkbox] {
  position: relative;
  min-width: auto;
  display: inline-block;
  border-radius: 0;
  width: 18px;
  height: 18px;
  border-color: #0179c2;
  margin-right: 10px;
  vertical-align: text-bottom;
  cursor: pointer;
}
input[type=checkbox]::after, select[type=checkbox]::after, textarea[type=checkbox]::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
  background-color: #0179c2;
  width: 12px;
  height: 12px;
  opacity: 0;
  -webkit-transition: 0.1s cubic-bezier(0.35, 0, 0, 1);
  transition: 0.1s cubic-bezier(0.35, 0, 0, 1);
}
input[type=checkbox]:checked::after, select[type=checkbox]:checked::after, textarea[type=checkbox]:checked::after {
  opacity: 100%;
}
input[type=radio], select[type=radio], textarea[type=radio] {
  position: relative;
  border-radius: 50%;
  width: 20px;
  height: 20px;
  cursor: pointer;
  vertical-align: text-bottom;
  margin-right: 10px;
  /* smartphones, touchscreens */
}
input[type=radio]::after, select[type=radio]::after, textarea[type=radio]::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
  background-color: #62b044;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  opacity: 0;
  -webkit-transition: 0.1s cubic-bezier(0.35, 0, 0, 1);
  transition: 0.1s cubic-bezier(0.35, 0, 0, 1);
}
@media (pointer: fine) {
  input[type=radio]:hover::after, select[type=radio]:hover::after, textarea[type=radio]:hover::after {
    opacity: 100%;
  }
}
input[type=radio]:checked::after, select[type=radio]:checked::after, textarea[type=radio]:checked::after {
  opacity: 100%;
}
@media (max-width: 768px) {
  input, select, textarea {
    padding: 10px;
  }
}

select {
  padding-right: 45px;
  background-image: url(/media/icones/expand-more.svg);
  background-repeat: no-repeat;
  background-position: center right 12px;
  background-size: 18px;
}

textarea {
  z-index: 0;
  min-height: 200px;
  max-width: 100%;
  padding: 20px;
  resize: vertical;
}
@media (max-width: 768px) {
  textarea {
    padding: 10px;
  }
}

::-webkit-input-placeholder { /* Most modern browsers support this now. */
  color: #363636;
}

::-moz-placeholder { /* Most modern browsers support this now. */
  color: #363636;
}

:-ms-input-placeholder { /* Most modern browsers support this now. */
  color: #363636;
}

::-ms-input-placeholder { /* Most modern browsers support this now. */
  color: #363636;
}

::placeholder { /* Most modern browsers support this now. */
  color: #363636;
}

:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
  color: #363636;
  opacity: 1;
}

::-moz-placeholder { /* Mozilla Firefox 19+ */
  color: #363636;
  opacity: 1;
}

.btn, button {
  padding: 15px 60px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  border: none;
  border-radius: 50px;
  text-decoration: none;
  background-color: #62b044;
  color: #ffffff;
  cursor: pointer;
  display: block;
  text-align: center;
  -webkit-transition: 0.3s cubic-bezier(0.58, 0, 0.32, 1);
  transition: 0.3s cubic-bezier(0.58, 0, 0.32, 1);
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-user-select: none;
  -webkit-touch-callout: none;
  /* smartphones, touchscreens */
}
@media (pointer: fine) {
  .btn:hover, button:hover {
    background-color: #41762f;
  }
}
.btn:active, button:active {
  background-color: #41762f;
}
.btn--secondary, button--secondary {
  background-color: #ffffff;
  color: #000000;
  /* smartphones, touchscreens */
}
@media (pointer: fine) {
  .btn--secondary:hover, button--secondary:hover {
    background-color: #62b044;
    color: #ffffff;
  }
}
.btn--secondary:active, button--secondary:active {
  background-color: #62b044;
  color: #ffffff;
}
.btn--tag, button--tag {
  display: inline-block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  background-color: #ffffff;
  color: #000000;
  border: 1px solid #62b044;
  padding: 10px 30px;
  border-radius: 50px;
  text-decoration: none;
  text-align: center;
  -webkit-transition: 0.2s cubic-bezier(0.35, 0, 0, 1);
  transition: 0.2s cubic-bezier(0.35, 0, 0, 1);
  pointer-events: none;
  /* smartphones, touchscreens */
}
@media (pointer: fine) {
  .btn--tag:hover, button--tag:hover {
    background-color: #62b044;
    color: #ffffff;
  }
}
.btn--tag:active, button--tag:active {
  background-color: #62b044;
  color: #ffffff;
}

.text-block a:not(.btn), .link {
  color: #0179c2;
  -webkit-transition: all 0.3s cubic-bezier(0.35, 0, 0, 1);
  transition: all 0.3s cubic-bezier(0.35, 0, 0, 1);
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  /* smartphones, touchscreens */
}
@media (pointer: fine) {
  .text-block a:not(.btn):hover, .link:hover {
    color: #008be0;
  }
}

.lm {
  color: #000000;
  -webkit-transition: 0.3s cubic-bezier(0.58, 0, 0.32, 1);
  transition: 0.3s cubic-bezier(0.58, 0, 0.32, 1);
  display: block;
  /* smartphones, touchscreens */
}
@media (pointer: fine) {
  .lm:hover {
    color: #0179c2;
  }
}
.lm:active, .lm.active {
  font-weight: 700;
  color: #0179c2;
}

.lu {
  -webkit-transition: 0.3s cubic-bezier(0.58, 0, 0.32, 1);
  transition: 0.3s cubic-bezier(0.58, 0, 0.32, 1);
  /* smartphones, touchscreens */
}
@media (pointer: fine) {
  .lu:hover {
    color: #0179c2;
  }
}
.lu:active, .lu.active {
  font-weight: 700;
  color: #0179c2;
}

.lf {
  color: #ffffff;
  -webkit-transition: 0.3s cubic-bezier(0.35, 0, 0, 1);
  transition: 0.3s cubic-bezier(0.35, 0, 0, 1);
  /* smartphones, touchscreens */
}
@media (pointer: fine) {
  .lf:hover {
    color: #62b044;
  }
}
.lf:active, .lf.active {
  color: #62b044;
  font-weight: 700;
}

html {
  color: #000000;
  background-color: #ffffff;
}
html.is-animating {
  cursor: progress;
}

.publiciteLarge .slick-dots .slick-active {
  opacity: 100%;
}
.publiciteLarge .slick-dots li {
  width: 80px;
  height: 5px;
  opacity: 50%;
  border-radius: 10px;
  background-color: #363636;
}
.publiciteLarge .slick-dots li button::before {
  content: "";
}

.publicitePetite {
  max-width: 360px;
  width: 100%;
}

/*
* Text block format
*/
.text-block > * {
  margin: 20px 0;
}
@media (max-width: 768px) {
  .text-block > * {
    margin: 15px 0;
  }
}
.text-block--left {
  text-align: left;
}
.text-block--left button, .text-block--left .btn {
  margin-right: auto;
}
.text-block--right {
  text-align: right;
}
.text-block--right button, .text-block--right .btn {
  margin-left: auto;
}
.text-block--center {
  text-align: center;
}
.text-block--center button, .text-block--center .btn {
  margin-left: auto;
  margin-right: auto;
}
.text-block > :first-child {
  margin-top: 0;
}
.text-block > :last-child {
  margin-bottom: 0;
}
.text-block h2, .text-block h3 {
  margin: 40px 0 20px;
}
.text-block h4, .text-block h5 {
  margin: 30px 0 20px;
}
.text-block p {
  margin: 20px 0;
}
.text-block ol {
  list-style: decimal;
  margin-left: 20px;
  padding-left: 20px;
}
.text-block ol li {
  list-style: decimal;
  padding-left: 10px;
  margin: 10px 0;
  line-height: 1.5;
}
.text-block ol li::marker {
  font-weight: 700;
}
.text-block ul {
  margin-left: 20px;
}
.text-block ul li {
  padding-left: 20px;
  margin: 10px 0;
  position: relative;
  line-height: 1.5;
}
.text-block ul li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 9px;
  width: 7px;
  height: 7px;
  background-color: #62b044;
  border-radius: 50%;
}
.text-block ul li ul {
  margin-left: 10px;
}
.text-block ul li ul li {
  padding-left: 20px;
  margin: 10px 0;
  position: relative;
}
.text-block ul li ul li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 8px;
  width: 5px;
  height: 5px;
  background-color: #ffffff;
  border: 1px solid #41762f;
  border-radius: 50%;
}
@media (max-width: 768px) {
  .text-block ul {
    margin-left: 10px;
  }
  .text-block ul li {
    padding-left: 20px;
  }
}
.text-block img {
  vertical-align: inherit;
}
.text-block span.btn a {
  color: #ffffff;
  text-decoration: none;
  font-style: normal;
  font-weight: 700;
}
.text-block span.image-full img {
  width: 100%;
}
.text-block span.image-center {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.text-block span.image-droite {
  float: right;
  padding-left: 40px;
}
@media (max-width: 768px) {
  .text-block span.image-droite {
    float: inherit;
    display: block;
    padding-left: 0;
    margin: 20px 0;
  }
  .text-block span.image-droite img {
    width: 100%;
  }
}
.text-block span.image-gauche {
  float: left;
  padding-right: 40px;
}
@media (max-width: 768px) {
  .text-block span.image-gauche {
    float: inherit;
    display: block;
    padding-right: 0;
    margin: 20px 0;
  }
  .text-block span.image-gauche img {
    width: 100%;
  }
}
.text-block table {
  width: 100%;
  height: 100%;
  border: none;
}
.text-block table tbody {
  border: 1px solid #41762f;
}
.text-block table tbody tr:nth-child(odd) {
  background-color: #008be0;
}
.text-block table tbody tr:first-child {
  background-color: #0179c2;
  border-bottom: 1px solid #27475c;
}
.text-block table tbody tr td {
  border: none;
  padding: 15px;
}
.text-block table tbody tr td > * {
  margin: 0;
}
.text-block blockquote {
  background-color: #f8f8f8;
  padding: 40px 20px;
  border-left: solid 3px #62b044;
}
.text-block hr {
  border-top: 1px solid #41762f;
  max-width: 200px;
}
@media (max-width: 768px) {
  .text-block iframe {
    width: 100%;
  }
}
.text-block .collapse--head > * {
  margin: 0;
}

.exergue {
  color: #62b044;
}

.blue {
  color: #0179c2;
}

.bloc-couleur {
  background-repeat: no-repeat;
  background-size: cover;
  padding: 60px 80px 40px 0;
  position: relative;
  margin-bottom: 20px;
}
.bloc-couleur--texte {
  padding: 40px;
  color: #ffffff;
  z-index: 2;
}
@media (max-width: 768px) {
  .bloc-couleur {
    padding: 40px 40px 40px 0;
  }
  .bloc-couleur--texte {
    width: 100%;
  }
}
@media (max-width: 600px) {
  .bloc-couleur {
    padding: 40px 20px 20px 0;
  }
  .bloc-couleur--texte {
    padding: 20px;
  }
}

.bloc-image small {
  display: block;
  margin-top: 10px;
}

.btn-block {
  display: block;
}
.btn-block.gauche a.btn {
  margin-right: auto;
}
.btn-block.centre a.btn {
  margin: 0 auto;
}
.btn-block.droite a.btn {
  margin-left: auto;
}

/*
* Collapse
*/
.collapse--head {
  padding: 30px 20px;
  background-color: #f4f4f4;
  position: relative;
  cursor: pointer;
  -webkit-transition: 0.3s cubic-bezier(0.58, 0, 0.32, 1);
  transition: 0.3s cubic-bezier(0.58, 0, 0.32, 1);
  /* smartphones, touchscreens */
}
.collapse--head .row {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.collapse--head .row .p1 {
  margin: 0 60px 0 0;
}
.collapse--head .row .btn-plus {
  position: relative;
  margin-left: auto;
}
.collapse--head .row .btn-plus span {
  border-radius: 2px;
  width: 25px;
  height: 2px;
  display: block;
  background-color: #62b044;
  position: absolute;
  opacity: 100%;
  -webkit-transition: 0.3s cubic-bezier(0.58, 0, 0.32, 1);
  transition: 0.3s cubic-bezier(0.58, 0, 0.32, 1);
}
.collapse--head .row .btn-plus span:first-child {
  top: 50%;
  right: 0;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
.collapse--head .row .btn-plus span:last-child {
  -webkit-transform: translateY(-50%) rotate(90deg);
  transform: translateY(-50%) rotate(90deg);
  right: 50%;
  top: 47%;
}
@media (pointer: fine) {
  .collapse--head:hover {
    background-color: #dddddd;
  }
}
.collapse--body {
  background-color: #f4f4f4;
  max-height: 0;
  overflow: hidden;
  -webkit-transition: max-height 0.3s cubic-bezier(0.58, 0, 0.32, 1);
  transition: max-height 0.3s cubic-bezier(0.58, 0, 0.32, 1);
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}
.collapse--body .texte {
  margin: 20px;
}
.collapse--body.text-block > * {
  margin: 20px;
}
@media (max-width: 768px) {
  .collapse--body.text-block > * {
    margin: 15px;
  }
}
.collapse--body.text-block ul {
  margin-left: 30px;
}
.collapse.ouvert > .collapse--head .btn-plus span {
  -webkit-transform: translateY(-50%) rotate(180deg);
  transform: translateY(-50%) rotate(180deg);
}
.collapse.ouvert > .collapse--head .btn-plus span:last-child {
  opacity: 0;
  width: 0;
}
.collapse.ouvert > .collapse--body {
  max-height: -webkit-fit-content;
  max-height: -moz-fit-content;
  max-height: fit-content;
}
@media (max-width: 1024px) {
  .collapse--head .row {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: normal !important;
    -ms-flex-direction: row !important;
    flex-direction: row !important;
  }
}
@media (max-width: 768px) {
  .collapse--head {
    padding: 20px;
  }
  .collapse--head .row .p1 {
    margin: 0 40px 0 0;
  }
  .collapse--head .row .btn-plus span {
    width: 20px;
  }
  .collapse--body {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .collapse--body .texte {
    margin: 20px;
  }
}

.push-top {
  margin-top: 282px;
}
@media (max-width: 950px) {
  .push-top {
    margin-top: 256px;
  }
}
@media (max-width: 950px) and (max-width: 600px) {
  .push-top {
    margin-top: 223px;
  }
}

.xs-wrapper {
  padding: 0 40px;
  max-width: 900px;
  margin: auto;
}
@media (max-width: 600px) {
  .xs-wrapper {
    padding: 0 20px;
  }
}

.sm-wrapper {
  padding: 0 40px;
  max-width: 1080px;
  margin: auto;
}
@media (max-width: 600px) {
  .sm-wrapper {
    padding: 0 20px;
  }
}

.wrapper {
  padding: 0 60px;
  margin: auto;
  max-width: 1440px;
}
@media (max-width: 1280px) {
  .wrapper {
    padding: 0 60px;
  }
}
@media (max-width: 1280px) and (max-width: 768px) {
  .wrapper {
    padding: 0 40px;
  }
}
@media (max-width: 1280px) and (max-width: 768px) and (max-width: 600px) {
  .wrapper {
    padding: 0 20px;
  }
}

.lg-wrapper {
  margin: auto;
  max-width: 1920px;
  padding: 0 60px;
}
@media (max-width: 1280px) {
  .lg-wrapper {
    padding: 0 60px;
  }
}
@media (max-width: 1280px) and (max-width: 768px) {
  .lg-wrapper {
    padding: 0 40px;
  }
}
@media (max-width: 1280px) and (max-width: 768px) and (max-width: 600px) {
  .lg-wrapper {
    padding: 0 20px;
  }
}

.grid {
  display: grid;
  grid-gap: 40px;
  grid-template-columns: 1fr 1fr 1fr;
}
.grid--2 {
  grid-template-columns: 1fr 1fr;
}
.grid--3 {
  grid-template-columns: 1fr 1fr 1fr;
}
.grid--4 {
  grid-template-columns: 1fr 1fr 1fr 1fr;
}
@media (max-width: 1024px) {
  .grid {
    grid-template-columns: 1fr 1fr;
  }
  .grid--2, .grid--3 {
    grid-template-columns: 1fr 1fr;
  }
  .grid--4 {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media (max-width: 1024px) and (max-width: 768px) {
  .grid--4 {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 1024px) and (max-width: 768px) and (max-width: 600px) {
  .grid {
    display: block;
  }
  .grid .grid-item:not(:last-child) {
    margin-bottom: 40px;
  }
  .grid--2, .grid--3, .grid--4 {
    display: block;
  }
  .grid--2 .grid-item:not(:last-child), .grid--3 .grid-item:not(:last-child), .grid--4 .grid-item:not(:last-child) {
    margin-bottom: 40px;
  }
}

.row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.row--direction-column {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}
.row--align-center {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.row--align-bottom {
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: end;
}
.row--justify-left {
  -webkit-box-pack: left;
  -ms-flex-pack: left;
  justify-content: left;
}
.row--justify-right {
  -webkit-box-pack: right;
  -ms-flex-pack: right;
  justify-content: right;
}
.row--justify-center {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.row--equale .col {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
}
.row .col-lg-1 {
  -ms-flex-preferred-size: 8.33333333%;
  flex-basis: 8.33333333%;
}
.row .col-lg-2 {
  -ms-flex-preferred-size: 16.66666667%;
  flex-basis: 16.66666667%;
}
.row .col-lg-3 {
  -ms-flex-preferred-size: 25%;
  flex-basis: 25%;
}
.row .col-lg-4 {
  -ms-flex-preferred-size: 33.33333333%;
  flex-basis: 33.33333333%;
}
.row .col-lg-5 {
  -ms-flex-preferred-size: 41.66666667%;
  flex-basis: 41.66666667%;
}
.row .col-lg-6 {
  -ms-flex-preferred-size: 50%;
  flex-basis: 50%;
}
.row .col-lg-7 {
  -ms-flex-preferred-size: 58.33333333%;
  flex-basis: 58.33333333%;
}
.row .col-lg-8 {
  -ms-flex-preferred-size: 66.66666667%;
  flex-basis: 66.66666667%;
}
.row .col-lg-9 {
  -ms-flex-preferred-size: 75%;
  flex-basis: 75%;
}
.row .col-lg-10 {
  -ms-flex-preferred-size: 83.33333333%;
  flex-basis: 83.33333333%;
}
.row .col-lg-11 {
  -ms-flex-preferred-size: 91.66666667%;
  flex-basis: 91.66666667%;
}
.row .col-lg-12 {
  -ms-flex-preferred-size: 100%;
  flex-basis: 100%;
}

.umb-block-grid__layout-container {
  position: relative;
  display: grid;
  grid-template-columns: repeat(var(--umb-block-grid--grid-columns, 1), minmax(0, 1fr));
  grid-auto-flow: row;
  grid-auto-rows: minmax(60px, -webkit-min-content);
  grid-auto-rows: minmax(60px, min-content);
  -moz-column-gap: var(--umb-block-grid--column-gap, 20px);
  -webkit-column-gap: var(--umb-block-grid--column-gap, 20px);
  column-gap: var(--umb-block-grid--column-gap, 20px);
  row-gap: var(--umb-block-grid--row-gap, 20px);
}
.umb-block-grid__layout-item {
  position: relative;
  /* For small devices we scale columnSpan by three, to make everything bigger than 1/3 take full width: */
  grid-column-end: span min(var(--umb-block-grid--item-column-span, 1) * 3, var(--umb-block-grid--grid-columns));
  grid-row: span var(--umb-block-grid--item-row-span, 1);
}
.umb-block-grid__area-container, .umb-block-grid__block--view::part(area-container) {
  position: relative;
  display: grid;
  grid-template-columns: repeat(var(--umb-block-grid--area-grid-columns, var(--umb-block-grid--grid-columns, 1)), minmax(0, 1fr));
  grid-auto-flow: row;
  grid-auto-rows: minmax(60px, -webkit-min-content);
  grid-auto-rows: minmax(60px, min-content);
  -moz-column-gap: var(--umb-block-grid--areas-column-gap, 20px);
  -webkit-column-gap: var(--umb-block-grid--areas-column-gap, 20px);
  column-gap: var(--umb-block-grid--areas-column-gap, 20px);
  row-gap: var(--umb-block-grid--areas-row-gap, 20px);
}
.umb-block-grid__area {
  position: relative;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  /* For small devices we scale columnSpan by three, to make everything bigger than 1/3 take full width: */
  grid-column-end: span min(var(--umb-block-grid--area-column-span, 1) * 3, var(--umb-block-grid--area-grid-columns));
  grid-row: span var(--umb-block-grid--area-row-span, 1);
}
@media (min-width: 768px) {
  .umb-block-grid__layout-container {
    grid-column-end: span min(var(--umb-block-grid--item-column-span, 1), var(--umb-block-grid--grid-columns));
    -moz-column-gap: var(--umb-block-grid--areas-column-gap, 30px);
    -webkit-column-gap: var(--umb-block-grid--areas-column-gap, 30px);
    column-gap: var(--umb-block-grid--areas-column-gap, 30px);
    row-gap: var(--umb-block-grid--areas-row-gap, 40px);
  }
  .umb-block-grid__area-container, .umb-block-grid__block--view::part(area-container) {
    grid-column-end: span min(var(--umb-block-grid--area-column-span, 1), var(--umb-block-grid--area-grid-columns));
    -moz-column-gap: var(--umb-block-grid--areas-column-gap, 30px);
    -webkit-column-gap: var(--umb-block-grid--areas-column-gap, 30px);
    column-gap: var(--umb-block-grid--areas-column-gap, 30px);
    row-gap: var(--umb-block-grid--areas-row-gap, 40px);
  }
}
@media (min-width: 1024px) {
  .umb-block-grid__layout-item {
    grid-column-end: span min(var(--umb-block-grid--item-column-span, 1), var(--umb-block-grid--grid-columns));
  }
  .umb-block-grid__area {
    grid-column-end: span min(var(--umb-block-grid--area-column-span, 1), var(--umb-block-grid--area-grid-columns));
  }
}

.accueil--intro {
  padding: 100px 0;
  background-color: #f4f4f4;
  position: relative;
}
.accueil--intro a.link {
  position: absolute;
  bottom: 40px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  cursor: pointer;
}
.accueil--magazines {
  padding: 100px 0;
}
.accueil--magazines .conteneur {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  grid-gap: 60px;
}
.accueil--magazines .conteneur--bloc {
  margin-top: auto;
}
.accueil--magazines .conteneur--bloc h3 {
  margin-bottom: 20px;
  text-align: center;
}
.accueil--magazines .conteneur--bloc:nth-child(2) h3 {
  margin-bottom: 40px;
}
.accueil--magazines .conteneur--bloc img {
  display: block;
  margin: auto;
}
.accueil--articles {
  padding: 100px 0;
  background-color: #f4f4f4;
}
.accueil--articles .conteneur {
  margin: 40px 0 60px;
}
.accueil--articles .conteneur--bloc {
  display: block;
}
.accueil--articles .conteneur h3 {
  margin: 20px 0 10px;
}
.accueil--articles .conteneur img {
  width: 100%;
}
.accueil--articles .conteneur a.link {
  display: block;
  margin-top: 20px;
}
.accueil--articles .bouton .btn {
  margin: 0 auto;
}
.accueil--publicites {
  padding: 100px 0 0;
}
.accueil--publicites .row .slider:first-child {
  margin-right: 20px;
  width: 80%;
}
.accueil--publicites .row .slider:last-child {
  width: 20%;
}
.accueil--publicites .row .slider img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.accueil--apropos {
  padding: 100px 0;
}
.accueil--apropos .umb-block-grid__layout-container {
  -webkit-column-gap: 60px;
  -moz-column-gap: 60px;
  column-gap: 60px;
}
.accueil--apropos .umb-block-grid__layout-container img {
  width: 100%;
}
.accueil--blogues {
  padding: 100px 0;
  background-color: #f4f4f4;
}
.accueil--blogues .conteneur {
  margin: 40px 0 60px;
}
.accueil--blogues .conteneur--bloc {
  display: block;
  position: relative;
  padding-left: 40px;
}
.accueil--blogues .conteneur--bloc::before {
  content: "";
  border-left: 2px solid #b2b2b2;
  height: 60%;
  position: absolute;
  left: 0;
  top: 60%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
.accueil--blogues .conteneur h3 {
  margin: 20px 0 10px;
}
.accueil--blogues .conteneur img {
  width: 100%;
}
.accueil--blogues .conteneur a.link {
  display: block;
  margin-top: 20px;
}
.accueil--blogues .bouton .btn {
  margin: 0 auto;
}
.accueil--parallaxe {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  background-attachment: fixed;
  min-height: 600px;
}
.accueil--questions {
  padding: 100px 0;
}
.accueil--questions .umb-block-grid__layout-container {
  -webkit-column-gap: 60px;
  -moz-column-gap: 60px;
  column-gap: 60px;
}
.accueil--questions .umb-block-grid__layout-container img {
  width: 100%;
}
@media (max-width: 1024px) {
  .accueil--magazines .conteneur {
    grid-template-columns: 1fr 1fr;
  }
  .accueil--magazines .conteneur--bloc {
    margin-top: 0;
  }
  .accueil--magazines .conteneur--bloc:nth-child(1) {
    grid-area: 2/1;
  }
  .accueil--magazines .conteneur--bloc:nth-child(2) {
    grid-area: 1/span 2/1;
    margin: auto;
  }
  .accueil--magazines .conteneur--bloc:nth-child(3) {
    grid-area: 2/2;
  }
}
@media (max-width: 768px) {
  .accueil--magazines {
    padding: 80px 0;
  }
  .accueil--articles {
    padding: 80px 0;
  }
  .accueil--publicites {
    padding: 80px 0 0;
  }
  .accueil--publicites .row {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .accueil--publicites .row .slider:first-child {
    margin-right: 0;
    margin-bottom: 40px;
    width: 100%;
  }
  .accueil--publicites .row .slider:last-child {
    width: 100%;
  }
  .accueil--apropos {
    padding: 80px 0;
  }
  .accueil--apropos .umb-block-grid__layout-container {
    -webkit-column-gap: 40px;
    -moz-column-gap: 40px;
    column-gap: 40px;
  }
  .accueil--blogues {
    padding: 80px 0;
  }
  .accueil--parallaxe {
    min-height: 400px;
    background-attachment: scroll;
  }
  .accueil--questions {
    padding: 80px 0;
  }
  .accueil--questions .umb-block-grid__layout-container {
    -webkit-column-gap: 40px;
    -moz-column-gap: 40px;
    column-gap: 40px;
  }
}
@media (max-width: 600px) {
  .accueil--magazines .conteneur {
    grid-template-columns: 1fr;
  }
  .accueil--magazines .conteneur--bloc {
    margin-top: 0;
  }
  .accueil--magazines .conteneur--bloc:nth-child(1) {
    grid-area: 2/1;
  }
  .accueil--magazines .conteneur--bloc:nth-child(2) {
    grid-area: 1/1;
    margin: auto;
  }
  .accueil--magazines .conteneur--bloc:nth-child(3) {
    grid-area: 3/1;
  }
  .accueil--apropos .umb-block-grid__layout-container {
    -webkit-column-gap: 20px;
    -moz-column-gap: 20px;
    column-gap: 20px;
  }
  .accueil--questions .umb-block-grid__layout-container {
    -webkit-column-gap: 20px;
    -moz-column-gap: 20px;
    column-gap: 20px;
  }
}

/*******************************/
/***** Lazy Load Animation *****/
/*******************************/
.lazy-img {
  opacity: 0;
  -webkit-transition: opacity 1s 0.25s ease-out, -webkit-transform 0.5s 0.25s cubic-bezier(0.58, 0, 0.32, 1);
  transition: opacity 1s 0.25s ease-out, -webkit-transform 0.5s 0.25s cubic-bezier(0.58, 0, 0.32, 1);
  transition: transform 0.5s 0.25s cubic-bezier(0.58, 0, 0.32, 1), opacity 1s 0.25s ease-out;
  transition: transform 0.5s 0.25s cubic-bezier(0.58, 0, 0.32, 1), opacity 1s 0.25s ease-out, -webkit-transform 0.5s 0.25s cubic-bezier(0.58, 0, 0.32, 1);
  will-change: transform, opacity;
}

.from-bottom {
  -webkit-transform: translateY(50px) rotate(-5deg);
  transform: translateY(50px) rotate(-5deg);
}

.from-right {
  -webkit-transform: translateX(50px) rotate(-5deg);
  transform: translateX(50px) rotate(-5deg);
}

.lazy-load {
  opacity: 1;
  -webkit-transform: rotate(0);
  transform: rotate(0);
}

.page-texte {
  padding: 100px 0;
  position: relative;
}
.page-texte--contenu {
  width: 100%;
}
.page-texte--sidebar {
  width: 100%;
  max-width: 360px;
  min-width: 300px;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  margin-left: 40px;
}
@media (max-width: 1024px) {
  .page-texte .row {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .page-texte--sidebar {
    margin-left: 0;
    margin-top: 40px;
    min-width: inherit;
  }
}
@media (max-width: 768px) {
  .page-texte {
    padding: 80px 0;
  }
}

.nous-joindre {
  padding: 100px 0;
}
.nous-joindre--contenu {
  width: 100%;
}
.nous-joindre--contenu .texte {
  margin-bottom: 40px;
}
.nous-joindre--contenu .form {
  margin-bottom: 100px;
}
.nous-joindre--contenu .contact h2 {
  margin-bottom: 40px;
}
.nous-joindre--contenu .contact--coordonnees {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 40px;
}
.nous-joindre--contenu .contact--coordonnees .texte {
  width: 100%;
  -ms-flex-preferred-size: 40%;
  flex-basis: 40%;
  margin-right: 20px;
}
.nous-joindre--contenu .contact--coordonnees .texte h3 {
  margin-bottom: 30px;
}
.nous-joindre--contenu .contact--coordonnees .carte {
  width: 100%;
  -ms-flex-preferred-size: 60%;
  flex-basis: 60%;
}
.nous-joindre--contenu .contact--coordonnees .carte iframe {
  width: 100%;
}
.nous-joindre--contenu .contact--informations {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.nous-joindre--contenu .contact--informations .infos {
  width: 100%;
  -ms-flex-preferred-size: 50%;
  flex-basis: 50%;
  margin-right: 20px;
}
.nous-joindre--contenu .contact--informations .infos h3 {
  margin-bottom: 30px;
}
.nous-joindre--contenu .contact--informations .infos p:not(:last-child) {
  margin-bottom: 20px;
}
.nous-joindre--contenu .contact--informations .publicite {
  width: 100%;
  -ms-flex-preferred-size: 50%;
  flex-basis: 50%;
}
.nous-joindre--contenu .contact--informations .publicite h3 {
  margin-bottom: 30px;
}
.nous-joindre--contenu .contact--informations .publicite--personne:not(:last-child) {
  margin-bottom: 30px;
}
.nous-joindre--contenu .contact--informations .publicite--personne p:not(:last-child) {
  margin-bottom: 10px;
}
.nous-joindre--sidebar {
  width: 100%;
  max-width: 360px;
  min-width: 300px;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  margin-left: 40px;
}
@media (max-width: 1024px) {
  .nous-joindre .row {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .nous-joindre--sidebar {
    margin-left: 0;
    margin-top: 40px;
    min-width: inherit;
  }
}
@media (max-width: 768px) {
  .nous-joindre {
    padding: 80px 0;
  }
  .nous-joindre--contenu .texte {
    margin-bottom: 20px;
  }
  .nous-joindre--contenu .form {
    margin-bottom: 80px;
  }
}
@media (max-width: 600px) {
  .nous-joindre .contact--coordonnees {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .nous-joindre .contact--coordonnees .texte {
    margin-right: 0;
    margin-bottom: 20px;
  }
  .nous-joindre .contact--informations {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .nous-joindre .contact--informations .infos {
    margin-right: 0;
    margin-bottom: 40px;
  }
}

.articles {
  padding: 100px 0;
}
.articles--filtres {
  width: 100%;
  max-width: 360px;
  min-width: 300px;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  margin-right: 40px;
  display: grid;
  grid-template-columns: 1fr;
  gap: 40px;
}
.articles--filtres .categories h2, .articles--filtres .numeros h2, .articles--filtres .annees h2 {
  margin-bottom: 20px;
}
.articles--filtres .categories--conteneur .field:not(:last-child), .articles--filtres .numeros--conteneur .field:not(:last-child), .articles--filtres .annees--conteneur .field:not(:last-child) {
  margin-bottom: 10px;
}
.articles--contenu {
  width: 100%;
}
.articles--contenu .reponses {
  margin-top: 60px;
}
.articles--contenu .reponses h2 {
  margin-bottom: 40px;
}
.articles--contenu .reponses--conteneur {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-column-gap: 20px;
  grid-row-gap: 40px;
}
.articles--contenu .reponses--conteneur .bloc {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.articles--contenu .reponses--conteneur .bloc--image {
  width: 100%;
  margin-right: 20px;
  -ms-flex-preferred-size: 45%;
  flex-basis: 45%;
}
.articles--contenu .reponses--conteneur .bloc--image img {
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.articles--contenu .reponses--conteneur .bloc--texte {
  width: 100%;
  -ms-flex-preferred-size: 55%;
  flex-basis: 55%;
}
.articles--contenu .reponses--conteneur .bloc--texte h4 {
  text-align: left;
  margin-bottom: 10px;
}
.articles--contenu .reponses--conteneur .bloc--texte p {
  margin: 20px 0 40px;
}
.articles--contenu .reponses--bouton {
  margin-top: 60px;
}
.articles--contenu .reponses--bouton a {
  display: block;
  margin: 0 auto;
  cursor: pointer;
}
.articles--contenu .reponses--bouton.disabled {
  display: none;
}
@media (max-width: 1280px) {
  .articles--contenu .reponses--conteneur {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 1024px) {
  .articles .row {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .articles--filtres {
    margin-right: 0;
    margin-bottom: 40px;
    max-width: inherit;
    min-width: inherit;
    grid-template-columns: 1fr 1fr;
    -webkit-column-gap: 20px;
    -moz-column-gap: 20px;
    column-gap: 20px;
  }
  .articles--filtres .recherche {
    grid-area: 1/span 2/1;
  }
  .articles--contenu .reponses--conteneur {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 768px) {
  .articles {
    padding: 80px 0;
  }
  .articles--contenu .reponses--conteneur {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 600px) {
  .articles--filtres {
    grid-template-columns: 1fr;
  }
  .articles--filtres .recherche {
    grid-area: inherit;
  }
  .articles--contenu .reponses {
    margin-top: 40px;
  }
  .articles--contenu .reponses--conteneur .bloc--texte p {
    margin: 20px 0;
  }
}

.article {
  padding: 100px 0 0;
}
.article--contenu {
  width: 100%;
  padding-bottom: 100px;
}
.article--sidebar {
  width: 100%;
  max-width: 360px;
  min-width: 300px;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  margin-left: 40px;
}
.article--autres {
  padding: 100px 0;
  background-color: #f4f4f4;
}
.article--autres h2 {
  text-align: center;
  margin-bottom: 40px;
}
.article--autres .conteneur h4 {
  margin: 20px 0 10px;
}
.article--autres .conteneur img {
  width: 100%;
}
.article--autres .conteneur a.link {
  display: block;
  margin-top: 20px;
}
@media (max-width: 1024px) {
  .article .row {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .article--contenu {
    padding-bottom: 0;
  }
  .article--sidebar {
    margin-left: 0;
    margin-top: 40px;
    max-width: inherit;
    min-width: inherit;
    padding-bottom: 100px;
  }
}
@media (max-width: 768px) {
  .article {
    padding: 80px 0 0;
  }
  .article--sidebar {
    padding-bottom: 80px;
  }
  .article--autres {
    padding: 80px 0;
  }
}

.blogues {
  padding: 100px 0;
}
.blogues--filtres {
  width: 100%;
  max-width: 360px;
  min-width: 300px;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  margin-right: 40px;
  display: grid;
  grid-template-columns: 1fr;
  gap: 40px;
}
.blogues--filtres .categories h2, .blogues--filtres .auteurs h2 {
  margin-bottom: 20px;
}
.blogues--filtres .categories--conteneur .field:not(:last-child), .blogues--filtres .auteurs--conteneur .field:not(:last-child) {
  margin-bottom: 10px;
}
.blogues--contenu {
  width: 100%;
}
.blogues--contenu .auteurs {
  margin-bottom: 60px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 20px;
}
.blogues--contenu .auteurs--bloc {
  background-color: #f4f4f4;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  max-width: 380px;
  width: 100%;
}
.blogues--contenu .auteurs--bloc .texte {
  padding: 20px;
}
.blogues--contenu .auteurs--bloc .texte h5 {
  margin-bottom: 10px;
}
.blogues--contenu .reponses h4 {
  text-align: right;
  margin-bottom: 20px;
}
.blogues--contenu .reponses--conteneur .bloc {
  padding: 40px 20px;
  border-bottom: 1px solid #000000;
}
.blogues--contenu .reponses--conteneur .bloc h4 {
  text-align: left;
  margin-bottom: 10px;
}
.blogues--contenu .reponses--conteneur .bloc p {
  margin: 20px 0 40px;
}
.blogues--contenu .reponses--bouton {
  margin-top: 60px;
}
.blogues--contenu .reponses--bouton a {
  display: block;
  margin: 0 auto;
  cursor: pointer;
}
.blogues--contenu .reponses--bouton.disabled {
  display: none;
}
@media (max-width: 1024px) {
  .blogues .row {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .blogues--filtres {
    margin-right: 0;
    margin-bottom: 40px;
    max-width: inherit;
    min-width: inherit;
    grid-template-columns: 1fr 1fr;
    -webkit-column-gap: 20px;
    -moz-column-gap: 20px;
    column-gap: 20px;
  }
  .blogues--filtres .recherche {
    grid-area: 1/span 2/1;
  }
  .blogues--contenu .reponses--conteneur .bloc {
    padding: 40px 0;
  }
}
@media (max-width: 768px) {
  .blogues {
    padding: 80px 0;
  }
}
@media (max-width: 600px) {
  .blogues--filtres {
    grid-template-columns: 1fr;
  }
  .blogues--filtres .recherche {
    grid-area: inherit;
  }
  .blogues--contenu .auteurs {
    margin-bottom: 40px;
  }
  .blogues--contenu .reponses--conteneur .bloc {
    padding: 20px 0;
  }
  .blogues--contenu .reponses--conteneur .bloc p {
    margin: 20px 0;
  }
}

.blogue {
  padding: 100px 0 0;
  position: relative;
}
.blogue--contenu {
  width: 100%;
  padding-bottom: 100px;
}
.blogue--contenu img.large {
  width: 100%;
  margin-bottom: 20px;
}
.blogue--contenu h2 {
  margin-bottom: 10px;
}
.blogue--contenu p.date {
  margin-bottom: 40px;
}
.blogue--contenu .tags {
  margin-top: 40px;
  padding-top: 40px;
  border-top: 1px solid #000000;
}
.blogue--contenu .tags--conteneur a:not(:last-child) {
  margin-right: 20px;
  margin-bottom: 20px;
}
.blogue--sidebar {
  width: 100%;
  max-width: 360px;
  min-width: 300px;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  margin-left: 40px;
}
.blogue--commentaires {
  padding: 0 0 100px;
}
.blogue--commentaires h2 {
  text-align: center;
  margin-bottom: 40px;
}
.blogue--commentaires .liste {
  margin-bottom: 40px;
}
.blogue--commentaires .liste--bloc {
  padding: 20px 10px;
  border-bottom: 1px solid #000000;
}
.blogue--commentaires .liste--bloc:first-child {
  border-top: 1px solid #000000;
}
.blogue--commentaires .liste--bloc h4 {
  margin-bottom: 20px;
}
.blogue--commentaires .liste--bloc h4::before {
  content: url(/media/icones/user-icon.svg);
  vertical-align: middle;
  margin-right: 10px;
}
.blogue--commentaires .formulaire .text-block {
  margin-bottom: 20px;
}
.blogue--autres {
  padding: 100px 0;
  background-color: #f4f4f4;
}
.blogue--autres h2 {
  text-align: center;
  margin-bottom: 40px;
}
.blogue--autres .conteneur--bloc {
  display: block;
  position: relative;
  padding-left: 40px;
}
.blogue--autres .conteneur--bloc::before {
  content: "";
  border-left: 2px solid #b2b2b2;
  height: 60%;
  position: absolute;
  left: 0;
  top: 60%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
.blogue--autres .conteneur h4 {
  margin: 20px 0 10px;
}
.blogue--autres .conteneur img {
  width: 100%;
}
.blogue--autres .conteneur a.link {
  display: block;
  margin-top: 20px;
}
@media (max-width: 1024px) {
  .blogue .row {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .blogue--contenu {
    padding-bottom: 0;
  }
  .blogue--sidebar {
    margin-left: 0;
    margin-top: 60px;
    max-width: inherit;
    min-width: inherit;
    padding-bottom: 100px;
  }
}
@media (max-width: 768px) {
  .blogue {
    padding: 80px 0 0;
  }
  .blogue--contenu .tags {
    margin-top: 20px;
    padding-top: 20px;
  }
  .blogue--contenu .tags--conteneur a:not(:last-child) {
    margin-right: 10px;
    margin-bottom: 10px;
  }
  .blogue--sidebar {
    padding-bottom: 80px;
  }
  .blogue--autres {
    padding: 80px 0;
  }
}

.questions-reponses {
  padding: 100px 0 0;
}
.questions-reponses--filtres {
  width: 100%;
  max-width: 360px;
  min-width: 300px;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  margin-right: 40px;
  display: grid;
  grid-template-columns: 1fr;
  gap: 40px;
}
.questions-reponses--filtres .categories h2, .questions-reponses--filtres .auteurs h2 {
  margin-bottom: 20px;
}
.questions-reponses--filtres .categories--conteneur .field:not(:last-child), .questions-reponses--filtres .auteurs--conteneur .field:not(:last-child) {
  margin-bottom: 10px;
}
.questions-reponses--contenu {
  width: 100%;
}
.questions-reponses--contenu .auteurs {
  margin: 40px 0 60px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 20px;
}
.questions-reponses--contenu .auteurs--bloc {
  background-color: #f4f4f4;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  max-width: 380px;
  width: 100%;
}
.questions-reponses--contenu .auteurs--bloc .texte {
  padding: 20px;
}
.questions-reponses--contenu .auteurs--bloc .texte h5 {
  margin-bottom: 10px;
}
.questions-reponses--contenu .reponses h4 {
  margin-bottom: 20px;
  text-align: right;
}
.questions-reponses--contenu .reponses--conteneur .collapse:not(:last-child) {
  margin-bottom: 20px;
}
.questions-reponses--contenu .reponses--bouton {
  margin-top: 60px;
}
.questions-reponses--contenu .reponses--bouton a {
  display: block;
  margin: 0 auto;
  cursor: pointer;
}
.questions-reponses--contenu .reponses--bouton.disabled {
  display: none;
}
.questions-reponses--form {
  padding: 100px 0;
  background-color: #f4f4f4;
  margin-top: 100px;
}
@media (max-width: 1024px) {
  .questions-reponses .row {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .questions-reponses--filtres {
    margin-right: 0;
    margin-bottom: 40px;
    max-width: inherit;
    min-width: inherit;
    grid-template-columns: 1fr 1fr;
    -webkit-column-gap: 20px;
    -moz-column-gap: 20px;
    column-gap: 20px;
  }
  .questions-reponses--filtres .recherche {
    grid-area: 1/span 2/1;
  }
}
@media (max-width: 768px) {
  .questions-reponses {
    padding: 80px 0 0;
  }
  .questions-reponses--form {
    padding: 80px 0;
    margin-top: 80px;
  }
}
@media (max-width: 600px) {
  .questions-reponses--filtres {
    grid-template-columns: 1fr;
  }
  .questions-reponses--filtres .recherche {
    grid-area: inherit;
  }
  .questions-reponses--contenu .auteurs {
    margin: 40px 0;
  }
}

.zone-videos {
  padding: 100px 0;
}
.zone-videos--contenu .videos {
  margin-top: 60px;
}
.zone-videos--contenu .videos h2 {
  margin-bottom: 40px;
}
.zone-videos--contenu .videos--bloc:not(:last-child) {
  margin-bottom: 60px;
}
.zone-videos--contenu .videos--bloc h4 {
  margin-bottom: 20px;
}
.zone-videos--contenu .videos--bloc .conteneur {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.zone-videos--contenu .videos--bloc .conteneur iframe {
  width: 100%;
  max-width: 375px;
  height: auto;
  min-height: 210px;
}
.zone-videos--contenu .videos--bloc .conteneur iframe:first-child {
  margin-right: 20px;
}
.zone-videos--sidebar {
  width: 100%;
  max-width: 360px;
  min-width: 300px;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  margin-left: 40px;
}
@media (max-width: 1024px) {
  .zone-videos .row {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .zone-videos--sidebar {
    margin-left: 0;
    margin-top: 40px;
    min-width: inherit;
  }
}
@media (max-width: 768px) {
  .zone-videos {
    padding: 80px 0;
  }
  .zone-videos .videos--bloc:not(:last-child) {
    margin-bottom: 40px;
  }
  .zone-videos .videos--bloc .conteneur {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .zone-videos .videos--bloc .conteneur iframe {
    width: 100%;
    max-width: inherit;
    height: auto;
  }
  .zone-videos .videos--bloc .conteneur iframe:first-child {
    margin-right: 0;
    margin-bottom: 20px;
  }
}

.auteur {
  padding: 100px 0;
}
.auteur--contenu {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.auteur--contenu .image {
  margin-left: 40px;
  width: 100%;
  -ms-flex-preferred-size: 40%;
  flex-basis: 40%;
}
.auteur--contenu .texte {
  -ms-flex-preferred-size: 60%;
  flex-basis: 60%;
  width: 100%;
}
.auteur--contenu .texte h2 {
  margin-bottom: 40px;
}
.auteur--sidebar {
  width: 100%;
  max-width: 360px;
  min-width: 300px;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  margin-left: 40px;
}
@media (max-width: 1024px) {
  .auteur .row {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .auteur--contenu {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .auteur--contenu .image {
    margin-left: 0;
    margin-top: 20px;
  }
  .auteur--sidebar {
    margin-left: 0;
    margin-top: 40px;
    min-width: inherit;
  }
}
@media (max-width: 768px) {
  .auteur {
    padding: 80px 0;
  }
}

.uikit-section {
  margin: 40px;
}
.uikit-section__title {
  padding: 40px;
  background-color: #ebebeb;
}
.uikit-section__content {
  background-color: #f8f8f8;
  padding: 40px;
}

.boilerplate {
  padding: 40px;
  text-align: center;
  margin: 40px 0;
}

.page-abonnement {
  padding: 100px 0;
  position: relative;
}
.page-abonnement--contenu {
  width: 100%;
}
.page-abonnement--contenu .deconnexion {
  margin-bottom: 40px;
}
.page-abonnement--contenu .formulaire iframe {
  width: 100%;
  height: 100%;
  min-height: 900px;
  border: none;
}
.page-abonnement--sidebar {
  width: 100%;
  max-width: 360px;
  min-width: 300px;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  margin-left: 40px;
}
@media (max-width: 1024px) {
  .page-abonnement .row {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .page-abonnement--sidebar {
    margin-left: 0;
    margin-top: 40px;
    min-width: inherit;
  }
}
@media (max-width: 768px) {
  .page-abonnement {
    padding: 80px 0;
  }
}

.magazine {
  padding: 100px 0;
  position: relative;
}
.magazine--contenu {
  width: 100%;
}
.magazine--contenu .deconnexion {
  margin-bottom: 40px;
}
.magazine--sidebar {
  width: 100%;
  max-width: 360px;
  min-width: 300px;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  margin-left: 40px;
}
@media (max-width: 1024px) {
  .magazine .row {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .magazine--sidebar {
    margin-left: 0;
    margin-top: 40px;
    min-width: inherit;
  }
}
@media (max-width: 768px) {
  .magazine {
    padding: 80px 0;
  }
}

/**************** HEADER MENU *******************/
header .menu-utilitaire {
  text-align: right;
}
header .menu-utilitaire nav ul li {
  display: inline-block;
  margin-bottom: 10px;
}
header .menu-utilitaire nav ul li:not(:first-child) {
  margin-left: 40px;
}
header .menu-principal nav ul li {
  display: inline-block;
}
header .menu-principal nav ul li:not(:first-child) {
  margin-left: 40px;
}
header .menu-principal nav ul li.childs {
  position: relative;
  /* smartphones, touchscreens */
}
header .menu-principal nav ul li.childs > a::after {
  content: "";
  display: inline-block;
  background-image: url(/media/icones/expand-more.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 12px;
  width: 12px;
  height: 8px;
  margin-left: 10px;
  vertical-align: middle;
  -webkit-transition: 0.2s cubic-bezier(0.58, 0, 0.32, 1);
  transition: 0.2s cubic-bezier(0.58, 0, 0.32, 1);
}
header .menu-principal nav ul li.childs ul {
  position: absolute;
  padding-top: 84px;
  top: 20px;
  left: -20px;
  width: 230px;
  visibility: hidden;
  -webkit-transform: translateY(-100px);
  transform: translateY(-100px);
  opacity: 0;
  -webkit-transition: 0.3s cubic-bezier(0.58, 0, 0.32, 1);
  transition: 0.3s cubic-bezier(0.58, 0, 0.32, 1);
}
header .menu-principal nav ul li.childs ul li {
  display: block;
  margin-left: 0;
  padding: 15px 20px;
  background-color: rgba(255, 255, 255, 0.8);
}
header .menu-principal nav ul li.childs ul li:first-child {
  padding-top: 20px;
}
header .menu-principal nav ul li.childs ul li:last-child {
  padding-bottom: 20px;
}
@media (pointer: fine) {
  header .menu-principal nav ul li.childs:hover > a::after {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
  }
  header .menu-principal nav ul li.childs:hover ul {
    visibility: visible;
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 100%;
  }
}
@media (max-width: 1630px) {
  header .menu-principal nav ul li {
    display: block;
    text-align: center;
  }
  header .menu-principal nav ul li:not(:first-child) {
    margin-left: 0;
    margin-top: 40px;
  }
  header .menu-principal nav ul li a {
    color: #ffffff;
    /* smartphones, touchscreens */
  }
}
@media (max-width: 1630px) and (pointer: fine) {
  header .menu-principal nav ul li a:hover {
    color: #72c950;
  }
}
@media (max-width: 1630px) {
  header .menu-principal nav ul li.childs {
    /* smartphones, touchscreens */
  }
  header .menu-principal nav ul li.childs ul {
    display: none;
    position: unset;
    padding: 0;
    top: 0;
    left: 0;
    width: 100%;
    height: 0;
    visibility: hidden;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  header .menu-principal nav ul li.childs ul li {
    padding: 10px 0 20px;
    background-color: inherit;
    margin-top: 0;
  }
  header .menu-principal nav ul li.childs ul li:first-child {
    padding-top: 0;
  }
  header .menu-principal nav ul li.childs ul li:last-child {
    padding-bottom: 0;
  }
}
@media (max-width: 1630px) and (pointer: fine) {
  header .menu-principal nav ul li.childs:hover > a::after {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
  header .menu-principal nav ul li.childs:hover ul {
    visibility: inherit;
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 0;
  }
}
@media (max-width: 1630px) {
  header .menu-principal nav ul li.childs.open > a::after {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
  }
  header .menu-principal nav ul li.childs.open ul {
    display: block;
    visibility: visible;
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 100%;
    height: 100%;
    margin-top: 20px;
  }
  header.open .menu-utilitaire nav ul li a {
    color: #ffffff;
    /* smartphones, touchscreens */
  }
}
@media (max-width: 1630px) and (pointer: fine) {
  header.open .menu-utilitaire nav ul li a:hover {
    color: #72c950;
  }
}
@media (max-width: 600px) {
  header .menu-utilitaire nav ul li:not(:first-child) {
    margin-left: 20px;
  }
}

/********* FOOTER ************/
footer {
  color: #ffffff;
  background-color: #27475c;
}
footer .footer-top {
  padding: 100px 0 80px;
}
footer .footer-top--logo {
  margin-right: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
footer .footer-top--logo img {
  max-width: 520px;
  width: 100%;
}
footer .footer-top--logo .main {
  margin-bottom: 40px;
}
footer .footer-top--menu {
  margin-right: 40px;
}
footer .footer-top--menu li:not(:last-child) {
  margin-bottom: 20px;
}
footer .footer-top--menu .bouton {
  margin-top: 20px;
}
footer .footer-top--utilitaire li:not(:last-child) {
  margin-bottom: 20px;
}
footer .footer-top--utilitaire .sociaux {
  margin-top: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
footer .footer-top--utilitaire .sociaux a {
  margin-left: 10px;
}
footer .footer-top--utilitaire .sociaux svg {
  width: 25px;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  /* smartphones, touchscreens */
}
footer .footer-top--utilitaire .sociaux svg path {
  -webkit-transition: 0.2s cubic-bezier(0.35, 0, 0, 1);
  transition: 0.2s cubic-bezier(0.35, 0, 0, 1);
  fill: #ffffff;
}
@media (pointer: fine) {
  footer .footer-top--utilitaire .sociaux svg:hover path {
    fill: #62b044;
  }
}
footer .footer-top--utilitaire .bouton {
  margin-top: 20px;
}
footer .footer-bottom {
  padding: 40px 0;
  border-top: 1px solid #ffffff;
}
footer .footer-bottom .copyright {
  padding: 20px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
footer .footer-bottom .copyright p {
  text-align: center;
}
footer .footer-bottom .copyright p:first-child {
  margin-right: 10px;
}
@media (max-width: 1024px) {
  footer .footer-top--row {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  footer .footer-top--logo {
    margin-right: 0;
    margin-bottom: 60px;
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
}
@media (max-width: 768px) {
  footer .footer-top {
    padding: 60px 0;
  }
  footer .footer-top--row {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  footer .footer-top--menu {
    margin-right: 0;
    margin-bottom: 40px;
  }
  footer .footer-top--menu li {
    text-align: center;
  }
  footer .footer-top--utilitaire li {
    text-align: center;
  }
  footer .footer-top--utilitaire .sociaux {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  footer .footer-bottom .copyright {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
  }
  footer .footer-bottom .copyright p {
    text-align: center;
  }
  footer .footer-bottom .copyright p:first-child {
    margin-right: 0;
    margin-top: 20px;
  }
}
@media (max-width: 600px) {
  footer .footer-bottom {
    padding: 20px 0;
  }
}

/********* HEADER ************/
header {
  position: relative;
  -webkit-transition: 0.6s cubic-bezier(0.58, 0, 0.32, 1);
  transition: 0.6s cubic-bezier(0.58, 0, 0.32, 1);
  z-index: 20;
}
header .top-bar {
  background-color: rgba(39, 71, 92, 0.95);
  color: #ffffff;
  max-height: 64px;
  overflow-x: auto;
  overflow-y: hidden;
  width: 100vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: right;
  -ms-flex-pack: right;
  justify-content: right;
}
header .top-bar ul {
  overflow-x: auto;
  white-space: nowrap;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
header .top-bar ul li {
  min-width: -webkit-fit-content;
  min-width: -moz-fit-content;
  min-width: fit-content;
  padding: 20px 30px;
  -webkit-transition: 0.2s cubic-bezier(0.58, 0, 0.32, 1);
  transition: 0.2s cubic-bezier(0.58, 0, 0.32, 1);
}
header .top-bar ul li:nth-child(odd) {
  background-color: rgba(202, 220, 234, 0.2196078431);
}
header .top-bar ul li:has(.active) {
  background-color: #62b044;
}
header .top-bar ul li:has(.active) a {
  font-weight: 700;
  color: #ffffff;
}
header .top-bar ul li a {
  display: block;
}
header .menu-bar {
  background-color: rgba(255, 255, 255, 0.8);
  padding: 20px 0 40px;
  -webkit-transition: all 0.6s cubic-bezier(0.58, 0, 0.32, 1);
  transition: all 0.6s cubic-bezier(0.58, 0, 0.32, 1);
}
header .menu-utilitaire {
  margin-bottom: 20px;
  position: relative;
  z-index: 20;
}
header .menu-principal {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: right;
  -ms-flex-pack: right;
  justify-content: right;
}
header .menu-principal--logo {
  max-width: 375px;
  width: 100%;
  margin-right: auto;
  position: relative;
  z-index: 20;
}
header .menu-principal--logo img {
  -webkit-transition: all 0.6s cubic-bezier(0.58, 0, 0.32, 1);
  transition: all 0.6s cubic-bezier(0.58, 0, 0.32, 1);
}
header .menu-principal--nav {
  margin-left: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
header .menu-principal--nav .btn {
  margin-left: 40px;
}
header .menu-principal--btn {
  z-index: 5;
  display: none;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  cursor: pointer;
  /* smartphones, touchscreens */
}
header .menu-principal--btn a {
  margin-right: 10px;
}
header .menu-principal--btn span {
  display: block;
  background-color: #363636;
  height: 3px;
  width: 30px;
  border-radius: 2px;
  -webkit-transform-origin: center;
  transform-origin: center;
  -webkit-transition: 0.3s cubic-bezier(0.58, 0, 0.32, 1);
  transition: 0.3s cubic-bezier(0.58, 0, 0.32, 1);
}
header .menu-principal--btn span:not(:last-child) {
  margin-bottom: 7px;
}
@media (pointer: fine) {
  header .menu-principal--btn:hover a {
    color: #0179c2;
  }
  header .menu-principal--btn:hover span {
    background-color: #0179c2;
  }
}
header.open .menu-principal--btn {
  /* smartphones, touchscreens */
}
header.open .menu-principal--btn a {
  color: #ffffff;
}
header.open .menu-principal--btn span {
  background-color: #ffffff;
  margin: 0;
}
header.open .menu-principal--btn span:nth-child(1) {
  -webkit-transform: rotate(45deg) translateY(3px) translateX(1px);
  transform: rotate(45deg) translateY(3px) translateX(1px);
  width: 27px;
}
header.open .menu-principal--btn span:nth-child(2) {
  width: 0;
  opacity: 0;
}
header.open .menu-principal--btn span:nth-child(3) {
  -webkit-transform: rotate(-45deg) translateY(-3px) translateX(1px);
  transform: rotate(-45deg) translateY(-3px) translateX(1px);
  width: 27px;
}
@media (pointer: fine) {
  header.open .menu-principal--btn:hover a {
    color: #72c950;
  }
  header.open .menu-principal--btn:hover span {
    background-color: #72c950;
  }
}
@media (max-width: 1630px) {
  header .menu-principal--btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-left: 40px;
  }
  header .menu-principal--nav {
    display: block;
    background-color: #27475c;
    height: calc(100 * var(--vh) - 282px);
    width: 100%;
    margin: 0;
    position: absolute;
    top: 282px;
    left: 0;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: right;
    transform-origin: right;
    -webkit-transition: all 0.6s cubic-bezier(0.58, 0, 0.32, 1);
    transition: all 0.6s cubic-bezier(0.58, 0, 0.32, 1);
  }
  header .menu-principal--nav nav {
    margin: 40px 60px 0;
  }
  header .menu-principal--nav .btn {
    margin: 40px auto 0;
  }
  header.open .menu-bar {
    background-color: #27475c;
  }
  header.open .menu-principal--nav {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
  }
  header.open .menu-principal--logo img {
    -webkit-filter: brightness(0) invert(1);
    filter: brightness(0) invert(1);
  }
}
@media (max-width: 768px) {
  header .top-bar {
    max-height: 61px;
  }
  header .menu-principal--logo {
    max-width: 300px;
  }
  header .menu-principal--nav {
    top: 256px;
    height: calc(100 * var(--vh) - 256px);
  }
  header .menu-principal--nav nav {
    margin: 20px 40px 0;
  }
  header .menu-principal--nav .btn {
    margin: 40px auto 0;
  }
}
@media (max-width: 600px) {
  header .menu-principal--logo {
    max-width: 180px;
  }
  header .menu-principal--btn {
    margin-left: 20px;
  }
  header .menu-principal--nav {
    top: 223px;
    height: calc(100 * var(--vh) - 223px);
  }
  header .menu-principal--nav nav {
    margin: 20px 20px 0;
  }
  header .menu-principal--nav .btn {
    margin: 40px auto 0;
  }
}

.banner {
  background-size: cover;
  background-repeat: no-repeat;
  min-height: 650px;
  position: relative;
}
.banner.gauche {
  background-position: left;
}
.banner.centre {
  background-position: center;
}
.banner.droite {
  background-position: right;
}
.banner.haut {
  background-position: top;
}
.banner.bas {
  background-position: bottom;
}
.banner .bloc {
  padding: 180px 0;
}
.banner .bloc--titre {
  color: #ffffff;
  text-align: center;
}
.banner .bloc--sous-titre {
  color: #ffffff;
  margin-top: 20px;
  text-align: center;
}
.banner .bloc.accueil {
  padding: 100px 0;
}
.banner .bloc.accueil img {
  max-width: 600px;
  display: block;
  margin: 0 auto;
  width: 100%;
}
.banner .bloc.accueil .bloc--titre {
  color: #ffc907;
  margin: 40px 0;
}
.banner .bloc.accueil .btn {
  margin: 0 auto;
}
.loading-screen {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.8);
  z-index: 50;
}
.loading-screen.hidden {
  display: none;
}
.loading-screen .row {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
}
.loading-screen h2 {
  color: #ffffff;
  margin-bottom: 20px;
  letter-spacing: 5px;
  font-size: 48px;
  font-size: 3rem;
}
.loading-screen .loading {
  width: 38px;
  height: 38px;
  position: relative;
}
.loading-screen .loading--dot {
  width: 100%;
  height: 100%;
  position: absolute;
  opacity: 0;
}
.loading-screen .loading--dot::after {
  content: "";
  position: absolute;
  width: 5px;
  height: 5px;
  border-radius: 50%;
}
.loading-screen .loading--dot1 {
  -webkit-transform: rotate(225deg);
  transform: rotate(225deg);
  -webkit-animation: loading-orbit1 5s infinite;
  animation: loading-orbit1 5s infinite;
  -webkit-animation-delay: 0ms;
  animation-delay: 0ms;
}
.loading-screen .loading--dot1::after {
  background: #ffffff;
}
.loading-screen .loading--dot2 {
  -webkit-transform: rotate(215deg);
  transform: rotate(215deg);
  -webkit-animation: loading-orbit2 5s infinite;
  animation: loading-orbit2 5s infinite;
  -webkit-animation-delay: 125ms;
  animation-delay: 125ms;
}
.loading-screen .loading--dot2::after {
  background: #f4f4f4;
}
.loading-screen .loading--dot3 {
  -webkit-transform: rotate(205deg);
  transform: rotate(205deg);
  -webkit-animation: loading-orbit3 5s infinite;
  animation: loading-orbit3 5s infinite;
  -webkit-animation-delay: 250ms;
  animation-delay: 250ms;
}
.loading-screen .loading--dot3::after {
  background: #dddddd;
}
.loading-screen .loading--dot4 {
  -webkit-transform: rotate(195deg);
  transform: rotate(195deg);
  -webkit-animation: loading-orbit4 5s infinite;
  animation: loading-orbit4 5s infinite;
  -webkit-animation-delay: 375ms;
  animation-delay: 375ms;
}
.loading-screen .loading--dot4::after {
  background: #dddddd;
}
.loading-screen .loading--dot5 {
  -webkit-transform: rotate(185deg);
  transform: rotate(185deg);
  -webkit-animation: loading-orbit5 5s infinite;
  animation: loading-orbit5 5s infinite;
  -webkit-animation-delay: 500ms;
  animation-delay: 500ms;
}
.loading-screen .loading--dot5::after {
  background: #b2b2b2;
}

.breadcrumb {
  padding-top: 20px;
}
.breadcrumb ul li {
  padding-right: 10px;
  display: inline;
}
.breadcrumb ul li:not(:last-child):after {
  content: "//";
  font-size: 18px;
  font-size: 1.125rem;
  margin-left: 10px;
}

.sidebar-article {
  display: grid;
  grid-template-columns: 1fr;
  gap: 40px;
  margin-bottom: 40px;
}
.sidebar-article--informations .bloc-noir {
  background-color: #363636;
  color: #ffffff;
  padding: 20px 10px;
}
.sidebar-article--informations .bloc-noir p:not(:last-child) {
  margin-bottom: 20px;
}
.sidebar-article--informations .bloc-vert {
  background-color: #62b044;
  padding: 10px;
}
.sidebar-article--informations .bloc-vert p {
  color: #ffffff;
  text-transform: uppercase;
}
.sidebar-article--informations .bloc-vert p:not(:last-child) {
  margin-bottom: 20px;
}
.sidebar-article--conseils {
  background-color: #f4f4f4;
  padding: 20px 10px;
}
.sidebar-article--conseils h3 {
  color: #0179c2;
  text-transform: uppercase;
  margin-bottom: 20px;
}
.sidebar-article--conseils .conteneur--bloc {
  padding: 20px 0;
  border-top: 1px solid #888888;
}
.sidebar-article--conseils .conteneur--bloc h5 {
  margin-bottom: 10px;
}
.sidebar-article--conseils .conteneur--bloc:not(:last-child) {
  margin-bottom: 10px;
  border-bottom: 1px solid #888888;
}
.sidebar-article--documents h3 {
  margin-bottom: 20px;
}
.sidebar-article--documents a.link {
  display: block;
  padding-left: 20px;
}
.sidebar-article--documents a.link:not(:last-child) {
  margin-bottom: 20px;
}
.sidebar-article--documents a.link::after {
  content: "";
  display: inline-block;
  height: 12px;
  width: 12px;
  background-image: url(/media/icones/lien-externe.svg);
  background-size: 12px;
  background-position: center;
  margin-left: 10px;
}
@media (max-width: 1024px) {
  .sidebar-article {
    grid-template-columns: 1fr 1fr;
    -webkit-column-gap: 20px;
    -moz-column-gap: 20px;
    column-gap: 20px;
    margin-bottom: 0;
  }
}
@media (max-width: 600px) {
  .sidebar-article {
    grid-template-columns: 1fr;
  }
}

.sidebar-blogue {
  margin-bottom: 40px;
}
.sidebar-blogue--auteur {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.sidebar-blogue--auteur .image {
  margin-right: 10px;
}
.sidebar-blogue--auteur .texte h5 {
  margin-bottom: 10px;
}
.sidebar-blogue--articles {
  margin-top: 40px;
}
.sidebar-blogue--articles h3 {
  margin-bottom: 20px;
}
.sidebar-blogue--articles .bloc {
  padding-left: 20px;
}
.sidebar-blogue--articles .bloc:not(:last-child) {
  margin-bottom: 20px;
}
.sidebar-blogue--articles .bloc p {
  font-style: italic;
}
.sidebar-blogue--articles .bloc a.link {
  text-decoration: none;
}
.sidebar-blogue--publicite {
  margin-top: 40px;
}
@media (max-width: 1024px) {
  .sidebar-blogue {
    margin-bottom: 0;
  }
}

.abonnez-vous {
  padding: 100px 0;
  background-color: #f4f4f4;
}
.abonnez-vous .btn-block {
  margin-top: 40px;
}
@media (max-width: 600px) {
  .abonnez-vous {
    padding: 80px 0;
  }
}

.publicite-top {
  padding: 40px 0;
}
.publicite-top__conteneur {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 40px;
}
.publicite-top__conteneur .slider {
  width: 100%;
  overflow: hidden;
}
.publicite-top__conteneur .slider.slick-dotted.slick-slider {
  margin-bottom: 0;
}
.publicite-top__item {
  display: block;
}
.publicite-top__item img {
  display: block;
  margin: auto;
}
.publicite-top .slick-dots {
  bottom: 0;
}
.publicite-top .slick-dots .slick-active {
  opacity: 100%;
}
.publicite-top .slick-dots li {
  width: 50px;
  height: 5px;
  opacity: 50%;
  border-radius: 10px;
  background-color: #ffffff;
}
.publicite-top .slick-dots li button::before {
  content: "";
}
@media (max-width: 768px) {
  .publicite-top {
    padding: 20px 0;
  }
  .publicite-top__conteneur {
    gap: 20px;
  }
}
@media (max-width: 600px) {
  .publicite-top__conteneur {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}