@charset "UTF-8";
/* Stylesheet for Nouvelle Image / Jérôme Sevrette - franck@ouik.fr */
/* base */
/* Soft reset + base - sass/_rebase
-------------------------------------------------------- */
html {
  box-sizing: border-box;
}

*,
*:before,
*:after {
  box-sizing: inherit;
}

html, body {
  margin: 0;
  padding: 0;
}

ul, ol {
  padding-left: 1em;
}

ul.unstyled {
  list-style: outside none none;
}

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

img {
  border: 0 none;
  vertical-align: middle;
  height: auto;
}

audio, canvas, video {
  display: inline-block;
}

svg:not(:root) {
  overflow: hidden;
}

figure {
  margin: 0;
}

html {
  font-size: 100%;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body {
  font-family: SourceSans, helvetica, arial, sans-serif;
  font-weight: 200;
  font-size: 18px;
  line-height: 1.5;
  color: #333;
}

a {
  color: #666;
  text-decoration: none;
}

[id=content] a {
  border-bottom: 1px dotted;
  transition: all 0.7s linear 0s;
}
[id=content] a:focus, [id=content] a:hover {
  border-bottom: 1px solid;
}

p, ul, ol, dl, blockquote, pre, td, th, label, textarea, caption, details, figure, hgroup {
  line-height: 1.5;
  margin-bottom: 0;
  margin-top: 0.75em;
}

h2 + p, h3 + p, h4 + p {
  margin-top: 0;
}

h2 + h3 {
  margin-top: 0.8em;
}

h1, .h1-like {
  font-size: 2.2222222222em;
  font-weight: 200;
  text-transform: uppercase;
  line-height: 1.1;
  padding: 0.3em 0.5em;
  text-align: center;
  margin: 0 0 1em;
  color: #860102;
}
@media screen and (min-width: 30em) {
  h1, .h1-like {
    padding: 0.3em 0;
  }
}
@media screen and (min-width: 40em) {
  h1, .h1-like {
    font-size: 2.9444444444em;
  }
}

h2, .h2-like {
  font-weight: 600;
  font-size: 1.4444444444em;
  line-height: 1.2;
  margin-bottom: 0;
  margin-top: 0.75em;
}

h3, .h3-like {
  font-weight: bold;
  font-size: 1.1111111111em;
  color: #860102;
  line-height: 1.2;
  margin-bottom: 0;
  margin-top: 1.6em;
}

h4, .h4-like {
  font-size: 1em;
  font-weight: 400;
  line-height: 1.2;
  margin-bottom: 0;
  margin-top: 1em;
}

h5, .h5-like {
  font-size: 0.8888888889em;
  line-height: 1.2;
  margin-bottom: 0;
  margin-top: 0.875em;
}

em {
  font-style: italic;
  font-weight: 200;
}

strong {
  font-style: normal;
  font-weight: 600;
}

figcaption {
  font-style: italic;
  text-align: center;
  color: #555;
}

.mt0 {
  margin-top: 0;
}

.mt1 {
  margin-top: 1em;
}

.mt2 {
  margin-top: 2em;
}

.mb1 {
  margin-bottom: 1em;
}

.mr1 {
  margin-right: 1em;
}

.mr05 {
  margin-right: 0.5em;
}

.error {
  color: red;
}

.hidden {
  left: -7000px;
  overflow: hidden;
  position: absolute;
}

/* skip-links */
.skip-links {
  position: absolute;
}
.skip-links a {
  position: absolute;
  left: -7000px;
  padding: 0.5em;
  background: #000;
  color: #fff;
  text-decoration: none;
}
.skip-links a:focus {
  position: static;
}

p:first-child, ul:first-child, ol:first-child, dl:first-child, blockquote:first-child, pre:first-child, h1:first-child, h2:first-child, h3:first-child, h4:first-child, h5:first-child, h6:first-child {
  margin-top: 0;
}

li p, li ul, li ol {
  margin-bottom: 0;
  margin-top: 0;
}

img, table, td, blockquote, code, pre, textarea, video, iframe {
  max-width: 100%;
}

body > script {
  display: none;
}

.mod {
  overflow: hidden;
}

.clear, .line, .row {
  clear: both;
}

sup,
sub {
  vertical-align: 0;
  position: relative;
}

sup {
  bottom: 1ex;
}

sub {
  top: 0.5ex;
}

/*textarea,
table,
td,
th,
code,
pre,
samp,
div,
p,*/
[id=content],
.cut {
  word-wrap: break-word;
  -webkit-hyphens: auto;
  -ms-hyphens: auto;
  hyphens: auto;
}

/* pour supprimer la césure si besoin */
.nocut {
  word-wrap: normal;
  -webkit-hyphens: none;
  -ms-hyphens: none;
  hyphens: none;
}

.clearfix:after {
  display: table;
  clear: both;
  content: "";
}

.row {
  display: table;
  table-layout: fixed;
  width: 100%;
}

.row > *, .col {
  display: block;
}
@media screen and (min-width: 40em) {
  .row > *, .col {
    display: table-cell;
    vertical-align: top;
  }
}

.inbl {
  display: inline-block;
  vertical-align: top;
}

@media screen and (min-width: 40em) {
  .left {
    float: left;
  }
}

@media screen and (min-width: 40em) {
  img.left {
    margin-right: 1em;
  }
}

@media screen and (min-width: 40em) {
  .right {
    float: right;
  }
}

@media screen and (min-width: 40em) {
  img.right {
    margin-left: 1em;
  }
}

img.left, img.right {
  margin-bottom: 5px;
}

.center {
  margin-left: auto;
  margin-right: auto;
}

.center-mw {
  margin-left: auto;
  margin-right: auto;
  max-width: 1200px;
}

.mlr05 {
  margin-left: 0.5em;
  margin-right: 0.5em;
}
@media screen and (min-width: 75em) {
  .mlr05 {
    margin-left: auto;
    margin-right: auto;
  }
}

.txtleft {
  text-align: left;
}

.txtright {
  text-align: right;
}

.txtcenter {
  text-align: center;
}

.small-visible {
  display: block;
}
@media screen and (min-width: 40em) {
  .small-visible {
    display: none;
  }
}

.small-hidden {
  display: none;
}
@media screen and (min-width: 40em) {
  .small-hidden {
    display: block;
  }
}

@media print {
  p, blockquote {
    orphans: 2;
    widows: 2;
  }
  blockquote, ul, ol {
    page-break-inside: avoid;
  }
  h1, h2, h3, caption {
    page-break-after: avoid;
  }
  /* Hide blocks on the print output */
  .header,
  #nav,
  .footer,
  .btn,
  img,
  .share,
  .noprint {
    display: none;
  }
  /* Change template and content styling suitable for printing on plain paper */
  body {
    height: auto;
    background: #fff;
    color: #333;
  }
  .link-block, .rens-block {
    background: #fff;
  }
  a:link, a:visited, a:active {
    color: #333;
    text-decoration: underline;
  }
  h1, h2, h3 {
    padding-bottom: 1px;
    border-bottom: 1px solid #333;
    color: #000 !important;
  }
  h4, h5, h6 {
    color: #000;
  }
}
/* ---------------------------------- */
/* ==Grillade : Simple Grid System    */
/* ---------------------------------- */
/* Doc : http://grillade.knacss.com */
@media (min-width: 640px) {
  [class*=" grid-"],
  [class^=grid-] {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
  }
  [class*=" grid-"] > *,
  [class^=grid-] > * {
    box-sizing: border-box;
    min-width: 0;
    min-height: 0;
  }
}
@media (min-width: 640px) {
  .grid,
  .grid--reverse {
    display: flex;
  }
  .grid > *,
  .grid--reverse > * {
    flex: 1 1 0%;
    box-sizing: border-box;
    min-width: 0;
    min-height: 0;
  }
  .grid.has-gutter > * + *,
  .grid--reverse.has-gutter > * + * {
    margin-left: calc(1rem - 0.01px);
  }
  .grid.has-gutter-l > * + *,
  .grid--reverse.has-gutter-l > * + * {
    margin-left: calc(2rem - 0.01px);
  }
  .grid.has-gutter-xl > * + *,
  .grid--reverse.has-gutter-xl > * + * {
    margin-left: calc(4rem - 0.01px);
  }
}
@media (min-width: 640px) {
  [class*=grid-2] > * {
    width: calc(100% / 2 - 0.01px);
  }
  [class*=grid-2].has-gutter {
    margin-right: -0.5rem;
    margin-left: -0.5rem;
  }
  [class*=grid-2].has-gutter > * {
    width: calc(100% / 2 - 1rem - 0.01px);
    margin-right: 0.5rem;
    margin-left: 0.5rem;
  }
  [class*=grid-2].has-gutter-l {
    margin-right: -1rem;
    margin-left: -1rem;
  }
  [class*=grid-2].has-gutter-l > * {
    width: calc(100% / 2 - 2rem - 0.01px);
    margin-right: 1rem;
    margin-left: 1rem;
  }
  [class*=grid-2].has-gutter-xl {
    margin-right: -2rem;
    margin-left: -2rem;
  }
  [class*=grid-2].has-gutter-xl > * {
    width: calc(100% / 2 - 4rem - 0.01px);
    margin-right: 2rem;
    margin-left: 2rem;
  }
  [class*=grid-3] > * {
    width: calc(100% / 3 - 0.01px);
  }
  [class*=grid-3].has-gutter {
    margin-right: -0.5rem;
    margin-left: -0.5rem;
  }
  [class*=grid-3].has-gutter > * {
    width: calc(100% / 3 - 1rem - 0.01px);
    margin-right: 0.5rem;
    margin-left: 0.5rem;
  }
  [class*=grid-3].has-gutter-l {
    margin-right: -1rem;
    margin-left: -1rem;
  }
  [class*=grid-3].has-gutter-l > * {
    width: calc(100% / 3 - 2rem - 0.01px);
    margin-right: 1rem;
    margin-left: 1rem;
  }
  [class*=grid-3].has-gutter-xl {
    margin-right: -2rem;
    margin-left: -2rem;
  }
  [class*=grid-3].has-gutter-xl > * {
    width: calc(100% / 3 - 4rem - 0.01px);
    margin-right: 2rem;
    margin-left: 2rem;
  }
  [class*=grid-4] > * {
    width: calc(100% / 4 - 0.01px);
  }
  [class*=grid-4].has-gutter {
    margin-right: -0.5rem;
    margin-left: -0.5rem;
  }
  [class*=grid-4].has-gutter > * {
    width: calc(100% / 4 - 1rem - 0.01px);
    margin-right: 0.5rem;
    margin-left: 0.5rem;
  }
  [class*=grid-4].has-gutter-l {
    margin-right: -1rem;
    margin-left: -1rem;
  }
  [class*=grid-4].has-gutter-l > * {
    width: calc(100% / 4 - 2rem - 0.01px);
    margin-right: 1rem;
    margin-left: 1rem;
  }
  [class*=grid-4].has-gutter-xl {
    margin-right: -2rem;
    margin-left: -2rem;
  }
  [class*=grid-4].has-gutter-xl > * {
    width: calc(100% / 4 - 4rem - 0.01px);
    margin-right: 2rem;
    margin-left: 2rem;
  }
  [class*=grid-5] > * {
    width: calc(100% / 5 - 0.01px);
  }
  [class*=grid-5].has-gutter {
    margin-right: -0.5rem;
    margin-left: -0.5rem;
  }
  [class*=grid-5].has-gutter > * {
    width: calc(100% / 5 - 1rem - 0.01px);
    margin-right: 0.5rem;
    margin-left: 0.5rem;
  }
  [class*=grid-5].has-gutter-l {
    margin-right: -1rem;
    margin-left: -1rem;
  }
  [class*=grid-5].has-gutter-l > * {
    width: calc(100% / 5 - 2rem - 0.01px);
    margin-right: 1rem;
    margin-left: 1rem;
  }
  [class*=grid-5].has-gutter-xl {
    margin-right: -2rem;
    margin-left: -2rem;
  }
  [class*=grid-5].has-gutter-xl > * {
    width: calc(100% / 5 - 4rem - 0.01px);
    margin-right: 2rem;
    margin-left: 2rem;
  }
  [class*=grid-6] > * {
    width: calc(100% / 6 - 0.01px);
  }
  [class*=grid-6].has-gutter {
    margin-right: -0.5rem;
    margin-left: -0.5rem;
  }
  [class*=grid-6].has-gutter > * {
    width: calc(100% / 6 - 1rem - 0.01px);
    margin-right: 0.5rem;
    margin-left: 0.5rem;
  }
  [class*=grid-6].has-gutter-l {
    margin-right: -1rem;
    margin-left: -1rem;
  }
  [class*=grid-6].has-gutter-l > * {
    width: calc(100% / 6 - 2rem - 0.01px);
    margin-right: 1rem;
    margin-left: 1rem;
  }
  [class*=grid-6].has-gutter-xl {
    margin-right: -2rem;
    margin-left: -2rem;
  }
  [class*=grid-6].has-gutter-xl > * {
    width: calc(100% / 6 - 4rem - 0.01px);
    margin-right: 2rem;
    margin-left: 2rem;
  }
  [class*=grid-7] > * {
    width: calc(100% / 7 - 0.01px);
  }
  [class*=grid-7].has-gutter {
    margin-right: -0.5rem;
    margin-left: -0.5rem;
  }
  [class*=grid-7].has-gutter > * {
    width: calc(100% / 7 - 1rem - 0.01px);
    margin-right: 0.5rem;
    margin-left: 0.5rem;
  }
  [class*=grid-7].has-gutter-l {
    margin-right: -1rem;
    margin-left: -1rem;
  }
  [class*=grid-7].has-gutter-l > * {
    width: calc(100% / 7 - 2rem - 0.01px);
    margin-right: 1rem;
    margin-left: 1rem;
  }
  [class*=grid-7].has-gutter-xl {
    margin-right: -2rem;
    margin-left: -2rem;
  }
  [class*=grid-7].has-gutter-xl > * {
    width: calc(100% / 7 - 4rem - 0.01px);
    margin-right: 2rem;
    margin-left: 2rem;
  }
  [class*=grid-8] > * {
    width: calc(100% / 8 - 0.01px);
  }
  [class*=grid-8].has-gutter {
    margin-right: -0.5rem;
    margin-left: -0.5rem;
  }
  [class*=grid-8].has-gutter > * {
    width: calc(100% / 8 - 1rem - 0.01px);
    margin-right: 0.5rem;
    margin-left: 0.5rem;
  }
  [class*=grid-8].has-gutter-l {
    margin-right: -1rem;
    margin-left: -1rem;
  }
  [class*=grid-8].has-gutter-l > * {
    width: calc(100% / 8 - 2rem - 0.01px);
    margin-right: 1rem;
    margin-left: 1rem;
  }
  [class*=grid-8].has-gutter-xl {
    margin-right: -2rem;
    margin-left: -2rem;
  }
  [class*=grid-8].has-gutter-xl > * {
    width: calc(100% / 8 - 4rem - 0.01px);
    margin-right: 2rem;
    margin-left: 2rem;
  }
  [class*=grid-9] > * {
    width: calc(100% / 9 - 0.01px);
  }
  [class*=grid-9].has-gutter {
    margin-right: -0.5rem;
    margin-left: -0.5rem;
  }
  [class*=grid-9].has-gutter > * {
    width: calc(100% / 9 - 1rem - 0.01px);
    margin-right: 0.5rem;
    margin-left: 0.5rem;
  }
  [class*=grid-9].has-gutter-l {
    margin-right: -1rem;
    margin-left: -1rem;
  }
  [class*=grid-9].has-gutter-l > * {
    width: calc(100% / 9 - 2rem - 0.01px);
    margin-right: 1rem;
    margin-left: 1rem;
  }
  [class*=grid-9].has-gutter-xl {
    margin-right: -2rem;
    margin-left: -2rem;
  }
  [class*=grid-9].has-gutter-xl > * {
    width: calc(100% / 9 - 4rem - 0.01px);
    margin-right: 2rem;
    margin-left: 2rem;
  }
  [class*=grid-10] > * {
    width: calc(100% / 10 - 0.01px);
  }
  [class*=grid-10].has-gutter {
    margin-right: -0.5rem;
    margin-left: -0.5rem;
  }
  [class*=grid-10].has-gutter > * {
    width: calc(100% / 10 - 1rem - 0.01px);
    margin-right: 0.5rem;
    margin-left: 0.5rem;
  }
  [class*=grid-10].has-gutter-l {
    margin-right: -1rem;
    margin-left: -1rem;
  }
  [class*=grid-10].has-gutter-l > * {
    width: calc(100% / 10 - 2rem - 0.01px);
    margin-right: 1rem;
    margin-left: 1rem;
  }
  [class*=grid-10].has-gutter-xl {
    margin-right: -2rem;
    margin-left: -2rem;
  }
  [class*=grid-10].has-gutter-xl > * {
    width: calc(100% / 10 - 4rem - 0.01px);
    margin-right: 2rem;
    margin-left: 2rem;
  }
  [class*=grid-11] > * {
    width: calc(100% / 11 - 0.01px);
  }
  [class*=grid-11].has-gutter {
    margin-right: -0.5rem;
    margin-left: -0.5rem;
  }
  [class*=grid-11].has-gutter > * {
    width: calc(100% / 11 - 1rem - 0.01px);
    margin-right: 0.5rem;
    margin-left: 0.5rem;
  }
  [class*=grid-11].has-gutter-l {
    margin-right: -1rem;
    margin-left: -1rem;
  }
  [class*=grid-11].has-gutter-l > * {
    width: calc(100% / 11 - 2rem - 0.01px);
    margin-right: 1rem;
    margin-left: 1rem;
  }
  [class*=grid-11].has-gutter-xl {
    margin-right: -2rem;
    margin-left: -2rem;
  }
  [class*=grid-11].has-gutter-xl > * {
    width: calc(100% / 11 - 4rem - 0.01px);
    margin-right: 2rem;
    margin-left: 2rem;
  }
  [class*=grid-12] > * {
    width: calc(100% / 12 - 0.01px);
  }
  [class*=grid-12].has-gutter {
    margin-right: -0.5rem;
    margin-left: -0.5rem;
  }
  [class*=grid-12].has-gutter > * {
    width: calc(100% / 12 - 1rem - 0.01px);
    margin-right: 0.5rem;
    margin-left: 0.5rem;
  }
  [class*=grid-12].has-gutter-l {
    margin-right: -1rem;
    margin-left: -1rem;
  }
  [class*=grid-12].has-gutter-l > * {
    width: calc(100% / 12 - 2rem - 0.01px);
    margin-right: 1rem;
    margin-left: 1rem;
  }
  [class*=grid-12].has-gutter-xl {
    margin-right: -2rem;
    margin-left: -2rem;
  }
  [class*=grid-12].has-gutter-xl > * {
    width: calc(100% / 12 - 4rem - 0.01px);
    margin-right: 2rem;
    margin-left: 2rem;
  }
}
.push {
  margin-left: auto !important;
}

.pull {
  margin-right: auto !important;
}

.item-first {
  order: -1;
}

.item-last {
  order: 1;
}

[class*=grid-][class*="--reverse"] {
  flex-direction: row-reverse;
}

@media (min-width: 640px) {
  .full {
    flex: 0 0 auto;
    width: calc(100% / 1 - 0.01px);
  }
  .has-gutter .full {
    width: calc(100% / 1 - 1rem - 0.01px);
  }
  .has-gutter-l .full {
    width: calc(100% / 1 - 2rem - 0.01px);
  }
  .has-gutter-xl .full {
    width: calc(100% / 1 - 4rem - 0.01px);
  }
  .one-half {
    flex: 0 0 auto;
    width: calc(100% / 2 - 0.01px);
  }
  .has-gutter .one-half {
    width: calc(100% / 2 - 1rem - 0.01px);
  }
  .has-gutter-l .one-half {
    width: calc(100% / 2 - 2rem - 0.01px);
  }
  .has-gutter-xl .one-half {
    width: calc(100% / 2 - 4rem - 0.01px);
  }
  .one-third {
    flex: 0 0 auto;
    width: calc(100% / 3 - 0.01px);
  }
  .has-gutter .one-third {
    width: calc(100% / 3 - 1rem - 0.01px);
  }
  .has-gutter-l .one-third {
    width: calc(100% / 3 - 2rem - 0.01px);
  }
  .has-gutter-xl .one-third {
    width: calc(100% / 3 - 4rem - 0.01px);
  }
  .one-quarter {
    flex: 0 0 auto;
    width: calc(100% / 4 - 0.01px);
  }
  .has-gutter .one-quarter {
    width: calc(100% / 4 - 1rem - 0.01px);
  }
  .has-gutter-l .one-quarter {
    width: calc(100% / 4 - 2rem - 0.01px);
  }
  .has-gutter-xl .one-quarter {
    width: calc(100% / 4 - 4rem - 0.01px);
  }
  .one-fifth {
    flex: 0 0 auto;
    width: calc(100% / 5 - 0.01px);
  }
  .has-gutter .one-fifth {
    width: calc(100% / 5 - 1rem - 0.01px);
  }
  .has-gutter-l .one-fifth {
    width: calc(100% / 5 - 2rem - 0.01px);
  }
  .has-gutter-xl .one-fifth {
    width: calc(100% / 5 - 4rem - 0.01px);
  }
  .one-sixth {
    flex: 0 0 auto;
    width: calc(100% / 6 - 0.01px);
  }
  .has-gutter .one-sixth {
    width: calc(100% / 6 - 1rem - 0.01px);
  }
  .has-gutter-l .one-sixth {
    width: calc(100% / 6 - 2rem - 0.01px);
  }
  .has-gutter-xl .one-sixth {
    width: calc(100% / 6 - 4rem - 0.01px);
  }
  .two-thirds {
    flex: 0 0 auto;
    width: calc(100% / 3 * 2 - 0.01px);
  }
  .has-gutter .two-thirds {
    width: calc(100% / 3 * 2 - 1rem - 0.01px);
  }
  .has-gutter-l .two-thirds {
    width: calc(100% / 3 * 2 - 2rem - 0.01px);
  }
  .has-gutter-xl .two-thirds {
    width: calc(100% / 3 * 2 - 4rem - 0.01px);
  }
  .three-quarters {
    flex: 0 0 auto;
    width: calc(100% / 4 * 3 - 0.01px);
  }
  .has-gutter .three-quarters {
    width: calc(100% / 4 * 3 - 1rem - 0.01px);
  }
  .has-gutter-l .three-quarters {
    width: calc(100% / 4 * 3 - 2rem - 0.01px);
  }
  .has-gutter-xl .three-quarters {
    width: calc(100% / 4 * 3 - 4rem - 0.01px);
  }
  .five-sixths {
    flex: 0 0 auto;
    width: calc(100% / 6 * 5 - 0.01px);
  }
  .has-gutter .five-sixths {
    width: calc(100% / 6 * 5 - 1rem - 0.01px);
  }
  .has-gutter-l .five-sixths {
    width: calc(100% / 6 * 5 - 2rem - 0.01px);
  }
  .has-gutter-xl .five-sixths {
    width: calc(100% / 6 * 5 - 4rem - 0.01px);
  }
}
/* Responsive Small Breakpoint */
@media (min-width: 640px) and (max-width: 991px) {
  [class*=-small-1] > * {
    width: calc(100% / 1 - 0.01px);
  }
  [class*=-small-1].has-gutter > * {
    width: calc(100% / 1 - 1rem - 0.01px);
  }
  [class*=-small-1].has-gutter-l > * {
    width: calc(100% / 1 - 2rem - 0.01px);
  }
  [class*=-small-1].has-gutter-xl > * {
    width: calc(100% / 1 - 4rem - 0.01px);
  }
  [class*=-small-2] > * {
    width: calc(100% / 2 - 0.01px);
  }
  [class*=-small-2].has-gutter > * {
    width: calc(100% / 2 - 1rem - 0.01px);
  }
  [class*=-small-2].has-gutter-l > * {
    width: calc(100% / 2 - 2rem - 0.01px);
  }
  [class*=-small-2].has-gutter-xl > * {
    width: calc(100% / 2 - 4rem - 0.01px);
  }
  [class*=-small-3] > * {
    width: calc(100% / 3 - 0.01px);
  }
  [class*=-small-3].has-gutter > * {
    width: calc(100% / 3 - 1rem - 0.01px);
  }
  [class*=-small-3].has-gutter-l > * {
    width: calc(100% / 3 - 2rem - 0.01px);
  }
  [class*=-small-3].has-gutter-xl > * {
    width: calc(100% / 3 - 4rem - 0.01px);
  }
  [class*=-small-4] > * {
    width: calc(100% / 4 - 0.01px);
  }
  [class*=-small-4].has-gutter > * {
    width: calc(100% / 4 - 1rem - 0.01px);
  }
  [class*=-small-4].has-gutter-l > * {
    width: calc(100% / 4 - 2rem - 0.01px);
  }
  [class*=-small-4].has-gutter-xl > * {
    width: calc(100% / 4 - 4rem - 0.01px);
  }
}
/**
* FONTS
*/
@font-face {
  font-family: "SourceSans";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("index.php?tf=fonts/SourceSansPro-Regular.woff2") format("woff2"), url("index.php?tf=fonts/SourceSansPro-Regular.woff") format("woff");
}
@font-face {
  font-family: "SourceSans";
  font-style: normal;
  font-weight: 200;
  font-display: swap;
  src: url("index.php?tf=fonts/SourceSansPro-Light.woff2") format("woff2"), url("index.php?tf=fonts/SourceSansPro-Light.woff") format("woff");
}
@font-face {
  font-family: "SourceSans";
  font-style: italic;
  font-weight: 200;
  font-display: swap;
  src: url("index.php?tf=fonts/SourceSansPro-LightIt.woff2") format("woff2"), url("index.php?tf=fonts/SourceSansPro-LightIt.woff") format("woff");
}
@font-face {
  font-family: "SourceSans";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("index.php?tf=fonts/SourceSansPro-Bold.woff2") format("woff2"), url("index.php?tf=fonts/SourceSansPro-Bold.woff") format("woff");
}
@font-face {
  font-family: "SourceSans";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("index.php?tf=fonts/SourceSansPro-Semibold.woff2") format("woff2"), url("index.php?tf=fonts/SourceSansPro-Semibold.woff") format("woff");
}
@font-face {
  font-family: "SourceSans";
  font-style: italic;
  font-weight: 600;
  font-display: swap;
  src: url("index.php?tf=fonts/SourceSansPro-SemiboldIt.woff2") format("woff2"), url("index.php?tf=fonts/SourceSansPro-SemiboldIt.woff") format("woff");
}
@font-face {
  font-family: "SourceSans";
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url("index.php?tf=fonts/SourceSansPro-It.woff2") format("woff2"), url("index.php?tf=fonts/SourceSansPro-It.woff") format("woff");
}
@font-face {
  font-family: "SourceSans";
  font-style: italic;
  font-weight: 700;
  font-display: swap;
  src: url("index.php?tf=fonts/SourceSansPro-BoldIt.woff2") format("woff2"), url("index.php?tf=fonts/SourceSansPro-BoldIt.woff") format("woff");
}
/* Forms - sass/_form
-------------------------------------------------------- */
/* reset */
form, fieldset {
  border: medium none;
}

input, button, select, label {
  font-family: inherit;
  font-size: inherit;
  vertical-align: middle;
}

label {
  display: block;
  cursor: pointer;
  max-width: 90%;
  vertical-align: middle;
}

legend {
  border: 0 none;
  max-width: 100%;
  white-space: normal;
}

textarea {
  font-family: inherit;
  font-size: inherit;
  min-height: 5em;
  overflow: auto;
  resize: vertical;
  vertical-align: top;
}

button, input[type=button], input[type=reset], input[type=submit] {
  cursor: pointer;
}

input[type=checkbox], input[type=radio] {
  padding: 0;
  margin: 0;
}

input:-moz-placeholder, textarea:-moz-placeholder {
  color: #777;
}

button::-moz-focus-inner, input[type=button]::-moz-focus-inner, input[type=reset]::-moz-focus-inner, input[type=submit]::-moz-focus-inner {
  border: 0 none;
  padding: 0;
}

/* personnalisation form
---------------------------------- */
fieldset {
  padding: 0;
}

label {
  padding: 0 0.5em 0 0;
  line-height: 1.8;
}

input, textarea {
  background: #fff;
  border: 1px solid #ccc;
  font-size: 1em;
}
input:hover, textarea:hover {
  border-color: #860102;
}

.field input, textarea {
  width: 100%;
}
@media screen and (min-width: 40em) {
  .field input, textarea {
    width: 60%;
  }
}

input:focus, textarea:focus {
  background-color: #faf8f8;
  border-color: #860102;
}

input[type=submit].btn {
  text-transform: uppercase;
  display: block;
  color: #860102;
  border-color: #860102;
  width: 8em;
  text-align: center;
  padding: 0.4em 0 0.3em;
  transition: all 0.5s linear 0s;
}
input[type=submit].btn:hover, input[type=submit].btn:focus {
  background: #860102;
  color: #fff;
}

/* modules */
/* Modules - sass/_modules
-------------------------------------------------------- */
/* responsives slides (home)
---------------------------------- */
.rslides {
  display: block;
  position: relative;
  list-style: none;
  overflow: hidden;
  width: 100%;
  padding: 0;
  margin: 0 auto;
}

.rslide {
  -webkit-backface-visibility: hidden;
  position: absolute;
  display: none;
  width: 100%;
  left: 0;
  top: 0;
}

.rslide:first-child {
  position: relative;
  display: block;
  float: left;
}

.rslides img {
  display: block;
  height: auto;
  float: left;
  width: 100%;
  border: 0;
}

/* rezo
---------------------------------- */
.rezo li {
  display: inline-block;
}

.rezo a img {
  transition: all 0.5s ease 0s;
}

.rezo a:hover img {
  transform: rotate(360deg);
}

/* bouton
---------------------------------- */
a.btn,
.btn a {
  background: transparent;
  color: #860102;
  font-size: 0.8888888889em;
  font-weight: bold;
  border: 1px solid #860102;
  margin-top: 1em;
  text-decoration: none;
  text-transform: uppercase;
  display: block;
  text-align: center;
  padding: 0.3em 1.5em;
  transition: all 0.5s linear 0s;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
a.btn:hover, a.btn:focus,
.btn a:hover,
.btn a:focus {
  background: #860102;
  color: #fff;
  border-color: #860102;
}

/* billets - entry
---------------------------------- */
.h1-wrapper {
  color: #860102;
}

.inner-post {
  margin: 0 0.5em;
}
@media screen and (min-width: 75em) {
  .inner-post {
    margin: 0 auto;
  }
}

.post.short {
  margin-bottom: 2.5em;
}
.post.short .post-featured-media {
  margin-bottom: 1em;
}

.post-title a {
  color: #860102;
  text-decoration: none;
}

.post object, .post video {
  width: 100%;
}

hr {
  height: 1px;
  padding: 0;
  margin: 2em 20em;
  color: #ddd;
  background-color: #ddd;
  border: 0;
}

/*.dc-post .post-featured-media, .dc-page .post-featured-media {
  margin: 1em 0 2em;
}*/
/* figcaption */
figure {
  position: relative;
}

figure figcaption {
  position: absolute;
  width: 100%;
  bottom: 0;
  color: #fff;
  padding: 0.5em;
  font-style: normal;
  font-size: 0.7777777778em;
  background-color: rgba(0, 0, 0, 0.5);
  transition: 0.5s ease;
  opacity: 0;
}

figure:hover figcaption {
  opacity: 1;
}

/* expand-collapse
---------------------------------- */
.js-to_expand[aria-hidden=true],
.js-to_expand[data-hidden=true] {
  display: none;
}
@media screen and (min-width: 40em) {
  .js-to_expand[aria-hidden=true],
  .js-to_expand[data-hidden=true] {
    display: block;
  }
}

.animated-expandmore__button {
  background: none;
  font-weight: normal;
  text-transform: uppercase;
  color: inherit;
  border: none;
  margin: 0 0 0.5em;
  padding: 0;
}
.animated-expandmore__button[aria-expanded=true] {
  margin: 0;
}

.menu .animated-expandmore__button:before,
.menu .animated-expandmore__button:before {
  content: "≡";
  color: #860102;
  padding: 0 0.5em;
}

/* This is the opened state */
.animated-expandmore__to_expand {
  display: block;
  overflow: hidden;
  opacity: 1;
  transition: visibility 0s ease, max-height 2s ease, opacity 2s ease;
  max-height: 30em;
  /* magic number for max-height = enough height */
  visibility: visible;
  transition-delay: 0.5s;
}

/* This is the hidden state */
[aria-hidden=true].animated-expandmore__to_expand {
  display: block;
  max-height: 0;
  opacity: 0;
  visibility: hidden;
  transition-delay: 2s, 0s, 0s;
}

/* image-hover (square-block)
---------------------------------- */
[class^=imghvr-],
[class*=" imghvr-"] {
  position: relative;
  display: inline-block;
  margin: 0px;
  max-width: 100%;
  color: #fff;
  overflow: hidden;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  transform: translateZ(0);
}

[class^=imghvr-] .square-block-img,
[class*=" imghvr-"] .square-block-img {
  vertical-align: top;
  max-width: 100%;
}

[class^=imghvr-] .square-block-content,
[class*=" imghvr-"] .square-block-content {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  color: #fff;
}

[class^=imghvr-],
[class*=" imghvr-"],
[class^=imghvr-]:before,
[class^=imghvr-]:after,
[class*=" imghvr-"]:before,
[class*=" imghvr-"]:after,
[class^=imghvr-] *,
[class*=" imghvr-"] *,
[class^=imghvr-] *:before,
[class^=imghvr-] *:after,
[class*=" imghvr-"] *:before,
[class*=" imghvr-"] *:after {
  box-sizing: border-box;
  transition: all 0.35s ease;
}

/* imghvr-fade-*
  ----------------------------- */
[class^=imghvr-fade] .square-block-content, [class*=" imghvr-fade"] .square-block-content {
  opacity: 0;
}
[class^=imghvr-fade]:hover .square-block-img, [class*=" imghvr-fade"]:hover .square-block-img {
  opacity: 0.5;
  transform: scale(1.1);
}
[class^=imghvr-fade]:hover .square-block-content, [class*=" imghvr-fade"]:hover .square-block-content {
  opacity: 1;
}
[class^=imghvr-fade]:hover .square-block-content, [class*=" imghvr-fade"]:hover .square-block-content {
  transform: translate(0, 0);
}

/* pdf, video, etc…
---------------------------------- */
/* nav helpers
---------------------------------- */
.pagination, .navlinks {
  text-align: center;
  margin-bottom: 2em;
}
.pagination a, .navlinks a {
  color: #860102;
}

.breadcrumb {
  margin: 1em 0;
  font-size: 0.7222222222em;
}
.breadcrumb a {
  color: #333;
}

/* gallery
---------------------------------- */
.gallery {
  margin-top: 1rem;
}

.gallery > * {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(380px, 1fr));
  grid-auto-flow: dense;
  gap: 1.2em;
}
.gallery > * a, .gallery > * a:focus, .gallery > * a:hover {
  border: none;
}

.gallery p > * {
  place-self: stretch;
}

.gallery img {
  width: 100%;
  height: auto;
  border: 1px solid #666;
  vertical-align: middle;
  transition: all 0.3s linear 0s;
}
.gallery img:focus, .gallery img:hover {
  opacity: 0.7;
}

/* retour haut de page
// use with script totop.js
-------------------------------- */
#toTop {
  background: transparent;
  bottom: 10px;
  color: #333;
  cursor: pointer;
  display: none;
  padding: 15px 5px;
  position: fixed;
  right: 10px;
  width: 50px;
  z-index: 10;
}

