button,
select {
  color: var(--wp--preset--color--contrast);
}

label {
  color: var(--wp--preset--color--contrast);
  font-weight: 500;
}

input[type=text],
input[type=email],
input[type=tel],
input[type=number],
input[type=float],
select,
textarea {
  padding: var(--wp--preset--spacing--x-small) var(--wp--preset--spacing--x-large);
  background-color: var(--wp--preset--color--light);
  font-size: var(--wp--preset--font-size--small);
  line-height: inherit;
  border: 1px solid var(--wp--preset--color--light);
  border-radius: var(--wp--custom--radius--x-small);
}

input[type=text]:focus,
input[type=email]:focus,
input[type=tel]:focus,
input[type=number]:focus,
input[type=float]:focus,
select:focus,
textarea:focus {
  outline: none;
  border: 1px solid var(--wp--preset--color--contrast);
}

input[type=checkbox],
input[type=radio] {
  appearance: none;
  cursor: pointer;
  background-color: var(--wp--preset--color--base);
  border: 1px solid var(--wp--preset--color--contrast);
  margin: 0 0.5rem 0 0;
  width: 0.875rem !important;
  height: 0.875rem !important;
  border-radius: 0.25rem;
  transform: translateY(0.2em);
}

input[type=checkbox]::before,
input[type=radio]::before {
  display: block;
  content: "";
  width: 0.5rem;
  height: 0.5rem;
  clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%);
  transform: scale(0);
  transition: 120ms transform ease-in-out;
  transform-origin: center;
  background-color: var(--wp--preset--color--base);
  margin: 0.1rem auto 0 auto;
}

input[type=checkbox]:checked,
input[type=radio]:checked {
  background-color: var(--wp--preset--color--primary);
  border: 1px solid var(--wp--preset--color--primary);
}

input[type=checkbox]:checked::before,
input[type=radio]:checked::before {
  transform: scale(1);
}

.has-light-background-color input,
.has-light-background-color select,
.has-light-background-color textarea {
  background-color: var(--wp--preset--color--base);
}

input[type=button],
input[type=submit] {
  font-size: var(--wp--preset--font-size--medium);
  padding: var(--wp--preset--spacing--x-small) var(--wp--preset--spacing--x-large);
  border-radius: var(--wp--custom--radius--x-small);
  cursor: pointer;
  font-family: var(--wp--preset--font-family--outfit);
  font-weight: 500;
  margin-top: var(--wp--preset--spacing--x-large);
  line-height: inherit;
  background-color: var(--wp--preset--color--primary);
  border: 1px solid var(--wp--preset--color--primary);
  color: var(--wp--preset--color--base);
}

input[type=button].is-style-secondary,
input[type=submit].is-style-secondary {
  background-color: var(--wp--preset--color--secondary);
  border: 1px solid var(--wp--preset--color--secondary);
  color: var(--wp--preset--color--contrast);
}

input[type=button].is-style-light,
input[type=submit].is-style-light {
  background-color: var(--wp--preset--color--whitesmoke);
  border: 1px solid var(--wp--preset--color--whitesmoke);
  color: var(--wp--preset--color--contrast);
}

input[type=button].is-style-outline,
input[type=submit].is-style-outline {
  background-color: var(--wp--preset--color--transparent);
  border: 1px solid var(--wp--preset--color--contrast);
  color: var(--wp--preset--color--contrast);
}

input[type=button]:hover,
input[type=submit]:hover {
  background-color: var(--wp--preset--color--contrast);
  border: 1px solid var(--wp--preset--color--contrast);
  color: var(--wp--preset--color--base);
}
.block-map .localisation .ville {
  border: 2px solid var(--wp--preset--color--contrast);
  padding: var(--wp--preset--spacing--x-large);
  background-color: var(--wp--preset--color--base);
  cursor: pointer;
  transition: transform 1.5s cubic-bezier(0.19, 1, 0.22, 1);
}

.block-map .localisation .ville.active {
  border: 2px solid var(--wp--preset--color--contrast);
  background-color: var(--wp--preset--color--contrast);
}

.block-map .localisation .ville.active * {
  color: var(--wp--preset--color--base);
}

.block-map .localisation .ville.active a {
  color: var(--wp--preset--color--primary);
}

.block-map .localisation .ville.active .infos {
  display: flex;
}

.block-map .localisation .ville .infos {
  display: none;
}

.block-map .localisation .ville:hover {
  border: 2px solid var(--wp--preset--color--contrast);
  background-color: var(--wp--preset--color--contrast);
}

.block-map .localisation .ville:hover * {
  color: var(--wp--preset--color--base);
}

