/*
	Minimaxing by HTML5 UP
	html5up.net | @ajlkn
	Free for personal and commercial use under the CCA 3.0 license (html5up.net/license)
*/

:root {
    --bleu_pnyx: #193d99;
    --gris_body: #7f888f;
    --gris_background: #f4f4f4;
    --font_body: "Noto Sans", sans-serif;
    --font-titre: "Barlow", sans-serif;
}

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

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block;
}

body {
    line-height: 1;
}

ol,
ul {
    list-style: none;
}

blockquote,
q {
    quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
    content: "";
    content: none;
}

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

body {
    -webkit-text-size-adjust: none;
}

mark {
    background-color: transparent;
    color: inherit;
}

input::-moz-focus-inner {
    border: 0;
    padding: 0;
}

input,
select,
textarea {
    -moz-appearance: none;
    -webkit-appearance: none;
    -ms-appearance: none;
    appearance: none;
}

/* Basic */

html {
    box-sizing: border-box;
}

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

@-ms-viewport {
    width: device-width;
}

body {
    font-size: 13pt;
    font-family: sans-serif;
    background-color: var(--gris_background);
    font-family: var(--font_body);
    color: var(--gris_body);
}

h1,
h2,
h3,
h4 {
    font-family: var(--font-titre);
    font-weight: normal;
    color: var(--bleu_pnyx);
}

h2 {
    font-size: 2em;
    letter-spacing: -1px;
    margin-bottom: 1em;
}

h3,
h4 {
    color: #283121;
    margin-bottom: 0.5em;
}

h3 {
    font-size: 1.2em;
    margin-bottom: 0.8em;
}

h4 {
    font-size: 1em;
}

p,
ul {
    margin-bottom: 1.25em;
}

p {
    line-height: 1.5em;
}

strong {
    color: #474e43;
}

img.left {
    float: left;
    margin: 2px 1.25em 0 0;
}

img.top {
    margin: 4px 0 2.25em 0;
}

ul {
    padding: 0.25em 0 0 0;
}

a {
    color: var(--bleu_pnyx);
    text-decoration: underline;
}

a:hover {
    text-decoration: none;
}

* > p:last-child {
    margin-bottom: 0 !important;
}

section,
article {
    margin: 0 0 60px 0;
}

section:last-child,
article:last-child {
    margin-bottom: 0;
}

/* Container */

.container {
    margin: 0 auto;
    max-width: 100%;
    width: 1200px;
}

@media screen and (max-width: 1680px) {
    .container {
        width: 1200px;
    }
}

@media screen and (max-width: 1280px) {
    .container {
        width: calc(100% - 70px);
    }
}

@media screen and (max-width: 980px) {
    .container {
        width: calc(100% - 100px);
    }
}

@media screen and (max-width: 736px) {
    .container {
        width: calc(100% - 40px);
    }
}

/* Row */

.row {
    display: flex;
    flex-wrap: wrap;
    box-sizing: border-box;
    align-items: stretch;
}

.row > * {
    box-sizing: border-box;
}

.row.gtr-uniform > * > :last-child {
    margin-bottom: 0;
}

.row.aln-left {
    justify-content: flex-start;
}

.row.aln-center {
    justify-content: center;
}

.row.aln-right {
    justify-content: flex-end;
}

.row.aln-top {
    align-items: flex-start;
}

.row.aln-middle {
    align-items: center;
}

.row.aln-bottom {
    align-items: flex-end;
}

.row > .imp {
    order: -1;
}

.row > .col-1 {
    width: 8.33333%;
}

.row > .off-1 {
    margin-left: 8.33333%;
}

.row > .col-2 {
    width: 16.66667%;
}

.row > .off-2 {
    margin-left: 16.66667%;
}

.row > .col-3 {
    width: 25%;
}

.row > .off-3 {
    margin-left: 25%;
}

.row > .col-4 {
    width: 33.33333%;
}

.row > .off-4 {
    margin-left: 33.33333%;
}

.row > .col-5 {
    width: 41.66667%;
}

.row > .off-5 {
    margin-left: 41.66667%;
}

.row > .col-6 {
    width: 50%;
}

.row > .off-6 {
    margin-left: 50%;
}

.row > .col-7 {
    width: 58.33333%;
}

.row > .off-7 {
    margin-left: 58.33333%;
}

.row > .col-8 {
    width: 66.66667%;
}

.row > .off-8 {
    margin-left: 66.66667%;
}

.row > .col-9 {
    width: 75%;
}

.row > .off-9 {
    margin-left: 75%;
}

.row > .col-10 {
    width: 83.33333%;
}

.row > .off-10 {
    margin-left: 83.33333%;
}

.row > .col-11 {
    width: 91.66667%;
}

.row > .off-11 {
    margin-left: 91.66667%;
}

.row > .col-12 {
    width: 100%;
}

.row > .off-12 {
    margin-left: 100%;
}

.row.gtr-0 {
    margin-top: 0px;
    margin-left: 0px;
}

.row.gtr-0 > * {
    padding: 0px 0 0 0px;
}

.row.gtr-0.gtr-uniform {
    margin-top: 0px;
}

.row.gtr-0.gtr-uniform > * {
    padding-top: 0px;
}

.row.gtr-25 {
    margin-top: -12.5px;
    margin-left: -12.5px;
}

.row.gtr-25 > * {
    padding: 12.5px 0 0 12.5px;
}

.row.gtr-25.gtr-uniform {
    margin-top: -12.5px;
}

.row.gtr-25.gtr-uniform > * {
    padding-top: 12.5px;
}