#toTop a {
  text-decoration: none;
}

/* Main navigation
------------------- */
.header__nav {
  font-size: 1.3333333333em;
  text-transform: uppercase;
  font-weight: 200;
  color: #000;
  text-align: center;
}
.header__nav li {
  display: inline-block;
  width: 49%;
  border-bottom: 1px dotted #ccc;
}
.header__nav li:first-child {
  border-left: none;
}
.header__nav li:nth-of-type(2n+1) {
  border-right: 1px dotted #ccc;
}
.header__nav a {
  color: #000;
  transition: all 0.5s linear 0s;
  padding: 0.15em 0.5em;
  display: block;
  position: relative;
  overflow: hidden;
  transform: perspective(1px) translateZ(0);
}
.header__nav a:before {
  content: "";
  position: absolute;
  z-index: -1;
  left: 30%;
  right: 30%;
  bottom: 0;
  background: #860102;
  height: 2px;
  transition-property: left, right;
  transition-duration: 0.3s;
  transition-timing-function: ease-out;
}
.header__nav a:focus:before, .header__nav a:hover:before {
  left: 30px;
  right: 30px;
}

@media screen and (min-width: 40em) {
  .header__nav li {
    width: auto;
    text-align: center;
    border: none;
  }
  .header__nav li:first-child {
    margin-left: 0;
  }
  .header__nav li:nth-of-type(2n+1) {
    border: none;
  }
  .header__nav li.active a::before {
    background: #ddd;
    left: 30px;
    right: 30px;
  }
}
/* layout */
/* header layout - sass/_l-header
-------------------------------------------------------- */
.header {
  background: #fff;
  color: #860102;
  padding: 0.5em;
}
.header a {
  text-decoration: none;
}
@media screen and (min-width: 75em) {
  .header {
    padding: 1em 0;
  }
}