@media screen and (max-width: 600px) {
  .block-map {
    flex-direction: column-reverse;
  }

  .block-map .localisation .ville.active {
    border-color: var(--wp--preset--color--secondary);
  }

  .block-map .localisation .ville .infos {
    display: flex;
  }
}

.map-canvas {
  width: 100%;
  height: auto;
  min-height: 500px;
}
/* Modal Formulaire contact */

.modal {
  position: fixed;
  inset: 0;
  margin-top: 0;
  max-width: 100% !important;
  z-index: 1000;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.35s ease, visibility 0s linear 0.35s;
}

.modal.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transition: opacity 0.35s ease, visibility 0s linear 0s;
}

.modal-wrapper {
  position: fixed;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: rgba(0, 0, 0, 0.9);
  opacity: 0;
  transition: opacity 0.35s ease;
}

.modal.is-open .modal-wrapper {
  opacity: 1;
}

.modal-container {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  outline: 0;
  max-width: var(--wp--style--global--content-size);
  margin-top: 0;
  margin-bottom: 0;
  margin-left: auto !important;
  margin-right: auto !important;
  padding: var(--wp--preset--spacing--x-large);
  border-radius: 0;
  transform: translateY(4rem);
  transition: transform 0.35s ease;
  max-height: calc(100% - var(--wp--preset--spacing--xxxx-large));
}

.modal.is-open .modal-container {
  transform: translateY(2rem);
}

@media screen and (max-width: 782px) {
  .modal-container {
    max-width: calc(100% - var(--wp--preset--spacing--xxx-large));
  }
}

.modal-content {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: auto;
}

.modal-content::-webkit-scrollbar {
  width: 0.5rem;
  -webkit-appearance: none;
  border-radius: var(--wp--custom--radius--2-x-small);
  background-color: var(--wp--preset--color--contrast);
}

.modal-content {
  /* Track */
}

.modal-content::-webkit-scrollbar-track {
  background: var(--wp--preset--color--base);
  border-radius: var(--wp--custom--radius--medium);
}

.modal-content {
  /* Handle */
}

.modal-content::-webkit-scrollbar-thumb {
  border-radius: 0.5rem;
  background: var(--wp--preset--color--contrast);
}

.modal-content {
  /* Handle on hover */
}

.modal-content::-webkit-scrollbar-thumb:hover {
  background: var(--wp--preset--color--contrast);
}

.modal-content iframe {
  border: none;
  overflow: hidden;
}

.modal-close {
  position: absolute;
  top: var(--wp--preset--spacing--xx-large);
  right: var(--wp--preset--spacing--x-large);
  margin-top: 0 !important;
}

/* Lock scroll */

body.modal-open {
  overflow: hidden;
}

.reservation-module > .wp-block-group {
  max-width: 740px;
  margin-left: auto !important;
  margin-right: auto !important;
}

.reservation-module > .wp-block-group .wp-block-heading {
  margin: 0 !important;
}

.reservation-module > .wp-block-group select {
  background-color: var(--wp--preset--color--base);
  width: 100%;
  font-weight: 600;
}

.reservation-module > .wp-block-group select:focus {
  outline: none;
  border: none;
}
.wp-block-post-template .cours.hentry {
  position: relative;
}

.wp-block-post-template .cours.hentry a.post-anchor {
  position: absolute;
  top: -100px;
}
/*
 * CSS for registered block styles.
 * See inc/register-block-styles.php.
 */

:where(.wp-site-blocks) > * {
  margin-block-start: 0;
  margin-block-end: 0;
}

:where(header) {
  position: relative;
  color: var(--wp--preset--color--base);
  backdrop-filter: blur(24px);
  transition: background-color 0.35s ease, backdrop-filter 0.35s ease;
  z-index: 1;
}

:where(header) > .wp-block-group {
  padding: var(--wp--preset--spacing--x-large);
}

:where(header) > .wp-block-group .wp-block-site-logo {
  z-index: 3;
}

:where(header.is-position-fixed) {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1000;
  color: var(--wp--preset--color--base);
  background: var(--wp--preset--color--transparent);
  backdrop-filter: none;
}

:where(header.is-position-sticky) {
  position: sticky;
  top: 0;
  z-index: 1000;
  transform: translateY(0);
  transition: transform 0.3s ease;
  will-change: transform;
}

:where(header).has-background-primary {
  background-color: var(--wp--preset--color--primary);
}

:where(footer.wp-block-template-part) {
  padding-top: var(--wp--preset--spacing--xxxx-large);
  padding-bottom: var(--wp--preset--spacing--xxxx-large);
  padding-left: var(--wp--style--root--padding-left);
  padding-right: var(--wp--style--root--padding-right);
  background-color: var(--wp--preset--color--contrast);
  color: var(--wp--preset--color--base);
}