.row.gtr-50 {
    margin-top: -25px;
    margin-left: -25px;
}

.row.gtr-50 > * {
    padding: 25px 0 0 25px;
}

.row.gtr-50.gtr-uniform {
    margin-top: -25px;
}

.row.gtr-50.gtr-uniform > * {
    padding-top: 25px;
}

.row {
    margin-top: -50px;
    margin-left: -50px;
}

.row > * {
    padding: 50px 0 0 50px;
}

.row.gtr-uniform {
    margin-top: -50px;
}

.row.gtr-uniform > * {
    padding-top: 50px;
}

.row.gtr-150 {
    margin-top: -75px;
    margin-left: -75px;
}

.row.gtr-150 > * {
    padding: 75px 0 0 75px;
}

.row.gtr-150.gtr-uniform {
    margin-top: -75px;
}

.row.gtr-150.gtr-uniform > * {
    padding-top: 75px;
}

.row.gtr-200 {
    margin-top: -100px;
    margin-left: -100px;
}

.row.gtr-200 > * {
    padding: 100px 0 0 100px;
}

.row.gtr-200.gtr-uniform {
    margin-top: -100px;
}

.row.gtr-200.gtr-uniform > * {
    padding-top: 100px;
}

@media screen and (max-width: 1680px) {
    .row {
        display: flex;
        flex-wrap: wrap;
        box-sizing: border-box;
        align-items: stretch;
    }

    .row > * {
        box-sizing: border-box;
    }

    .row.gtr-uniform > * > :last-child {
        margin-bottom: 0;
    }

    .row.aln-left {
        justify-content: flex-start;
    }

    .row.aln-center {
        justify-content: center;
    }

    .row.aln-right {
        justify-content: flex-end;
    }

    .row.aln-top {
        align-items: flex-start;
    }

    .row.aln-middle {
        align-items: center;
    }

    .row.aln-bottom {
        align-items: flex-end;
    }

    .row > .imp-xlarge {
        order: -1;
    }

    .row > .col-1-xlarge {
        width: 8.33333%;
    }

    .row > .off-1-xlarge {
        margin-left: 8.33333%;
    }

    .row > .col-2-xlarge {
        width: 16.66667%;
    }

    .row > .off-2-xlarge {
        margin-left: 16.66667%;
    }

    .row > .col-3-xlarge {
        width: 25%;
    }

    .row > .off-3-xlarge {
        margin-left: 25%;
    }

    .row > .col-4-xlarge {
        width: 33.33333%;
    }

    .row > .off-4-xlarge {
        margin-left: 33.33333%;
    }

    .row > .col-5-xlarge {
        width: 41.66667%;
    }

    .row > .off-5-xlarge {
        margin-left: 41.66667%;
    }

    .row > .col-6-xlarge {
        width: 50%;
    }

    .row > .off-6-xlarge {
        margin-left: 50%;
    }

    .row > .col-7-xlarge {
        width: 58.33333%;
    }

    .row > .off-7-xlarge {
        margin-left: 58.33333%;
    }

    .row > .col-8-xlarge {
        width: 66.66667%;
    }

    .row > .off-8-xlarge {
        margin-left: 66.66667%;
    }

    .row > .col-9-xlarge {
        width: 75%;
    }

    .row > .off-9-xlarge {
        margin-left: 75%;
    }

    .row > .col-10-xlarge {
        width: 83.33333%;
    }

    .row > .off-10-xlarge {
        margin-left: 83.33333%;
    }

    .row > .col-11-xlarge {
        width: 91.66667%;
    }

    .row > .off-11-xlarge {
        margin-left: 91.66667%;
    }

    .row > .col-12-xlarge {
        width: 100%;
    }

    .row > .off-12-xlarge {
        margin-left: 100%;
    }

    .row.gtr-0 {
        margin-top: 0px;
        margin-left: 0px;
    }

    .row.gtr-0 > * {
        padding: 0px 0 0 0px;
    }

    .row.gtr-0.gtr-uniform {
        margin-top: 0px;
    }

    .row.gtr-0.gtr-uniform > * {
        padding-top: 0px;
    }

    .row.gtr-25 {
        margin-top: -12.5px;
        margin-left: -12.5px;
    }

    .row.gtr-25 > * {
        padding: 12.5px 0 0 12.5px;
    }

    .row.gtr-25.gtr-uniform {
        margin-top: -12.5px;
    }

    .row.gtr-25.gtr-uniform > * {
        padding-top: 12.5px;
    }

    .row.gtr-50 {
        margin-top: -25px;
        margin-left: -25px;
    }

    .row.gtr-50 > * {
        padding: 25px 0 0 25px;
    }

    .row.gtr-50.gtr-uniform {
        margin-top: -25px;
    }

    .row.gtr-50.gtr-uniform > * {
        padding-top: 25px;
    }

    .row {
        margin-top: -50px;
        margin-left: -50px;
    }

    .row > * {
        padding: 50px 0 0 50px;
    }

    .row.gtr-uniform {
        margin-top: -50px;
    }

    .row.gtr-uniform > * {
        padding-top: 50px;
    }

    .row.gtr-150 {
        margin-top: -75px;
        margin-left: -75px;
    }

    .row.gtr-150 > * {
        padding: 75px 0 0 75px;
    }

    .row.gtr-150.gtr-uniform {
        margin-top: -75px;
    }

    .row.gtr-150.gtr-uniform > * {
        padding-top: 75px;
    }

    .row.gtr-200 {
        margin-top: -100px;
        margin-left: -100px;
    }

    .row.gtr-200 > * {
        padding: 100px 0 0 100px;
    }

    .row.gtr-200.gtr-uniform {
        margin-top: -100px;
    }

    .row.gtr-200.gtr-uniform > * {
        padding-top: 100px;
    }
}

