@charset "UTF-8";
/*!
Theme Name: Quasar Studio
Author: Atelier du Design
Version: 1
*/
@import url("https://fonts.googleapis.com/css2?family=Roboto:wght@400;700&display=swap");
/* http://meyerweb.com/eric/tools/css/reset/
   v5.0.1 | 20191019
   License: none (public domain)
*/
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,
main, menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, main, menu, nav, section {
  display: block;
}

/* HTML5 hidden-attribute fix for newer browsers */
*[hidden] {
  display: none;
}

body {
  line-height: 1;
}

menu, 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;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  padding: 0;
  font-family: "Roboto", sans-serif;
  font-style: normal;
  font-weight: 400;
  font-size: 18px;
  line-height: 24px;
  position: relative;
  overflow-x: hidden;
  color: white;
  background: #07001F;
  scroll-margin-top: 96px !important;
}
body.no-scroll {
  overflow: hidden;
}
body.no-scroll main {
  opacity: 0.8;
}
body main {
  overflow-x: clip;
}

.wp-block-group {
  width: 100%;
}
.wp-block-group .wp-block-group__inner-container {
  max-width: 1660px;
  margin: 0 auto;
  position: relative;
  padding: 80px 60px;
  box-sizing: border-box;
  width: 90%;
}
.wp-block-group .wp-block-group__inner-container .wp-block-group__inner-container, .wp-block-group .wp-block-group__inner-container .wp-block-group {
  width: 100%;
  padding: 0px;
  max-width: none;
}
.wp-block-group .wp-block-group__inner-container p:not(:last-child) {
  padding-bottom: 15px;
}
.wp-block-group.no-padding .wp-block-group__inner-container {
  padding: 0px 0px 0px 0px;
}
.wp-block-group.no-padding-top .wp-block-group__inner-container {
  padding: 0px 60px 80px 60px;
}
.wp-block-group.no-padding-bottom .wp-block-group__inner-container {
  padding: 80px 60px 0px 60px;
}

/* Recopie de wp-includes/blocks/columns/style.css.
   Le balisage bloc de home.php et category.php est écrit à la main dans les
   templates : WordPress n'y détecte aucun bloc et ne charge donc pas ce CSS.
   Les !important et les points de rupture 781/782px reproduisent ceux du coeur
   à l'identique, pour que les pages construites dans l'éditeur (qui reçoivent
   les deux feuilles) se comportent exactement comme avant.
   À resynchroniser si WordPress fait évoluer la mise en page du bloc. */
.wp-block-columns {
  display: flex;
  box-sizing: border-box;
  flex-wrap: wrap !important;
  align-items: initial !important;
}
.wp-block-columns.are-vertically-aligned-top {
  align-items: flex-start;
}
.wp-block-columns.are-vertically-aligned-center {
  align-items: center;
}
.wp-block-columns.are-vertically-aligned-bottom {
  align-items: flex-end;
}
.wp-block-columns.is-not-stacked-on-mobile {
  flex-wrap: nowrap !important;
}
.wp-block-columns.is-not-stacked-on-mobile > .wp-block-column {
  flex-basis: 0;
  flex-grow: 1;
}
.wp-block-columns.is-not-stacked-on-mobile > .wp-block-column[style*=flex-basis] {
  flex-grow: 0;
}

.wp-block-column {
  flex-grow: 1;
  min-width: 0;
  word-break: break-word;
  overflow-wrap: break-word;
}
.wp-block-column.is-vertically-aligned-top {
  align-self: flex-start;
}
.wp-block-column.is-vertically-aligned-center {
  align-self: center;
}
.wp-block-column.is-vertically-aligned-bottom {
  align-self: flex-end;
}
.wp-block-column.is-vertically-aligned-stretch {
  align-self: stretch;
}
.wp-block-column.is-vertically-aligned-top, .wp-block-column.is-vertically-aligned-center, .wp-block-column.is-vertically-aligned-bottom {
  width: 100%;
}

@media (min-width: 782px) {
  .wp-block-columns {
    flex-wrap: nowrap !important;
  }
  .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column {
    flex-basis: 0;
    flex-grow: 1;
  }
  .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*=flex-basis] {
    flex-grow: 0;
  }
}
@media (max-width: 781px) {
  .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column {
    flex-basis: 100% !important;
  }
}
/* Fin de la recopie */
.wp-block-columns {
  margin-bottom: 0px !important;
}

.wp-block-column:not(:first-child) {
  margin-left: 60px !important;
}

body .wp-block-image {
  margin: 0;
}

figure.aligncenter img {
  display: block;
  margin: 0 auto;
}

figcaption {
  display: block !important;
  text-align: center;
}

figure {
  display: block !important;
}
figure img {
  display: block !important;
  height: auto;
}

figure.wp-block-gallery {
  display: flex !important;
}

.is-style-rounded img {
  border-radius: 20px !important;
}

.wp-block-video {
  margin: 0 0 0 !important;
}

.wp-block-embed__wrapper iframe {
  display: block;
  margin: 0 auto;
}

h1 {
  font-style: normal;
  font-weight: 700;
  font-size: 110px;
  line-height: 115.69%;
  text-transform: uppercase;
  letter-spacing: 10px;
  text-shadow: 0px 2px 4px rgba(0, 0, 0, 0.61);
}

.sous-titre {
  font-style: normal;
  font-weight: 400;
  font-size: 32px;
  line-height: 153.19%;
  text-shadow: 0px 2px 4px rgba(0, 0, 0, 0.61);
  width: 80%;
  text-align: justify;
}

