/* ===============================
   COMMON - COLORS
================================= */
:root {
  /* Primary */
  --color-primary-50:  #EFFEFA;
  --color-primary-100: #C8FFEF;
  --color-primary-200: #90FFDF;
  --color-primary-300: #51F7CF;
  --color-primary-400: #1DE4BA;
  --color-primary-500: #05C7A1;
  --color-primary-600: #00A184;
  --color-primary-700: #05806B;
  --color-primary-800: #0A6557;
  --color-primary-900: #0E5349;
  --color-primary-950: #004039;

  /* Secondary */
  --color-secondary-50:  #FEF2F2;
  --color-secondary-100: #FEE2E3;
  --color-secondary-200: #FFC9CA;
  --color-secondary-300: #FDA4A6;
  --color-secondary-400: #F97073;
  --color-secondary-500: #EF2C30;
  --color-secondary-600: #DE2428;
  --color-secondary-700: #BB1A1D;
  --color-secondary-800: #9A1A1D;
  --color-secondary-900: #801C1E;
  --color-secondary-950: #46090A;
}



/* ===============================
   COMMON - TYPOGRAPHY
================================= */
@media (min-width: 1024px) {
  :root {
    --wp--preset--font-size--heading-1: 48px;
    --wp--preset--font-size--heading-2: 44px;
    --wp--preset--font-size--heading-3: 36px;
    --wp--preset--font-size--label: 32px;
  }
}



/* ===============================
   COMMON - FOOTER
================================= */
.netdev-footer .netdev-footer-content .logo {
  position: relative;
  top: -9px;
}

.netdev-footer .netdev-footer-content a:not(.logo) {
  position: relative;
  padding: 0.1em 0;
}

.netdev-footer .netdev-footer-content a:not(.logo)::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 2px;
  /* background-color: var(--wp--preset--color--light); */
  background-color: #ffffff;
  opacity: 0;
  transform: translate3d(0, 0.2em, 0);
  transition: opacity 300ms, transform 300ms;
  border-radius: 10px;
}

.netdev-footer .netdev-footer-content a:not(.logo):hover {
  color: #ffffff;
}

.netdev-footer .netdev-footer-content a:not(.logo):hover::after {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}



/* ===============================
   COMPONENT - BUTTONS
================================= */
.wp-block-button.has-icon .wp-block-button__link {
  display: inline-flex;
  align-items: center;
  gap: 12px;

  padding: 14px 24px;
}

.nd-button__icon {
  width: 1em;
  height: 1em;
  flex: 0 0 auto;
  display: inline-block;
}

.nd-button__icon::before {
  content: "→";
  display: inline-block;
  line-height: 1;
}

/* --- FILL --- */
.wp-block-button.is-style-nd-fill .wp-block-button__link {
  background: var(--color-secondary-600);
  color: var(--wp--preset--color--light);
  border: 1px solid var(--color-secondary-600);
}

.wp-block-button.is-style-nd-fill .wp-block-button__link:hover {
  background: var(--color-secondary-700);
  border-color: var(--color-secondary-700);
}

/* --- OUTLINE --- */
.wp-block-button.is-style-nd-outline .wp-block-button__link {
  background: transparent;
  color: var(--wp--preset--color--primary);
  border: 1px solid #252525;
}

.wp-block-button.is-style-nd-outline .wp-block-button__link:hover {
  background: linear-gradient(rgba(255, 255, 255, 0.7), rgba(255, 255, 255, 0.7)), #252525;
}

/* --- BEZELED --- */
.wp-block-button.is-style-nd-bezeled .wp-block-button__link {
  background: linear-gradient(rgba(255, 255, 255, 0.7), rgba(255, 255, 255, 0.7)), #252525;
  color: #252525;
}

.wp-block-button.is-style-nd-bezeled .wp-block-button__link:hover {
  background: #E9E9E9;
  border-color: #E9E9E9;
}

/* --- BORDERLESS --- */
.wp-block-button.is-style-nd-borderless .wp-block-button__link {
  background: transparent;
  color: var(--wp--preset--color--primary);
  border: 1px solid transparent;
}

.wp-block-button.is-style-nd-borderless .wp-block-button__link:hover {
  background-color: rgba(0, 0, 0, 0.1);
}

