@charset "UTF-8";
:root {
  --seuil-affichage-mobile: 992px;
}

/*html:not(.wp-toolbar) {*/
/*  background-image: url("https://champigny2.elefen.dev/wp-content/uploads/2025/04/site_champigny_Plan-de-travail-1-copie-11.jpg");*/
/*  background-repeat: no-repeat;*/
/*  background-position: center 0;*/
/*}*/

/*html:not(.wp-toolbar) body {*/
/*  opacity: 0.5;*/
/*}*/

.fancybox__backdrop {
  background: var(--fancybox-bg, rgb(255 255 255 / 92%)) !important;
}

.gform_wrapper.gravity-theme .gform_fields {
  grid-row-gap: 8px !important;
}
header {
  position: fixed;
  z-index: 1000;
  width: 100%;
  top: 0;
  left: 0;
  background: white;
}
/* site logo */
.wp-block-site-logo a {
    display: inline-flex;
}
.wp-block-site-logo.is-default-size img {
  height: auto;
  width: clamp(150px, 16vw, 300px);
}

/* navigation */
.wp-block-navigation .wp-block-navigation-item {
  align-items: center;
  background-color: inherit;
  display: flex;
  position: relative;
  justify-content: flex-end;
}
.wp-block-navigation .has-child .wp-block-navigation__submenu-container > .wp-block-navigation-item > .wp-block-navigation-item__content {
  text-align: right;
  display: flex;
  flex-grow: 1;
  justify-content: flex-end;
  text-transform: uppercase;
}
.wp-block-navigation.items-justified-right .wp-block-navigation__container .has-child .wp-block-navigation__submenu-container {
  padding: 5px 0;
  min-width: max-content;
}
.wp-block-navigation:not(.has-background) .wp-block-navigation__submenu-container {
  background-color: #fff;
  border: 0px solid rgba(0, 0, 0, 0.1490196078);
}
.wp-block-navigation li.wp-block-navigation-item a.current-menu-ancestor {
  position: relative;
}
.wp-block-navigation li.wp-block-navigation-item a.current-menu-ancestor::after {
  content: "";
  width: 20px;
  height: 5px;
  background: black;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 105%;
}
.wp-block-navigation li.wp-block-navigation-item.current-menu-item > a::after {
  content: "";
  width: 15px;
  height: 3px;
  background: black;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 105%;
}

:where(.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item a:not(.wp-element-button)) {
  padding: 0 1em;
}

/* fleche link*/
.fleche a {
  text-decoration: none;
  display: flex;
  align-items: center;
  gap: 5px;
}
.fleche a::after {
  content: "";
  background: url("/wp-content/uploads/2025/05/3209399_arrow_direction_path_right_way_icon.png") no-repeat center;
  background-size: cover;
  width: 50px;
  height: 30px;
  display: block;
  transition: 0.5s all ease-in-out;
}
.fleche a:hover::after {
  transform: translateX(10px);
}

.gform_footer {
  text-decoration: none;
  display: flex;
  align-items: center;
  gap: 5px;
  justify-content: flex-end;
  padding: 5px 0 !important;
  margin-top: 0 !important;
}
.gform_footer::after {
  content: "";
  background: url("/wp-content/uploads/2025/05/3209399_arrow_direction_path_right_way_icon.png") no-repeat center;
  background-size: cover;
  width: 50px;
  height: 30px;
  display: block;
  transition: 0.5s all ease-in-out;
}
.gform_footer input[type=submit] {
  background: none;
  border: none;
  color: var(--wp--preset--color--custom-color-1);
  font-family: var(--wp--preset--font-family--poppins);
  font-weight: 500;
  font-size: 16px;
  margin: 0 !important;
  cursor: pointer;
  text-decoration: none;
  display: flex;
  align-items: center;
  gap: 5px;
}
.gform_footer:has(input[type=submit]:hover)::after {
  transform: translateX(10px);
}

/* Bouton */
.is-style-outline .wp-element-button {
  transition: 0.5s all ease-in-out;
}

.is-style-outline .wp-element-button:hover {
  background: var(--wp--preset--color--custom-color-1);
  color: white;
}