h2 {
  font-style: normal;
  font-weight: 700;
  font-size: 36px;
  line-height: 130%;
  letter-spacing: 6px;
  text-transform: uppercase;
  position: relative;
  z-index: 1;
}

h3 {
  font-style: normal;
  font-weight: 400;
  font-size: 24px;
  line-height: 28px;
  text-align: left;
}

a {
  text-decoration: none;
  color: #0AFAD2;
}

strong {
  font-weight: 700;
}

em {
  font-style: italic;
}

ul {
  padding-left: 30px;
}
ul li {
  list-style: disc;
}
ul li:last-of-type {
  padding-bottom: 0px;
}

@media only screen and (max-width: 1280px) {
  .wp-block-group .wp-block-group__inner-container {
    padding: 30px;
  }
  .wp-block-group.no-padding-top .wp-block-group__inner-container {
    padding: 30px;
    padding-top: 0;
  }
  .wp-block-group.no-padding-bottom .wp-block-group__inner-container {
    padding: 30px;
    padding-bottom: 0;
  }
  .wp-block-columns .wp-block-column:not(:first-child) {
    margin-left: 30px !important;
  }
  .col-reverse .wp-block-columns {
    flex-direction: column-reverse;
  }
}
@media only screen and (max-width: 1280px) {
  h2 {
    font-size: 30px;
  }
  .sous-titre {
    font-size: 28px;
    width: 90%;
  }
}
@media only screen and (max-width: 900px) {
  .wp-block-group .wp-block-group__inner-container {
    padding: 30px 0px;
    width: 90%;
  }
  .wp-block-group .wp-block-group__inner-container .wp-block-columns {
    flex-direction: column;
  }
  .wp-block-column.is-vertically-aligned-bottom, .wp-block-column.is-vertically-aligned-center, .wp-block-column.is-vertically-aligned-top {
    width: auto !important;
  }
}
@media only screen and (max-width: 781px) {
  .wp-block-group .wp-block-group__inner-container {
    padding: 30px 0px;
    width: 90%;
  }
  .wp-block-group .wp-block-group__inner-container .wp-block-columns {
    flex-direction: column !important;
  }
  .wp-block-columns {
    flex-direction: column;
  }
  .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column {
    flex-basis: 100% !important;
    width: 100%;
    margin-left: 0px !important;
  }
  h2.has-text-align-right {
    text-align: left;
    padding-left: 30px;
  }
  h1 {
    width: 80%;
    font-size: 50px;
  }
  .sous-titre {
    text-align: left;
  }
}
header {
  position: relative;
  width: 100%;
  z-index: 1000;
  position: fixed;
  transition: all 0.3s ease;
}
header nav {
  display: flex;
  align-items: center;
  box-sizing: border-box;
  background: rgba(7, 0, 31, 0.6);
  width: 100%;
  margin: 0 auto;
  font-size: 14px;
  position: relative;
  z-index: 100;
  transition: all 0.3s ease;
}
header nav .nav-contain {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  max-width: 1660px;
  width: 100%;
  margin: 0 auto;
  padding-top: 0px;
  padding: 0 60px;
  box-sizing: border-box;
}
header nav #navbar-mobile {
  display: none;
}
header nav #navbar-tel {
  display: none;
}
header nav #navbar-brand {
  display: flex;
  align-items: center;
}
header nav #navbar-brand img {
  max-height: 80px;
  width: 170px;
  padding: 15px 5px;
  object-fit: contain;
}
header nav #navbar-menu {
  margin-left: 50px;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  width: 100%;
}
header nav #navbar-menu .navbar-menu-2 {
  display: flex;
  width: 100%;
  justify-content: flex-end;
}
header nav #navbar-menu .navbar-menu-2 .rsx-sociaux {
  display: flex;
  align-items: center;
  padding: 0 0 0 30px;
}
header nav #navbar-menu .navbar-menu-2 .rsx-sociaux img {
  height: 30px;
}
header nav #navbar-menu .navbar-menu-2 .rsx-sociaux img:not(:last-of-type) {
  margin-right: 10px;
}
header nav #navbar-menu #primary-menu {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center;
  text-align: center;
  font-size: 14px;
  line-height: 20px;
  gap: 25px;
}
header nav #navbar-menu #primary-menu li {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0px;
}
header nav #navbar-menu #primary-menu li.menu-item-has-children:after {
  content: "+";
  transition: all 0.3s ease;
}
header nav #navbar-menu #primary-menu li.menu-item-has-children:hover:after {
  transform: rotate(95deg);
  transform-origin: center center;
}
header nav #navbar-menu #primary-menu li.menu-item-has-children.menu-hover .sub-menu {
  display: block;
  opacity: 1;
  top: 100%;
  transform: translate(-50%, 0%) scaleY(1);
  transform-origin: top;
}
header nav #navbar-menu #primary-menu li a {
  font-style: normal;
  font-weight: 500;
  font-size: 16px;
  line-height: 35px;
  /* identical to box height, or 194% */
  text-align: center;
  text-transform: uppercase;
  color: #FFFFFF;
  padding: 10px;
}
header nav #navbar-menu #primary-menu li a:hover {
  color: #0AFAD2;
}
header nav #navbar-menu #primary-menu li ul.sub-menu {
  opacity: 0;
  position: absolute;
  text-align: center;
  top: 140%;
  left: 50%; /* à 50%/50% du parent référent */
  transform: translate(-50%, 0%) scaleY(0); /* décalage de 50% de sa propre taille */
  flex-direction: column;
  background: #3023AE;
  justify-content: flex-start;
  align-items: flex-start;
  padding-left: 0px;
  border-radius: 20px;
  width: 200px;
  -webkit-box-shadow: 0px 10px 10px -5px rgba(7, 0, 31, 0.5);
  box-shadow: 0px 10px 10px -5px rgba(7, 0, 31, 0.5);
  padding: 10px;
}
header nav #navbar-menu #primary-menu li ul.sub-menu:before {
  position: absolute;
  top: -10px;
  left: 50%; /* à 50%/50% du parent référent */
  transform: translate(-50%, 0%);
  content: "";
  width: 0;
  height: 0;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-bottom: 10px solid #3023AE;
}
header nav #navbar-menu #primary-menu li ul.sub-menu li {
  height: auto;
  margin-left: 0px;
}
header nav #navbar-menu #primary-menu li ul.sub-menu li a {
  font-size: 14px;
  letter-spacing: 1px;
  text-align: left;
  opacity: 1;
  transition: all 0.3s ease;
  line-height: inherit;
  padding: 5px 0;
}
header nav #navbar-menu #primary-menu li ul.sub-menu li a:hover {
  color: #0AFAD2;
}
header nav * {
  transition: all 0.3s ease;
}
header #navbar-burger {
  display: none;
  position: relative;
  z-index: 100;
}