/* --- LIGHT OUTLINE --- */
.wp-block-button.is-style-nd-light-outline .wp-block-button__link {
  background: transparent;
  color: #FFFFFF;
  border: 1px solid #FFFFFF;
}

.wp-block-button.is-style-nd-light-outline .wp-block-button__link:hover {
  color: #252525;
  background: linear-gradient(rgba(255, 255, 255, 0.9), rgba(255, 255, 255, 0.9)), #252525;
  /* box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.9), 0 0 0 1px #252525; */
  border-color: transparent;
}

/* --- OUTLINE LANG --- */
.wp-block-button.is-style-outline-lang a.wp-block-button__link.wp-element-button,
li.wp-block-navigation-item.is-style-outline-lang.wp-block-navigation-link {
    background: transparent !important;
    color: var(--wp--preset--color--primary) !important;
    border: solid 2px var(--wp--preset--color--primary) !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    padding: 4.5px !important;
    word-break: keep-all !important;
}

.wp-block-button.is-style-outline-lang a.wp-block-button__link.wp-element-button:hover,
li.wp-block-navigation-item.is-style-outline-lang.wp-block-navigation-link:hover {
    background: var(--wp--preset--color--primary) !important;
    color: #fff !important;
    border: solid 2px var(--wp--preset--color--primary) !important;
    transition: all 0.175s ease-in-out !important;
}

.wp-block-button.is-style-outline-lang.is-active a.wp-block-button__link.wp-element-button,
li.wp-block-navigation-item.is-style-outline-lang.is-active.wp-block-navigation-link {
    background: var(--wp--preset--color--primary) !important;
    color: #fff !important;
    /* border: solid 2px var(--wp--preset--color--primary); */
}

/* MENU BUTTONS */
li.wp-block-navigation-item.menu-button-primary.wp-block-navigation-link {
  background: var(--wp--preset--color--secondary) !important;
  color: #FFFFFF !important;
  border-radius: 6px !important;
  padding: 12px 24px !important;
  text-transform: capitalize !important;
  letter-spacing: normal !important;
  font-weight: 700 !important;
}




/* ===============================
   COMPONENT - BUTTON PAGE LINK
================================= */
.nd-page-link-thumb__link {
  display: flex;
  align-items: center;
  gap: 20px;
  text-decoration: none;
}

/* --- IMAGE --- */
.nd-page-link-thumb__media {
  width: 64px;
  height: 64px;
  border-radius: 8px;
  background-color: var(--wp--preset--color--primary);
  background-image: var(--page-thumb);
  background-size: cover;
  background-position: center;
  position: relative;
  overflow: hidden;
}

/* --- OVERLAY --- */
.nd-page-link-thumb__media::after {
  content: "";
  position: absolute;
  inset: 0;
  background-color: var(--wp--preset--color--primary);
  opacity: 0;
  transition: opacity 300ms ease-in-out;
  border-radius: 8px;
}

.nd-page-link-thumb__link:hover .nd-page-link-thumb__media::after {
  opacity: 1;
}

/* --- TEXT --- */
.nd-page-link-thumb__label {
  font-size: 20px;
  font-weight: 700;
  color: var(--wp--preset--color--primary);
}


/* ===============================
   COMPONENT - LIST
================================= */
/* --- CHECKED --- */
.nd-list-check {
  list-style: none;
  padding-left: 0;
  margin: 0;
}

.nd-list-check li {
  position: relative;
  padding-left: 45px;
  margin-bottom: 16px;
}

.nd-list-check li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);

  width: 25px;
  height: 25px;

  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;

  background-image: url("data:image/svg+xml,%3Csvg width='25' height='25' viewBox='0 0 25 25' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M18.0256 8.53367C18.4071 8.91514 18.4071 9.5335 18.0256 9.91478L11.4742 16.4663C11.0928 16.8476 10.4746 16.8476 10.0931 16.4663L6.97441 13.3474C6.59294 12.9662 6.59294 12.3478 6.97441 11.9665C7.35569 11.585 7.97405 11.585 8.35533 11.9665L10.7836 14.3948L16.6445 8.53367C17.0259 8.15239 17.6443 8.15239 18.0256 8.53367ZM25 12.5C25 19.4094 19.4084 25 12.5 25C5.59063 25 0 19.4084 0 12.5C0 5.59063 5.59158 0 12.5 0C19.4094 0 25 5.59158 25 12.5ZM23.0469 12.5C23.0469 6.67019 18.329 1.95312 12.5 1.95312C6.67019 1.95312 1.95312 6.67095 1.95312 12.5C1.95312 18.3298 6.67095 23.0469 12.5 23.0469C18.3298 23.0469 23.0469 18.329 23.0469 12.5Z' fill='white'/%3E%3C/svg%3E");
}