@media screen and (max-width: 1280px) {
    .row {
        display: flex;
        flex-wrap: wrap;
        box-sizing: border-box;
        align-items: stretch;
    }

    .row > * {
        box-sizing: border-box;
    }

    .row.gtr-uniform > * > :last-child {
        margin-bottom: 0;
    }

    .row.aln-left {
        justify-content: flex-start;
    }

    .row.aln-center {
        justify-content: center;
    }

    .row.aln-right {
        justify-content: flex-end;
    }

    .row.aln-top {
        align-items: flex-start;
    }

    .row.aln-middle {
        align-items: center;
    }

    .row.aln-bottom {
        align-items: flex-end;
    }

    .row > .imp-large {
        order: -1;
    }

    .row > .col-1-large {
        width: 8.33333%;
    }

    .row > .off-1-large {
        margin-left: 8.33333%;
    }

    .row > .col-2-large {
        width: 16.66667%;
    }

    .row > .off-2-large {
        margin-left: 16.66667%;
    }

    .row > .col-3-large {
        width: 25%;
    }

    .row > .off-3-large {
        margin-left: 25%;
    }

    .row > .col-4-large {
        width: 33.33333%;
    }

    .row > .off-4-large {
        margin-left: 33.33333%;
    }

    .row > .col-5-large {
        width: 41.66667%;
    }

    .row > .off-5-large {
        margin-left: 41.66667%;
    }

    .row > .col-6-large {
        width: 50%;
    }

    .row > .off-6-large {
        margin-left: 50%;
    }

    .row > .col-7-large {
        width: 58.33333%;
    }

    .row > .off-7-large {
        margin-left: 58.33333%;
    }

    .row > .col-8-large {
        width: 66.66667%;
    }

    .row > .off-8-large {
        margin-left: 66.66667%;
    }

    .row > .col-9-large {
        width: 75%;
    }

    .row > .off-9-large {
        margin-left: 75%;
    }

    .row > .col-10-large {
        width: 83.33333%;
    }

    .row > .off-10-large {
        margin-left: 83.33333%;
    }

    .row > .col-11-large {
        width: 91.66667%;
    }

    .row > .off-11-large {
        margin-left: 91.66667%;
    }

    .row > .col-12-large {
        width: 100%;
    }

    .row > .off-12-large {
        margin-left: 100%;
    }

    .row.gtr-0 {
        margin-top: 0px;
        margin-left: 0px;
    }

    .row.gtr-0 > * {
        padding: 0px 0 0 0px;
    }

    .row.gtr-0.gtr-uniform {
        margin-top: 0px;
    }

    .row.gtr-0.gtr-uniform > * {
        padding-top: 0px;
    }

    .row.gtr-25 {
        margin-top: -8.75px;
        margin-left: -8.75px;
    }

    .row.gtr-25 > * {
        padding: 8.75px 0 0 8.75px;
    }

    .row.gtr-25.gtr-uniform {
        margin-top: -8.75px;
    }

    .row.gtr-25.gtr-uniform > * {
        padding-top: 8.75px;
    }

    .row.gtr-50 {
        margin-top: -17.5px;
        margin-left: -17.5px;
    }

    .row.gtr-50 > * {
        padding: 17.5px 0 0 17.5px;
    }

    .row.gtr-50.gtr-uniform {
        margin-top: -17.5px;
    }

    .row.gtr-50.gtr-uniform > * {
        padding-top: 17.5px;
    }

    .row {
        margin-top: -35px;
        margin-left: -35px;
    }

    .row > * {
        padding: 35px 0 0 35px;
    }

    .row.gtr-uniform {
        margin-top: -35px;
    }

    .row.gtr-uniform > * {
        padding-top: 35px;
    }

    .row.gtr-150 {
        margin-top: -52.5px;
        margin-left: -52.5px;
    }

    .row.gtr-150 > * {
        padding: 52.5px 0 0 52.5px;
    }

    .row.gtr-150.gtr-uniform {
        margin-top: -52.5px;
    }

    .row.gtr-150.gtr-uniform > * {
        padding-top: 52.5px;
    }

    .row.gtr-200 {
        margin-top: -70px;
        margin-left: -70px;
    }

    .row.gtr-200 > * {
        padding: 70px 0 0 70px;
    }

    .row.gtr-200.gtr-uniform {
        margin-top: -70px;
    }

    .row.gtr-200.gtr-uniform > * {
        padding-top: 70px;
    }
}