header nav.onTop {
  background: transparent;
  transition: all 0.3s ease;
}
header nav.onTop.active {
  background: #07001F;
}

@media only screen and (max-width: 1400px) {
  header nav #navbar-brand img {
    max-height: 35px;
  }
}
@media only screen and (max-width: 1024px) {
  header nav .nav-contain {
    padding: 0 10px;
  }
}
@media only screen and (max-width: 900px) {
  header nav #navbar-menu #primary-menu li a {
    padding: 0 15px;
  }
  header nav #navbar-menu {
    margin-left: 25px;
  }
  header nav {
    padding: 10px 20px;
    width: 100%;
    box-sizing: border-box;
    transition: none;
    background: #07001F;
    transform: all 0.3s ease;
  }
  header nav .nav-contain {
    width: 100%;
    padding: 0px !important;
  }
  header nav #navbar-burger {
    display: block;
  }
  header nav #navbar-burger .hamburger {
    padding: 15px 15px;
    display: flex;
    cursor: pointer;
    transition-property: opacity, filter;
    transition-duration: 0.15s;
    transition-timing-function: linear;
    font: inherit;
    color: inherit;
    text-transform: none;
    background-color: transparent;
    border: 0;
    margin: 0;
    overflow: visible;
  }
  header nav #navbar-burger .hamburger:hover {
    opacity: 0.7;
  }
  header nav #navbar-burger .hamburger.is-active:hover {
    opacity: 0.7;
  }
  header nav #navbar-burger .hamburger.is-active .hamburger-inner,
  header nav #navbar-burger .hamburger.is-active .hamburger-inner::before,
  header nav #navbar-burger .hamburger.is-active .hamburger-inner::after {
    background-color: white;
  }
  header nav #navbar-burger .hamburger--slider .hamburger-inner {
    top: 2px;
  }
  header nav #navbar-burger .hamburger--slider .hamburger-inner::before {
    top: 10px;
    transition-property: transform, opacity;
    transition-timing-function: ease;
    transition-duration: 0.15s;
  }
  header nav #navbar-burger .hamburger--slider .hamburger-inner::after {
    top: 20px;
  }
  header nav #navbar-burger .hamburger--slider.is-active .hamburger-inner {
    transform: translate3d(0, 10px, 0) rotate(45deg);
  }
  header nav #navbar-burger .hamburger--slider.is-active .hamburger-inner::before {
    transform: rotate(-45deg) translate3d(-5.71429px, -6px, 0);
    opacity: 0;
  }
  header nav #navbar-burger .hamburger--slider.is-active .hamburger-inner::after {
    transform: translate3d(0, -20px, 0) rotate(-90deg);
  }
  header nav #navbar-burger .hamburger-box {
    width: 40px;
    height: 24px;
    display: inline-block;
    position: relative;
  }
  header nav #navbar-burger .hamburger-inner {
    display: block;
    top: 50%;
    margin-top: -2px;
  }
  header nav #navbar-burger .hamburger-inner, header nav #navbar-burger .hamburger-inner::before, header nav #navbar-burger .hamburger-inner::after {
    width: 40px;
    height: 4px;
    background-color: white;
    border-radius: 4px;
    position: absolute;
    transition-property: transform;
    transition-duration: 0.15s;
    transition-timing-function: ease;
  }
  header nav #navbar-burger .hamburger-inner::before, header nav #navbar-burger .hamburger-inner::after {
    content: "";
    display: block;
  }
  header nav #navbar-burger .hamburger-inner::before {
    top: -10px;
  }
  header nav #navbar-burger .hamburger-inner::after {
    bottom: -10px;
  }
  header nav #navbar-brand {
    position: relative;
    z-index: 1000;
    flex-basis: 30%;
  }
  header nav #navbar-brand img {
    max-height: 60px;
    box-sizing: border-box;
    padding: 12px;
    margin-top: 0;
    width: 100%;
  }
  header nav #navbar-menu, header nav #navbar-ecommerce {
    display: none;
  }
  header nav #navbar-mobile {
    display: none;
    position: absolute;
    top: 50px;
    left: 0;
    width: 100vw;
    text-align: center;
    background: #07001F;
    transition: all 0.3s ease;
  }
  header nav #navbar-mobile.active {
    display: block;
  }
  header nav #navbar-mobile .menu-menu-principal-container {
    z-index: 100;
    position: relative;
  }
  header nav #navbar-mobile .menu-menu-principal-container:after {
    background: rgba(0, 0, 0, 0.4);
    content: " ";
    width: 100vw;
    height: 100vh;
    top: 0;
    left: 0;
    position: absolute;
    z-index: 99;
  }
  header nav #navbar-mobile .menu-menu-principal-container #primary-menu {
    display: flex;
    justify-content: center !important;
    flex-direction: column;
    padding: 20px 0;
    z-index: 100;
    position: relative;
  }
  header nav #navbar-mobile .menu-menu-principal-container #primary-menu li {
    margin: 0 auto;
    text-align: center;
    padding: 15px 0;
    list-style: none;
    position: relative;
    width: 100%;
  }
  header nav #navbar-mobile .menu-menu-principal-container #primary-menu li:before {
    display: none;
  }
  header nav #navbar-mobile .menu-menu-principal-container #primary-menu li a {
    font-style: normal;
    font-weight: 500;
    font-size: 16px;
    line-height: 35px;
    /* identical to box height, or 194% */
    text-align: center;
    text-transform: uppercase;
    color: #FFFFFF;
    padding: 10px;
  }
  header nav #navbar-mobile .menu-menu-principal-container #primary-menu li .sub-menu {
    transform: scaleY(0);
    transition: all 0.3s ease;
    height: 0;
    transform-origin: top;
    padding-left: 0px !important;
  }
  header nav #navbar-mobile .menu-menu-principal-container #primary-menu li.menu-item-has-children a {
    position: relative;
  }
  header nav #navbar-mobile .menu-menu-principal-container #primary-menu li.menu-item-has-children a:after {
    content: "+";
    transition: all 0.3s ease;
    padding-left: 10px;
  }
  header nav #navbar-mobile .menu-menu-principal-container #primary-menu li.menu-item-has-children a:hover:after {
    transform: rotate(95deg);
    transform-origin: center center;
  }
  header nav #navbar-mobile .menu-menu-principal-container #primary-menu li.is-active {
    transition: all 0.3s ease;
  }
  header nav #navbar-mobile .menu-menu-principal-container #primary-menu li.is-active .sub-menu {
    transform: scaleY(1);
    display: block;
    height: 100%;
    transition: all 0.3s ease;
    padding-top: 15px;
  }
  header nav #navbar-mobile .menu-menu-principal-container #primary-menu li.is-active .sub-menu li {
    padding: 0px;
    transition: all 0.3s ease;
    padding-bottom: 10px;
  }
  header nav #navbar-mobile .menu-menu-principal-container #primary-menu li.is-active .sub-menu li a {
    text-transform: none;
    line-height: normal;
    color: white;
  }
  header nav #navbar-mobile .menu-menu-principal-container #primary-menu li.is-active .sub-menu li a:after {
    display: none;
  }
}
hr {
  color: #0AFAD2;
  border: solid 1px #0AFAD2;
}