.header-flex {
  display: block;
}
@media screen and (min-width: 40em) {
  .header-flex {
    display: flex;
    flex-wrap: wrap;
  }
  .header-flex > * {
    flex: 1 0 50%;
  }
}

.banner {
  margin: 0 auto;
  max-width: 13.8888888889em;
}
@media screen and (min-width: 40em) {
  .banner {
    margin-left: 10px;
  }
}

.nav-wrapper {
  margin: auto 0;
  padding: 1em 0 0;
}

.menu {
  text-align: center;
}

.social-media {
  text-align: center;
  margin: auto;
}
@media screen and (min-width: 40em) {
  .social-media {
    text-align: right;
  }
}
@media screen and (min-width: 75em) {
  .social-media {
    max-width: 8.8888888889em;
    order: 1;
  }
}

/* Global layout & colors - sass/_layout
-------------------------------------------------------- */
/* layout global
------------------ */
[id=wrapper] {
  background: #fff;
  color: inherit;
}

/* real content wrapper */
.content-wrapper {
  display: flex;
  /*align-items: flex-start;*/
  flex-direction: column-reverse;
}
@media screen and (min-width: 40em) {
  .content-wrapper {
    flex-direction: row;
  }
}

/* main content */
.post-content {
  flex: 1 1 0%;
  margin: 0 0 2em;
}
@media screen and (min-width: 40em) {
  .post-content {
    order: 0;
  }
}