/* Links */
* > a {
  font-size: inherit;
  font-weight: inherit;
  text-decoration: none;
  color: inherit;
}

/* Form */
form input:not([type=submit]) {
  font-family: var(--wp--preset--font-family--poppins);
  border-top-width: 0;
  border-left-width: 0;
  border-right-width: 0;
  border-bottom-width: 1px;
  border-color: var(--wp--preset--color--custom-color-1);
  color: black;
  padding: 8px 0 !important;
}
form textarea {
  font-family: var(--wp--preset--font-family--poppins);
  border-top-width: 0;
  border-left-width: 0;
  border-right-width: 0;
  border-bottom-width: 1px;
  border-color: var(--wp--preset--color--custom-color-1);
  color: black;
  padding: 8px 0 !important;
}
form *::placeholder {
  color: black;
}

/* project gallery */
.projectGallery img {
  width: 100% !important;
  height: 100%;
  object-fit: cover;
  min-height: 380px;
}
.projectGallery a {
  width: 100% !important;
  height: 100%;
}
.projectGallery .is-vertical {
  position: relative;
}
.projectGallery .is-vertical figure {
  height: 100%;
}
.projectGallery .is-vertical .wp-block-cover {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  width: 100%;
  height: 100%;
  transition: 0.5s all ease-in-out;
}
.projectGallery .is-vertical .wp-block-cover:hover {
  opacity: 1;
}
.projectGallery .wp-block-cover__inner-container {
  position: absolute;
  width: 100%;
  height: 100%;
  align-content: center;
}
.projectGallery :is(h2, a) {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: clamp(16px, 2vw, 22px) !important;
}
  /* underline letter */
.underline {
  position: relative;
}
.underline::after {
  content: "";
  background: black;
  width: 20px;
  height: 3px;
  position: absolute;
  top: 90%;
  left: 5px;
}

/*Top Bar*/
.top-bar {
  background-color: var(--theme--color--2);
  color: var(--theme--color--0);
}
.top-bar > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: var(--wp--style--global--content-size);
  margin-left: auto !important;
  margin-right: auto !important;
}
@media screen and (max-width: 1300px) {
  .top-bar > div {
    padding: 0 20px;
  }
}

.menu-top-bar-menu-container .menu {
  margin: 0;
  display: flex;
  list-style: none;
  justify-content: flex-end;
}
.menu-top-bar-menu-container .menu .menu li a {
  padding: 16px 18px 16px;
  text-decoration: none;
  display: block;
  text-transform: uppercase;
  font-size: 12px;
  letter-spacing: 3.5px;
  font-family: var(--wp--preset--font-family--poppins);
  font-weight: 700;
  transition: all 0.5s ease-in-out;
}
.menu-top-bar-menu-container .menu .menu li a:hover {
  color: var(--wp--preset--color--couleur-foncee-03);
}
.menu-top-bar-menu-container .menu .menu li:last-child a {
  padding: 16px 0 16px 15px;
}

.content1_3 {
  flex-basis: calc(var(--wp--style--global--content-size) * 0.333 + 50vw - 600px) !important;
}

.content2_3 {
  flex-basis: calc(var(--wp--style--global--content-size) * 0.666666 + 50vw - 600px) !important;
}

.padding-left {
  padding-left: clamp(20px, (100vw - var(--wp--style--global--content-size)) / 2, 100vw) !important;
}

.padding-right {
  padding-right: clamp(20px, (100vw - var(--wp--style--global--content-size)) / 2, 100vw) !important;
}

@media screen and (max-width: 1200px) {
  .content2_3, .content1_3 {
    flex-basis: 50% !important;
  }
}
.hamburger {
  display: flex;
  flex-direction: column;
  position: relative;
  z-index: 10;
  cursor: pointer;
}
.hamburger .line {
  width: 31px;
  height: 3px;
  background-color: #ecf0f1;
  display: block;
  margin: 3px 0;
  -webkit-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  fill: none;
  transition: stroke-dasharray 400ms, stroke-dashoffset 400ms;
  stroke: #fff;
  stroke-width: 3.5;
  stroke-linecap: round;
}