a.link-arrow, .link-arrow a {
  position: relative;
  margin-left: 45px;
  color: white;
}
a.link-arrow::before, .link-arrow a::before {
  width: 18px;
  height: 14px;
  content: " ";
  background-image: url("https://quasar-studio.fr/wp-content/uploads/2022/03/arraow-quasar.svg");
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 2px;
  left: -45px;
  transition: all 0.3s ease;
}
a.link-arrow:hover:before, .link-arrow a:hover:before {
  left: -25px;
}

.liste-studio {
  gap: 20px;
  justify-content: space-around;
}
.liste-studio .wp-block-column:not(:first-child) {
  margin-left: 0px !important;
}
.liste-studio .wp-block-column {
  flex-grow: 0 !important;
  flex-basis: auto !important;
}
.liste-studio p {
  font-weight: 400;
  font-size: 24px;
  line-height: 28px;
}
.liste-studio p a {
  color: white;
}
.liste-studio ul li {
  font-style: normal;
  font-weight: 400;
  font-size: 18px;
  line-height: 28px;
  list-style: none;
  position: relative;
}
.liste-studio ul li a {
  color: white;
  text-decoration: underline;
}
.liste-studio ul li:before {
  width: 18px;
  height: 14px;
  content: " ";
  background-image: url("https://quasar-studio.fr/wp-content/uploads/2022/03/arraow-quasar.svg");
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 8px;
  left: -25px;
}

.liste-equipements .wp-block-column:not(:first-child) {
  margin-left: 20px !important;
}
.liste-equipements p {
  font-weight: 400;
  font-size: 24px;
  line-height: 28px;
}
.liste-equipements ul li {
  font-style: normal;
  font-weight: 400;
  font-size: 18px;
  line-height: 28px;
}
.liste-equipements ul li a {
  color: white;
  text-decoration: underline;
}

.cadre .wp-block-group__inner-container {
  border: solid 1px #0AFAD2;
}
.cadre .wp-block-group__inner-container p {
  font-size: 20px;
  line-height: 26px;
}