:where(footer.wp-block-template-part) .wp-block-heading {
  color: var(--wp--preset--color--base);
}

:where(footer.wp-block-template-part) .instagram-feed-footer p {
  display: none;
}

@media screen and (max-width: 781px) {
  :where(footer.wp-block-template-part) .is-content-justification-space-between {
    justify-content: center !important;
  }
}

.is-style-filter-cover {
  padding: var(--wp--preset--spacing--x-large);
}

.is-style-filter-cover img {
  filter: grayscale(0);
}

.is-style-filter-cover .wp-block-post-terms {
  background-color: var(--wp--preset--color--primary);
  width: fit-content;
  margin: 0 !important;
  font-weight: 700;
}

.is-style-filter-cover .wp-block-post-title {
  color: var(--wp--preset--color--base);
  font-size: var(--wp--preset--font-size--x-large);
  font-weight: 700;
  margin: 0;
  text-transform: uppercase;
}

.is-style-filter-cover .subtitle {
  font-size: var(--wp--preset--font-size--large);
  color: var(--wp--preset--color--base);
  font-weight: 500;
  margin: 0;
  padding-bottom: var(--wp--preset--spacing--medium);
}

.is-style-filter-cover .wp-block-post-excerpt {
  display: none;
}

.is-style-filter-cover .logo {
  position: absolute;
  bottom: var(--wp--preset--spacing--x-large);
  right: var(--wp--preset--spacing--x-large);
  padding: 0.25rem 0.75rem;
  width: 48px;
}

.is-style-filter-cover:hover .wp-block-cover__background {
  background-color: var(--wp--preset--color--contrast) !important;
  opacity: 0.8 !important;
}

.is-style-filter-cover:hover img:not(.logo) {
  filter: blur(12px);
}

.is-style-filter-cover:hover .wp-block-post-excerpt {
  display: block;
  padding-top: var(--wp--preset--spacing--small);
}

.is-style-blur-heavy {
  backdrop-filter: var(--wp--custom--blur--heavy);
  border: 1px solid var(--wp--preset--color--base-20);
}

.wp-block-query .is-layout-grid .wp-block-post > .wp-block-group {
  height: 100%;
}

@media screen and (max-width: 781px) {
  header .is-content-justification-space-between {
    gap: var(--wp--preset--spacing--medium);
  }

  header .wp-block-site-logo img {
    height: auto;
    max-width: 64px;
  }

  .wp-block-navigation[aria-label=Contact] .open-modal-documentation {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    right: 0;
  }

  .wp-block-navigation[aria-label=Contact] .open-modal-documentation .wp-block-navigation-item__content {
    width: 100%;
    text-align: center;
  }
}
.coachs-slider .swiper-wrapper .swiper-slide {
  margin-top: 0;
}

.coachs-slider .swiper-wrapper .swiper-slide img {
  filter: grayscale(1);
}

.coachs-slider .swiper-wrapper .swiper-slide-active img {
  filter: grayscale(0);
}

.coachs-slider .swiper-wrapper .swiper-slide > * {
  width: 100%;
}

.is-style-filter-cover.swiper-slide img {
  filter: grayscale(1);
}

.is-style-filter-cover.swiper-slide-active img {
  filter: grayscale(0);
}

.swiper-pagination {
  position: relative !important;
}

.swiper-button-next,
.swiper-button-prev {
  position: relative !important;
  top: auto !important;
  right: auto !important;
  bottom: auto !important;
  left: auto !important;
  background-color: var(--wp--preset--color--base);
  border-radius: 50%;
  width: 44px !important;
  height: 44px !important;
  color: var(--wp--preset--color--contrast) !important;
  border: 2px solid var(--wp--preset--color--base);
}

.swiper-button-next::after,
.swiper-button-prev::after {
  font-size: var(--wp--preset--spacing--large) !important;
  font-weight: 700;
}

.swiper-button-next:hover,
.swiper-button-prev:hover {
  background-color: var(--wp--preset--color--contrast);
  color: var(--wp--preset--color--base) !important;
  border: 2px solid var(--wp--preset--color--contrast);
}

.swiper-pagination-bullet {
  width: var(--wp--preset--font-size--medium) !important;
  height: var(--wp--preset--font-size--medium) !important;
  display: inline-block;
  border-radius: 0 !important;
  background: var(--wp--preset--color--transparent) !important;
  opacity: 1 !important;
  border: 2px solid var(--wp--preset--color--base);
}

.swiper-pagination-bullet-active {
  background: var(--wp--preset--color--base) !important;
}

.swiper-slide {
  display: flex !important;
}