@import url("https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,400;0,700;1,400&display=swap");
* {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

body {
  background-color: #000000;
  color: #ffffff;
}

ul, ol {
  list-style: none;
}

a {
  text-decoration: none;
  color: inherit;
}

p {
  margin-bottom: 1rem;
}

main {
  padding: 4rem 0 0 0;
}

section {
  font: 400 1em "Roboto", sans-serif;
  padding: 3rem;
}

section, .categories {
  max-width: 1440px;
  margin: auto;
}

.home {
  position: relative;
  padding: 0;
  margin: 0;
}

.home video {
  height: calc(100vh - 4rem);
  width: 100vw;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  padding: 0 3rem 3rem;
}

.categories {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  z-index: 2;
  background-color: black;
  padding: 2rem 3rem 0;
}

.categories li {
  text-transform: uppercase;
  font: 900 1.1em "Roboto", sans-serif;
  margin: 2rem 1rem 0 0;
  position: relative;
  cursor: pointer;
}

.categories li:last-child {
  margin: 2rem 2rem 0 0;
}

.categories li:after {
  content: "";
  width: 0;
  height: 1px;
  position: absolute;
  bottom: -.5rem;
  left: 0;
  background-color: #ffffff;
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
}

.categories li:hover:after {
  width: 100%;
}

.categories li:target:after {
  width: 100%;
}

.informations {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 1fr 2fr;
      grid-template-columns: 1fr 1fr 2fr;
  -ms-grid-rows: 0.5fr 1.5fr;
      grid-template-rows: 0.5fr 1.5fr;
  gap: 1em 3em;
      grid-template-areas: "horaires adresse lieu" "newsletter newsletter lieu";
}

.informations .title span {
  word-spacing: 0;
}

.construction {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 1fr 2fr;
      grid-template-columns: 1fr 1fr 2fr;
  -ms-grid-rows: 1fr 1fr;
      grid-template-rows: 1fr 1fr;
  gap: 3em 3em;
      grid-template-areas: "horaires adresse lieu" "horaires adresse lieu";
}

.horaires {
  -ms-grid-row: 1;
  -ms-grid-row-span: 2;
  -ms-grid-column: 1;
  grid-area: horaires;
}

.adresse {
  -ms-grid-row: 1;
  -ms-grid-row-span: 2;
  -ms-grid-column: 2;
  grid-area: adresse;
}

.lieu {
  -ms-grid-row: 1;
  -ms-grid-row-span: 2;
  -ms-grid-column: 3;
  grid-area: lieu;
}

.lieu img {
  max-width: 100%;
}

.newsletter {
  -ms-grid-row: 2;
  -ms-grid-column: 1;
  -ms-grid-column-span: 2;
  grid-area: newsletter;
}

.newsletter p input {
  margin: 1rem .5rem 0 0;
}

.newsletter textarea {
  max-width: 100%;
  padding: .75rem 1rem;
  font-size: 16px;
  border: 1px solid white;
  width: 100%;
  background-color: transparent;
  color: #ffffff;
  margin-bottom: .75rem;
}

.inscription {
  width: calc(100% - $space);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

#email {
  padding: 12px 24px;
  font-size: 16px;
  border: 1px solid white;
  width: 100%;
  margin-right: 1rem;
  background-color: transparent;
  color: #ffffff;
}

button {
  background-color: #eb5757;
  color: #000000;
  font: 900 1em "Roboto", sans-serif;
  text-transform: uppercase;
  padding: 12px 36px;
  border: none;
  cursor: pointer;
}

button:hover {
  background-color: #ffffff;
}

.events {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 1fr;
      grid-template-columns: 1fr 1fr;
  -ms-grid-rows: 1fr;
      grid-template-rows: 1fr;
  gap: 0 3em;
      grid-template-areas: "foires expos";
  padding: 0 0 3rem;
}

.events .foires {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 1fr;
      grid-template-columns: 1fr 1fr;
  -ms-grid-rows: .5fr .5fr;
      grid-template-rows: .5fr .5fr;
  gap: 2em 3em;
      grid-template-areas: ". ." ". .";
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: foires;
  padding: 0 0 3rem;
}

.events .expos {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 1fr;
      grid-template-columns: 1fr 1fr;
  -ms-grid-rows: .5fr .5fr;
      grid-template-rows: .5fr .5fr;
  gap: 2em 3em;
      grid-template-areas: ". ." ". .";
  -ms-grid-row: 1;
  -ms-grid-column: 2;
  grid-area: expos;
}

.blog {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
}

.grid-items {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 1fr 1fr 1fr;
      grid-template-columns: 1fr 1fr 1fr 1fr;
  -webkit-column-gap: 3rem;
          column-gap: 3rem;
  row-gap: 3rem;
}

.item {
  max-width: 300px;
}

.title {
  font: 900 1.4em "Roboto", sans-serif;
  text-transform: uppercase;
  padding: 1rem 0;
  margin-bottom: 1rem;
  border-bottom: white 1px solid;
}

.title span {
  word-spacing: 100vw;
}

.title-construction {
  text-transform: uppercase;
  font: 900 4rem "Roboto", sans-serif;
  word-break: break-word;
}

.push {
  margin: 0 0 2rem;
}

.item--container {
  min-height: 400px;
  max-height: 400px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.blog--container {
  min-width: 34%;
  padding-right: 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.blog--container .container--img, .blog--container .container--img img {
  width: 100%;
}

.container--img {
  position: relative;
  max-width: 100%;
  margin: auto;
}

.container--img img {
  display: block;
}

.container--img > img {
  max-height: 400px;
  max-width: 100%;
  margin: auto;
}

.container--img-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  cursor: pointer;
  z-index: 1;
}

.container--img-overlay:hover .overlay {
  opacity: 0.5;
}

.container--img-overlay:hover img {
  opacity: 1;
}

.overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: black;
  opacity: 0;
  -webkit-transition: opacity .25s;
  transition: opacity .25s;
  z-index: 2;
}

.container--img-overlay img {
  position: absolute;
  top: calc(50% - 25px);
  height: 50px;
  opacity: 0;
  -webkit-transition: opacity .25s;
  transition: opacity .25s;
  z-index: 3;
  width: 100%;
  margin: auto;
}

header {
  position: fixed;
  width: 100%;
  height: auto;
  background-color: #000000;
  z-index: 2;
}

header nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 1rem 3rem;
}

header ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

header ul li {
  margin-left: 1rem;
}

header .logo {
  font: 900 2em "Roboto", sans-serif;
  text-transform: uppercase;
}

header .logo:hover {
  color: #eb5757;
}

header li {
  font: 900 1.1em "Roboto", sans-serif;
  text-transform: uppercase;
  position: relative;
}

header li a:after {
  content: "";
  width: 0;
  height: 1px;
  position: absolute;
  bottom: -.5rem;
  left: 0;
  background-color: #ffffff;
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
}

header li a:hover:after {
  width: 100%;
}

header li:nth-child(0n+2) {
  color: #eb5757;
}

header li:nth-child(0n+2) a:after {
  background-color: #eb5757;
}

.containerbtn div {
  width: 35px;
  height: 2px;
  background-color: #ffffff;
  margin: 6px 0;
}

.containerbtn {
  display: inline-block;
  cursor: pointer;
}

#mod {
  display: none;
}

#mod.change {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 3;
}

#mod.change .mod {
  background-color: #000000;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  max-width: calc( 100vw - 6rem);
  max-height: calc( 100vh - 6rem);
  padding: 3rem;
  margin: 3rem;
  overflow-y: scroll;
  position: relative;
}

#mod.change figcaption {
  max-width: 20rem;
}

#mod.change figure {
  padding-right: 3rem;
}

#mod.change img {
  display: block;
  max-width: 100%;
  height: auto !important;
  max-height: calc(100vh - 12rem);
}

#mod.change .text-item {
  padding-bottom: 2rem;
}

.close {
  width: 2rem;
  height: 2rem;
  position: absolute;
  top: .5rem;
  right: .5rem;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  cursor: pointer;
}

.mod-overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.75);
  -webkit-backdrop-filter: blur(1px);
          backdrop-filter: blur(1px);
  z-index: 2;
  display: none;
}

.mod-overlay.change {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.menu-mobile {
  display: none;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: fixed;
  padding: 0;
}

.menu-mobile ul {
  height: 0;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.menu-mobile ul li {
  text-align: center;
  display: block;
  margin: 0 0 2rem 0;
}

.menu-mobile .heading {
  position: fixed;
  top: 0;
  width: 100%;
  background-color: #000000;
  -webkit-transition: .9s;
  transition: .9s;
  -webkit-transition-property: background-color;
  transition-property: background-color;
  -webkit-transition-delay: .3s;
          transition-delay: .3s;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 1rem 3rem;
  height: 4rem;
}

.menu-mobile #button {
  width: 2rem;
  height: 2rem;
  cursor: pointer;
}

.menu-mobile #button img {
  max-width: 100%;
}

.menu-mobile--content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: #ffffff;
  width: 100vw;
  height: 0;
  background-color: rgba(0, 0, 0, 0.9);
  -webkit-backdrop-filter: blur(1px);
          backdrop-filter: blur(1px);
  z-index: -1;
  -webkit-transition: .6s;
  transition: .6s;
}

.openBurger {
  height: 100vh;
}

.openBurger > ul {
  height: auto;
}

.hideBar {
  background-color: transparent !important;
}

.current-link {
  color: pink !important;
}