@media screen and (min-width: 40em) {
  .post-Presentation .post-content,
  .post-Actualites .post-content {
    order: 0;
    margin: 0 0 2em 50px;
  }
}

.post-date {
  font-size: 0.8888888889em;
  font-weight: bold;
}

/* sidebar */
.sidebar {
  width: 100%;
  font-size: 0.7777777778em;
  margin-top: 1em;
}
.sidebar p {
  line-height: 1.2;
}
@media screen and (min-width: 40em) {
  .sidebar {
    width: 27em;
    margin: 0;
  }
}

/* homepage
------------------ */
.arrow {
  margin: -80px 0 80px;
  text-align: center;
  z-index: 100;
  position: relative;
}
.arrow a {
  border: none;
}
.arrow a:focus, .arrow a:hover {
  border: none;
}
.arrow a:focus svg, .arrow a:hover svg {
  transition: transform 0.3s linear 0s;
  transform: translateY(6px);
}

h1.title {
  margin: 0;
  padding: 0;
}

.home-news {
  margin-top: 2em;
}
.home-news h2 {
  color: #000;
}

.home-news .post, .cat-Actualites .post {
  margin-bottom: 2em;
}
.home-news h3.post-title, .cat-Actualites h3.post-title {
  text-transform: none;
  font-size: 1.2222222222em;
  margin-top: 0.5em;
}
.home-news .post-content, .cat-Actualites .post-content {
  margin: 0;
}