@media screen and (max-width: 980px) {
    .row {
        display: flex;
        flex-wrap: wrap;
        box-sizing: border-box;
        align-items: stretch;
    }

    .row > * {
        box-sizing: border-box;
    }

    .row.gtr-uniform > * > :last-child {
        margin-bottom: 0;
    }

    .row.aln-left {
        justify-content: flex-start;
    }

    .row.aln-center {
        justify-content: center;
    }

    .row.aln-right {
        justify-content: flex-end;
    }

    .row.aln-top {
        align-items: flex-start;
    }

    .row.aln-middle {
        align-items: center;
    }

    .row.aln-bottom {
        align-items: flex-end;
    }

    .row > .imp-medium {
        order: -1;
    }

    .row > .col-1-medium {
        width: 8.33333%;
    }

    .row > .off-1-medium {
        margin-left: 8.33333%;
    }

    .row > .col-2-medium {
        width: 16.66667%;
    }

    .row > .off-2-medium {
        margin-left: 16.66667%;
    }

    .row > .col-3-medium {
        width: 25%;
    }

    .row > .off-3-medium {
        margin-left: 25%;
    }

    .row > .col-4-medium {
        width: 33.33333%;
    }

    .row > .off-4-medium {
        margin-left: 33.33333%;
    }

    .row > .col-5-medium {
        width: 41.66667%;
    }

    .row > .off-5-medium {
        margin-left: 41.66667%;
    }

    .row > .col-6-medium {
        width: 50%;
    }

    .row > .off-6-medium {
        margin-left: 50%;
    }

    .row > .col-7-medium {
        width: 58.33333%;
    }

    .row > .off-7-medium {
        margin-left: 58.33333%;
    }

    .row > .col-8-medium {
        width: 66.66667%;
    }

    .row > .off-8-medium {
        margin-left: 66.66667%;
    }

    .row > .col-9-medium {
        width: 75%;
    }

    .row > .off-9-medium {
        margin-left: 75%;
    }

    .row > .col-10-medium {
        width: 83.33333%;
    }

    .row > .off-10-medium {
        margin-left: 83.33333%;
    }

    .row > .col-11-medium {
        width: 91.66667%;
    }

    .row > .off-11-medium {
        margin-left: 91.66667%;
    }

    .row > .col-12-medium {
        width: 100%;
    }

    .row > .off-12-medium {
        margin-left: 100%;
    }

    .row.gtr-0 {
        margin-top: 0px;
        margin-left: 0px;
    }

    .row.gtr-0 > * {
        padding: 0px 0 0 0px;
    }

    .row.gtr-0.gtr-uniform {
        margin-top: 0px;
    }

    .row.gtr-0.gtr-uniform > * {
        padding-top: 0px;
    }

    .row.gtr-25 {
        margin-top: -12.5px;
        margin-left: -12.5px;
    }

    .row.gtr-25 > * {
        padding: 12.5px 0 0 12.5px;
    }

    .row.gtr-25.gtr-uniform {
        margin-top: -12.5px;
    }

    .row.gtr-25.gtr-uniform > * {
        padding-top: 12.5px;
    }

    .row.gtr-50 {
        margin-top: -25px;
        margin-left: -25px;
    }

    .row.gtr-50 > * {
        padding: 25px 0 0 25px;
    }

    .row.gtr-50.gtr-uniform {
        margin-top: -25px;
    }

    .row.gtr-50.gtr-uniform > * {
        padding-top: 25px;
    }

    .row {
        margin-top: -50px;
        margin-left: -50px;
    }

    .row > * {
        padding: 50px 0 0 50px;
    }

    .row.gtr-uniform {
        margin-top: -50px;
    }

    .row.gtr-uniform > * {
        padding-top: 50px;
    }

    .row.gtr-150 {
        margin-top: -75px;
        margin-left: -75px;
    }

    .row.gtr-150 > * {
        padding: 75px 0 0 75px;
    }

    .row.gtr-150.gtr-uniform {
        margin-top: -75px;
    }

    .row.gtr-150.gtr-uniform > * {
        padding-top: 75px;
    }

    .row.gtr-200 {
        margin-top: -100px;
        margin-left: -100px;
    }

    .row.gtr-200 > * {
        padding: 100px 0 0 100px;
    }

    .row.gtr-200.gtr-uniform {
        margin-top: -100px;
    }

    .row.gtr-200.gtr-uniform > * {
        padding-top: 100px;
    }
}

@media screen and (max-width: 736px) {
    .row {
        display: flex;
        flex-wrap: wrap;
        box-sizing: border-box;
        align-items: stretch;
    }

    .row > * {
        box-sizing: border-box;
    }

    .row.gtr-uniform > * > :last-child {
        margin-bottom: 0;
    }

    .row.aln-left {
        justify-content: flex-start;
    }

    .row.aln-center {
        justify-content: center;
    }

    .row.aln-right {
        justify-content: flex-end;
    }

    .row.aln-top {
        align-items: flex-start;
    }

    .row.aln-middle {
        align-items: center;
    }

    .row.aln-bottom {
        align-items: flex-end;
    }

    .row > .imp-small {
        order: -1;
    }

    .row > .col-1-small {
        width: 8.33333%;
    }

    .row > .off-1-small {
        margin-left: 8.33333%;
    }

    .row > .col-2-small {
        width: 16.66667%;
    }

    .row > .off-2-small {
        margin-left: 16.66667%;
    }

    .row > .col-3-small {
        width: 25%;
    }

    .row > .off-3-small {
        margin-left: 25%;
    }

    .row > .col-4-small {
        width: 33.33333%;
    }

    .row > .off-4-small {
        margin-left: 33.33333%;
    }

    .row > .col-5-small {
        width: 41.66667%;
    }

    .row > .off-5-small {
        margin-left: 41.66667%;
    }

    .row > .col-6-small {
        width: 50%;
    }

    .row > .off-6-small {
        margin-left: 50%;
    }

    .row > .col-7-small {
        width: 58.33333%;
    }

    .row > .off-7-small {
        margin-left: 58.33333%;
    }

    .row > .col-8-small {
        width: 66.66667%;
    }

    .row > .off-8-small {
        margin-left: 66.66667%;
    }

    .row > .col-9-small {
        width: 75%;
    }

    .row > .off-9-small {
        margin-left: 75%;
    }

    .row > .col-10-small {
        width: 83.33333%;
    }

    .row > .off-10-small {
        margin-left: 83.33333%;
    }

    .row > .col-11-small {
        width: 91.66667%;
    }

    .row > .off-11-small {
        margin-left: 91.66667%;
    }

    .row > .col-12-small {
        width: 100%;
    }

    .row > .off-12-small {
        margin-left: 100%;
    }

    .row.gtr-0 {
        margin-top: 0px;
        margin-left: 0px;
    }

    .row.gtr-0 > * {
        padding: 0px 0 0 0px;
    }

    .row.gtr-0.gtr-uniform {
        margin-top: 0px;
    }

    .row.gtr-0.gtr-uniform > * {
        padding-top: 0px;
    }

    .row.gtr-25 {
        margin-top: -5px;
        margin-left: -5px;
    }

    .row.gtr-25 > * {
        padding: 5px 0 0 5px;
    }

    .row.gtr-25.gtr-uniform {
        margin-top: -5px;
    }

    .row.gtr-25.gtr-uniform > * {
        padding-top: 5px;
    }

    .row.gtr-50 {
        margin-top: -10px;
        margin-left: -10px;
    }

    .row.gtr-50 > * {
        padding: 10px 0 0 10px;
    }

    .row.gtr-50.gtr-uniform {
        margin-top: -10px;
    }

    .row.gtr-50.gtr-uniform > * {
        padding-top: 10px;
    }

    .row {
        margin-top: -20px;
        margin-left: -20px;
    }

    .row > * {
        padding: 20px 0 0 20px;
    }

    .row.gtr-uniform {
        margin-top: -20px;
    }

    .row.gtr-uniform > * {
        padding-top: 20px;
    }

    .row.gtr-150 {
        margin-top: -30px;
        margin-left: -30px;
    }

    .row.gtr-150 > * {
        padding: 30px 0 0 30px;
    }

    .row.gtr-150.gtr-uniform {
        margin-top: -30px;
    }

    .row.gtr-150.gtr-uniform > * {
        padding-top: 30px;
    }

    .row.gtr-200 {
        margin-top: -40px;
        margin-left: -40px;
    }

    .row.gtr-200 > * {
        padding: 40px 0 0 40px;
    }

    .row.gtr-200.gtr-uniform {
        margin-top: -40px;
    }

    .row.gtr-200.gtr-uniform > * {
        padding-top: 40px;
    }
}