.header-page .wp-block-group__inner-container {
  max-width: none !important;
  padding: 0px !important;
  width: 100%;
  height: 70vh;
  min-height: 500px;
  overflow: hidden;
}
.header-page .wp-block-group__inner-container .wp-block-group__inner-container {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  flex-direction: column;
  top: 0;
  left: 0;
}
.header-page .wp-block-group__inner-container figure {
  width: 100%;
}
.header-page .wp-block-group__inner-container figure picture {
  display: block;
  width: 100%;
}
.header-page .wp-block-group__inner-container figure picture img {
  display: block;
  width: 100%;
  height: 70vh;
  min-height: 500px;
  object-fit: cover;
  object-position: left center;
  opacity: 50%;
}
.header-page .wp-block-group__inner-container h1 {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  box-sizing: border-box;
}
.header-page .wp-block-group__inner-container p {
  font-family: "Roboto";
  font-style: normal;
  font-weight: 400;
  font-size: 36px;
  line-height: 156.69%;
  text-align: center;
  text-transform: none;
  text-shadow: 0px 2px 4px rgba(0, 0, 0, 0.61);
  width: 60%;
  margin: 0 auto;
}

.header-histoire .wp-block-group__inner-container {
  padding-top: 250px;
}
.header-histoire .wp-block-group__inner-container h1 {
  font-size: 70px;
}

.ombre-top {
  background: rgb(7, 0, 31);
  background: -moz-linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgb(7, 0, 31) 5%, rgb(7, 0, 31) 15%, rgba(255, 255, 255, 0) 20%);
  background: -webkit-linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgb(7, 0, 31) 5%, rgb(7, 0, 31) 15%, rgba(255, 255, 255, 0) 20%);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgb(7, 0, 31) 5%, rgb(7, 0, 31) 15%, rgba(255, 255, 255, 0) 20%);
  margin-top: -100px;
  position: relative;
  padding: 100px 0;
}

#background-video-header {
  height: 100%;
  width: 100%;
  object-fit: cover;
  z-index: -1;
  position: absolute; /* postulat de départ */
  top: 0%;
  left: 50%; /* à 50%/50% du parent référent */
  transform: translate(-50%, 0%);
}

#background-video-right {
  position: absolute;
  right: 0;
  z-index: -1;
}

.cadre-col-left .wp-block-group__inner-container {
  position: relative;
  padding-top: 0px;
}
.cadre-col-left .wp-block-group__inner-container .wp-block-columns .wp-block-column:first-of-type {
  outline: 1px solid #0AFAD2;
  outline-offset: 60px;
  padding: 25px 0px;
  padding-right: 100px;
}
.cadre-col-left .wp-block-group__inner-container .wp-block-columns .wp-block-column:last-of-type {
  padding: 15px 0;
}
.cadre-col-left .wp-block-group__inner-container .wp-block-columns .wp-block-column:last-of-type figure {
  width: 115%;
  margin-left: -15%;
  max-height: 411px;
  object-fit: cover;
}
.cadre-col-left .wp-block-group__inner-container .wp-block-columns .wp-block-column:last-of-type figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  max-height: 411px;
}

.img-galerie {
  max-height: 350px;
}
.img-galerie.wp-block-columns .wp-block-column:not(:first-child) {
  margin-left: 10px !important;
}
.img-galerie.wp-block-columns .wp-block-column:first-of-type, .img-galerie.wp-block-columns .wp-block-column:last-of-type {
  flex-basis: 33%;
}
.img-galerie.wp-block-columns .wp-block-column figure, .img-galerie.wp-block-columns .wp-block-column picture {
  height: 100%;
  width: 100%;
  display: block;
}
.img-galerie.wp-block-columns .wp-block-column img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}
.img-galerie.two-img {
  max-height: 450px;
}

@media only screen and (max-width: 1280px) {
  .liste-studio .wp-block-column {
    flex-basis: 25% !important;
  }
  #realisations .glide__slides li.glide__slide a, .liste-studio p {
    font-size: 20px !important;
  }
  .cadre-col-left .wp-block-group__inner-container .wp-block-columns .wp-block-column:first-of-type {
    outline-offset: 35px;
  }
}
@media only screen and (max-width: 900px) {
  .wp-block-group .wp-block-group__inner-container .wp-block-columns.liste-equipements {
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 20px;
  }
  .wp-block-group .wp-block-group__inner-container .wp-block-columns.liste-equipements .wp-block-column {
    margin: 0 !important;
    flex-basis: 20%;
  }
  .cadre-col-left .wp-block-group__inner-container .wp-block-columns .wp-block-column:first-of-type {
    padding: 50px 0px;
    width: auto !important;
    flex-basis: auto !important;
    outline-offset: 18px;
  }
  .cadre-col-left .wp-block-group__inner-container .wp-block-columns .wp-block-column:last-of-type {
    padding: 0px;
    margin: 0px;
    margin-top: -50px;
  }
  .cadre-col-left .wp-block-group__inner-container .wp-block-columns .wp-block-column:last-of-type figure {
    width: 100%;
    margin-left: 0;
    max-height: 411px;
    object-fit: cover;
  }
  .wp-block-group.cadre .wp-block-group__inner-container {
    padding: 30px;
    font-size: 16px;
  }
  .liste-studio .wp-block-column {
    flex-basis: 45% !important;
  }
  .wp-block-group .wp-block-group__inner-container .wp-block-columns.liste-studio {
    flex-direction: row;
    flex-wrap: wrap;
  }
  .header-page .wp-block-group__inner-container h1 {
    font-size: 70px;
  }
  .header-page .wp-block-group__inner-container p {
    font-size: 25px;
    line-height: 116.69%;
  }
  .sous-titre {
    font-size: 25px;
    width: 100%;
    line-height: 31px;
  }
  .wp-block-columns.img-galerie, .wp-block-columns.img-galerie.two-img {
    flex-direction: row !important;
    flex-wrap: nowrap;
  }
  .wp-block-columns.img-galerie:not(.is-not-stacked-on-mobile) > .wp-block-column:not(:only-child), .wp-block-columns.img-galerie.two-img:not(.is-not-stacked-on-mobile) > .wp-block-column:not(:only-child) {
    flex-basis: auto;
  }
  .wp-block-columns.img-galerie .wp-block-column:first-of-type, .wp-block-columns.img-galerie.two-img .wp-block-column:first-of-type {
    margin-bottom: 0px !important;
  }
}
@media only screen and (max-width: 781px) {
  .header-page .wp-block-group__inner-container p {
    word-wrap: 90%;
  }
  .header-page .wp-block-group__inner-container figure picture img {
    object-position: center center;
  }
  .img-galerie, .img-galerie.two-img {
    max-height: none;
  }
  .img-galerie .wp-image-273, .img-galerie.two-img .wp-image-273 {
    width: 70%;
  }
  .img-galerie img, .img-galerie.two-img img {
    width: 80% !important;
    margin: 0 auto !important;
  }
  .img-galerie .wp-block-columns .wp-block-column:not(:first-child), .img-galerie.two-img .wp-block-columns .wp-block-column:not(:first-child) {
    margin-left: 0px !important;
  }
}
@media only screen and (max-width: 580px) {
  .header-page .wp-block-group__inner-container h1 {
    font-size: 50px;
  }
}
footer {
  position: relative;
}

