/* Reset
-------------------------------------------------- */
article, aside, details, figcaption, figure, footer, header, hgroup, main, nav, section, summary{display:block}
*, *:before, *:after{margin:0;padding:0;border:0;-webkit-box-sizing:border-box;box-sizing:border-box}
*{-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;}

/* Typefaces
-------------------------------------------------- */
@font-face {font-family: 'HelveticaLocal';src: url('../fonts/Helvetica.woff2') format('woff2'),url('../fonts/Helvetica.woff') format('woff');font-weight: normal;font-style: normal;font-display: block;}
@font-face {font-family: 'HelveticaLocal';src: url('../fonts/Helvetica-Oblique.woff2') format('woff2'),url('../fonts/Helvetica-Oblique.woff') format('woff');font-weight: normal;font-style: italic;font-display: block;}

/* Mouches
-------------------------------------------------- */
:root{--ground:#fff;--ground-deep:#fff;--card:#fff;--ink:#000;--muted:#000;--moss:#000;--serif:helvetica,serif;--mono:helvetica,serif;--rule:#000}
#scene{position:fixed;inset:0;pointer-events:none;overflow:hidden;z-index:2147483000;contain:strict}
.fly{position:absolute;top:0;left:0;background-repeat:no-repeat;transform-origin:50% 50%;pointer-events:none}
.fly>i{position:absolute;inset:0;display:block;background-repeat:no-repeat;pointer-events:none}
.fly{isolation:isolate}
.fly>.fw{mix-blend-mode:multiply}
.fly-label{position:absolute;top:-10px;left:0;width:200px;margin-left:-100px;color:var(--moss);text-align:center;white-space:pre;pointer-events:none}
.fly[data-trait][data-state]::after{bottom:calc(105% + 12px)}

/* Root
-------------------------------------------------- */
:root {--main-size-one: 20px;--main-size-three: 20px;}

/* Réglages
-------------------------------------------------- */
a{color:black;text-decoration:none;outline:0;}
a:hover{color:black;text-decoration:underline;outline:0;}
a, button {-webkit-tap-highlight-color: transparent;}
a:hover{text-decoration: underline;text-underline-offset: 2px;text-decoration-thickness: 1px;}
p:last-child{margin-bottom:0}
video{max-width:100%;max-height:100%;width:auto;height:auto;}
table{border-collapse:collapse;width:100;}
td{padding-right:var(--main-size-one);vertical-align: top}
ul {list-style:none}
em{font-style:italic;}
sup{vertical-align: baseline;font-variant-position: super; -moz-font-feature-settings: "sups"; -webkit-font-feature-settings: "sups"; font-feature-settings: "sups";}
strong{font-weight:normal}
code {font-size:14px;white-space: wrap;background: #eee;color: black;padding: 2.5px 5px;border-radius: 5px;}
blockquote {display: flex;align-content: center;justify-content: center;margin-bottom: 19px;}
html::-webkit-scrollbar {display: none;}
html {-ms-overflow-style: none;scrollbar-width: none;  /* Firefox */}

/* Grid
-------------------------------------------------- */
.grid {z-index:-9;position:fixed;top:0;left:0;width:100%;height:100%;padding:0 2.5px;display: flex;-webkit-flex-flow: row nowrap;flex-flow: row nowrap;}
.grid span{width:calc(100% / 12);margin:0 2.5px;background:red;opacity:.0}

/* Site
-------------------------------------------------- */
html{width:100%;height:100%}
body{width:100%;min-height:100%;max-width: 1920px;margin: 0 auto;background:#fff;color:#000;overflow-x:hidden}
body, h1, h2, h3, h4{font-weight:normal;line-height:20px;font-size:16px;font-family:'HelveticaLocal', Helvetica Neue, "Lucida Grande", sans-serif; }
body{display: -webkit-flex;display: flex;-webkit-flex-flow: column nowrap;flex-flow: column nowrap;}

/* Header
-------------------------------------------------- */
header{position: fixed;left:0;width:100%;padding:12.5px 2.5px;padding-top: 17.5px;width: calc((100% / 12) * 2 - 20px);}
header ul{width:100%;display: flex;-webkit-flex-flow: row nowrap;flex-flow: row wrap;}
header ul li{padding:2.5px}
header ul li:first-child{padding-left:17.5px}
header ul li a:hover, header ul li a.active{text-decoration: underline;text-underline-offset: 4px;text-decoration-thickness: 1px;}

/* Site
-------------------------------------------------- */
.compteur{width:calc((100% / 12) * 3 - 21px);position:fixed;bottom:var(--main-size-one);right:var(--main-size-one);z-index:2147483001; display: flex;-webkit-flex-flow: row nowrap;flex-flow: row nowrap;align-items: flex-start}
.compteur label{display:flex;justify-content:space-between;white-space: nowrap;align-items: center;}
.compteur label.count{width: 100%;gap: calc(var(--main-size-one) / 2);}

/* Langue
-------------------------------------------------- */
aside{position: fixed;width:50%;top:0;right:0;padding:12.5px 2.5px;padding-top: 17.5px;align-items: center;justify-content: flex-end;display: flex;-webkit-flex-flow: row nowrap;flex-flow: row nowrap;}
aside span{padding: 2.5px 0}
aside span:last-child{padding-right: 17.5px;}
aside span a:hover, aside span a.active{text-decoration: underline;text-underline-offset: 4px;text-decoration-thickness: 1px;}

/* Langue
-------------------------------------------------- */
#sommaire{position:fixed;padding:var(--main-size-one) var(--main-size-one) 0 0;top:0;width: calc((100% / 6) * 1 - 5px);left: calc((100% / 6) * 1 + 5px);}
#sommaire ul{list-style:none;margin:0 0 28px;padding:0;display: flex;-webkit-flex-flow: column nowrap;flex-flow: column nowrap;}
#sommaire a{color:#000;text-decoration:none}
#sommaire a:hover,#sommaire a.actif{}
#sommaire .niveau-h3{padding-left:12px}
#sommaire ul { counter-reset: s;}
#sommaire li { position: relative; counter-increment: s; }
#sommaire a::before {content: counter(s) ".";position: absolute; right: 100%;width:calc(var(--main-size-one) * 2);opacity: 0;}
#sommaire a:hover::before, #sommaire a:focus-visible::before, #sommaire a.actif::before { opacity: 1; }
.text h2[tabindex="-1"]:focus, .text h3[tabindex="-1"]:focus {outline: none;}

/* Texte
-------------------------------------------------- */
.text { counter-reset: section; }
.text h2 { counter-increment: section; }
.textes h2::before {content: counter(section) ".";display: inline-block;width: calc(var(--main-size-one) * 2);}
.text img { display: block; max-width: 100%; height: auto; }
.text figure { margin: 0 0 var(--main-size-one);width:100%;margin:0 auto;margin-bottom: var(--main-size-one);padding: 0 calc(var(--main-size-one) * 5);}
.text figure figcaption{margin-top: calc(var(--main-size-one) / 3) }
.text a.logo-lien{margin-left: calc(var(--main-size-one) * 2);margin-top: var(--main-size-one);display:inline-block}
.text a.logo-lien:hover{opacity: .5}
.text a.logo-lien:after{display:none;}
.text img.logo{display:inline-block;width:auto;height:calc(var(--main-size-one) * 6);vertical-align:middle;}
.text a {text-decoration: underline;text-underline-offset: 4px;text-decoration-thickness: 1px;}
.text a:hover{text-decoration:none}
.text a.button{background: #eee;cursor:pointer;text-decoration:none;padding: 9px 13px;;display: inline-block;border-radius: 5px;border:1px solid transparent}
.text a.button:after{display:none}
.text a.button:hover{background: #eee;cursor:pointer;;border:1px solid black}

/* Table
-------------------------------------------------- */
table{table-layout:fixed;margin:var(--main-size-one) calc(var(--main-size-one) * 2);width:calc(100% - (calc(var(--main-size-one) * 4)));clear:left;border-collapse:collapse;text-align:left}
table tr, table th{text-align:left;vertical-align:top}
table thead tr th{font-weight:normal;padding-bottom:calc(var(--main-size-one) / 2 - 1px);margin-bottom:calc(var(--main-size-one) */ 2);border-bottom:1px solid}
table thead tr th:nth-child(1){width:8rem}
table thead tr th:nth-child(2){width:10rem}
table thead tr th:nth-child(3){}
table tbody tr:first-child td{padding-top:10px}
table td{padding-bottom: 10px;padding-right:calc(var(--main-size-one) * 2)}
table td:last-child{padding-right:0}
table:nth-last-of-type(2){margin-bottom:0;}
table:nth-last-of-type(2) tbody tr:last-of-type td{padding:0;}
table:nth-last-of-type(3){margin-bottom:0;}
table:nth-last-of-type(3) tbody tr:last-of-type td{padding:0;}
.text ul:nth-last-of-type(2){margin-bottom: 0}

/* Textes 
-------------------------------------------------- */
.textes{max-width:1920px;;padding: 0 5px;width:100%;float:left;display: -webkit-flex;display: flex;-webkit-flex-flow: column wrap;flex-flow: column wrap;}
.textes:last-of-type{padding-bottom:20px}
.textes h2{;width:100%;margin-bottom:var(--main-size-one);}
.textes h2:not(:first-child){margin-top:calc(var(--main-size-one) * 2)}
.textes span:nth-of-type(1){width: calc((100% / 6) * 2);display: flex;flex-flow: column nowrap;margin-left: calc((100% / 6) * 2);padding:7.5px 2.5px;padding: var(--main-size-one) 2.5px 0;top: 0;position: relative;}
.textes.infos span:nth-of-type(1){padding:2.5px 2.5px;}
.textes.infos h2{padding-bottom:12.5px}
.textes:not(:first-of-type) h2{padding-top:30px;}
.textes span p+p{text-indent:calc(var(--main-size-one) *2)}
.textes span p:last-of-type{margin-bottom:0;text-indent:0}
.text ol {counter-reset: foo;display: table;margin-top:var(--main-size-one);margin-bottom:var(--main-size-one);padding: 0 calc(var(--main-size-one) * 2)}
.text ol > li {counter-increment: foo;display: table-row;}
.text ol > li::before {content: counter(foo) ".";display: table-cell;width:calc(var(--main-size-one) * 1)}
.text ul {display: table;margin:var(--main-size-one) calc(var(--main-size-one) * 2)}
.text ul > li {display: table-row;}
.text ul > li::before {content: "•";display: table-cell;width:calc(var(--main-size-one) * 1)}

/* Fiche 
-------------------------------------------------- */
.fiche{;position:fixed;bottom:var(--main-size-one);left:var(--main-size-one);}
.fiche dl{display:grid;grid-template-columns:auto 1fr;column-gap:var(--main-size-one);}
.fiche dt,.fiche dd{margin:0}
.fiche a{display:block}
input#count{appearance:none;width:100%;height:1px;background:linear-gradient(90deg,#000 30%,#000 30%);cursor:pointer}
input#count::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:calc(var(--main-size-one) / 1.5);height:calc(var(--main-size-one) / 1.5);border-radius:var(--main-size-one);background:#000;box-shadow:none}
input#count::-moz-range-thumb{border:none;width:calc(var(--main-size-one) / 1.5);height:calc(var(--main-size-one) / 1.5);border-radius:calc(var(--main-size-one) / 1.5);background:#000;box-shadow:none}

/* Lazyloading 
-------------------------------------------------- */
.lazyload, .lazyloading { opacity: 0;}
.lazyloaded { opacity: 1;transition: opacity .125s ease-in-out, filter .125s ease-in-out;}

/* Swup 
-------------------------------------------------- */
html.is-changing .transition-fade { transition: opacity .25s ease-in-out; opacity: 1; }
html.is-animating .transition-fade { opacity: 0; }

/* Hide 
-------------------------------------------------- */
li.menu, .langmobile{display:none}

/* Seules mouches 
-------------------------------------------------- */
header,aside,nav,main,footer,.card,.show{transition:opacity .6s ease,visibility 0s linear 0s}
html.mouches-seules header,html.mouches-seules aside,html.mouches-seules nav,html.mouches-seules main,html.mouches-seules footer,html.mouches-seules .card,html.mouches-seules .show{opacity:0;visibility:hidden;transition:opacity .6s ease,visibility 0s linear .6s}
@media (prefers-reduced-motion: reduce) {header,aside,nav,main,footer,.card,.show{transition:none}}
.compteur label.seules{display:flex;align-items:center;gap:calc(var(--main-size-one) / 2);cursor:pointer;margin-right:var(--main-size-one)}
.seules input{appearance:none;-webkit-appearance:none;flex:none;width:calc(var(--main-size-one) / 1.5);height:calc(var(--main-size-one) / 1.5);margin:0;border:1px solid #000;border-radius:2.5px;background:#fff;cursor:pointer}
.seules input:checked{background:#000}
.seules input:focus-visible{outline:2px solid #000;outline-offset:2px}

/* MEDIA QUERIES
-------------------------------------------------- */
@media only screen and (max-width:1440px){
   body,h1,h2,h3,h4{font-size:15px;line-height:19px}
   code {font-size:13px;}
   header{width:100%;padding:11.5px 7.5px;padding-top:16.5px}
   header ul li:first-child{padding-left:16.5px}
   .textes span:nth-of-type(2){width:calc((100% / 12) * 3);margin-left:calc((100% / 12) * 6)}
   .textes span:nth-of-type(1){}
   .textes:not(:first-of-type) h2{padding-top:30.5px}
   .textes.infos:not(:first-of-type) h2{padding-top:30px}
   .textes{width:100%}
   .text a.button {padding: 8px 13px;}
   .textes span.colonnes{width:calc((100% / 12)*5);margin-left:calc(100% / 12);padding:2.5px;-webkit-column-count:1;-moz-column-count:1;column-count:1}
   .textes span:nth-of-type(1){width:calc((100% / 12) * 5);margin-left:calc((100% / 12) * 4)}
   .textes span:nth-of-type(2){width:calc((100% / 12) * 4);margin-left:calc((100% / 12) * 3)}
   aside {padding: 11.5px 2.5px;padding-top: 16.5px;}
}

@media only screen and (max-width:1080px){
   :root {--main-size-one: 16px;--main-size-three: 20px;}
   header ul li:first-child{width:calc((100% / 12) * 3)}
   .textes span:nth-of-type(1) {width: calc((100% / 12) * 8);margin-left:calc((100% / 12) * 2)}
   .textes span.colonnes{width:calc((100% / 12)*8);margin-left:calc(100% / 12);padding:2.5px;-webkit-column-count: 1;-moz-column-count: 1;column-count: 1;}
   .textes span:nth-of-type(2) {width: calc((100% / 12) * 4);margin-left: calc((100% / 12) * 5);}
   .textes span:nth-of-type(2) {width: calc((100% / 12) * 5);margin-left: calc((100% / 12) * 5);}
   header{background:white;z-index:9999;border-bottom:1px solid}
   header ul li:first-child{flex: 1;padding-left:2.5px}
   header ul li{width:auto;}
   header ul li:first-child{text-align: left;flex:1;}
   header ul li{text-align: center}
   aside{display: none}
   .textes span:nth-of-type(1) {top: 50px;padding:18px}
   #sommaire{visibility:hidden;background:white;z-index:999;width:100%;padding:18px;left:0;top:50px;border-bottom:1px solid;transform: translateY(-100%);visibility: hidden;transition: transform 0.4s ease, visibility 0.4s;}
   #sommaire ul {margin: 0;padding-left:30px}
   #sommaire a::before {padding-right: 0;width: calc(var(--main-size-one) * 2);}
   li.menu{width: 40px;display: flex;justify-content: flex-end;}
   li.menu span{position: absolute;background-origin: content-box;box-sizing: content-box;cursor: pointer;z-index: 999;width:18px;height:18px;background-image: url(menu.svg);background-size:contain;background-repeat:no-repeat;background-position: center;display:block}
   li.menu[aria-expanded="true"] span{background-image: url(menuopen.svg);}
   #sommaire.open {transform: translateY(0);visibility: visible;}
   .text figure {padding: 0 calc(var(--main-size-one) * 3);}
   #compteur, .fiche{display: none}
   .langmobile, .langmobile aside{display:block}
   .langmobile aside{padding:0;position:relative;width: auto}
}

@media only screen and (max-width:680px){
   body,h1,h2,h3,h4{font-size:14px;line-height:18px}
   code {font-size:12px;}
   :root{--main-size-one:15px;--main-size-three:19px}
   .textes:not(:first-of-type) h2{padding-top:28.5px}
   header{padding:7.5px;padding-top:15.5px;padding-bottom:10.5px}
   .textes span:nth-of-type(1){width:100%;margin:0;}
   .textes{padding:0}
   .compteur, .show{display: none}
   aside span:not(.liste){display: none}
   li.menu {width: 23px;}
   .text a.button {padding:8px 12px}
   table{table-layout:auto;margin:var(--main-size-one) 30px;width:calc(100% - var(--main-size-one) - 30px - 18px)}
   table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
   table tbody,table td{display:block}
   table tr{display:grid;grid-template-columns:auto 1fr;column-gap:var(--main-size-one);padding:var(--main-size-one) 0;border-bottom:1px solid}
   table tr:last-child{border:0}
   table td,table tbody tr:first-child td{padding:0}
   table tbody tr td:nth-child(2){text-align:right}
   table tbody tr td:first-child{align-self:center}
   table td:nth-child(3){grid-column:1 / -1;margin-top:calc(var(--main-size-one) / 2)}
   .text img.logo {height: calc(var(--main-size-one) * 7);}
}