/* Reusable */

article.blog-post {
    position: relative;
}

article.blog-post .comments {
    position: absolute;
    top: 0;
    right: 0;
    height: 32px;
    line-height: 24px;
    padding-left: 40px;
    background: url("images/icon-bubble.png") no-repeat;
}

article.blog-post .blog-post-image {
    width: 100%;
}

ul.small-image-list li {
    overflow: hidden;
    margin-bottom: 1.5em;
}

ul.small-image-list li img {
    width: 78px;
}

ul.big-image-list li {
    overflow: hidden;
    margin-bottom: 1em;
    padding: 0.5em;
    box-shadow:
        rgba(0, 0, 0, 0.05) 0px 6px 24px 0px,
        rgba(0, 0, 0, 0.08) 0px 0px 0px 1px;
    border-radius: 10px;
}

ul.big-image-list li:hover {
    cursor: pointer;
    background-color: var(--gris_background);
}

ul.big-image-list li img {
    width: 178px;
}

ul.big-image-list li a {
    cursor: pointer;
    text-decoration: none;
    color: var(--gris_body);
}

ul.big-image-list li .rubrique-bloc {
    border-left: 5px solid red;
    padding-left: 0.3em;
    margin-bottom: 0.8em;
}

ul.big-image-list li:hover h3 {
    /* -webkit-transform: scale(1.2);
    transform: scale(1.2); */
    font-size: 1.5em;
}

ul.big-image-list li .big-image-list-img {
    /* Dimensions du bloc */
    width: 178px;
    height: 128px;
    float: left;
    margin: 2px 10px 2px 0;

    /* Style visuel */
    background-color: #f54927; /* Couleur de fond très claire (gris) */
    border: 3px solid #333; /* Bordure foncée */
    border-radius: 8px; /* Coins légèrement arrondis */
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.2); /* Ombre subtile */

    /* Style du texte */
    font-size: 1.5em; /* Taille du texte */
    font-weight: bold; /* Texte en gras */
    color: #feebe7; /* Couleur du texte */

    /* Centrage du texte (méthode Flexbox) */
    display: flex;
    justify-content: center; /* Centrage horizontal */
    align-items: center; /* Centrage vertical */
    text-align: center; /* Assure que le texte sur plusieurs lignes est centré */

    /* Empêche le texte de déborder */
    padding: 5px;
    box-sizing: border-box; /* Inclut le padding et la bordure dans la width/height */
}

ul.big-image-list li .big-image-list-content {
    overflow: auto;
}

/*
ul.big-image-list li:hover {
    cursor: pointer;
    text-decoration: underline;
}*/

ul.link-list li {
    border-top: solid 1px #ced0b7;
    padding: 0.75em 0 0 0;
    margin: 0.75em 0 0 0;
}

ul.link-list li:first-child {
    padding-top: 0;
    margin-top: 0;
    border-top: 0;
}

.button {
    -moz-appearance: none;
    -webkit-appearance: none;
    -ms-appearance: none;
    appearance: none;
    -moz-transition:
        background-color 0.2s ease-in-out,
        color 0.2s ease-in-out;
    -webkit-transition:
        background-color 0.2s ease-in-out,
        color 0.2s ease-in-out;
    -ms-transition:
        background-color 0.2s ease-in-out,
        color 0.2s ease-in-out;
    transition:
        background-color 0.2s ease-in-out,
        color 0.2s ease-in-out;
    background-color: transparent;
    border-radius: 0.375em;
    border: 0;
    box-shadow: inset 0 0 0 2px red;
    color: red !important;
    cursor: pointer;
    display: inline-block;
    height: 3.5em;
    letter-spacing: 0.075em;
    line-height: 3.5em;
    padding: 0 1em;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    white-space: nowrap;
    margin-bottom: 5px;
}