/* --- RED ICON --- */
.nd-list-square {
  list-style: none;
  padding-left: 0;
  margin: 0;
}

.nd-list-square li {
  position: relative;
  padding-left: 40px;
  margin-bottom: 16px;
}

.nd-list-square li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);

  width: 24px;
  height: 24px;

  background-color: var(--wp--preset--color--secondary);
  border-radius: 4px;
}



/* ===============================
   COMPONENT - SLIDER MODETEC
================================= */
.swiper {
  width: 100%;
}

.nd-slider-modetec__slide {
  width: 100% !important;
}

@media (min-width: 640px) {
  .nd-slider-modetec__slide {
    width: 549px !important;
  }
}

@media (min-width: 1024px) {
  .nd-slider-modetec__slide {
    width: 678px !important;
  }
}

@media (min-width: 1280px) {
  .nd-slider-modetec__slide {
    width: 761px !important;
  }
}

/* --- NAV DISABLED STATE --- */
.nd-slider-modetec__prev[disabled],
.nd-slider-modetec__next[disabled],
.nd-slider-modetec__prev.swiper-button-disabled,
.nd-slider-modetec__next.swiper-button-disabled {
  cursor: default;
  pointer-events: none;
  opacity: 0.35;
  transform: none !important;
}

.nd-slider-modetec__prev[disabled] svg,
.nd-slider-modetec__next[disabled] svg,
.nd-slider-modetec__prev.swiper-button-disabled svg,
.nd-slider-modetec__next.swiper-button-disabled svg {
  filter: grayscale(1);
}



/* ===============================
   COMPONENT - TIMELINE MODETEC
================================= */
.nd-timeline-modetec__progress {
  min-height: 24px;
  width: 100%;
}

.nd-timeline-modetec__progress-track {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr) 24px minmax(0, 1fr) 24px;
  gap: 16px;
  align-items: center;
  width: 100%;
}

@media (min-width: 1024px) {
  .nd-timeline-modetec__progress-track {
    gap: 32px;
  }
}

.nd-timeline-modetec__progress-slot {
  display: flex;
  justify-content: center;
  align-items: center;
}

.nd-timeline-modetec__dot {
  position: relative;
  width: 24px;
  height: 24px;
  border-radius: 9999px;
  flex: 0 0 24px;
  border: 0;
  padding: 0;
  background: #252525;
  cursor: pointer;
}

.nd-timeline-modetec__dot.is-active {
  background-color: var(--wp--preset--color--secondary);
  box-shadow: 0 0 0 3px #fff, 0 0 0 4px var(--wp--preset--color--secondary);
}

/* .nd-timeline-modetec__line {
  display: block;
  width: 100%;
  height: 1px;
  background: #252525;
} */

.nd-timeline-modetec__line {
  position: relative;
  display: block;
  width: 100%;
  height: 2px;
  background: #252525;
  overflow: hidden;
}

.nd-timeline-modetec__line::after {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: var(--timeline-line-progress, 0%);
  height: 200%;
  background: var(--wp--preset--color--secondary);
  transition: width 120ms linear;
}

.nd-timeline-modetec__line.is-hidden,
.nd-timeline-modetec__dot.is-hidden {
  visibility: hidden;
}

.nd-timeline-modetec__prev[disabled],
.nd-timeline-modetec__next[disabled] {
  cursor: default;
  pointer-events: none;
  opacity: 0.35;
  transform: none !important;
}

.nd-timeline-modetec__prev[disabled] svg,
.nd-timeline-modetec__next[disabled] svg {
  filter: grayscale(1);
}










/* ===============================
   COMMON - HEADER
================================= */
/* --- BURGER MENU --- */
@media (min-width:600px) {
  .wp-block-navigation__responsive-container-open:not(.always-shown){
    display:flex !important;
  }
  .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open){
    display:none !important;
  }
}