#background-video-footer {
  position: absolute;
  bottom: 0;
  width: 65%;
  height: 100%;
  object-fit: cover;
}

.home #background-video-footer {
  z-index: -1;
  height: auto;
}

.footer-info .wp-block-group__inner-container {
  padding: 50px 60px 10px;
}
.footer-info .wp-block-group__inner-container a {
  color: white;
}
.footer-info .wp-block-group__inner-container span strong {
  font-size: 25px;
}
.footer-info .wp-block-group__inner-container .wp-block-columns .wp-block-column:not(:first-child) {
  margin-left: 30px !important;
}
.footer-info .wp-block-group__inner-container .wp-block-columns .wp-block-column:nth-of-type(3) {
  margin-left: 0px !important;
}
.footer-info .wp-block-group__inner-container .wp-block-columns .wp-block-column {
  flex-grow: 0;
  flex-basis: auto;
}
.footer-info .wp-block-group__inner-container .wp-block-columns .wp-block-column:first-of-type, .footer-info .wp-block-group__inner-container .wp-block-columns .wp-block-column:nth-of-type(2) {
  flex-basis: 22%;
}

#credits {
  text-align: center;
  font-size: 14px;
}
#credits .wp-block-group__inner-container {
  padding: 30px 60px;
}
#credits .wp-block-group__inner-container a {
  color: white;
}

@media only screen and (max-width: 1400px) {
  .footer-info .wp-block-group__inner-container {
    width: 95%;
  }
}
@media only screen and (max-width: 900px) {
  .footer-info .wp-block-group__inner-container {
    padding: 30px 10px;
  }
  .footer-info .wp-block-group__inner-container h2 {
    text-align: left;
    padding-left: 0px;
  }
  .footer-info .wp-block-group__inner-container .wp-block-columns .wp-block-column:not(:first-child) {
    margin: 0px !important;
    margin-left: 0px !important;
  }
  .footer-info .wp-block-group__inner-container .wp-block-columns .wp-block-column:nth-of-type(3) {
    padding-top: 20px;
  }
}
.header-accueil,
.header-histoire {
  position: relative;
}
.header-accueil .wp-block-group__inner-container,
.header-histoire .wp-block-group__inner-container {
  height: 100%;
  padding: 100px 0px 0px !important;
  max-width: none !important;
  width: 100% !important;
  background: rgb(7, 0, 31);
  background: -moz-linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 90%, rgb(7, 0, 31) 95%, rgb(7, 0, 31) 100%);
  background: -webkit-linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 90%, rgb(7, 0, 31) 95%, rgb(7, 0, 31) 100%);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 80%, rgb(7, 0, 31) 95%, rgb(7, 0, 31) 100%);
  min-height: 50vh;
}
.header-accueil .wp-block-group__inner-container h1,
.header-histoire .wp-block-group__inner-container h1 {
  font-family: "Roboto";
  font-style: normal;
  font-weight: 400;
  font-size: 36px;
  line-height: 156.69%;
  text-align: center;
  text-transform: none;
  text-shadow: 0px 2px 4px rgba(0, 0, 0, 0.61);
  width: 80%;
  margin: 0 auto;
  padding: 100px 0 0;
  letter-spacing: 0px;
}
.header-accueil .wp-block-group__inner-container h1 em,
.header-histoire .wp-block-group__inner-container h1 em {
  font-weight: 700;
}
.header-accueil .wp-block-group__inner-container .liste-studio,
.header-histoire .wp-block-group__inner-container .liste-studio {
  width: 80%;
  margin: 0 auto;
}

.header-histoire .wp-block-group__inner-container h1 {
  font-style: normal;
  font-weight: 700;
  font-size: 80px;
  line-height: 115.69%;
  text-transform: uppercase;
  letter-spacing: 10px;
  text-shadow: 0px 2px 4px rgba(0, 0, 0, 0.61);
}
.header-histoire .wp-block-group__inner-container .sous-titre {
  margin: 0 auto;
}

#quasar-studio .header-page .wp-block-group__inner-container {
  height: 55vh;
  min-height: 400px;
}
#quasar-studio .header-page .wp-block-group__inner-container figure picture img {
  height: 55vh;
  min-height: 400px;
}
#quasar-studio .ombre-top {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, #07001f 5%, #07001f 50%, rgba(255, 255, 255, 0) 55%);
  padding: 40px 0 0;
}