.button:hover {
    background-color: rgba(245, 106, 106, 0.05);
}

.button_bleu {
    -moz-appearance: none;
    -webkit-appearance: none;
    -ms-appearance: none;
    appearance: none;
    -moz-transition:
        background-color 0.2s ease-in-out,
        color 0.2s ease-in-out;
    -webkit-transition:
        background-color 0.2s ease-in-out,
        color 0.2s ease-in-out;
    -ms-transition:
        background-color 0.2s ease-in-out,
        color 0.2s ease-in-out;
    transition:
        background-color 0.2s ease-in-out,
        color 0.2s ease-in-out;
    background-color: transparent;
    border-radius: 0.375em;
    border: 0;
    box-shadow: inset 0 0 0 2px var(--bleu_pnyx);
    color: var(--bleu_pnyx) !important;
    cursor: pointer;
    display: inline-block;
    height: 3.5em;
    letter-spacing: 0.075em;
    line-height: 3.5em;
    padding: 0 1em;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    white-space: nowrap;
}

.button_bleu:hover {
    background-color: rgba(245, 106, 106, 0.05);
}

.button_plain {
    -moz-appearance: none;
    -webkit-appearance: none;
    -ms-appearance: none;
    appearance: none;
    -moz-transition:
        background-color 0.2s ease-in-out,
        color 0.2s ease-in-out;
    -webkit-transition:
        background-color 0.2s ease-in-out,
        color 0.2s ease-in-out;
    -ms-transition:
        background-color 0.2s ease-in-out,
        color 0.2s ease-in-out;
    transition:
        background-color 0.2s ease-in-out,
        color 0.2s ease-in-out;
    background-color: red;
    border-radius: 0.375em;
    border: 0;
    box-shadow: inset 0 0 0 2px red;
    color: white;
    cursor: pointer;
    display: inline-block;
    height: 3.5em;
    letter-spacing: 0.075em;
    line-height: 3.5em;
    padding: 0 1em;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    white-space: nowrap;
}

.button_plain:hover {
    background-color: rgba(245, 106, 106, 0.05);
    color: red;
}

.button_plain {
    -moz-appearance: none;
    -webkit-appearance: none;
    -ms-appearance: none;
    appearance: none;
    -moz-transition:
        background-color 0.2s ease-in-out,
        color 0.2s ease-in-out;
    -webkit-transition:
        background-color 0.2s ease-in-out,
        color 0.2s ease-in-out;
    -ms-transition:
        background-color 0.2s ease-in-out,
        color 0.2s ease-in-out;
    transition:
        background-color 0.2s ease-in-out,
        color 0.2s ease-in-out;
    background-color: red;
    border-radius: 0.375em;
    border: 0;
    box-shadow: inset 0 0 0 2px red;
    color: white;
    cursor: pointer;
    display: inline-block;
    height: 3.5em;
    letter-spacing: 0.075em;
    line-height: 3.5em;
    padding: 0 1em;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    white-space: nowrap;
}

.button_plain:hover {
    background-color: rgba(245, 106, 106, 0.05);
    color: red;
}

/* Header */

#header-wrapper {
    background-color: white;
    font-family: var(--font-titre);
    text-transform: uppercase; /* Met le texte en majuscules */
}

#header {
    font-style: up;
    position: relative;
    margin: 0 0 0 0;
    padding: 0 0px 2 0px;
    height: 86px;
}

#header_logo {
    /* background: url(images/logo_lsm_74-399.png) no-repeat; */
    position: absolute;
    left: 40px;
    top: 5px;
    font-size: 2.4em;
    width: 400px;
    height: 74px;
}
/*
#header h1 a {
    color: #fff;
    text-decoration: none;
}*/

#header nav {
    position: absolute;
    left: 500px;
    top: 1px;
    line-height: 84px;
    font-size: 1.5em;
    letter-spacing: -1px;
}

#header nav a {
    display: inline-block;
    text-decoration: none;
    padding: 0 25px 0 25px;
    outline: 0;
}

#header nav a.current-page-item {
    background-image: -moz-linear-gradient(top, #007b99, #007897);
    background-image: -webkit-linear-gradient(top, #007b99, #007897);
    background-image: -ms-linear-gradient(top, #007b99, #007897);
    background-image: linear-gradient(top, #007b99, #007897);
    background-color: #007897;
    box-shadow:
        inset 0px 1px 5px 1px rgba(0, 0, 0, 0.1),
        0px 0px 5px 1px rgba(255, 255, 255, 0.1);
}

#header nav a:hover {
    color: #0c5fb0;
    background-color: var(--gris_background);
}

/* Banner */

#banner {
    width: 100%;
    height: 15px;
    text-align: center;
}

#banner h2 {
    font-size: 3.3em;
    color: #fff;
    letter-spacing: -2px;
    margin: 0;
}

#banner span {
    display: block;
    left: 0;
    margin: 0.5em 0 0 0;
    font-size: 1.6em;
    color: #fff;
    letter-spacing: -1px;
    opacity: 0.8;
}

/* Main */

#main {
    background: #fff;
    padding: 2em 0;
}

/* Footer */

#footer-wrapper {
    padding: 0;
    background-color: white;
}

#misc-wrapper {
    padding: 40px 0;
}

