@media not all and (min-width: 1512px) {
  :root {
    --pl:170px !important;
  }
}

@media not all and (min-width: 1280px) {
  :root {
    --pl: 150px !important;
  }

  /* --- POPUP --- */

  .popup-formulaire {
    width: 600px !important;
    padding: var(--wp--custom--primlitives--margin-padding-gap--60) !important;
  }

  .popup-formulaire .title-popup {
    font-size: 36px !important;
  }

  .popup-formulaire .text-popup {
    font-size: 24px !important;
  }
}

@media not all and (min-width: 1024px) {
  :root{
    --pl: 40px !important;
    --pr: 40px !important;

    --wp--custom--primlitives--typographie--56: 44px !important;
    --wp--custom--primlitives--typographie--44: 36px !important;
    --wp--custom--primlitives--typographie--28: 24px !important;
	  
  }
	body h3{
		font-size: 28px !important;
	}
  .filtre-menu::after {
    background: linear-gradient(360deg, rgba(0, 0, 0, 0.00) 0%, #231F20 40%) !important;
  }
	
	.menu-menu-container{

	  overflow-y: auto;
	  padding-right: 40px;
	}

  /* --- POPUP --- */

  .popup-formulaire {
    padding: var(--wp--custom--primlitives--margin-padding-gap--40) !important;
  }
}

@media not all and (min-width: 768px) {
  :root{
    --pl: 20px !important;
    --pr: 20px !important;
  }

  .menu-menu-container .menu-item.btn-devis{
    display: flex !important;
  }

  body .formulaire.fom-devis .wpforms-field-radio ul{
    grid-template-columns: repeat(3, auto) !important;
  }

  /* --- POPUP --- */

  .popup-formulaire {
    width: 500px !important;
  }

  .popup-formulaire .title-popup {
    font-size: 32px !important;
  }

  .popup-formulaire .text-popup {
    font-size: 20px !important;
  }
}

@media not all and (min-width: 640px) {
  :root{
    --wp--custom--primlitives--typographie--56: 32px !important;
    --wp--custom--primlitives--typographie--44: 24px !important;
    --wp--custom--primlitives--typographie--28: 18px !important;
    --wp--custom--primlitives--typographie--24: 18px !important;
  }
	body h3{
		font-size: 24px !important;
	}
  .menu-menu-container ul a{
    font-size: 28px !important;
  }

  body .formulaire.fom-devis .wpforms-field-radio .wpforms-field-required,
  body .formulaire.fom-devis .wpforms-field-radio ul{
    grid-template-columns: repeat(1, auto) !important;
  }


  /* --- POPUP --- */

  .popup-formulaire {
    width: 90% !important;
    padding: var(--wp--custom--primlitives--margin-padding-gap--32) !important;
  }

  .popup-formulaire .title-popup {
    font-size: 28px !important;
  }
}

/* --------------- FIN RESPONSIVE ---------------- */

/* ------------------ VARIABLE ------------------- */

:root {
  --pl: var(--wp--custom--primlitives--margin-padding-gap--190);
  --pr: var(--wp--custom--primlitives--margin-padding-gap--100);
  --gap: var(--wp--custom--wrapper--gap);

  --h1: var(--wp--custom--primlitives--typographie--56);
  --h2: var(--wp--custom--primlitives--typographie--44);
  --h3: var(--wp--custom--primlitives--typographie--28);
  --callout: var(--wp--custom--primlitives--typographie--20);

  --primary-color : var(--wp--custom--primlitives--colors--color-1--600);
}

/* ------------------ GENERAL -------------------- */

html {
  overflow-x: hidden;
  background-color: var(--wp--custom--primlitives--colors--b-w--white);
}

html {
  scroll-behavior: smooth;
  scroll-padding-top: 0px;
}

.callout{
  font-family: var(--wp--preset--font-family--primary);
  font-size: var(--callout);
}

.callout-b{
  font-family: var(--wp--preset--font-family--primary);
  font-size: var(--wp--custom--primlitives--typographie--28);
}
.border-light::after{
  border: 1px solid var(--wp--custom--primlitives--colors--b-w--white);
}

.button-filled-light,
.button-filled,
.button-outlined-light,
.button-outlined {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 12px 24px;
  border-radius: 6px;
  font-family: var(--wp--preset--font-family--secondary);
  font-weight: 400;
  text-transform: uppercase;
  cursor: pointer;
  transition: all 0.3s ease-out;
}

.button-filled-light::after,
.button-filled::after,
.button-outlined-light::after,
.button-outlined::after {
  position: absolute;
  content: attr(data-content);
  inset: 0;
  width: calc(100% + 2px);
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 12px 24px;
  border-radius: 6px;
  font-family: var(--wp--preset--font-family--secondary);
  font-weight: 400;
  text-transform: uppercase;
  cursor: pointer;
  transition: all 0.3s ease-out;
}

.button-filled-light:hover::after,
.button-filled:hover::after{
  transform: translateX(0) translateY(0);
}

.button-filled{
  background-color: var(--wp--custom--primlitives--colors--b-w--black);
}

.button-filled::after {
  background-color: var(--primary-color);
  color: var(--wp--custom--primlitives--colors--b-w--white);
  transform: translateX(-8px) translateY(-6px);
}

.button-filled:hover::after {
  background-color: #A5392E;
}

.button-filled-light{
  background-color: var(--wp--custom--primlitives--colors--b-w--white);
}

.button-filled-light::after{
  background-color: var(--primary-color);
  color: var(--wp--custom--primlitives--colors--b-w--white);
  transform: translateX(-8px) translateY(-6px);
}

.button-filled-light:hover::after {
  background-color: #A5392E;
}


.button-outlined-light,
.button-outlined{
  background-color: transparent;
  color: transparent;
}

.button-outlined-light::after,
.button-outlined::after {
  height: calc(100% + 2px);
  background-color: transparent;
}

.button-outlined::after {
  color: var(--wp--custom--primlitives--colors--b-w--black);
  border:1px solid var(--wp--custom--primlitives--colors--b-w--black);
  border-bottom: 6px solid;
  border-right: 6px solid;
}

.button-outlined-light::after {
  color: var(--wp--custom--primlitives--colors--b-w--white);
  border:1px solid var(--wp--custom--primlitives--colors--b-w--white);
  border-bottom: 6px solid;
  border-right: 6px solid;
}

.button-outlined-light:hover::after,
.button-outlined:hover::after {
  border:1px solid
}

.swiper-texte-desktop .swiper-texte{
  animation: 20s linear infinite swiper-text;
}

.swiper-texte p{
  white-space:nowrap !important;
}

@keyframes swiper-text {
  from {
    transform: translateX(0%);
  }

  to {
    transform: translateX(-100%);
  }
}

/* ----------------- PLAYER VIDEO ----------------- */

.video-hero {
  position: absolute;
  aspect-ratio: 21/9;
  left: 50% !important;
  top: 50% !important;
  transform: translatex(-50%) translateY(-50%) !important;
  width: auto !important;
  height: auto !important;
  min-width: 116% !important;
  min-height: 100% !important;
}

.filtre-video::after {
  position: absolute;
  content: "";
  z-index: 2;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: var(--wp--custom--primlitives--opacity--black--opacity-03);
  pointer-events: none;
}

.filtre-img::after {
  position: absolute;
  content: "";
  z-index: 2;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: var(--wp--custom--primlitives--opacity--black--opacity-04);
  pointer-events: none;
}
.filtre-menu::after {
  position: absolute;
  content: "";
  z-index: 2;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(270deg, rgba(0, 0, 0, 0.00) 0%, #231F20 40%);
  pointer-events: none;
}

.btn-sound.sound-on .sound-off{
  fill: transparent;
}

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

.menu-header {
  transition: background 0.3s ease-in-out;
}

.menu-header:hover {
  cursor: pointer;
  background-color: var(--wp--custom--primlitives--colors--b-w--black) !important;
}

.menu-header svg .picto-icon{
  transition: fill 0.3s ease-in-out;
}

.menu-header .btn-menu p{
  transition: color 0.3s ease-in-out;
}

.menu-header .btn-menu svg rect{
  transition: fill 0.3s ease-in-out;
}

.menu-header .btn-contact::after{
  transition: border 0.3s ease-in-out;
}

.menu-header .btn-contact .picto-tel{
  transition: fill 0.3s ease-in-out;
}

.menu-header:hover svg .picto-icon{
  fill: var(--wp--custom--primlitives--colors--b-w--white);
}

.menu-header:hover .btn-menu p{
  color: var(--wp--custom--primlitives--colors--b-w--white) !important;
}

.menu-header:hover .btn-menu svg rect{
  fill: var(--wp--custom--primlitives--colors--b-w--white);
}

.menu-header:hover .btn-contact::after{
  border-color: var(--wp--custom--primlitives--colors--b-w--white);
}

.menu-header:hover .btn-contact .picto-tel{
  fill: var(--wp--custom--primlitives--colors--b-w--white);
}

.menu-header p:empty {
  display: none !important;
}

.menu-menu-container{
  z-index: 10;
}

.menu-menu-container ul {
  display: flex;
  flex-direction: column;
  gap: 40px;
  font-family: var(--wp--preset--font-family--tertiary);
  text-transform: uppercase;
  font-weight: 700;
  line-height: normal;
  z-index: 1000;
}

.menu-menu-container .menu-item a{
  color: var(--primary-color);
  font-size: 36px;
  -webkit-text-stroke-width: 1px;
  -webkit-text-stroke-color: var(--wp--custom--primlitives--colors--b-w--white);
  transition: color 0.3s ease-in-out;
}

.menu-menu-container .menu-item:hover a,
.menu-menu-container .current-menu-item a{
  color: var(--wp--custom--primlitives--colors--b-w--black);
}

.menu-menu-container .btn-devis{
  display: none !important;
}

.picto-burger:hover,
.picto-close:hover {
  background: var(--wp--custom--primlitives--colors--b-w--black) !important;
  cursor: pointer;
}

.picto-burger:hover p,
.picto-close:hover p{
  color: var(--wp--custom--primlitives--colors--b-w--white) !important;
}

.swiper-menu {
  position: fixed;
    top: 0;
    left: 0;
    transform: translate(-100%, 0%);
    pointer-events: none;
    transition: transform 1s ease-in-out;
}

.swiper-menu.open {
    pointer-events: all;
    transform: translate(0%, 0%);
}

.menu-menu-container .menu-item{
  display: flex;
  align-items: center;
  gap: 10px;
  height: 41px;
}

.menu-menu-container .menu-item svg{
  display: none;
}

.menu-menu-container .menu-item:hover svg{
  display: block;
}

/* ---------------- SWIPER --------------- */

.swiper-slide .swiper-bg{
  transition: opacity 0.3s ease-in-out;
}

.swiper-slide:hover .swiper-bg{
  opacity: 1;
  pointer-events: all;
}

.swiper-button-prev,
.swiper-button-next{
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 10px 8px;
  order: 2;
  border-radius: 6px;
  background: var(--primary-color);
}

.swiper-button-prev svg,
.swiper-button-next svg{
  width: 100%;
  height: 100%;
}

.swiper-button-prev:hover,
.swiper-button-next:hover{
  background: var(--wp--custom--primlitives--colors--b-w--black);
}

.swiper-button-prev:hover svg path,
.swiper-button-next:hover svg path{
  fill: var(--wp--custom--primlitives--colors--b-w--white);
}

/* ---------------- BLOCK LINK HOVER --------------- */


.block-link-bg{
  background-color: var(--primary-color);
  background-image: url(/wp-content/uploads/2026/02/fond-dot.svg);
  background-size: cover;
  transition: opacity 0.3s ease-in-out;
}

.card-link:hover .block-link-bg{
  opacity: 1;
}

/* ---------------- FORMULAIRE --------------- */

.formulaire .wpforms-container {
  margin: unset !important;
}

.formulaire .wpforms-field-container {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: 16px;
  width: 100%;
}

.formulaire .wpforms-field {
  padding: unset;
  width: 100%;
}

.formulaire .wpforms-field input,
.formulaire .wpforms-field textarea,
.formulaire .wpforms-field-select select,
.formulaire .wpforms-field input::placeholder,
.formulaire .wpforms-field-required input::before,
.formulaire .wpforms-field-required input::after,
.formulaire .wpforms-field-required input,
.formulaire .wpforms-field .wpforms-uploader {
  background-color: transparent !important;
  border: 1px solid !important;
  border-color: var(--wp--custom--primlitives--colors--b-w--white) !important;
  color: var(--wp--custom--primlitives--colors--b-w--white) !important;
}

.formulaire .wpforms-field-required input::before,
.formulaire .wpforms-field-required li:not(.wpforms-selected) input::after {
  border: unset !important;
}

.formulaire .wpforms-field-checkbox .wpforms-field-required input[type=checkbox]:checked:after,
.formulaire .wpforms-field-radio .wpforms-field-required input[type=radio]:checked:after {
  border: 1px solid !important;
  left: calc(-3px + var(--wpforms-field-border-size, 1px));
  top: calc(-3px + var(--wpforms-field-border-size, 1px));
  transform: scale(0.5);
  height: var(--wpforms-field-size-checkbox-size);
  background-color: var(--wp--custom--primlitives--colors--b-w--white) !important;
}

.formulaire .wpforms-container-full input[type=checkbox]:checked:before{
  box-shadow: unset !important;
}

.formulaire .wpforms-error{
  color: var(--wp--custom--primlitives--colors--b-w--white) !important;
}

.formulaire .wpforms-error::before{
  background-color: var(--wp--custom--primlitives--colors--b-w--white) !important;
}

.formulaire
  .wpforms-field-radio
  .wpforms-field-required
  .wpforms-selected
  input::after {
  background-color: var(--wp--custom--primlitives--colors--b-w--white) !important;
}

.formulaire .wpforms-field .wpforms-uploader,
.formulaire .wpforms-field-select select,
.formulaire .wpforms-field input,
.formulaire .wpforms-field textarea {
  max-width: 100%;
  border-radius: 6px !important;
}

.formulaire .wpforms-field textarea {
  height: 115px !important;
}

.formulaire .wpforms-field-required input::before,
.formulaire .wpforms-field-required input::after,
.formulaire .wpforms-field-required input {
  border-radius: 360px !important;
}

.formulaire .wpforms-field-label,
.formulaire .wpforms-field-label-inline {
  margin-bottom: 6px !important;
  font-family: var(--wp--preset--font-family--secondary);
  font-weight: 400;
  color: var(--wp--custom--primlitives--colors--b-w--white) !important;
  word-break: auto-phrase;
}

.formulaire .wpforms-field-large {
  padding: 10px 16px;
}

.formulaire .wpforms-required-label {
  display: none;
}

.formulaire .wpforms-submit-container {
  margin-top: 16px !important;
}

.formulaire .wpforms-field-checkbox .choice-1 input {
  align-self: center;
}

div.wpforms-container-full select {
  background-image:
    linear-gradient(45deg, transparent 50%, var(--wp--custom--primlitives--colors--b-w--white) 50%),
    linear-gradient(135deg, var(--wp--custom--primlitives--colors--b-w--white) 50%, transparent 50%);
}

.formulaire .wpforms-field .wpforms-uploader {
  border-style: solid !important;
  padding: 10px 15px !important;
  align-items: start !important;
  justify-content: center !important;
}

.formulaire .dz-message {
  justify-content: flex-start !important;
  align-items: flex-start !important;
  text-align: start !important;
}

.formulaire .dz-message span {
  font-family: var(--wp--preset--font-family--secondary);
  font-weight: 400;
  color: var(--wp--custom--primlitives--colors--b-w--white) !important;
}

.formulaire .dz-message svg {
  display: none;
}

.formulaire .wpforms-submit {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 12px 24px;
  border-radius: 6px;
  background-color: var(--wp--custom--primlitives--colors--b-w--white) !important;
  font-family: var(--wp--preset--font-family--secondary);
  font-weight: 400;
  text-transform: uppercase;
  cursor: pointer;
  transition: all 0.3s ease-out;
}

.formulaire .wpforms-submit::after{
  background-color: var(--primary-color);
  color: var(--wp--custom--primlitives--colors--b-w--white);
  transform: translateX(-8px) translateY(-6px);
  position: absolute;
  content: "Envoyer";
  inset: 0;
  width: calc(100% + 2px);
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 12px 24px;
  border: 1px solid var(--wp--custom--primlitives--colors--b-w--white);
  border-radius: 6px;
  font-family: var(--wp--preset--font-family--secondary);
  font-weight: 400;
  text-transform: uppercase;
  white-space: nowrap;
  cursor: pointer;
  transition: all 0.3s ease-out;
}

.formulaire .wpforms-submit:hover::after {
  transform: translateX(0) translateY(0);
  background-color: #A5392E;
}



.formulaire.fom-devis  .wpforms-field input,
.formulaire.fom-devis  .wpforms-field textarea,
.formulaire.fom-devis  .wpforms-field-select select,
.formulaire.fom-devis  .wpforms-field input::placeholder,
.formulaire.fom-devis  .wpforms-field input::before,
.formulaire.fom-devis  .wpforms-field input::after,
.formulaire.fom-devis  .wpforms-field input,
.formulaire.fom-devis  .wpforms-field .wpforms-uploader {
  border-color: var(--wp--custom--primlitives--colors--b-w--black) !important;
  color: var(--wp--custom--primlitives--colors--b-w--black) !important;
  box-shadow: none !important;
}


.formulaire.fom-devis  .wpforms-field-checkbox input[type=checkbox]:checked:after,
.formulaire.fom-devis  .wpforms-field-radio input[type=radio]:checked:after {
  background-color: var(--wp--custom--primlitives--colors--b-w--black) !important;
}

.formulaire.fom-devis  .wpforms-error{
  color: var(--wp--custom--primlitives--colors--b-w--black) !important;
}

.formulaire.fom-devis  .wpforms-error::before{
  background-color: var(--wp--custom--primlitives--colors--b-w--black) !important;
}

.formulaire.fom-devis 
  .wpforms-field-radio
  .wpforms-selected
  input::after {
  background-color: var(--wp--custom--primlitives--colors--b-w--black) !important;
}

.formulaire.fom-devis  .wpforms-field-label,
.formulaire.fom-devis  .wpforms-field-label-inline {
  color: var(--wp--custom--primlitives--colors--b-w--black) !important;
}

div.wpforms-container-full select {
  background-image:
    linear-gradient(45deg, transparent 50%, var(--wp--custom--primlitives--colors--b-w--black) 50%),
    linear-gradient(135deg, var(--wp--custom--primlitives--colors--b-w--black) 50%, transparent 50%);
}

.formulaire.fom-devis  .dz-message span {
  color: var(--wp--custom--primlitives--colors--b-w--black) !important;
}


.formulaire.fom-devis  .wpforms-submit {
  background-color: var(--wp--custom--primlitives--colors--b-w--black) !important;
}

.formulaire.fom-devis  .wpforms-submit::after{
  background-color: var(--primary-color);
  border: none;
}

.formulaire.fom-devis .wpforms-field input::placeholder{
  border: none !important;
}

.formulaire.fom-devis .wpforms-required-label {
    display: inline-block !important;
    color: var(--wp--custom--primlitives--colors--b-w--black) !important;
}

.formulaire.fom-devis .wpforms-field-radio .wpforms-field-required{
  grid-template-columns: repeat(3, auto) !important;
}

.formulaire.fom-devis .wpforms-field-radio ul{
  grid-template-columns: repeat(4, auto) !important;
}

/* ----------- POP UP FORMULAIRE ------------- */

.popup-formulaire {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  background: var(--wp--custom--primlitives--colors--b-w--black);
  border-radius: 18px;
  color: var(--wp--custom--primlitives--colors--b-w--white);
  padding: 100px;
  gap: 26px;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 900px;
  line-height: 1.2;
  text-align: center;
  z-index: 10000;
  opacity: 0;
  transition: opacity 0.3s ease-in-out;
  pointer-events: none;
}

.popup-formulaire .title-popup {
  font-family: var(--wp--preset--font-family--primary);
  font-size: var(--wp--custom--primlitives--typographie--44);
  font-weight: 700;
}

.popup-formulaire .text-popup {
  font-weight: 400;
}

/* .popup-formulaire .button-popup {
} */

.popup-formulaire.active {
  opacity: 1;
  pointer-events: all;
}

.wpforms-confirmation-container-full {
  background: transparent !important;
  border: 1px solid var(--wp--preset--color--secondary) !important;
  border-radius: 6px !important;
  font-family: var(--wp--preset--font-family--secondary);
}

.wpforms-confirmation-container-full p {
  color: var(--wp--custom--primlitives--colors--b-w--white) !important;
}

.formulaire.fom-devis .wpforms-confirmation-container-full p {
  color: var(--wp--custom--primlitives--colors--b-w--black) !important;
}

/* -------------------- FOOTER NETDEV ---------------- */

.netdev-footer {
  background-color: var(--wp--custom--primlitives--colors--b-w--black) !important;
}

.netdev-footer,
.netdev-footer .netdev-footer-content .netdev-footer-text a {
  color: var(--wp--custom--primlitives--colors--b-w--white) !important;
}

.netdev-footer .logo,
.netdev-footer .netdev-footer-content .netdev-footer-text a {
  opacity: unset !important;
}

.netdev-footer{
  padding-left: var(--pl) !important;
}
/* ---------------------- MENTIONS LEGALES --------------------- */


.netdev-mentions-legales p {
  color: var(--wp--custom--primlitives--colors--b-w--black);
}

.netdev-mentions-legales h2 {
  margin-top: 32px;
  margin-bottom: 20px;
}

.netdev-mentions-legales a {
  text-decoration: underline;
}