.home__link .btn {
  margin: 2em auto 3em;
  padding: 0.5em 3em;
  background-color: #fff;
  color: #333;
  font-weight: bold;
  font-size: 0.9444444444em;
  border: 1px dotted #333;
}
.home__link .btn:focus, .home__link .btn:hover {
  background-color: #860102;
  border: 1px solid #860102;
  color: #fff;
}

/* category stuff
---------------------------------- */
.content-info__cat-desc {
  /*margin-bottom: 1.5em;*/
}

/* catalogue */
.square-block-post {
  margin-bottom: 1.5em;
  position: relative;
  min-width: 18.8888888889em;
}

.square-block-title {
  color: #fff;
  font-size: 2.6666666667em;
  line-height: 1;
  text-transform: none;
  font-weight: normal;
}

.square-block-content {
  max-width: 21.6666666667em;
  max-height: 21.6666666667em;
  background: rgba(0, 0, 0, 0.7);
  font-weight: 200;
  padding: 0 1em;
  overflow-y: auto;
  display: flex;
  text-align: center;
}
.square-block-content p {
  line-height: 1.2;
}
.square-block-content a {
  color: #fff;
  border: none;
  margin: auto;
}
.square-block-content a:focus, .square-block-content a:hover {
  border: none;
}
.square-block-content a:after {
  display: block;
  position: absolute;
  content: "";
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.square-block-detail {
  padding-bottom: 4em;
}

/* footer layout - sass/_l-footer
-------------------------------------------------------- */
.footer {
  clear: both;
  background: #fff;
  border-top: 1px solid #aaa;
  padding: 1em 0;
  margin-top: 2em;
  text-align: center;
  color: inherit;
  font-size: 0.8333333333em;
}
@media screen and (min-width: 40em) {
  .footer {
    text-align: left;
    padding: 1em 0;
  }
}
.footer a {
  border: none;
}
.footer a:focus, .footer a:hover {
  border: none;
}

@media screen and (min-width: 40em) {
  .footer-grid {
    display: flex;
  }
}

.footer-block {
  margin-bottom: 2em;
}
@media screen and (min-width: 40em) {
  .footer-block {
    display: inline-block;
    vertical-align: middle;
    margin: 0;
    flex: 1 1 0%;
    justify-content: space-between;
  }
}
.footer-block:first-child {
  margin-left: 0.5em;
}
@media screen and (min-width: 75em) {
  .footer-block:first-child {
    margin-left: 0;
  }
}

@media screen and (min-width: 40em) {
  .footer-menu {
    text-align: right;
  }
}
.footer-menu li {
  display: inline-block;
  padding: 0 0.5em;
}
.footer-menu li a {
  color: #333;
  text-decoration: none;
}
.footer-menu li a:hover, .footer-menu li a:focus {
  text-decoration: underline;
}

/*# sourceMappingURL=style.css.map */