#misc-wrapper-white {
    background-color: white;
    padding: 40px 0;
}

/* Copyright */

#copyright {
    text-align: center;
    color: #a6a88f;
    padding: 15px 0 15px 0;
    border-bottom: solid 1px #ced0b7;
}

#copyright a {
    color: #a6a88f;
}

#copyright_logo {
    /*
    height: 100px
    width: 100%;*/
    margin: 15px 0 15px 0;
    display: flex;
    justify-content: center;
    /* background: url(images/logo_PNYX_67-72.png) no-repeat;
    background-position: center; */
    background-color: white;
}

fieldset {
    padding: 0 20px 20px 20px;
    margin-bottom: 10px;
    border: 1px solid #df3f3f;
}

/* Conteneur du formulaire */
.form-container {
    background: #ffffff;
    padding: 2rem 2.5rem;
    border-radius: 12px;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
    width: 100%;
    max-width: 400px;
    box-sizing: border-box;
}

/* Le groupe qui contient l'input et le label */
.input-group {
    position: relative; /* Nécessaire pour positionner le label */
    margin-bottom: 1.5rem;
}

/* Style du champ de saisie */
.input-field {
    width: 100%;
    border: 1px solid #dcdcdc;
    border-radius: 8px;
    padding: 16px 14px 8px 14px; /* Plus de padding en haut pour le label */
    font-size: 16px;
    background-color: transparent;
    box-sizing: border-box; /* Assure que le padding n'affecte pas la largeur */
    transition: border-color 0.2s ease;
}

/* Style du label (position initiale, comme un placeholder) */
.input-label {
    position: absolute;
    top: 15px;
    left: 15px;
    font-size: 16px;
    color: #999;
    pointer-events: none; /* Permet de cliquer "à travers" le label */
    transition: all 0.2s ease-out;
}

.input-field:focus + .input-label,
.input-field:not(:placeholder-shown) + .input-label {
    /* On déplace le label vers le haut */
    top: 5px;
    /* On réduit sa taille */
    font-size: 12px;
    /* On change sa couleur */
    color: var(--bleu_pnyx);
}

/* Change la couleur de la bordure quand on clique sur l'input */
.input-field:focus {
    outline: none;
    border-color: var(--bleu_pnyx);
}

button {
    -moz-appearance: none;
    -webkit-appearance: none;
    -ms-appearance: none;
    appearance: none;
    -moz-transition:
        background-color 0.2s ease-in-out,
        color 0.2s ease-in-out;
    -webkit-transition:
        background-color 0.2s ease-in-out,
        color 0.2s ease-in-out;
    -ms-transition:
        background-color 0.2s ease-in-out,
        color 0.2s ease-in-out;
    transition:
        background-color 0.2s ease-in-out,
        color 0.2s ease-in-out;
    background-color: transparent;
    border-radius: 0.375em;
    border: 0;
    box-shadow: inset 0 0 0 2px red;
    color: red !important;
    cursor: pointer;
    display: inline-block;
    height: 3.5em;
    letter-spacing: 0.075em;
    line-height: 3.5em;
    padding: 0 1em;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    white-space: nowrap;
}

/* Modale */

/* Style de base de la modale (cachée par défaut) */
.modale {
    display: none; /* Cache la modale initialement */
    position: fixed; /* Reste fixe même en scrollant */
    z-index: 1000; /* Assure que la modale est au-dessus de tout */
    left: 0;
    top: 0;
    width: 100%; /* Pleine largeur */
    height: 100%; /* Pleine hauteur */
    overflow: auto; /* Permet le scroll si l'image est immense */
    background-color: rgba(0, 0, 0, 0.7); /* Fond noir semi-transparent */
}

/* Conteneur pour l'image */
.modale-contenu {
    margin: 5% auto; /* Centre la modale verticalement et horizontalement (ajuster si nécessaire) */
    display: block;
    width: 80%; /* Largeur max du contenu */
    max-width: 700px;
    animation-name: zoom;
    animation-duration: 0.6s;
}

/* L'image elle-même à l'intérieur de la modale */
#imageGrandFormat {
    display: block;
    width: 100%; /* L'image remplit la largeur du contenu */
    height: auto;
}

/* Le bouton Fermer (x) */
.fermer-modale {
    position: absolute;
    top: 15px;
    right: 35px;
    color: #f1f1f1;
    font-size: 40px;
    font-weight: bold;
    transition: 0.3s;
}

.fermer-modale:hover,
.fermer-modale:focus {
    color: #bbb;
    text-decoration: none;
    cursor: pointer;
}

/* Large */

@media screen and (max-width: 1280px) {
    /* Reusable */

    ul.small-image-list img {
        width: 50px;
    }

    ul.big-image-list img {
        width: 75px;
    }

    /* Header */
    /*
    #header {
        height: 84px;
    }
    */

    #header_logo {
        left: 0px;
    }

    #header nav {
        left: 420px;
        font-size: 1.3em;
    }

    /* Banner */

    #banner {
        width: 100%;
    }

    #banner h2 {
        font-size: 3em;
    }

    #banner span {
        font-size: 1.4em;
    }
}

/* Small */

#navPanel,
#titleBar {
    display: none;
}