#realisations .glide__slides li.glide__slide {
  list-style: none;
  height: 350px;
  background-size: cover;
  background-position: center;
  position: relative;
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  transition: all 0.3s ease;
  max-width: 412px;
}
#realisations .glide__slides li.glide__slide .a {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  padding: 55px 40px;
  font-style: normal;
  font-weight: 400;
  font-size: 24px;
  line-height: 28px;
  color: white;
  background: linear-gradient(180deg, #3023ae 0%, rgba(0, 0, 0, 0.57) 100%);
  transition: all 0.3s ease;
  display: flex;
  flex-direction: column;
}
#realisations .glide__slides li.glide__slide .a h3 {
  min-height: 53px;
  display: flex;
  align-items: center;
  padding: 10px 0;
}
#realisations .glide__slides li.glide__slide .a p {
  font-size: 15px;
  line-height: 28px;
  color: white;
  padding: 5px 0;
}
#realisations .glide__slides li.glide__slide .a p.production {
  text-transform: uppercase;
  font-weight: 700;
  font-size: 18px;
}
#realisations .glide__slides li.glide__slide .a p.realisation {
  font-size: 18px;
}
#realisations .glide__slides li.glide__slide.glide__slide--active a {
  background: linear-gradient(180deg, rgba(48, 35, 174, 0.5) 0%, rgba(0, 0, 0, 0.57) 100%);
}
#realisations .glide__slides li.glide__slide:hover a {
  background: linear-gradient(180deg, rgba(48, 35, 174, 0.7) 0%, rgba(0, 0, 0, 0.57) 100%);
}

#header-blog, .header-article {
  padding-top: 80px;
}

.category-list li {
  list-style: none;
}
.category-list ul {
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.category-list ul li a {
  color: white;
  position: relative;
}
.category-list ul li a:after {
  content: "";
  height: 2px;
  width: 100%;
  background: #0AFAD2;
  position: absolute;
  bottom: -4px;
  left: 0;
}
.category-list ul li a:hover {
  color: #0AFAD2;
}

body.blog .wp-block-columns {
  display: grid;
  grid-template-columns: 350px 1fr;
  gap: 48px;
}
body.blog .sticky {
  position: sticky;
  top: 96px;
  display: flex;
  flex-direction: column;
  height: calc(100vh - 160px);
}
body.blog .sticky .pagination {
  margin-top: auto;
}

article {
  border: 1px solid #0AFAD2;
  border-radius: 8px;
  padding: 32px;
}
article:first-of-type {
  margin-top: 48px;
}
article .article-info {
  display: flex;
  gap: 24px;
}
article .article-info .article-header {
  flex-shrink: 0;
  flex-basis: 75px;
  flex-grow: 0;
}
article h3 {
  text-transform: uppercase;
  font-weight: 700;
  font-size: 26px;
  line-height: 120%;
  letter-spacing: 3px;
}
article .date .date-label,
article .date .date-value,
article .date .date-value span {
  display: block;
}
article .date {
  text-transform: uppercase;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  background: #3023AE;
  padding: 4px;
  border-radius: 8px;
}
article .date .date-jour {
  font-size: 30px;
  line-height: normal;
}
article + article {
  margin-top: 24px;
}

.single-post .header-article h1 + * {
  margin-top: 48px;
}
.single-post h1 {
  font-size: 50px;
  letter-spacing: 8px;
}
.single-post #post-content {
  background: white;
}