@media (min-width:1280px) {
  .wp-block-navigation__responsive-container-open:not(.always-shown){
    display:none !important;
  }
  .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open){
    display:block !important;
    position:relative;
    width:100%;
  }
}

@media (min-width: 600px) and (max-width: 1279px) {
  .wp-block-navigation__responsive-container {
    position: fixed;
    inset: 0;
    z-index: 9999;
    background: var(--wp--preset--color--light);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.25s ease, visibility 0.25s ease;
  }

  .wp-block-navigation__responsive-container.is-menu-open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
  }

  .wp-block-navigation__responsive-close {
    width: 100%;
    height: 100%;
  }

  .wp-block-navigation__responsive-dialog {
    width: 100%;
    height: 100%;
  }

  .wp-block-navigation__responsive-container-content {
    padding: 120px 32px 32px;
  }
}



/* --- STATE HOVER & ACTIVE --- */
a.wp-block-navigation-item__content {
  display: block;
  position: relative;
  padding: 0.2em 0;
}

a.wp-block-navigation-item__content::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: var(--wp--preset--color--secondary);
  opacity: 0;
  transform: translate3d(0, 0.2em, 0);
  transition: opacity 300ms, transform 300ms;
  border-radius: 10px;
}

a.wp-block-navigation-item__content:hover::after,
a.wp-block-navigation-item__content:focus::after {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}

/* li.wp-block-navigation-item.has-submenu-thumb a.wp-block-navigation-item__content::after {
  width: 0;
} */

.wp-block-navigation-item.wp-block-navigation-link.has-submenu-thumb {
  flex-direction: row !important;
}

a.wp-block-navigation-item__content[aria-current]:not([aria-current="false"])::after,
.wp-block-navigation-item.current-menu-ancestor > a.wp-block-navigation-item__content::after {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}

/* --- ACTIVE STATE (équivalent hover) --- */
ul.wp-block-navigation__submenu-container.wp-block-navigation-submenu 
li.wp-block-navigation-item.wp-block-navigation-link.current-menu-item 
> a.wp-block-navigation-item__content::after,

ul.wp-block-navigation__submenu-container.wp-block-navigation-submenu 
li.wp-block-navigation-item.wp-block-navigation-link.current-menu-ancestor 
> a.wp-block-navigation-item__content::after,

ul.wp-block-navigation__submenu-container.wp-block-navigation-submenu 
a.wp-block-navigation-item__content[aria-current="page"]::after {
  opacity: 1;
}

/* --- SUBMENU --- */
li.wp-block-navigation-item.has-child {
  padding-bottom: 40px;
  margin-top: 40px;
}

ul.wp-block-navigation__submenu-container.wp-block-navigation-submenu {
  background-color: #DDDDDD !important;
  border-color: #DDDDDD !important;
  border-radius: 16px;
  overflow: hidden !important;
  width: 100% !important;
  padding: 20px 32px !important;
  gap: 20px;
}

@media (max-width: 1280px) {
  ul.wp-block-navigation__submenu-container.wp-block-navigation-submenu {
    border-radius: 0 !important;
  }
}

li.wp-block-navigation-item.has-child:hover > a.wp-block-navigation-item__content::after {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}

ul.wp-block-navigation__submenu-container.wp-block-navigation-submenu li.wp-block-navigation-item.wp-block-navigation-link {
  font-size: 20px !important;
  text-transform: none;
}

/* Le lien devient le vrai conteneur cliquable */
ul.wp-block-navigation__submenu-container.wp-block-navigation-submenu li.wp-block-navigation-item.wp-block-navigation-link > a.wp-block-navigation-item__content {
  display: flex !important;
  align-items: center;
  gap: 20px;
  position: relative;
  padding: 0 !important;
  text-decoration: none;
}

/* On neutralise l'underline générique dans le sous-menu */
ul.wp-block-navigation__submenu-container.wp-block-navigation-submenu a.wp-block-navigation-item__content::after {
  transform: none;
}

/* Image cliquable */
ul.wp-block-navigation__submenu-container.wp-block-navigation-submenu li.wp-block-navigation-item.wp-block-navigation-link > a.wp-block-navigation-item__content::before {
  content: "";
  width: 40px;
  height: 40px;
  flex: 0 0 40px;
  border-radius: 8px;
  background-color: var(--wp--preset--color--primary);
  background-image: var(--submenu-thumb);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  display: block;
  position: relative;
  overflow: hidden;
}

