/* ----------------------------- */
/* RESET
/* ----------------------------- */

@charset "UTF-8";
html {
  /* set base font-size to equiv "10px", which is adapted to rem unit */
  font-size: 62.5%;
  /* IE9-IE11 math fixing. See http://bit.ly/1g4X0bX */
  font-size: calc(1em * 0.625);
}
html {
  box-sizing: border-box;
}
*,
*:before,
*:after {
  box-sizing: inherit;
}
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;
  vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
  display: block;
}
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;
}
img{
  max-width: 100%;
  height: auto;
}


/* ----------------------------- */
/* ELEMENTS GENERIQUES
/* ----------------------------- */

::selection{
  background-color: #ff463c !important;
  color: #e1e0e6 !important;
}

::-moz-selection{
  background-color: #ff463c !important;
  color: #e1e0e6 !important;
}

img{
  max-width: 100%;
}

hr{
  display: block;
  clear: both;
  height: 2px;
  margin: 0;
  padding: 0;
  border: 0;
  color: #ff463c;
  background-color: #ff463c;
}

hr.clear{
  height: 0;
  margin: 0;
}

sub,
sup{
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}

sub{
  bottom: -.25em;
}

sup{
  top: -.5em;
}

h1, h2, h3, h4, h5, h6{
  font-size: inherit;
  font-weight: normal;
}


/* ----------------------------- */
/* TYPOGRAPHIE
/* ----------------------------- */

/* Fonts */