@media only screen and (max-width: 1400px) {
  .header-accueil .wp-block-group__inner-container h1,
  .header-histoire .wp-block-group__inner-container h1 {
    width: 80%;
  }
  #realisations .glide__slides li.glide__slide {
    height: 315px;
  }
}
@media only screen and (max-width: 1230px) {
  .header-accueil .wp-block-group__inner-container h1 {
    font-size: 30px;
  }
  .header-accueil .wp-block-group__inner-container h1 {
    padding: 45px 0px 100px;
  }
}
@media only screen and (max-width: 900px) {
  .header-histoire .wp-block-group__inner-container h1 {
    font-size: 50px;
  }
  .header-histoire .wp-block-group__inner-container .sous-titre {
    width: 90%;
  }
}
@media only screen and (max-width: 781px) {
  .wp-image-157.webpexpress-processed {
    display: none !important;
  }
}
#contact .wp-block-columns .wp-block-column:first-of-type {
  flex-basis: 25% !important;
}
#contact .wp-block-columns .wp-block-column:last-of-type {
  flex-basis: 75% !important;
}
#contact form {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
}
#contact form .field {
  flex-basis: 48%;
  margin: 15px 5px;
  box-sizing: border-box;
  position: relative;
}
#contact form .field .field-input {
  font-family: "Roboto";
  background: transparent;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: solid 1px #979797;
  text-align: left;
  font-style: normal;
  font-weight: 300;
  font-size: 16px;
  line-height: 19px;
  color: #FFFFFF;
  padding: 20px;
  width: 100%;
  box-sizing: border-box;
  transition: all 0.3s ease;
}
#contact form .field .field-input:focus {
  border-color: red;
  outline: none;
}
#contact form .field .field-input:focus-visible {
  border-color: #0AFAD2;
  outline: none;
}
#contact form .field .field-input:focus:not(:focus-visible) {
  outline: none;
}
#contact form .field .field-input.wpcf7-select option {
  color: black;
}
#contact form .field.is-focused .field-label {
  transform: translate(-20px, -30px) scale(0.8);
  background: #07001F;
  color: #0AFAD2;
  padding: 0 10px;
}
#contact form .field.has-label .field-label {
  transform: translate(-20px, -30px) scale(0.8);
  background: #07001F;
  color: #979797;
  padding: 0 10px;
}
#contact form .field .field-label {
  position: absolute;
  top: 20px;
  left: 20px;
  transition: all 0.3s ease;
  z-index: 10;
}
#contact form .field-textarea {
  flex-basis: 100%;
}
#contact form .field-textarea .field-input {
  text-align: left;
}
#contact form .field-checkbox {
  /* permet de positionner la checkbox */
  position: relative;
  padding-top: 20px;
  font-size: 14px;
}
#contact form .field-checkbox .wpcf7-list-item {
  position: relative;
}
#contact [type=checkbox]:not(:checked),
#contact [type=checkbox]:checked {
  /* Cache la checkbox sans
  la rendre invisible aux
  lecteurs d'écran */
  position: absolute;
  left: -2px;
  top: 6px;
  opacity: 0.01;
  z-index: 10;
}
#contact {
  /* Preparer le label */
}
#contact [type=checkbox]:not(:checked) + span,
#contact [type=checkbox]:checked + span {
  position: relative; /* permet de positionner la checkbox */
  padding-left: 2.3em; /* place pour la box */
  font-size: 1.05em;
  line-height: 1.7;
  cursor: pointer;
}
#contact {
  /* Aspect de la case */
}
#contact [type=checkbox]:not(:checked) + span::before,
#contact [type=checkbox]:checked + span::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 15px;
  height: 15px;
  border: 1px solid #979797;
  background: #07001F;
  border-radius: 0.2em;
  box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1), 0 0 0 rgba(151, 151, 151, 0.2);
  transition: all 0.275s;
}
#contact {
  /* Aspect de la coche */
}
#contact [type=checkbox]:not(:checked) + span::after,
#contact [type=checkbox]:checked + span::after {
  content: "✓";
  speak: never; /* Pour être sûr que le lecteur d'écran ne lira pas "fois" */
  position: absolute;
  top: 8px;
  left: 2px;
  font-size: 15px;
  color: #0AFAD2;
  line-height: 0;
  transition: all 0.2s; /* Petite transition */
  font-family: HelveticaNeue-Light, -apple-system, AppleColorEmoji, "Arial Rounded MT Bold", system-ui, Ubuntu, sans-serif, "Arial Unicode MS", "Zapf Dingbats", "Segoe UI Emoji", "Segoe UI Symbol", Noto Color Emoji, NotoColorEmoji, EmojiSymbols, Symbola, Noto, "Android Emoji", AndroidEmoji, "lucida grande", tahoma, verdana, arial, AppleColorEmoji, "Apple Color Emoji" !important;
}
#contact {
  /* Aspect non cochée */
}
#contact [type=checkbox]:not(:checked) + span::after {
  opacity: 0;
  transform: scale(0) rotate(45deg);
}
#contact {
  /* Aspect cochée */
}
#contact [type=checkbox]:checked + span::after {
  opacity: 1;
  transform: scale(1) rotate(0);
}
#contact {
  /* Disabled checkbox */
}
#contact [type=checkbox]:disabled:not(:checked) + span::before,
#contact [type=checkbox]:disabled:checked + span::before {
  box-shadow: none;
  border-color: black;
  background-color: #0AFAD2;
}
#contact {
  /* Disabled checked */
}
#contact [type=checkbox]:disabled:checked + span::after {
  color: #777;
}
#contact [type=checkbox]:disabled + span {
  color: #aaa;
}
#contact {
  /* Accessibility focus */
}
#contact [type=checkbox]:checked:focus + span::before,
#contact [type=checkbox]:not(:checked):focus + span::before {
  box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1), 0 0 0 6px rgba(151, 151, 151, 0.2);
}
#contact .field-envoyer {
  position: relative;
  height: auto;
  padding-top: 30px;
  display: block;
  width: 100%;
}
#contact .field-envoyer:before, #contact .field-envoyer:after {
  display: none;
}
#contact .field-envoyer input {
  font-weight: 700;
  font-size: 16px;
  line-height: 19px;
  text-align: center;
  color: white;
  border: solid 1px #0AFAD2;
  background: transparent;
  padding: 18px 45px;
  position: relative;
  transition: all 0.3s ease;
  border-radius: 0px;
  width: 232px;
  float: right;
}
#contact .field-envoyer input:hover {
  cursor: pointer;
  background-color: #0AFAD2;
  color: white;
  border-color: #0AFAD2;
}
#contact .wpcf7-not-valid-tip {
  position: absolute;
  bottom: -45px;
  display: block;
  width: 200px;
}
#contact .field-checkboxe .wpcf7-not-valid-tip {
  bottom: -25px;
}
#contact .wpcf7-form-control-wrap.checkbox-222 .wpcf7-not-valid-tip {
  margin-top: 0px;
}

@media only screen and (max-width: 900px) {
  #contact .wp-block-columns .wp-block-column:not(:first-child) {
    margin-left: 0px !important;
  }
}
@media only screen and (max-width: 781px) {
  form .field.field-50,
  form .field-checkboxe,
  form .field-checkboxe .wpcf7-form-control-wrap.checkbox-222,
  form .field {
    margin-left: 0px;
  }
  form .field.field-50 .field-input,
  form .field-checkboxe .field-input,
  form .field-checkboxe .wpcf7-form-control-wrap.checkbox-222 .field-input,
  form .field .field-input {
    width: auto;
  }
  #contact form {
    flex-direction: column;
  }
}

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