#hamburger-1 .line:nth-child(1) {
  width: 19px;
  align-self: flex-end;
}
#hamburger-1 .line:nth-child(3) {
  width: 19px;
}
#hamburger-1.is-active .line:nth-child(1) {
  -webkit-transform: translateY(13px) rotate(45deg);
  -ms-transform: translateY(13px) rotate(45deg);
  -o-transform: translateY(13px) rotate(45deg);
  transform: translateY(13px) rotate(45deg);
  width: 31px;
}
#hamburger-1.is-active .line:nth-child(2) {
  opacity: 0;
}
#hamburger-1.is-active .line:nth-child(3) {
  -webkit-transform: translateY(-6px) rotate(-45deg);
  -ms-transform: translateY(-6px) rotate(-45deg);
  -o-transform: translateY(-6px) rotate(-45deg);
  transform: translateY(-6px) rotate(-45deg);
  width: 31px;
}

@media screen and (max-width: 782px) {
  .content2_3, .content2_3 .wp-block-cover {
    min-height: 300px !important;
  }
  .firstSectionOslo > .wp-block-group > .wp-block-columns {
    flex-direction: column-reverse;
  }
  .wp-block-cover.minHeightMobile {
    min-height: 300px !important;
  }
}
/* SubMenu */
.sub-menu {
  max-height: 0vh;
  overflow: hidden;
  transition: 0.5s all ease-in-out;
}

.sub_menu_open .sub-menu {
  max-height: 100vh;
}

/* Remonté footer par dessu dernière section avec image par dessu footer */
.cta .wp-block-columns {
  position: relative;
  z-index: 2;
}
.cta + .wp-block-template-part {
  margin-top: -30px !important;
}

/* Formes cleo */
.formeTopLarge::before {
  content: "";
  background-image: url("../images/topLargeCLip.svg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center bottom;
  width: 100%;
  position: absolute;
  height: 94%;
  left: 0;
  top: 0;
  z-index: -1;
}

.formeSectionClip::before {
  content: "";
  background-image: url("../images/sectionClip.svg");
  background-repeat: repeat-x;
  background-size: contain;
  background-position: center center;
  width: 100%;
  position: absolute;
  height: 107%;
  left: 0;
  top: 50%;
  z-index: -1;
  transform: translateY(-50%);
}

.formebottomLarge::before {
  content: "";
  background-image: url("../images/bottomLargeClip.svg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center top;
  width: 100%;
  position: absolute;
  height: 100%;
  left: 0;
  top: 0;
  z-index: -1;
}

/* Menu oslo */
.pannel {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: grid;
  grid-template-columns: 1fr 1fr;
  z-index: -1;
  opacity: 0;
  transition: opacity 0.25s ease-in-out, z-index 0.5s ease;
  transition-delay: 700ms;
}
.pannel > .wp-block-group:first-child {
  background: var(--principal);
  display: flex;
  align-items: center;
  justify-content: center;
  transform: translateX(-100%);
  position: relative;
  transition: transform 700ms cubic-bezier(0.215, 0.61, 0.355, 1);
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}
.pannel > .wp-block-group:last-child {
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 40px;
  flex-direction: column;
  transform: translateX(100%);
  transition: transform 700ms cubic-bezier(0.215, 0.61, 0.355, 1);
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}
.pannel.active {
  z-index: 4;
  opacity: 1;
  transition-delay: 0ms;
}
.pannel.active > .wp-block-group {
  transform: translateX(0);
}

@media screen and (max-width: 782px) {
  .reverseMobile {
    flex-direction: column-reverse;
  }
  .gridFullWidthMobile {
    display: flex !important;
    flex-direction: column;
  }
  .is-content-justification-right {
    align-content: flex-start !important;
    justify-content: flex-start;
    align-items: flex-start;
  }
  .rowReverseMobile {
    flex-direction: row-reverse;
  }
  .has-text-align-right {
    text-align: left;
  }
  .footer .wp-block-navigation__container {
    align-items: flex-start;
    display: flex;
    flex-direction: column;
  }
  .resetPaddingHorMobile {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
  .alignLeftMobile {
    justify-content: flex-start !important;
  }
  .noPaddingMobile {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}

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