@font-face {
    font-family: 'SuisseIntl';
    src: url('fonts/SuisseIntl-Book.woff2') format('woff2'),
         url('fonts/SuisseIntl-Book.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'SuisseIntl';
    src: url('fonts/SuisseIntl-BookItalic.woff2') format('woff2'),
         url('fonts/SuisseIntl-BookItalic.woff') format('woff');
    font-weight: normal;
    font-style: italic;
}
@font-face {
    font-family: 'SuisseIntl';
    src: url('fonts/SuisseIntl-SemiBold.woff2') format('woff2'),
         url('fonts/SuisseIntl-SemiBold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
}
@font-face {
    font-family: 'SuisseIntl';
    src: url('fonts/SuisseIntl-SemiBoldItalic.woff2') format('woff2'),
         url('fonts/SuisseIntl-SemiBoldItalic.woff') format('woff');
    font-weight: bold;
    font-style: italic;
}
@font-face {
    font-family: 'Raymond';
    src: url('fonts/RAYMOND-Regular.woff2') format('woff2'),
         url('fonts/RAYMOND-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}


/* Styles de texte */

body{
  font-family: 'SuisseIntl', Helvetica, Arial, sans-serif;
  font-size: 2rem;
  font-weight: normal;
  line-height: 1.25;
  margin: 0;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-variant-ligatures: discretionary-ligatures;
  -moz-font-feature-settings: "dlig";
  -webkit-font-feature-settings: "dlig";
  font-feature-settings: "dlig";
}

.accueil section h1,
.page-parent:not(.page-child) .article h1,
.tt90{
  font-family: 'Raymond', 'Times New Roman', Times, serif;
  font-size: 9rem;
  text-transform: uppercase;
  line-height: 0.95;
}

.article h1,
.tt70{
  font-family: 'Raymond', 'Times New Roman', Times, serif;
  font-size: 7rem;
  text-transform: uppercase;
  line-height: 1;
}

.popup h2,
.tt60{
  font-family: 'Raymond', 'Times New Roman', Times, serif;
  font-size: 6rem;
  text-transform: uppercase;
  line-height: 1;
}

.sidebar ul.menu > li > a,
.nav-prevnext,
.tt36{
  font-family: 'Raymond', 'Times New Roman', Times, serif;
  font-size: 3.6rem;
  text-transform: uppercase;
  line-height: 1;
}

.sidebar ul.menu > li > a,
.tt30{
  font-family: 'Raymond', 'Times New Roman', Times, serif;
  font-size: 3rem;
  text-transform: uppercase;
  line-height: 1;
}

.article-titre h2,
.t25{
  font-size: 2.5rem;
}

.t22b{
  font-size: 2.2rem;
  font-weight: bold;
}

.t20b,
.article-texte h3,
.article-texte h4{
  font-size: 2rem;
  font-weight: bold;
}

.popup h3,
.t20U{
  font-size: 2rem;
  text-transform: uppercase;
}
.t20{
  font-size: 2rem;
}

.satellites h3,
.t18b{
  font-size: 1.8rem;
  font-weight: bold;
}
.article-texte.article-col,
.t18{
  font-size: 1.8rem;
}

.t16b{
  font-size: 1.6rem;
  font-weight: bold;
}
ul.menu-default,
.sidebar ul.menu,
.article-texte h5,
.t16U{
  font-size: 1.6rem;
  text-transform: uppercase;
}
.satellites,
.main-header,
.article-texte table,
.t16{
  font-size: 1.6rem;
}

.satellites h4,
.t13b{
  font-size: 1.3rem;
  font-weight: bold;
}
.article-soustitre,
.article-infos,
.satellites h5,
.t13U{
  font-size: 1.3rem;
  text-transform: uppercase;
}
p.notes,
.article-details,
.legende,
.nav-top,
.footer-signature,
.footer-menu,
.tooltip,
.satellites table,
.t13{
  font-size: 1.3rem;
}

/* Mobile */
@media (max-width: 767px){

  .accueil section h1,
  .page-parent:not(.page-child) .article h1,
  .tt90{
    font-size: 16vw;
  }

  .article h1,
  .tt50{
    font-size: 5rem;
    text-transform: uppercase;
    line-height: 1;
  }

  ul.menu-default,
  .sidebar ul.menu,
  .article-texte h5,
  .t14U{
    font-size: 1.4rem;
    text-transform: uppercase;
  }


}


/* ----------------------------- */
/* VALEURS DE ZOOM
/* ----------------------------- */

@media (min-width: 1920px){
  html {
    font-size: 80%;
    font-size: calc(1em * 0.80);
  }
}
@media (min-width: 1600px) and (max-width: 1919px){
  html {
    font-size: 70%;
    font-size: calc(1em * 0.70);
  }
}
@media (min-width: 1300px) and (max-width: 1599px){
  html {
    font-size: 62.5%;
    font-size: calc(1em * 0.625);
  }
}
@media (min-width: 1150px) and (max-width: 1299px){
  html {
    font-size: 58%;
    font-size: calc(1em * 0.58);
  }
}
@media (min-width: 1000px) and (max-width: 1149px){
  html {
    font-size: 54%;
    font-size: calc(1em * 0.54);
  }
}
@media (min-width: 900px) and (max-width: 999px){
  html {
    font-size: 50%;
    font-size: calc(1em * 0.50);
  }
}
@media (min-width: 768px) and (max-width: 899px){
  html {
    font-size: 44%;
    font-size: calc(1em * 0.44);
  }
}
@media (min-width: 600px) and (max-width: 767px){
  html {
    font-size: 62.5%;
    font-size: calc(1em * 0.625);
  }
}
@media (min-width: 460px) and (max-width: 599px){
  html {
    font-size: 58%;
    font-size: calc(1em * 0.58);
  }
}
@media (max-width: 459px){
  html {
    font-size: 54%;
    font-size: calc(1em * 0.54);
  }
}


/* ----------------------------- */
/* COULEURS
/* ----------------------------- */

.article-titre h1,
ul a,
ul a:hover,
ul a:focus,
ul a:active,
.article-texte p a:hover,
.article-texte ul a:hover,
.satellites p a:hover,
.satellites ul a:hover,
.footer,
.footer a,
.footer a:hover,
.footer a:focus,
.footer a:active,
.tooltip,
.couleur1{
  color: #ff463c;
}

.sidebar a,
.home section h1,
.home section h1 a,
.home section h1 a:hover,
.home section h1 a:focus,
.home section h1 a:active,
.single .article-titre h1,
.home ul a,
.home ul a:hover,
.home ul a:focus,
.home ul a:active,
.single ul a,
.single ul a:hover,
.single ul a:focus,
.single ul a:active,
.sidebar ul a,
.sidebar ul a:hover,
.sidebar ul a:focus,
.sidebar ul a:active,
.home .footer,
.home .footer a,
.home .footer a:hover,
.home .footer a:focus,
.home .footer a:active,
.single .footer,
.single .footer a,
.single .footer a:hover,
.single .footer a:focus,
.single .footer a:active,
.single .article-texte,
.single .article-texte a,
.single .article-texte a:hover,
.single .article-texte a:focus,
.single .article-texte a:active,
.single .nav-prevnext a,
.single .nav-prevnext a:hover,
.single .nav-prevnext a:focus,
.single .nav-prevnext a:active,
.home .tooltip,
.single .tooltip,
.couleur2{
  color: #e1e0e6;
}

body,
input,
a,
a:hover,
a:focus,
a:active,
.legende,
.article-texte,
/*.article-menu li a.not-current,*/
.article-menu li.current_page_item a,
.article-menu li.current_page_ancestor a,
.couleur3{
  color: #00055d;
}
.couleur4{
  color: #3a1608;
}

body.home,
body.single,
body.home .zoom-overlay,
body.single .zoom-overlay,
body.home .tooltip,
body.single .tooltip,
.sidebar,
.bg1{
  background-color: #ff463c;
}

body,
.popup,
.zoom-overlay,
.tooltip,
.bg2{
  background-color: #e1e0e6;
}

body.home .sidebar,
body.single .sidebar,
.bg3{
  background-color: #00055d;
}
.bg4{
  background-color: #3a1608;
}

li.main-menu-item.current,
li.main-menu-item:hover,
.shadow1{
  box-shadow: 0 2px #ff463c;
}
.article-texte p a:hover,
.article-texte ul a:hover,
.satellites p a:hover,
.satellites ul a:hover,
.shadow1em{
  box-shadow: inset 0 -0.1em #ff463c;
}

body.home li.main-menu-item.current,
body.home li.main-menu-item:hover,
body.single li.main-menu-item.current,
body.single li.main-menu-item:hover,
.shadow2{
  box-shadow: 0 2px #e1e0e6;
}
.single .article-details-col strong,
.single .article-details-col a:hover,
.shadow2light{
  box-shadow: inset 0 -1px #e1e0e6;
}
body.home .article-texte p a,
body.home .article-texte ul a,
body.home .satellites p a,
body.home .satellites ul a,
body.single .article-texte p a,
body.single .article-texte ul a,
body.single .satellites p a,
body.single .satellites ul a,
.shadow2em{
  box-shadow: inset 0 -0.1em #e1e0e6;
}

.article-texte h3,
.satellites h3,
.shadow3bis{
  box-shadow: 0 2px #00055d;
  display: inline-block;
}
.article-texte p a,
.article-texte ul a,
.satellites p a,
.satellites ul a,
.shadow3em{
  box-shadow: inset 0 -0.1em #00055d;
}
.article-details-col strong,
.article-details-col a:hover,
.shadow3light{
  box-shadow: inset 0 -1px #00055d;
}

.tooltip,
.border1{
  border: 1px solid #ff463c;
}
body.home .tooltip,
body.single .tooltip,
.border2{
  border: 1px solid #e1e0e6;
}

.border3{
  border: 1px solid #00055d;
}
tr, td,
.border3tb{
  border-top: 1px solid #00055d;
  border-bottom: 1px solid #00055d;
}
table tr:first-of-type, table tr:first-of-type td{
  border-top: none;
}
table tr:first-of-type,
.border3bis{
  border-bottom: 2px solid #00055d;
}

/* ----------------------------- */
/* LIENS
/* ----------------------------- */

a{
  text-decoration: none;
}

a.inactif:hover{
  cursor: default;
}

a img{
  box-shadow: none;
}


/* Liens blocs */

.actu,
.article-image,
.album-image,
a.footer-logo,
.link-zone{
  position: relative;
}

.actu h3 a,
.article-image h3 a,
.album-image h3 a,
a.footer-logo{
  display: block;
}
.nav-top a{
  display: inline-block;
}

a.footer-logo:before,
.actu h3 a:before,
.article-image h3 a:before,
.album-image h3 a:before{
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom:0;
  background-color: rgba(0,0,0,0);
}


/* ----------------------------- */
/* RENDU IMAGES
/* ----------------------------- */

img{
  display: block;
}

/* Chrome */
@media all and (-webkit-min-device-pixel-ratio:0) and (min-resolution: .001dpcm) {
  .actu img,
  .article-galerie img{
    image-rendering: -webkit-optimize-contrast;
  }
}

.actu-img,
.article-img,
.bloc-img{
  position: relative;
  overflow: hidden;
}

img.img-duotone{
  filter: url('filters/filter-duotone-1.svg#duotone-1');
}
body.home img.img-duotone,
body.single img.img-duotone{
  filter: url('filters/filter-duotone-2.svg#duotone-2');
}

img.img-normal{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: opacity 0.2s ease;
  z-index: 2;
  pointer-events: none;
}

.actu:hover img.img-normal,
.article-image:hover img.img-normal,
.album-image:hover img.img-normal,
.bloc-img:hover img.img-normal{
  opacity: 1;
}

/* Desktop */
@media (min-width: 768px){

  body.single .article-galerie .article-image:nth-of-type(1) .article-img{
    height: 30.3vw;
  }
  .accueil-poledesign .actu-img,
  .article-galerie .article-img:nth-of-type(1),
  .article-galerie .actu:nth-of-type(1) .actu-img,
  .article-galerie .article-image:nth-of-type(1) .article-img{
    height: 25.2vw;
  }
  .accueil-lycee .actu-img,
  .article-galerie .article-img:nth-of-type(2),
  .article-galerie .actu:nth-of-type(2) .actu-img,
  .article-galerie .article-image:nth-of-type(2) .article-img,
  .album-image:nth-of-type(8n+4) .article-img,
  .album-image:nth-of-type(8n+5) .article-img{
    height: 21.4vw;
  }
  .album-image{
    grid-template-rows: calc(21.4vw + 1.2rem) auto;
  }
  .accueil-college .actu-img,
  .article-galerie .actu:nth-of-type(3) .actu-img,
  .article-galerie .article-image:nth-of-type(3) .article-img,
  .album-image:nth-of-type(8n+3) .article-img,
  .album-image:nth-of-type(8n+6) .article-img{
    height: 17.8vw;
  }
  .article-galerie .actu:nth-of-type(4) .actu-img,
  .article-galerie .article-image:nth-of-type(4) .article-img,
  .album-image:nth-of-type(8n+2) .article-img,
  .album-image:nth-of-type(8n+7) .article-img{
    height: 14.2vw;
  }
  .album-image:nth-of-type(8n+1) .article-img,
  .album-image:nth-of-type(8n+8) .article-img{
    height: 10.4vw;
  }


}

/* ----------------------------- */
/* ZOOM LIGHTBOX
/* ----------------------------- */

img[data-action="zoom"] {
  cursor: zoom-in;
}
.zoom-img,
.zoom-img-wrap {
  position: relative;
  z-index: 666;
  -webkit-transition: all 300ms;
  transition: all 300ms;
}
img.zoom-img {
  cursor: zoom-out;
  filter: none !important;
}
.zoom-overlay {
  z-index: 420;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  pointer-events: none;
  filter: "alpha(opacity=0)";
  opacity: 0;
  -webkit-transition: opacity 300ms;
  transition:      opacity 300ms;
}
.zoom-overlay-open .zoom-overlay {
  filter: "alpha(opacity=80)";
  opacity: 0.8;
}


/* ----------------------------- */
/* MARGES
/* ----------------------------- */

.wrapper{
  padding: 1.6rem 1.6rem 7rem 1.6rem;
}

.main-header,
.footer,
.accueil,
.accueil-poledesign,
.accueil-lycee,
.accueil-college,
.actu,
.article-left,
.article-right,
.article-menu,
.article-galerie,
.article-image,
.album-image,
.article-details,
.article-colonnes,
.article-album,
.satellites{
  grid-column-gap: 1.2rem;
}

.actu-img,
.article-img,
.bloc-img{
  margin-bottom: 1.2rem;
}

.popup{
  padding: 2.2rem;
}


/* Mobile */
@media (max-width: 767px){

  .toggle-menu,
  .close-menu,
  .close-popup{
    top: 1.8rem;
    right: 1.6rem;
  }

  .sidebar{
    padding: 2.6rem 1.8rem;
  }

}

/* Desktop */

@media (min-width: 768px){

  .toggle-menu,
  .close-menu,
  .close-popup{
    top: 2.2rem;
    right: 2.2rem;
  }

  .sidebar{
    padding: 3rem;
  }

  .side-curseur{
    right: 3.2rem;
  }

  .article-left,
  .article-right{
    width: calc(50% - 0.6rem);
  }
 
}


/* ----------------------------- */
/* DESIGN GLOBAL
/* ----------------------------- */

html {
  scroll-behavior: smooth;
}

.sidebar{
  position: fixed;
  top: 0;
  height: 100%;
  opacity: 0;
  transition: right 0.5s ease, opacity 0s 0.5s;
  z-index: 10;
}

.sidebar.sidebar-visible{
  opacity: 1;
  transition: right 0.5s ease, opacity 0s 0s;
}

.footer{
  line-height: 1.3;
  margin-top: 7rem;
}


/* Mobile */
@media (max-width: 767px){

  .side-curseur,
  .main-menu{
    display: none;
  }

  .sidebar{
    width: 100%;
    right: -100%;
  }
  .sidebar.sidebar-visible{
    right: 0;
  }

  .header-curseur{
    margin-top: 1rem;
    margin-bottom: 4rem;
  }

}


/* Desktop */
@media (min-width: 768px){

  .main-header{
    margin-top: 2rem;
    margin-bottom: 7rem;
  }

  .sidebar{
    width: 42rem;
    right: -42rem;
  }
  .sidebar.sidebar-visible{
    right: 0;
  }

  body.single .footer,
  body.page .footer{
    margin-top: 14rem;
  }

  .main-header,
  .footer,
  .accueil,
  .article-colonnes,
  .article-album,
  .satellites{
    display: grid;
    grid-template-columns: repeat(36, 1fr);
  }

  ul.main-menu{
    grid-column: 2 / span 21;
  }

  .header-curseur{
    grid-column: span 4;
  }

  .article-left,
  .article-right{
    grid-column: span 18;
  }
  
  .article-menu,
  .article-left,
  .article-right,
  .article-galerie{
    display: grid;
    grid-template-columns: repeat(18, 1fr);
  }

  .article-menu ul{
    grid-column: span 5;
  }

  .article-blocs:first-of-type{
    grid-column: 13 / span 10;
  }
  .article-blocs:last-of-type{
    grid-column: 25 / span 10;
  }

  .article-left > .article-titre,
  .article-left > .article-texte,
  .single .article-details{
    grid-column: 2 / span 15;
  }

  .page-parent:not(.page-child) .article-left > .article-titre,
  .article-right .article-texte{
    grid-column: 3 / span 15;
  }

  .article-right > .article-texte{
    grid-column: 3 / span 14;
  }

  .article-details{
    display: grid;
    grid-template-columns: repeat(14, 1fr);
  }
  .article-details-col{
    grid-column: span 7;
  }
  .article-details-col + .article-details-col{
    grid-column: 8 / span 5;
  }
  .single .article-details-col{
    grid-column: span 4;
  }
  .single .article-details-col:first-of-type{
    grid-column: span 3;
  }
  .nav-prevnext{
    grid-column: span 3;
  }

  .footer-logo{
    grid-column: 29 / span 6;
  }
  .footer-curseur{
    grid-column: 21 / span 4;
  }
  .nav-top{
    grid-column: 2 / span 4;
  }
  .footer-signature{
    grid-column: 25 / span 6;
  }
  .footer-menu{
    grid-column: span 6;
  }

  .actu-img,
  .article-img,
  .article-menu,
  .article-galerie{
    grid-column: 1 / -1;
  }

  .legende{
    grid-column: span 4;
  }
  .album-image .legende{
    grid-column: span 6;
  }
  .actu .legende,
  .article-image .legende{
    margin-bottom: -100%;
    height: 100%;
  }

  .accueil-poledesign .actu:nth-of-type(1) .legende,
  .article-right .article-galerie .article-image:nth-of-type(1) .legende{
    grid-column: 11 / span 4;
  }
  body.single .article-galerie .article-image:nth-of-type(1) .legende{
    grid-column: span 4;
  }
  .accueil-lycee .actu:nth-of-type(2) .legende,
  .accueil-lycee .actu:nth-of-type(3) .legende{
    grid-column: 9 / span 4;
  }
  .accueil-college .actu:nth-of-type(1) .legende,
  .accueil-college .actu:nth-of-type(3) .legende{
    grid-column: 7 / span 4;
  }

  .accueil-citescolaire{
    grid-column: 29 / span 6;
  }

  .accueil-poledesign{
    grid-column: 1 / span 22;
    grid-row-start: 1;
    display: grid;
    grid-template-columns: repeat(22, 1fr);
  }

  .accueil-lycee{
    grid-column: 19 / span 18;
    display: grid;
    grid-template-columns: repeat(18, 1fr);
    margin-top: -43vw;
  }
  .accueil-college{
    grid-column: 3 / span 18;
    display: grid;
    grid-template-columns: repeat(18, 1fr);
    margin-top: -17vw;
  }

  .accueil-poledesign h1{
    grid-column: 3 / span 20;
  }

  .accueil-poledesign ul.menu-default{
    grid-column: 3 / span 6;
  }

  .accueil-poledesign .actu,
  .article-image:nth-of-type(1),
  .article-galerie .actu:nth-of-type(1){
    grid-column: span 14;
    display: grid;
    grid-template-columns: repeat(14, 1fr);
  }
  .accueil-poledesign .actu:nth-of-type(3){
    grid-column: 5 / span 14;
  }

  .accueil-lycee h1{
    grid-column: 7 / span 12;
  }
  .accueil-lycee ul.menu-default{
    grid-column: 13 / span 6;
  }

  .accueil-lycee .actu,
  .article-galerie .actu:nth-of-type(2),
  .article-galerie .article-image:nth-of-type(2){
    grid-column: span 12;
    display: grid;
    grid-template-columns: repeat(12, 1fr);
  }
  .accueil-lycee .actu:nth-of-type(1){
    grid-row-start: 2;
  }
  .accueil-lycee .actu:nth-of-type(2){
    grid-column: 7 / span 12;
  }
  .accueil-lycee .actu:nth-of-type(3){
    grid-column: 3 / span 12;
  }

  .accueil-college h1{
    grid-column: span 18;
  }
  .accueil-college ul.menu-default{
    grid-column: span 8;
  }

  .album-image:nth-of-type(8n+4),
  .album-image:nth-of-type(8n+5){
    grid-column: span 12;
    display: grid;
    grid-template-columns: repeat(12, 1fr);
  }

  .accueil-college .actu,
  .article-galerie .actu:nth-of-type(3),
  .article-galerie .article-image:nth-of-type(3),
  .album-image:nth-of-type(8n+3),
  .album-image:nth-of-type(8n+6){
    grid-column: span 10;
    display: grid;
    grid-template-columns: repeat(10, 1fr);
  }
  .accueil-college .actu:nth-of-type(3){
    grid-column: 5 / span 10;
  }

  .article-galerie .actu:nth-of-type(4),
  .article-galerie .article-image:nth-of-type(4),
  .album-image:nth-of-type(8n+2),
  .album-image:nth-of-type(8n+7){
    grid-column: span 8;
    display: grid;
    grid-template-columns: repeat(8, 1fr);
  }

  .album-image:nth-of-type(8n+1),
  .album-image:nth-of-type(8n+8){
    grid-column: span 6;
    display: grid;
    grid-template-columns: repeat(6, 1fr);
  }

  .article-left .article-galerie .actu:nth-of-type(2),
  .article-left .article-galerie .article-image:nth-of-type(2){
    grid-column: 7 / span 12;
  }
  .article-left .article-galerie .actu:nth-of-type(3),
  .article-left .article-galerie .article-image:nth-of-type(3){
    grid-column: 3 / span 10;
  }

  .article-left .article-galerie .actu:nth-of-type(2) .legende,
  .article-left .article-galerie .article-image:nth-of-type(2) .legende{
    grid-column: 9 / span 4;
  }

  .article-right .article-image:nth-of-type(1){
    grid-column: 5 / span 14;
  }
  .article-right .article-image:nth-of-type(2){
    grid-column: 1 / span 12;
  }
  .article-right .article-image:nth-of-type(3){
    grid-column: 5 / span 10;
  }
  .article-right .article-image:nth-of-type(4){
    grid-column: 11 / span 8;
  }

  body.single .article-right .article-image{
    grid-column: 3 / span 16;
  }

  .satellites-col{
    grid-column: span 10;
  }

  .satellites.left .satellites-col1{
    grid-column: 2 / span 10;
  }
  .satellites.left .satellites-col2{
    grid-column: 14 / span 10;
  }
  .satellites.right .satellites-col1{
    grid-column: 13 / span 10;
  }
  .satellites.right .satellites-col2{
    grid-column: 25 / span 10;
  }

  .article-col1{
    grid-column: 2 / span 10;
  }
  .article-col2{
    grid-column: 13 / span 10;
  }
  .article-col3{
    grid-column: 24 / span 10;
  }

}


/* ----------------------------- */
/* COMMUNS
/* ----------------------------- */

.svg-filter{
  display: none;
}

.toggle-menu,
.close-menu,
.side-curseur,
.close-popup,
.accueil-logo,
.footer-logo,
.main-menu,
.nav-top{
  user-select: none;
}

.toggle-menu,
.close-menu,
.side-curseur,
.close-popup{
  -webkit-transition: transform 0.2s ease, top 0.3s ease;
  transition: transform 0.2s ease, top 0.3s ease;
  width: 4rem;
  height: 4.2rem;
}
.toggle-menu{
  position: fixed;
  z-index: 5;
  background: url(images/icon-menu1.svg) no-repeat;
  background-size: 100%;
  background-position: center;
}
.home .toggle-menu,
.single .toggle-menu{
  background: url(images/icon-menu2.svg) no-repeat;
  background-size: 100%;
  background-position: center;
}
.toggle-hidden{
  top: -6rem;
}

.close-menu{
  position: absolute;
  background: url(images/icon-close2.svg) no-repeat;
  background-size: 93%;
  background-position: center;
}

.close-popup{
  position: absolute;
  background: url(images/icon-close3.svg) no-repeat;
  background-size: 93%;
  background-position: center;
}

.toggle-menu:hover,
.close-menu:hover,
.close-popup:hover,
.side-curseur:hover{
  cursor: pointer;
}
.toggle-menu:active,
.close-menu:active,
.close-popup:active,
.side-curseur:active{
  -webkit-transform: scale(0.9);
  transform: scale(0.9);
}

ul.menu,
ul.menu-default{
  white-space: nowrap;
}
.sidebar ul.menu{
  white-space: normal;
}

ul.menu-default li,
.sidebar ul.menu li{
  line-height: 1.4;
}

.accueil li.separator{
  margin-top: 0.8em;
}

ul.menu-default li a,
.sidebar ul.sub-menu li a,
footer li a,
.footer-signature a span{
  display: block;
  transition: padding-left 0.4s ease;
}
ul.menu-default li:hover a,
.sidebar ul.sub-menu li:hover a,
footer li:hover a,
.footer-signature a:hover span{
  padding-left: 1rem;
  transition: padding-left 0.15s ease;
}

.actu-date:before{
  display: inline-block;
  content: '→';
  width: 1.2em;
  margin-left: -1.2em;
  position: relative;
  top: -0.06em;
  opacity: 0;
  transition: margin-left 0.4s ease, opacity 0.2s ease;
}
.actu:hover .actu-date:before{
  opacity: 1;
  margin-left: 0;
  transition: all 0.2s ease;
}

.actu-img img,
.article-img img{
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.header-curseur,
.side-curseur,
.curseur-h{
  width: 8rem;
  height: 1.9rem;
  background: url(images/curseur-h1.svg) no-repeat;
  background-size: 100%;
  background-position: center;
}

.home .header-curseur,
.home .curseur-h,
.single .header-curseur,
.single .curseur-h{
  background: url(images/curseur-h2.svg) no-repeat;
  background-size: 100%;
  background-position: center;
}

.side-curseur,
.curseur-v{
  height: 8rem;
  width: 1.9rem;
  background: url(images/curseur-v1.svg) no-repeat;
  background-size: 100%;
  background-position: center;
}

.home .side-curseur,
.home .curseur-v,
.single .side-curseur,
.single .curseur-v{
  background: url(images/curseur-v2.svg) no-repeat;
  background-size: 100%;
  background-position: center;
}

.footer-curseur{
  margin-top: 5rem;
  margin-bottom: 6rem;
}

.nav-top a:before{
  content: '↑';
  display: block;
  font-family: 'Raymond';
  font-size: 4.5rem;
  text-align: center;
  transition: transform 0.3s ease;
}
.nav-top a:hover:before{
  transform: translateY(0.5rem);
}

.article-texte li:before,
.satellites li:before{
  display: inline-block;
  content: '→';
  width: 1.2em;
  margin-left: -1.2em;
  position: relative;
  top: -0.04em;
}

.article-details-col strong{
  font-weight: normal;
}

.article-details p + p,
.popup p + p{
  margin-top: 1.2em;
}

.article-details a:before{
  display: inline-block;
  margin-right: 0.3em;
}
a.internal-link:before{
  content: '↘';
}
a.external-link:before{
  content: '↗';
}
a.download-link:before{
  content: '↧';
}

/*
.article-titre h1{
  overflow-wrap: break-word;
  word-wrap: break-word;
  -webkit-hyphens: auto;
  -moz-hyphens: auto;
  -ms-hyphens: auto;
  -o-hyphens: auto;
  hyphens: auto;
}
*/

sup{
  text-transform: lowercase !important;
}


/* Mobile */
@media (max-width: 767px){

  .accueil-logo,
  .footer-logo{
    width: 16rem;
    max-width: 50vw;
  }

  .accueil-logo{
    position: absolute;
    top: 0;
    right: 4.5rem;
    margin-bottom: 3rem;
  }

  .footer-logo{
    margin-left: auto;
  }

  .accueil ul.menu-default{
    columns: 2;
    width: 34rem;
    /*margin-left: 1.4vw;*/
  }

  .accueil-citescolaire{
    position: relative;
  }

  .accueil-citescolaire ul.menu-default{
    columns: 1;
  }

  .actu,
  .article-image{
    margin-top: 3rem;
  }

  .actu-img,
  .article-img{
    height: 66vw;
  }

  .legende{
    width: 18rem;
  }

  .actu:nth-of-type(even) .legende,
  .article-image:nth-of-type(even) .legende,
  .album-image:nth-of-type(even) .legende{
    margin-left: auto;
  }

  .footer-curseur{
    margin-top: 4rem;
    margin-bottom: 6rem;
  }

  .nav-top{
    float: left;
    width: 25%;
  }
  .footer-signature{
    float: left;
    width: 45%;
  }
  .footer-menu{
    float: left;
    width: 30%;
  }

  .footer-signature,
  .footer-menu{
    margin-bottom: 2rem;
  }

}

/* Small */
@media (max-width: 400px){
  .footer-signature,
  .footer-menu{
    float: right;
    width: 60%;
  } 
  .nav-top{
    width: 40%;
  }
}

/* XSmall */
@media (max-width: 360px){

  .accueil-logo{
    position: static;
  }

  .accueil-citescolaire ul.menu-default{
    columns: 2;
  }

}

/* XXSmall */
@media (max-width: 300px){

  .accueil ul.menu-default{
    columns: 1;
  }

}


/* Desktop */
@media (min-width: 768px){

  .side-curseur{
    position: absolute;
    top: 50%;
    z-index: 5;
  }

  .footer-curseur{
    margin-left: auto;
  }

  .accueil-logo,
  .footer-logo{
    width: 22.5rem;
  }

  .accueil-logo{
    margin-top: 8rem;
    margin-bottom: 6rem;
  }

  .nav-top{
    position: relative;
    top: -1rem;
  }

}

/* ----------------------------- */
/* TOOLTIP
/* ----------------------------- */


.tooltip{
  visibility: hidden;
  text-align: center;
  padding: 0.3rem 0.5rem;
  position: absolute;
  right: calc(100% + 2rem);
  top: 50%;
  transform: translateY(-50%);
  z-index: 1;
  opacity: 0;
  transition: opacity 0.5s;
  white-space: nowrap;
}

*:hover > .tooltip{
  visibility: visible;
  opacity: 1;
}


/* ----------------------------- */
/* HEADER
/* ----------------------------- */

ul.main-menu li{
  display: inline-block;
  margin-right: 5rem;
}

ul.main-menu li:last-child{
  margin-right: 0;
}


/* ----------------------------- */
/* SIDEBAR
/* ----------------------------- */

.sidebar{
  overflow-x: hidden;
  overflow-y: auto;
}

.sidebar ul.menu > li > a{
  display: block;
  margin-bottom: 2rem;
}

.sidebar ul.menu > li{
  margin-bottom: 4rem;
}


/* Mobile */
@media (max-width: 767px){

}

/* Desktop */
@media (min-width: 768px){
  /*.sidebar ul.menu{
    display: grid;
    grid-template-columns: repeat(2, 1fr);
  }*/
}


/* ----------------------------- */
/* PAGE D'ACCUEIL
/* ----------------------------- */

body.home .menu-item-1033{
  display: none;
}

.popup{
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999;
  padding-bottom: 6rem;
  -webkit-transition: transform 0.5s ease-in-out, visibility 0s;
  transition: transform 0.5s ease-in-out, visibility 0s;
}

.popup.popup-hidden{
  -webkit-transform: translateY(-110%);
  transform: translateY(-110%);
  visibility: hidden;
  -webkit-transition: transform 0.5s ease-in-out, visibility 0.5s;
  transition: transform 0.5s ease-in-out, visibility 0.5s;
}

.popup h3{
  margin-top: 0.4em;
  margin-bottom: 0.8em;
}
.popup h2{
  margin-bottom: 0.5em;
}

/* Mobile */
@media (max-width: 767px){

  .accueil-poledesign,
  .accueil-lycee,
  .accueil-college{
    margin-top: 5rem;
  }

  .accueil h1{
    margin-bottom: 1rem;
  }

  .popup{
    width: 100%;
  }

}


/* Desktop */
@media (min-width: 768px){

  .accueil h1{
    margin-bottom: 0.1em;
  }

  .popup{
    width: 50%;
    min-height: 70%;
  }

  .popup-titrage,
  .popup-texte{
    width: 80%;
  }

}


/* ----------------------------- */
/* PAGES
/* ----------------------------- */

.single .article-titre{
  margin-bottom: 0.5em;
}

.article-texte h3{
  margin-bottom: 1em;
}

.satellites h3{
  margin-bottom: 1.25em;
}
.article-texte p + h3,
.article-texte ul + h3,
.satellites p + h3,
.satellites ul + h3{
  margin-top: 2.5em;
}

.article-texte p + h4,
.article-texte ul + h4,
.satellites p + h4,
.satellites ul + h4{
  margin-top: 1.5em;
}

.article-texte p + p,
.satellites p + p{
  margin-top: 0.8em;
}

.article-texte ul,
.satellites ul{
  margin-top: 0.6em;
}

.article-texte ul + p,
.satellites ul + p,
.article-texte ul + ul,
.satellites ul + ul{
  margin-top: 1em;
}
.article-texte ul + h5,
.satellites ul + h5{
   margin-top: 1em;
}
.article-texte p.notes + h5{
   margin-top: 2em;
}

.article-texte h5 + ul,
.satellites h5 + ul{
  margin-top: 0;
}

.article-texte ul li + li{
  margin-top: 0.3em;
}

.article-texte ul{
  margin-left: 2em;
}
.satellites ul{
  margin-left: 1.2em;
}

.article-menu li.page_item_has_children.current_page_item a:after,
.article-menu li.page_item_has_children.current_page_ancestor a:after{
  display: inline;
  content:' →';
  position: relative;
  top: -0.05em;
}

table{
  width: 100%;
  margin-bottom: 1.25em;
}

* + table{
  margin-top: 1.25em;
}

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

table td{
  padding: 0.3em 0.2em;
}
table tr:nth-of-type(2) td{
  padding: 0.4em 0.2em 0.3em 0.2em;
}

.article-details{
  margin-top: 1.25em;
  margin-bottom: 2rem;
}
.single .article-details{
  margin-bottom: 4rem;
}

div + .article-lien-externe{
  margin-top: 1.25em;
}

.satellites{
  margin-top: 7rem;
}

.bloc-satellite + .bloc-satellite{
  margin-top: 3rem;
}

.bloc-galerie a{
  display: block;
}

.bloc-img:nth-of-type(1),
.bloc-img:nth-of-type(3){
  width: 37.5%;
  margin-left: 50%;
}
.bloc-img:nth-of-type(2){
  width: 58.5%;
  margin-left: 10%;
}

.nav-prevnext a{
  display: block;
  width: 50%;
  float: left;
}

.nav-prevnext a span{
  display: block;
  transition: transform 0.3s ease;
}
.nav-prevnext a:hover span.nav-prev{
  transform: translateX(-0.2em);
}
.nav-prevnext a:hover span.nav-next{
  transform: translateX(0.2em);
}


.album-image{
  margin-bottom: 4rem;
}


/* Mobile */
@media (max-width: 767px){

  .article h1{
    overflow-wrap: break-word;
    word-wrap: break-word;
    -webkit-hyphens: auto;
    -moz-hyphens: auto;
    -ms-hyphens: auto;
    -o-hyphens: auto;
    hyphens: auto;
  }

  .article-titre{
    margin-bottom: 1rem;
  }

  body.single .article-menu{
    display: none;
  }

  .article-menu ul,
  .article-details-col,
  .nav-prevnext{
    display: inline-block;
    width: 30%;
    vertical-align: top;
  }

  .article-menu ul{
    margin-top: 0.5em;
    margin-bottom: 0.5em;
  }

  .article-galerie .actu:nth-of-type(2),
  .article-galerie .actu:nth-of-type(3){
    display: none;
  }

  .article-texte,
  .article-right,
  .satellites,
  .satellites-col + .satellites-col{
    margin-top: 3rem;
  }

  .article-col + .article-col{
    margin-top: 5rem;
  }

  .article-details-col,
  .nav-prevnext{
    display: inline-block;
    width: 30%;
    vertical-align: top;
  }

}

/* Small */
@media (max-width: 400px){
  .article-menu ul,
  .article-details-col,
  .nav-prevnext{
    width: 45%;
  }
}



/* Desktop */
@media (min-width: 768px){

  .article-left{
    float: left;
  }
  .article-right{
    float: right;
  }

  .accueil-poledesign h1,
  .article h1{
    position: relative;
    top: -0.8rem;
  }
  .article.actualite h1{
    top: -0.6rem;
  }

  .article-left > .article-titre,
  .article-menu{
    min-height: 16rem;
    margin-bottom: 2rem;
  }

  .article-texte{
    position: relative;
    top: -0.2rem;
  }


  .album-image .article-img{
    margin-top: auto;
  }


}