.display-topright {
  position: absolute;
  top: 2rem;
  right: 2rem;
}

@media all and (min-width: 800px) and (orientation: landscape) {
  .mod figcaption {
    overflow-y: scroll;
  }
}

@media screen and (orientation: portrait) {
  .modale-content {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

@media all and (min-width: 1800px) {
  .grid-items {
    -ms-grid-columns: 1fr 1fr 1fr 1fr 1fr;
        grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
  }
  .categories, section {
    max-width: 1780px;
  }
  .item {
    max-width: none;
  }
}

@media all and (max-width: 1200px) {
  .grid-items {
    -ms-grid-columns: 1fr 1fr 1fr;
        grid-template-columns: 1fr 1fr 1fr;
  }
  .categories, section {
    max-width: 1080px;
  }
  .events {
    -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
    -ms-grid-rows: auto auto;
        grid-template-rows: auto auto;
        grid-template-areas: "foires" "expos";
  }
  .events .foires, .events .expos {
    -ms-grid-columns: 1fr 1fr 1fr;
        grid-template-columns: 1fr 1fr 1fr;
    -ms-grid-rows: 1fr auto;
        grid-template-rows: 1fr auto;
        grid-template-areas: ". . ." ".";
  }
}

@media all and (max-width: 1080px) {
  .informations {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 1fr;
        grid-template-columns: 1fr 1fr;
    -ms-grid-rows: .5fr .5fr .5fr;
        grid-template-rows: .5fr .5fr .5fr;
    gap: 3em 3em;
        grid-template-areas: "horaires lieu" "adresse lieu" "newsletter lieu";
  }
  .construction {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 1fr;
        grid-template-columns: 1fr 1fr;
    -ms-grid-rows: .25fr .5fr !important;
        grid-template-rows: .25fr .5fr !important;
    gap: 3em 3em;
        grid-template-areas: "horaires adresse" "lieu lieu" !important;
  }
  .blog--container {
    min-width: 50%;
  }
}

@media all and (max-width: 900px) {
  .grid-items {
    -ms-grid-columns: 1fr 1fr;
        grid-template-columns: 1fr 1fr;
  }
  .categories, section {
    max-width: 760px;
  }
  .menu-mobile {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .menu-desktop {
    display: none;
  }
  .events {
    -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
    -ms-grid-rows: auto auto;
        grid-template-rows: auto auto;
        grid-template-areas: "foires" "expos";
    padding: 0 0 2rem;
  }
  .events .foires, .events .expos {
    -ms-grid-columns: 1fr 1fr;
        grid-template-columns: 1fr 1fr;
    -ms-grid-rows: 1fr auto;
        grid-template-rows: 1fr auto;
        grid-template-areas: ". ." ". .";
  }
}

@media all and (max-width: 800px) and (orientation: landscape) {
  #mod.change img {
    max-height: none !important;
  }
}

@media all and (max-width: 800px) {
  #mod.change .mod {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    max-height: 100vh;
  }
  #mod.change figure {
    padding-right: 0;
    max-width: auto;
  }
  #mod.change figcaption {
    width: auto;
    max-width: 100%;
  }
  #mod.change .mod {
    margin: 0;
    max-width: 100vw;
    padding: 4rem 3rem 3rem;
  }
  .close {
    top: 1rem;
    right: 3rem;
  }
  .blog {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .blog--container {
    padding-right: 0;
  }
  .informations {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

@media all and (max-width: 600px) {
  .grid-items {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .item {
    max-width: 100%;
    width: 100%;
    margin: auto;
  }
  .item--container {
    min-height: auto;
    max-height: none;
  }
  .events .foires, .events .expos {
    -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
    -ms-grid-rows: .5fr .5fr .5fr auto;
        grid-template-rows: .5fr .5fr .5fr auto;
        grid-template-areas: "." "." "." ".";
  }
  .events .foires {
    padding: 0 0 2rem;
  }
  .container--img {
    width: 100%;
  }
  .container--img > img {
    width: 100%;
    max-height: none;
  }
}

@media only screen and (min-device-width: 320px) and (max-device-width: 480px) {
  section {
    -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
  }
  .informations {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
    -ms-grid-rows: .25fr .25fr .25fr .25fr;
        grid-template-rows: .25fr .25fr .25fr .25fr;
    gap: 3em 3em;
        grid-template-areas: "horaires" "adresse" "newsletter" "lieu";
  }
  .construction {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
    -ms-grid-rows: .25fr .25fr .5fr !important;
        grid-template-rows: .25fr .25fr .5fr !important;
    gap: 3em 3em;
        grid-template-areas: "horaires" "adresse" "lieu" !important;
  }
  .logo {
    font: 900 4rem "Roboto", sans-serif !important;
  }
}
/*# sourceMappingURL=style.css.map */