/* Overlay hover sur la vignette */
ul.wp-block-navigation__submenu-container.wp-block-navigation-submenu li.wp-block-navigation-item.wp-block-navigation-link > a.wp-block-navigation-item__content::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 40px;
  height: 40px;
  border-radius: 8px;
  background-color: var(--wp--preset--color--primary);
  opacity: 0;
  transition: opacity 300ms ease-in-out;
  pointer-events: none;
}

/* Hover/focus sur le lien entier = image + texte */
ul.wp-block-navigation__submenu-container.wp-block-navigation-submenu li.wp-block-navigation-item.wp-block-navigation-link > a.wp-block-navigation-item__content:hover::after,
ul.wp-block-navigation__submenu-container.wp-block-navigation-submenu li.wp-block-navigation-item.wp-block-navigation-link > a.wp-block-navigation-item__content:focus::after {
  opacity: 1;
}

@media (min-width: 1280px) {
  ul.wp-block-navigation__submenu-container.wp-block-navigation-submenu {
    width: max-content !important;
  }

  ul.wp-block-navigation__submenu-container.wp-block-navigation-submenu li.wp-block-navigation-item.wp-block-navigation-link > a.wp-block-navigation-item__content::before {
    width: 64px;
    height: 64px;
    flex-basis: 64px;
  }

  ul.wp-block-navigation__submenu-container.wp-block-navigation-submenu li.wp-block-navigation-item.wp-block-navigation-link > a.wp-block-navigation-item__content::after {
    width: 64px;
    height: 64px;
  }

  ul.wp-block-navigation__submenu-container.wp-block-navigation-submenu a.wp-block-navigation-item__content {
    padding: 22px 20px !important;
  }
}

@media (max-width: 1280px) {
  li.wp-block-navigation-item.has-child {
    padding-bottom: 0;
    margin-top: 0;
  }

  li.wp-block-navigation-item.has-child ul {
    margin-top: 32px;
  }

  ul.wp-block-navigation__submenu-container.wp-block-navigation-submenu {
    padding: 0 !important;
  }
}

/* --- RESPONSIVE --- */
.wp-block-navigation:not(.has-background) .wp-block-navigation__responsive-container.is-menu-open {
    background: #DDDDDD;
    padding-inline: 20px;
    border-radius: 16px;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-icon {
    display: block;
    position: relative;
    top: -14px;
    left: 15px;
}

.wp-block-navigation-item.has-child.open-on-hover-click.wp-block-navigation-submenu .wp-block-navigation__submenu-container.wp-block-navigation-submenu {
    gap : 20px;
}

.wp-block-navigation__responsive-container-close {
    right: 12px;
    top: 15.5px;
}


@media (max-width: 1280px) {
  li.wp-block-navigation-item.has-child {
    padding-bottom: 0;
    margin-top: 0;
  }

  li.wp-block-navigation-item.has-child ul {
    margin-top: 32px;
  }

  ul.wp-block-navigation__submenu-container.wp-block-navigation-submenu {
    padding: 0 !important;
  }
}




/* ===============================
   PLUGINS - GALLERY GENERATOR
================================= */
.gg-modal-img {
  margin: 0 !important;
  padding: 0 !important;
}

.gg-click-img.gg-anim-scale:hover {
  transform: scale(1.175) !important;
}

.gg-icon-close-modal {
  position: absolute;
  right: calc(15px + 20px);
  background-color: var(--wp--preset--color--secondary);
  border-radius: 6px;
  overflow: hidden;
}

.gg-icon-close-modal svg {
  stroke-width: 2px;
}

img.gg-img-modal {
    margin: auto;
    max-height: calc(100dvh - 80px);
    max-width: calc(100% - 80px);
    object-fit: contain;
}

/* .gg-container-div-img {
  height: calc(100% - 80px) !important;
  padding: 20px !important;
}

.gg-div-img-modal {
  width: 100% !important;
  height: auto !important;
  max-height: 80vh !important;
}

dialog.gg-modal-img {
  padding: 0 !important;
  margin: auto !important;
  max-width: calc(100% - 80px) !important;
}
 */



/* ===============================
   PLUGINS - WP FORMS
================================= */
/* --- INPUT LABELS --- */
label.wpforms-field-label {
  font-weight: 300 !important;
  margin-bottom: 6px !important;
}

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

.wpforms-container .wpforms-field, .wp-core-ui div.wpforms-container .wpforms-field {
  padding: 0;
  margin-bottom: 16px;
}

.wpforms-uploader.dz-clickable {
  border-style: solid !important;
  padding: 10px 15px !important;
  text-align: left !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  width: 100%;
}

.wpforms-uploader.dz-clickable .dz-message svg {
  display: none !important;
}

.wpforms-uploader.dz-clickable span.modern-title {
  color: #252525 !important;
  font-family: 'Lexend' !important;
  font-size: 16px !important;
  font-weight: 300 !important;
}

.wpforms-field.wpforms-field-checkbox legend {
  display: none !important;
}

.wpforms-field.wpforms-field-checkbox input[type="checkbox"] {
  position: relative;
  top: 50%;
  transform: translateY(-50%);
  margin-top: 0 !important;
}

.wpforms-field.wpforms-field-file-upload label {
  display: none;
}

div.wpforms-container-full .wpforms-confirmation-container-full,
div[submit-success] > .wpforms-confirmation-container-full:not(.wpforms-redirection-message) {
  background: transparent;
  border: transparent;
}

/* --- SUBMIT --- */
form button.wpforms-submit {
    background: var(--color-secondary-600) !important;
    padding: 14px 24px !important;
    font-size: 16px !important;
    line-height: 0 !important;
}

form button.wpforms-submit:hover {
  background-color: var(--color-secondary-700) !important;
}



/* ===============================
   PLUGIN - WP MAP
================================= */
div#wpgmza_map_2 {
  margin-top: 0 !important;
}