@media screen and (max-width: 980px) {
    /* Basic */

    html,
    body {
        overflow-x: hidden;
    }

    /* Page Wrapper */

    #page-wrapper {
        padding-top: 44px;
    }

    /* Header */

    #header {
        display: none;
    }

    #banner h2 {
        font-size: 2.5em;
    }

    /* Nav */

    #page-wrapper {
        -moz-backface-visibility: hidden;
        -webkit-backface-visibility: hidden;
        -ms-backface-visibility: hidden;
        backface-visibility: hidden;
        -moz-transition: -moz-transform 0.5s ease;
        -webkit-transition: -webkit-transform 0.5s ease;
        -ms-transition: -ms-transform 0.5s ease;
        transition: transform 0.5s ease;
        padding-bottom: 1px;
    }

    #titleBar {
        -moz-backface-visibility: hidden;
        -webkit-backface-visibility: hidden;
        -ms-backface-visibility: hidden;
        backface-visibility: hidden;
        -moz-transition: -moz-transform 0.5s ease;
        -webkit-transition: -webkit-transform 0.5s ease;
        -ms-transition: -ms-transform 0.5s ease;
        transition: transform 0.5s ease;
        display: block;
        height: 50px;
        left: 0;
        position: fixed;
        top: 0;
        width: 100%;
        z-index: 10001;
        text-align: center;
        color: #fff;
        font-size: 1.25em;
        background-color: white;
    }

    #title_logo {
        margin: auto;
        font-size: 2.4em;
        width: 237px;
        height: 44px;
    }

    #titleBar .title {
        line-height: 44px;
    }

    #titleBar .toggle {
        position: absolute;
        top: 0;
        left: 0;
        width: 80px;
        height: 60px;
    }

    #titleBar .toggle:after {
        content: "";
        position: absolute;
        left: 4px;
        top: 7px;
        color: #fff;
        text-align: center;
        line-height: 31px;
        font-size: 0.8em;
        width: 50px;
        height: 35px;
        border-radius: 5px;
        box-shadow:
            inset 0px 0px 0px 1px rgba(0, 0, 0, 0.25),
            inset 0px 1px 2px 0px rgba(0, 0, 0, 0.5),
            inset 0px 6px 13px 0px rgba(255, 255, 255, 0.2),
            0px 2px 2px 0px rgba(255, 255, 255, 0.1);
        /* background-color: var(--gris_background); */
    }

    #titleBar .toggle:before {
        content: "";
        position: absolute;
        width: 20px;
        height: 15px;
        background: url("images/mobileUI-site-nav-opener-bg.svg") black;
        top: 16px;
        left: 19px;
    }

    #titleBar .toggle:active:after {
        background: rgba(0, 0, 0, 0.2);
    }

    #navPanel {
        -moz-backface-visibility: hidden;
        -webkit-backface-visibility: hidden;
        -ms-backface-visibility: hidden;
        backface-visibility: hidden;
        -moz-transform: translateX(-275px);
        -webkit-transform: translateX(-275px);
        -ms-transform: translateX(-275px);
        transform: translateX(-275px);
        -moz-transition: -moz-transform 0.5s ease;
        -webkit-transition: -webkit-transform 0.5s ease;
        -ms-transition: -ms-transform 0.5s ease;
        transition: transform 0.5s ease;
        display: block;
        height: 100%;
        left: 0;
        overflow-y: auto;
        position: fixed;
        top: 0;
        width: 275px;
        z-index: 10002;
        background: white;
        /*box-shadow: inset -10px 0px 40px 0px rgba(0, 0, 0, 0.5); */
        box-shadow: inset -10px 0px 15px -5px rgba(0, 0, 0, 0.5);
    }

    #navPanel .link {
        display: block;
        color: var(--bleu_pnyx);
        height: 55px;
        line-height: 55px;
        padding: 0 15px 0 15px;
        text-decoration: none;
        font-family: var(--font-titre);
        font-size: 2em;
        letter-spacing: -1px;
    }

    #navPanel .link:first-child {
        border-top: 0;
    }

    #navPanel .link:last-child {
        border-bottom: 0;
    }

    body.navPanel-visible #page-wrapper {
        -moz-transform: translateX(275px);
        -webkit-transform: translateX(275px);
        -ms-transform: translateX(275px);
        transform: translateX(275px);
    }

    body.navPanel-visible #titleBar {
        -moz-transform: translateX(275px);
        -webkit-transform: translateX(275px);
        -ms-transform: translateX(275px);
        transform: translateX(275px);
    }

    body.navPanel-visible #navPanel {
        -moz-transform: translateX(0);
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
    }
}

/* Very small */

@media screen and (max-width: 736px) {
    /* Basic */

    body {
        font-size: 13pt;
    }

    h2 {
        font-size: 1.4em;
    }

    h3 {
        font-size: 1.2em;
    }

    h4 {
        font-size: 1em;
    }

    /* Reusable */

    ul.small-image-list li img {
        width: 100px;
    }

    ul.big-image-list li img {
        width: 100px;
    }

    ul.link-list {
        margin: 0 0 1em 0;
    }

    article.blog-post .comments {
        display: block;
        position: relative;
        top: -0.5em;
        margin: 0 0 0.5em 0;
    }

    .button {
        font-size: 0.8em;
        width: 100%;
    }

    .button_bleu {
        font-size: 0.8em;
        width: 100%;
    }

    .button_plain {
        font-size: 0.8em;
        width: 100%;
    }

    .blog-post-image {
        width: 100%;
    }

    /* Banner */

    /*
    #banner-wrapper {
        background: #c8d2bc url(images/bg1.png);
        padding: 20px 0;
    }
    */

    #banner h2 {
        font-size: 2em;
        letter-spacing: -2px;
        line-height: 1.25em;
    }

    #banner span {
        font-size: 1.25em;
        letter-spacing: -1px;
        line-height: 1.25em;
    }

    /* Main */

    #main {
        padding: 40px 0;
    }

    /* Footer */
    #copyright a {
        color: #a6a88f;
    }
}