/* ===============================
   PLUGIN - OTGS
================================= */
.otgs-development-site-front-end {
  display: none;
}


/* ===============================
   COMPONENT - MODAL
================================= */
/* La modale n'est stylée qu'une fois initialisée par le JS */
.nd-modal[data-nd-init="1"] {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: grid;
  align-items: center;
  justify-items: center;
  padding: 20px;

  transform: translateZ(0);
  -webkit-tap-highlight-color: transparent;
}

.nd-modal[data-nd-init="1"] .nd-modal__overlay {
  position: absolute;
  inset: 0;
  background: rgba(255, 255, 255, 0.75);
  cursor: pointer;
}

.nd-modal[data-nd-init="1"] .nd-modal__panel {
  position: relative;
  width: 100%;
  max-width: var(--nd-container-current, 688px);
  box-sizing: border-box;

  border-radius: 36px;
  background: #252525;
  color: #ffffff;
  text-align: center;

  padding: 50px;
  overflow-y: auto;

  max-height: calc(100vh - 40px);
  max-height: calc(100dvh - 40px);

  -webkit-overflow-scrolling: touch;
}

@media (min-width: 640px) {
  .nd-modal[data-nd-init="1"] .nd-modal__panel {
    padding: 80px;
  }
}

@media (min-width: 1024px) {
  .nd-modal[data-nd-init="1"] .nd-modal__panel {
    padding: 100px;
  }
}

.nd-modal[data-nd-init="1"] .nd-modal__panel h2 {
  color: #ffffff;
  margin-top: 0 !important;
  margin-bottom: var(--wp--preset--spacing--50, 32px) !important;
  font-size: 32px !important;
}

@media (min-width: 640px) {
  .nd-modal[data-nd-init="1"] .nd-modal__panel h2 {
    font-size: 44px !important;
  }
}

@media (min-width: 1024px) {
  .nd-modal[data-nd-init="1"] .nd-modal__panel h2 {
    font-size: 56px !important;
  }
}

.nd-modal[data-nd-init="1"] .nd-modal__panel p {
  color: #ffffff !important;
  margin-bottom: var(--wp--preset--spacing--50, 32px) !important;
}

/* Lock du scroll */
html.nd-modal-open,
body.nd-modal-open {
  overflow: hidden;
  height: 100%;
}

body.nd-modal-open {
  position: fixed;
  width: 100%;
  overscroll-behavior: none;
}

/* Neutralise l'habillage natif de WPForms autour de la confirmation */
div.wpforms-container-full .wpforms-confirmation-container-full,
div[submit-success] > .wpforms-confirmation-container-full:not(.wpforms-redirection-message) {
  background: transparent;
  border: transparent;
  position: static;
}