html {
  overflow-x: hidden;
  margin: 0;
  padding: 0;
  scroll-behavior: smooth;
}

body {
  word-wrap: break-word;
  position: relative;
  overflow-x: hidden;
  margin: 0;
  padding: 0;
  scroll-behavior: smooth;
  max-width: 100vw;
  --wp--style--global--content-size: 840px;
  --wp--style--global--wide-size: 1200px;
  --wp--style--root--padding-top: var(--wp--preset--spacing--40);
  --wp--style--root--padding-right: var(--wp--preset--spacing--30);
  --wp--style--root--padding-bottom: var(--wp--preset--spacing--40);
  --wp--style--root--padding-left: var(--wp--preset--spacing--30);
}
body main > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
  max-width: var(--wp--style--global--content-size);
  margin-left: auto !important;
  margin-right: auto !important;
}
body main .wp-block-group__inner-container {
  max-width: 1220px;
}
body main section {
  width: 100%;
  max-width: unset;
}
body main .alignwide, body main .is-layout-constrained {
  max-width: var(--wp--style--global--wide-size);
  margin-left: auto;
  margin-right: auto;
  padding-right: 0.75rem;
  padding-left: 0.75rem;
}
img {
  max-width: 100%;
  height: auto;
}

body.noscroll {
  max-height: 100dvh;
  overflow: hidden;
}
body main#main {
  padding-top: 75px;
}
@media (width >= 992px) {
  body main#main {
    padding-top: 76px !important;
  }
}

main > p {
  padding-left: 0.75rem;
  padding-right: 0.75rem;
}

:root {
  --white-color: #fff;
  --black-color: #000000;
  --light-grey-color: #EFF0F1;
  --grey-color: #C6CACE;
  --yellow-color: #ffcb00;
  --yellow-color: #ffcb00;
  --red-color-light: #FBE4E4;
  --red-color: #E44646;
}

.mainColor, .has-main-color-color {
  color: var(--main-color);
}

.sndColor, .has-snd-color-color {
  color: var(--snd-color);
}

.bgMainColor, .has-main-color-background-color, .has-main-background-color {
  background: var(--main-color) !important;
}

.bgsndColor, .has-snd-color-background-color {
  background: var(--snd-color);
}

.has-main-light-background-color {
  background: var(--main-color-light);
}

.white {
  color: var(--white-color);
}

.whiteBg {
  background: var(--white-color) !important;
}

body {
  font-family: "Manrope", sans-serif;
  font-optical-sizing: auto;
}

.heading1 {
  font-size: 30px;
  line-height: 39px;
  font-weight: 800;
  margin-bottom: 1rem;
}
@media (min-width: 992px) {
  .heading1 {
    font-size: 35px;
    line-height: 41px;
  }
}

.heading2 {
  font-size: 26px;
  font-weight: 800;
  line-height: auto;
}
@media (min-width: 992px) {
  .heading2 {
    font-size: 32px;
  }
}

.heading3 {
  font-size: 22px;
  font-weight: 800;
  line-height: auto;
}
@media (min-width: 992px) {
  .heading3 {
    font-weight: 500;
    font-size: 24px;
  }
}

.heading4 {
  font-size: 18px;
  font-weight: 700;
  line-height: auto;
}

.textS {
  font-size: 16px;
  line-height: 24px;
  font-weight: 300;
}

.textL {
  font-size: 24px;
  font-weight: 300;
  line-height: auto;
}
@media (min-width: 992px) {
  .textL {
    font-size: 24px;
  }
}

.labelS {
  font-size: 16px;
  font-weight: 700;
  line-height: 20px;
}

.titleKaushan {
  font-family: "Kaushan Script", cursive;
  visibility: inherit;
  letter-spacing: 0px;
  font-size: 40px;
  line-height: auto;
  font-weight: 400;
}
@media (min-width: 992px) {
  .titleKaushan {
    font-size: 50px;
  }
}

form:not(.searchform) {
  background: white;
  border-radius: var(--radius-s);
  box-shadow: var(--medium-shadow);
  padding: 30px;
  transition: 0.3s;
}
form:not(.searchform).done {
  opacity: 0.3;
}
form:not(.searchform) fieldset, form:not(.searchform) .login-username, form:not(.searchform) .login-password {
  display: flex;
  flex-direction: column;
  margin-bottom: 0;
}
form:not(.searchform) fieldset label, form:not(.searchform) .login-username label, form:not(.searchform) .login-password label {
  padding-left: 12px;
  margin-bottom: 8px;
  font-size: 14px;
}
form:not(.searchform) fieldset input, form:not(.searchform) fieldset select, form:not(.searchform) fieldset textarea, form:not(.searchform) .login-username input, form:not(.searchform) .login-username select, form:not(.searchform) .login-username textarea, form:not(.searchform) .login-password input, form:not(.searchform) .login-password select, form:not(.searchform) .login-password textarea {
  border-radius: var(--radius-xs);
  height: 48px;
  border: 1px solid var(--grey-color);
  margin-bottom: 24px;
  padding: 10px 12px;
}
form:not(.searchform) fieldset input:focus-visible, form:not(.searchform) fieldset select:focus-visible, form:not(.searchform) fieldset textarea:focus-visible, form:not(.searchform) .login-username input:focus-visible, form:not(.searchform) .login-username select:focus-visible, form:not(.searchform) .login-username textarea:focus-visible, form:not(.searchform) .login-password input:focus-visible, form:not(.searchform) .login-password select:focus-visible, form:not(.searchform) .login-password textarea:focus-visible {
  outline: 2px solid var(--main-color);
}
form:not(.searchform) fieldset textarea, form:not(.searchform) .login-username textarea, form:not(.searchform) .login-password textarea {
  height: unset;
}
form:not(.searchform) fieldset input[type=submit], form:not(.searchform) .login-username input[type=submit], form:not(.searchform) .login-password input[type=submit] {
  border: unset;
  margin-top: 25px;
}
form:not(.searchform) fieldset input[type=checkbox], form:not(.searchform) fieldset input[type=radio], form:not(.searchform) .login-username input[type=checkbox], form:not(.searchform) .login-username input[type=radio], form:not(.searchform) .login-password input[type=checkbox], form:not(.searchform) .login-password input[type=radio] {
  height: 0;
  width: 0;
  opacity: 0;
  position: absolute;
}
form:not(.searchform) fieldset input[type=checkbox] + label, form:not(.searchform) fieldset input[type=radio] + label, form:not(.searchform) .login-username input[type=checkbox] + label, form:not(.searchform) .login-username input[type=radio] + label, form:not(.searchform) .login-password input[type=checkbox] + label, form:not(.searchform) .login-password input[type=radio] + label {
  display: flex;
  flex-direction: row;
  padding-left: 0;
  cursor: pointer;
  font-size: 12px;
}
form:not(.searchform) fieldset input[type=checkbox] + label > span, form:not(.searchform) fieldset input[type=radio] + label > span, form:not(.searchform) .login-username input[type=checkbox] + label > span, form:not(.searchform) .login-username input[type=radio] + label > span, form:not(.searchform) .login-password input[type=checkbox] + label > span, form:not(.searchform) .login-password input[type=radio] + label > span {
  display: flex;
  margin-right: 1em;
  min-width: 24px;
  width: 24px;
  height: 24px;
  margin-top: 1px;
  background: transparent;
  border: 1px solid var(--grey-color);
  border-radius: 6px;
  cursor: pointer;
}
form:not(.searchform) fieldset input[type=checkbox]:checked + label > span, form:not(.searchform) fieldset input[type=radio]:checked + label > span, form:not(.searchform) .login-username input[type=checkbox]:checked + label > span, form:not(.searchform) .login-username input[type=radio]:checked + label > span, form:not(.searchform) .login-password input[type=checkbox]:checked + label > span, form:not(.searchform) .login-password input[type=radio]:checked + label > span {
  content: url(../../assets/img/acceptance-checked.svg);
  border: unset;
}
form:not(.searchform) fieldset input[type=radio] + label, form:not(.searchform) .login-username input[type=radio] + label, form:not(.searchform) .login-password input[type=radio] + label {
  font-size: 14px;
  line-height: 22px;
}
@media (min-width: 992px) {
  form:not(.searchform) {
    padding: 64px;
  }
}

#form_done, #form_fail {
  display: none;
  padding: 15px;
}
#form_done.show, #form_fail.show {
  display: flex;
  position: absolute;
  transform: translate(-50%, -50%);
  top: 50%;
  left: 50%;
  background: var(--main-color-light);
  height: 50%;
  width: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 25px;
}

:root {
  --regular-spacing: 25px;
  --section-spacing: 35px;
  --section-content-spacing: 20px;
}
@media (min-width: 992px) {
  :root {
    --regular-spacing: 32px;
    --section-spacing: 85px;
    --section-content-spacing: 85px;
  }
}

:root {
  --medium-shadow: 0 6px 32px rgba(0, 4, 16 ,.08);
}

.medium-shadow {
  box-shadow: var(--medium-shadow);
}

:root {
  --radius-xs: 10px;
  --radius-s: 16px;
  --radius-l: 28px;
  --radius-xl: 35px;
}
@media (min-width: 992px) {
  :root {
    --radius-xl: 80px;
  }
}

.title-deco {
  position: relative;
}
.title-deco svg {
  position: absolute;
  width: 120px;
  height: auto;
  top: -100px;
  right: -40px;
}
@media (min-width: 992px) {
  .title-deco svg {
    top: -180px;
    transform: translateX(50%);
    right: calc(50% - 240px);
    width: 260px;
  }
}

.is-style-deco1 {
  position: relative;
}
.is-style-deco1::before {
  content: "";
  position: absolute;
  width: 90px;
  height: 86px;
  top: -80px;
  left: -80px;
  display: block;
  background-color: var(--main-color);
  -webkit-mask: no-repeat center/contain url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="229" height="219" viewBox="0 0 229 219"><path d="M183.535 219L-0.000976562 149.795L18.4503 58.7197L175.616 189.268L183.535 219Z"/><path d="M224.627 178.005L109.986 62.5152L155.652 0L229 152.795L224.627 178.005Z"/></svg>');
  mask: no-repeat center/contain url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="229" height="219" viewBox="0 0 229 219"><path d="M183.535 219L-0.000976562 149.795L18.4503 58.7197L175.616 189.268L183.535 219Z"/><path d="M224.627 178.005L109.986 62.5152L155.652 0L229 152.795L224.627 178.005Z"/></svg>');
}
@media (min-width: 992px) {
  .is-style-deco1::before {
    top: -180px;
    left: -180px;
    width: 180px;
    height: 172px;
  }
}

.trigger {
  z-index: 2;
  border-radius: 10px;
  display: flex;
  height: 48px;
  width: 48px;
  border-radius: 100px;
  border: 1px solid var(--grey-color);
  display: flex;
  margin-left: auto;
  margin-top: 14px;
  margin-right: 18px;
  cursor: pointer;
}
.trigger #burger {
  margin: auto;
}
.trigger #burger svg {
  width: 24px;
  height: 24px;
}
.trigger #burger svg.open {
  display: none;
}
.trigger #burger.active svg.open {
  display: block;
}
.trigger #burger.active svg.closed {
  display: none;
}

header {
  background: white;
  display: flex;
  position: fixed;
  z-index: 1000;
  top: 0;
  width: 100vw;
  height: 76px;
}
header .logo {
  height: 76px;
  display: block;
  padding: 10px 0;
  width: auto;
}
header .logo img {
  max-height: 100%;
  width: auto;
  margin-left: 31px;
}
header #main_nav {
  overflow: scroll;
  position: fixed;
  width: 100vw;
  height: calc(100dvh - 70px);
  top: 76px;
  left: -100vw;
  background: white;
  display: flex;
  transition: all 0.6s ease;
  opacity: 0;
  flex-direction: column;
}
header #main_nav.open {
  opacity: 1;
  left: 0;
}
header #main_nav ul {
  padding-top: 25px;
  padding-right: 2rem;
  width: 100%;
}
header #main_nav ul li {
  list-style-type: none;
  margin: 25px 0 0;
  padding: 0;
  position: relative;
}
header #main_nav ul li:not(:last-child)::after {
  content: "";
  width: 100%;
  background: var(--grey-color);
  height: 1px;
  margin: 20px auto 0;
  display: block;
}
header #main_nav ul li.menu-item-has-children > a {
  position: relative;
}
header #main_nav ul li.menu-item-has-children > a::before {
  content: url(../../assets/img/arrow.svg);
  display: block;
  position: absolute;
  top: calc(50% - 3px);
  right: 0;
  transform: translateY(-50%);
}
header #main_nav ul li a {
  cursor: pointer;
  color: black;
  text-decoration: none;
  font-weight: 700;
  font-size: 20px;
  display: block;
  transition: 0.5s;
  padding-right: 35px;
}
header #main_nav ul .sub-menu {
  padding-left: 10px;
  padding-top: 0;
  margin-top: 10px;
  border-left: 1px solid var(--grey-color);
  max-height: 0px;
  overflow: hidden;
  transition: 0.4s;
}
header #main_nav ul .sub-menu.open {
  max-height: 250px;
}
header #main_nav ul .sub-menu li {
  margin-top: 10px;
  margin-bottom: 10px;
  padding-top: 2px;
  padding-bottom: 2px;
}
header #main_nav ul .sub-menu li::after {
  margin-top: 12px;
  display: none;
}
header #main_nav ul .sub-menu li a {
  font-weight: 400;
  font-size: 18px;
  line-height: 22px;
}
header #main_nav .search-button img {
  margin: auto;
}
header #main_nav .wp-block-button {
  padding-left: 2rem;
  padding-right: 2rem;
  margin-bottom: 2rem;
}
header #main_nav .wp-block-button a {
  background: white;
  color: black;
  border: 1px solid var(--grey-color);
}
header #main_nav .wp-block-button a.logout img {
  margin-top: -2px;
  margin-bottom: 2px;
}
@media (width >= 992px) {
  header {
    transition: 0.3s;
    height: 76px;
  }
  header .logo {
    height: 76px;
  }
  header .logo:not(.small-logo) {
    height: auto;
    background: white;
    display: flex;
    box-shadow: var(--medium-shadow);
  }
  header .logo:not(.small-logo) img {
    width: auto;
    height: auto;
    max-height: 300px;
    margin: auto;
    transition: 0.5s;
  }
  header .logo:not(.small-logo).scrolled {
    box-shadow: unset;
  }
  header .logo:not(.small-logo).scrolled img {
    max-height: 56px;
  }
  header #main_nav {
    width: 100%;
    position: relative;
    top: unset;
    left: unset;
    height: 76px;
    max-height: 76px;
    opacity: 1;
    transition: 0.3s;
    flex-direction: row;
    overflow: visible;
    background: unset;
  }
  header #main_nav div:first-child {
    width: 100%;
  }
  header #main_nav ul {
    transition: 0.3s;
    height: 76px;
    max-height: 76px;
    padding-top: 0;
    margin-top: 0;
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: center;
    gap: 25px;
    padding-left: 0;
    padding-right: 10px;
  }
  header #main_nav ul li {
    margin-top: 0;
  }
  header #main_nav ul li::after {
    display: none !important;
  }
  header #main_nav ul li::before {
    display: none;
  }
  header #main_nav ul li a {
    height: 76px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 16px;
    font-weight: 600;
    padding: 0;
    position: relative;
  }
  header #main_nav ul li a::after {
    position: absolute;
    content: "";
    width: 0;
    height: 2px;
    background: var(--main-color);
    left: 0;
    bottom: 0;
    transition: all 0.6s ease;
  }
  header #main_nav ul li a:hover::after, header #main_nav ul li a.active::after {
    width: 100%;
  }
  header #main_nav ul li.menu-item-has-children:hover .sub-menu {
    max-height: 350px;
  }
  header #main_nav ul li.menu-item-has-children > a {
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
  }
  header #main_nav ul li.menu-item-has-children > a::before {
    top: unset;
    transform: scale(0.8) rotate(90deg);
    position: relative;
    margin-top: 4px;
  }
  header #main_nav ul .sub-menu {
    position: absolute;
    margin-top: 0;
    border-left: unset;
    padding-right: 15px;
    left: -30px;
    width: calc(100% + 60px);
    height: auto;
    padding-bottom: 10px;
    display: block;
    width: max-content;
  }
  header #main_nav ul .sub-menu:hover {
    max-height: 350px;
  }
  header #main_nav ul .sub-menu::before {
    border-radius: 0 0 16px 16px;
    filter: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.107));
    content: "";
    position: absolute;
    left: 15px;
    top: -1px;
    height: calc(100% - 10px);
    width: calc(100% - 30px);
    background: white;
  }
  header #main_nav ul .sub-menu li {
    margin-top: 15px;
    margin-bottom: 15px;
    padding-left: 15px;
    padding-right: 15px;
  }
  header #main_nav ul .sub-menu li a {
    height: auto;
    font-size: 15px;
  }
  header #main_nav ul .sub-menu li a::after {
    bottom: -6px;
  }
  header #main_nav .search-button {
    margin-right: 16px;
    min-width: 50px;
    height: 50px;
    padding: 0;
    display: flex;
    margin-top: auto;
    margin-bottom: auto;
  }
  header #main_nav a {
    width: max-content;
    padding-top: 10px;
    padding-bottom: 10px;
    font-weight: 600;
  }
  header #main_nav a.logout {
    display: flex;
  }
  header #main_nav a.logout img {
    margin: 0 5px 0 0;
  }
  header #main_nav .wp-block-button {
    margin: auto;
    padding: 0;
    display: flex;
  }
  header #main_nav .wp-block-button .account-buttons > .wp-block-button__link {
    height: 50px;
  }
  header #main_nav .account-buttons {
    position: relative;
  }
  header #main_nav .account-buttons a:hover {
    transform: unset;
  }
  header #main_nav .account-buttons a.information {
    display: flex;
    align-items: center;
  }
  header #main_nav .account-buttons a.information img {
    margin-right: 8px;
  }
  header #main_nav .account-buttons a.information::after {
    content: url(../../assets/img/arrow.svg);
    display: block;
    transform: rotate(90deg);
    margin-left: 8px;
  }
  header #main_nav .account-buttons .account-buttons-children {
    position: absolute;
    border-radius: 16px;
    padding: 0 10px;
    top: 100%;
    left: -5px;
    max-height: 0px;
    overflow: hidden;
    transition: 0.5s;
    opacity: 0;
    min-width: calc(100% + 10px);
  }
  header #main_nav .account-buttons .account-buttons-children::before {
    z-index: 0;
    content: "";
    position: absolute;
    background: white;
    filter: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.25));
    border-radius: 16px;
    top: 15px;
    left: 5px;
    width: calc(100% - 10px);
    height: calc(100% - 26px);
    bottom: 0;
  }
  header #main_nav .account-buttons .account-buttons-children .wp-block-button {
    z-index: 1;
    position: relative;
    width: calc(100% - 10px);
  }
  header #main_nav .account-buttons .account-buttons-children .wp-block-button:first-child {
    margin-top: 25px;
  }
  header #main_nav .account-buttons .account-buttons-children .wp-block-button:last-child {
    margin-top: 10px;
    margin-bottom: 10px;
  }
  header #main_nav .account-buttons .account-buttons-children a {
    margin-left: 0;
    border-radius: 8px;
    border: unset;
    padding-left: 5px;
    width: 100%;
    text-align: left;
    display: flex;
    padding-right: 4px;
    font-weight: 400;
    width: 100%;
    max-width: unset;
  }
  header #main_nav .account-buttons .account-buttons-children a:hover {
    transform: unset;
    background: var(--light-grey-color);
  }
  header #main_nav .account-buttons .account-buttons-children a img {
    margin-right: 10px;
  }
  header #main_nav .account-buttons:hover .account-buttons-children {
    max-height: 250px;
    opacity: 1;
    height: 135px;
  }
  header.scrolled {
    max-height: 100px;
  }
  header.scrolled a.logo, header.scrolled .logo_cse_container {
    max-height: 100px;
  }
  header.scrolled a.logo img, header.scrolled .logo_cse_container img {
    transform: scale(1);
  }
  header.scrolled #main_nav {
    max-height: 100px;
  }
  header.scrolled #main_nav ul {
    max-height: 100px;
  }
}
@media (width >= 1140px) {
  header #main_nav {
    width: 100%;
  }
}
@media (width >= 1200px) {
  header #main_nav .account-buttons .account-buttons-children {
    min-width: calc(100% + 30px);
  }
  header #main_nav ul li a br {
    display: none;
  }
  header #main_nav ul li a.two_lines::after {
    bottom: 0px;
  }
}

footer {
  background: white;
  filter: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.25));
  padding: 70px 30px;
  margin-top: 40px;
}
footer .container {
  position: relative;
}
footer .backToTop {
  position: absolute;
  transform: translate(50%, -50%);
  top: -70px;
  cursor: pointer;
  right: 0;
}
footer .logo-footer {
  max-width: 185px;
  width: 100%;
  margin: auto;
}
footer .footer-menu ul {
  margin-top: 25px;
}
footer .footer-menu ul li {
  list-style-type: none;
  display: flex;
  justify-content: center;
}
footer .footer-menu ul li a {
  font-size: 16px;
  font-weight: 700;
  line-height: 20px;
  text-decoration: none;
  color: black;
  position: relative;
}
footer .footer-menu ul li a::after {
  position: absolute;
  content: "";
  width: 0;
  height: 2px;
  background: var(--main-color);
  left: 0;
  bottom: 0;
  transition: all 0.6s ease;
}
footer .footer-menu ul li a:hover::after, footer .footer-menu ul li a.active::after {
  width: 100%;
}
footer .footer-menu ul li a {
  padding-bottom: 5px;
  margin-bottom: 5px;
  display: block;
  width: max-content;
}
footer .footer-menu ul li ul.sub-menu {
  display: none;
}
@media (min-width: 992px) {
  footer {
    margin-top: 75px;
  }
  footer .backToTop {
    transform: translateY(-50%);
  }
  footer .cseName {
    text-align: left;
  }
  footer .footer-menu ul {
    margin: auto 0;
  }
  footer .footer-menu ul li {
    justify-content: flex-start;
  }
}

.search-head {
  background: var(--main-color-light);
  border-radius: 80px;
  padding: 100px 1.5rem;
  width: calc(100% - 1.5rem);
  border-radius: var(--radius-l);
  margin-bottom: var(--section-spacing);
}
@media (min-width: 992px) {
  .search-head {
    margin-top: 40px;
    border-radius: 80px;
    padding: 80px 1.5rem;
    width: calc(100% - 3rem);
    margin-bottom: calc(var(--section-spacing) * 0.6);
  }
}

.results-info {
  max-width: 950px;
  margin-left: auto;
  margin-right: auto;
}

.no-results {
  margin-top: -30px;
  margin-bottom: 75px;
}
.no-results svg {
  max-width: 160px;
  height: auto;
}
@media (min-width: 992px) {
  .no-results {
    margin-top: -50px;
  }
  .no-results svg {
    max-width: unset;
  }
}

#ceContainer {
  background: var(--main-color-light);
  border-radius: 40px;
  position: relative;
  margin-top: var(--section-spacing);
  padding-bottom: var(--section-spacing);
}
#ceContainer > .container {
  max-width: 1140px;
}
#ceContainer .quote {
  position: absolute;
  top: -70px;
  left: calc(50% - 150px);
}
#ceContainer .quote path {
  fill: var(--main-color);
}
#ceContainer .switchContainer__child {
  background: var(--white-color);
}
@media (min-width: 992px) {
  #ceContainer {
    margin-left: 25px;
    margin-right: 25px;
  }
  #ceContainer .quote {
    width: 193px;
    height: 240px;
    top: -100px;
  }
}
@media (min-width: 1140px) {
  #ceContainer {
    margin-left: 70px;
    margin-right: 70px;
  }
}
#ceContainer hr {
  border: unset;
  opacity: 1;
}

.eluContent {
  border-radius: 28px;
  position: relative;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  background: white;
  margin-top: 88px;
  padding-bottom: 16px;
  display: flex;
  flex-direction: column;
}
.eluContent .lightSepa {
  margin: 24px 0;
}
.eluContent .imgContainer {
  display: flex;
}
.eluContent .imgContainer img {
  margin: -88px auto 0;
  max-width: 196px;
  width: 196px;
  height: 196px;
  object-fit: cover;
  border-radius: 10000px;
}
.eluContent .txt * {
  color: black;
  text-align: center;
}
.eluContent .txt .nom {
  font-size: 18px;
  font-weight: bold;
}
.eluContent .txt a {
  color: black !important;
}
.eluContent .txt a:hover {
  text-decoration: underline !important;
}
.eluContent .bottom-part {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}

#pvContainer {
  background: var(--main-color-light);
  border-radius: 40px;
  position: relative;
  margin-top: var(--section-spacing);
  padding-bottom: var(--section-spacing);
  position: relative;
}
#pvContainer > .container {
  max-width: 1140px;
}
#pvContainer .quote {
  position: absolute;
  top: -70px;
  left: calc(50% - 150px);
}
#pvContainer .quote path {
  fill: var(--main-color);
}
#pvContainer hr {
  border: unset;
  opacity: 1;
}
#pvContainer .pvItem a {
  position: relative;
  box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
  background: #fff;
  padding: 24px;
  display: flex;
  flex-direction: column;
  border-radius: 20px;
  margin-bottom: 30px;
  transition: 0.3s;
  font-weight: bold;
  color: black;
  min-height: 162px;
  height: calc(100% - 30px);
  text-decoration: none;
}
#pvContainer .pvItem a .svg {
  margin-bottom: 8px;
}
#pvContainer .pvItem a .svg svg rect {
  fill: var(--main-color-op);
}
#pvContainer .pvItem a .svg svg path {
  fill: var(--main-color);
}
#pvContainer .pvItem a p.date {
  color: #666666;
  margin-bottom: 0;
  font-weight: 400;
}
#pvContainer .pvItem a .lightSepa {
  margin: 16px auto;
}
#pvContainer .pvItem a .see {
  margin: auto auto auto 0;
  padding-left: 10px;
  font-weight: 400;
}
#pvContainer .pvItem a .see img {
  padding-right: 10px;
}
@media (min-width: 992px) {
  #pvContainer {
    position: relative;
    margin-left: 25px;
    margin-right: 25px;
  }
  #pvContainer .quote {
    width: 193px;
    height: 240px;
    top: -100px;
  }
}
@media (min-width: 1140px) {
  #pvContainer {
    margin-left: 70px;
    margin-right: 70px;
  }
}

#events {
  border-radius: 40px;
  position: relative;
  padding-bottom: var(--section-spacing);
}
#events > .container {
  max-width: 1140px;
}
#events .quote {
  position: absolute;
  top: -30px;
  left: calc(50% - 150px);
}
#events .quote path {
  fill: var(--main-color);
}
#events hr {
  border: unset;
  opacity: 1;
}
@media (min-width: 992px) {
  #events {
    margin-left: 25px;
    margin-right: 25px;
  }
  #events .quote {
    width: 193px;
    height: 240px;
    top: -50px;
  }
}
@media (min-width: 1140px) {
  #events {
    margin-left: 70px;
    margin-right: 70px;
  }
}

#calendar {
  padding-bottom: var(--section-spacing);
}
#calendar h2 {
  font-size: 22px;
}
#calendar .fc-header-toolbar {
  justify-content: flex-start;
}
#calendar .fc-header-toolbar .fc-toolbar-chunk:first-child {
  margin-right: auto;
}
#calendar .fc-header-toolbar .fc-toolbar-chunk:last-child {
  margin-left: 15px;
}
#calendar .fc-header-toolbar .fc-toolbar-chunk:last-child button {
  padding: 2px 8px 4px 10px;
}
#calendar .fc-header-toolbar .fc-toolbar-chunk button {
  background: var(--main-color);
  border-color: var(--main-color);
  border-radius: 30px;
  padding: 2px 10px 4px 7px;
}
#calendar .fc-header-toolbar .fc-toolbar-chunk button span {
  color: black;
}
#calendar table {
  border: unset;
}
#calendar a {
  color: black;
  text-decoration: none;
}
#calendar th {
  border: unset;
}
#calendar td {
  border: unset;
  padding: 1px;
}
#calendar .fc-daygrid-day-frame, #calendar .fc-scrollgrid-sync-inner {
  border: 1px solid #e7e7e7;
  border-radius: 15px;
  display: flex;
  flex-direction: column;
}
#calendar .fc-daygrid-day-frame .fc-daygrid-day-top, #calendar .fc-scrollgrid-sync-inner .fc-daygrid-day-top {
  justify-content: center;
}
#calendar .fc-daygrid-day-frame a, #calendar .fc-scrollgrid-sync-inner a {
  text-align: center;
}
#calendar .fc-daygrid-day-frame a.fc-event, #calendar .fc-scrollgrid-sync-inner a.fc-event {
  border-radius: 30px;
}
#calendar .fc-h-event {
  background: var(--main-color);
  border-color: var(--main-color);
}
#calendar .fc-event-content {
  color: var(--snd-color);
  padding: 5px;
  white-space: pre-line;
  font-size: 12px;
}
#calendar .fc-event-content img {
  display: none;
}
@media (min-width: 992px) {
  #calendar {
    box-shadow: var(--medium-shadow);
    border-radius: 16px;
    padding: 26px 29px;
    margin-top: 50px;
  }
}

#ajaxResponseevenement h3 {
  margin-bottom: 25px;
  font-size: 1.2rem;
  margin-top: 50px;
}
#ajaxResponseevenement h3 br {
  display: none;
}
@media (min-width: 992px) {
  #ajaxResponseevenement h3 br {
    display: initial;
  }
}
#ajaxResponseevenement .singleEvent svg {
  margin-bottom: 8px;
}
#ajaxResponseevenement .singleEvent svg rect {
  fill: var(--main-color-op);
}
#ajaxResponseevenement .singleEvent svg path {
  fill: var(--main-color);
}
#ajaxResponseevenement .singleEvent .lightSepa {
  margin: 30px auto;
}
#ajaxResponseevenement .singleEvent .date {
  font-size: 16px;
  color: #666666;
}

#events {
  padding-bottom: var(--section-spacing);
  padding-top: var(--section-spacing);
}

#account-head {
  background: linear-gradient(270deg, color-mix(in srgb, var(--main-color) 60%, transparent) 0%, var(--main-color) 100%);
  height: 450px;
  margin-bottom: -225px;
  position: relative;
  z-index: -1;
}
#account-head .title-section {
  min-height: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}
#account-head img {
  position: absolute;
}
@media (min-width: 992px) {
  #account-head {
    height: 520px;
    margin-bottom: -260px;
  }
  #account-head img {
    right: 0;
    bottom: -80px;
  }
}

#account-form {
  max-width: 760px;
}

.nolog main#main {
  height: 100dvh;
  overflow: hidden;
  background: var(--main-color);
  padding-top: 0 !important;
}
.nolog .quote {
  position: absolute;
  top: 19px;
  right: 12px;
  width: 120px;
}
.nolog .bg {
  position: relative;
  max-height: 350px;
}
.nolog .bg::after {
  content: "";
  display: block;
  width: 100vw;
  height: 100%;
  position: absolute;
  left: 0;
  bottom: 0;
  background: linear-gradient(20deg, var(--main-color) 22%, rgba(254, 205, 22, 0) 60%);
}
.nolog .bg img {
  max-height: 350px;
  width: 100%;
  object-fit: cover;
}
.nolog .homeContent {
  position: absolute;
  top: 0;
  left: 0;
  height: 100dvh;
  z-index: 10;
  width: 100vw;
  padding-top: 270px;
  display: flex;
  flex-direction: column;
}
.nolog .homeContent::after {
  position: absolute;
  bottom: 0;
}
.nolog .homeContent p {
  font-size: 25px;
  margin-top: 20px;
}
.nolog .homeContent #loginPopupOpener {
  margin-top: auto;
  width: 100%;
}
.nolog .homeContent #loginPopupOpener a {
  width: calc(100% - 48px);
  margin: 24px;
  max-width: unset;
  justify-content: center;
}
.nolog .logo {
  display: block;
  margin: 0 auto;
}
@media (min-width: 450px) {
  .nolog .bg::after {
    background: linear-gradient(7deg, var(--main-color) 22%, rgba(254, 205, 22, 0) 60%);
  }
}
@media (min-width: 992px) {
  .nolog main#main {
    background: white;
  }
  .nolog main#main .bg {
    width: 60%;
    height: calc(100dvh - 90px);
    max-height: unset;
    margin-top: 45px;
    margin-bottom: 45px;
    margin-left: 45px !important;
    border-radius: 0 0 0 80px;
    overflow: hidden;
  }
  .nolog main#main .bg::after {
    background: linear-gradient(49deg, var(--main-color) 2%, rgba(254, 205, 22, 0) 50%);
  }
  .nolog main#main .bg img {
    max-height: unset;
    height: 100%;
    transform: scaleX(-1);
  }
  .nolog main#main .quote {
    filter: brightness(0) saturate(100%) invert(1);
    transform: scaleX(-2) scaleY(2);
    right: unset;
    top: 160px;
    left: 10%;
  }
}

#loginPopup {
  position: fixed;
  display: none;
  bottom: 0;
  left: 0;
  width: 100vw;
  padding: 24px;
  border-radius: var(--radius-s) var(--radius-s) 0 0;
  z-index: 10000;
  background: white;
}
#loginPopup.open {
  display: block;
}
#loginPopup p.title {
  font-size: 24px;
  font-weight: 600;
}
#loginPopup form {
  box-shadow: unset;
  padding: 0;
}
#loginPopup form input {
  width: 100%;
}
#loginPopup form label {
  padding-left: 10px;
}
#loginPopup form .login-submit {
  margin-top: 20px;
}
#loginPopup form .login-submit input {
  background: var(--main-color);
  color: black;
  width: 100%;
  border-radius: 100px;
  border: unset;
  transition: all 0.5s;
  height: 40px;
  font-weight: 500;
}
@media (min-width: 992px) {
  #loginPopup {
    border-radius: var(--radius-s);
    display: block;
    position: absolute;
    box-shadow: var(--medium-shadow);
    width: 35%;
    transform: translate(-50%, -50%);
    top: 50%;
    right: 0;
    left: unset;
    height: max-content;
    padding: 52px 52px 32px 52px;
  }
  #loginPopup .homeContentPopup .logo {
    height: 100px;
    width: auto;
    margin-bottom: 25px;
  }
  #loginPopup .homeContentPopup p.intro {
    font-size: 24px;
    font-weight: 200;
    line-height: 24px;
  }
  #loginPopup .homeContentPopup .sepa {
    margin-top: 25px;
    margin-bottom: 20px;
    height: 1px;
    width: 100%;
    background: var(--grey-color);
  }
  #loginPopup p.title {
    font-weight: 400;
    margin: 25px 0 15px;
  }
}
@media (min-width: 1200px) {
  #loginPopup {
    padding: 72px 72px 52px 72px;
  }
}

body #popupopen {
  content: "";
  display: block;
  height: 100dvh;
  width: 100vw;
  position: fixed;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.3019607843);
  z-index: -1;
  opacity: 0;
  transition: opacity 0.5s;
}
body #popupopen.visible {
  z-index: 100;
  opacity: 1;
}

.simple-link {
  text-decoration: none;
  color: black;
}

.essentiel .slider-container .tns-slider .slider-item .txt a.wp-block-button__link {
  margin-left: auto !important;
  margin-right: auto !important;
}
.essentiel #reassu .single_reassu {
  border-radius: var(--radius-l);
  overflow: hidden;
  position: relative;
  margin-bottom: var(--bs-gutter-x);
}
.essentiel #reassu .single_reassu a {
  display: block;
  position: relative;
  z-index: 10;
}
.essentiel #reassu .single_reassu a::after {
  z-index: 1;
  content: "";
  display: block;
  height: 100%;
  width: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background: linear-gradient(0deg, rgb(0, 0, 0) 0%, rgba(0, 0, 0, 0) 100%);
}
.essentiel #reassu .single_reassu a:hover .imgContainer img {
  transform: scale(1.1);
}
.essentiel #reassu .single_reassu a .imgContainer img {
  transition: transform 0.5s;
  object-fit: cover;
  height: 100%;
  width: 100%;
  object-position: center;
}
.essentiel #reassu .single_reassu a .text {
  position: absolute;
  bottom: 0;
  width: 100%;
  z-index: 100;
}
.essentiel #reassu .single_reassu a .text p {
  text-align: center;
  color: white;
}
.essentiel #reassu .single_reassu a .text .arrow {
  z-index: 0;
  display: flex;
  width: 48px;
  height: 48px;
  border-radius: 150px;
  background-color: var(--main-color);
  transition: transform 0.5s;
  margin: auto auto 32px;
}
.essentiel #reassu .single_reassu a .text .arrow img {
  display: block;
  margin: auto;
}
.essentiel #reassubis .single_reassu_bis {
  width: calc(360px - 1.5rem);
  margin-top: 120px;
  box-shadow: var(--medium-shadow);
  border-radius: var(--radius-l);
}
.essentiel #reassubis .single_reassu_bis a {
  text-decoration: none;
  color: black;
}
.essentiel #reassubis .single_reassu_bis a .imContainer {
  aspect-ratio: 1/1;
  width: 50%;
  margin: auto;
  margin-bottom: -50px;
}
.essentiel #reassubis .single_reassu_bis a .imContainer img {
  border-radius: 150px;
  margin: -50% auto 0;
}
@media (min-width: 992px) {
  .essentiel #reassubis .single_reassu_bis {
    padding-left: 16px;
    padding-right: 16px;
  }
}
.essentiel #presta .single-presta {
  overflow: hidden;
  border-radius: var(--radius-l);
}
.essentiel #presta .single-presta .img-container img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  max-height: 385px;
}
.essentiel #presta .single-presta .txt {
  background: var(--main-color-transparent);
  padding: 35px;
}
.essentiel #presta .single-presta .txt .dashicons {
  color: var(--main-color);
  font-size: 40px;
  height: auto;
  display: block;
  line-height: 1;
  margin-bottom: var(--regular-spacing);
}
.essentiel #presta .single-presta .txt svg {
  display: block;
  margin-bottom: var(--regular-spacing);
  max-width: 50px;
  height: auto;
}
.essentiel #presta .single-presta .txt svg path {
  fill: var(--main-color);
}
.essentiel #presta .single-presta .txt h2 {
  margin-bottom: 16px;
}
.essentiel #presta .single-presta .txt .wp-block-button {
  margin-top: var(--regular-spacing);
}
@media (min-width: 992px) {
  .essentiel #presta .single-presta {
    margin-bottom: 72px !important;
    overflow: visible;
  }
  .essentiel #presta .single-presta .img-container {
    position: relative;
  }
  .essentiel #presta .single-presta .img-container img {
    max-height: unset;
    width: 45vw;
    max-width: unset;
    position: absolute;
  }
  .essentiel #presta .single-presta .txt {
    height: 100%;
    padding: 45px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: relative;
    background: unset;
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .essentiel #presta .single-presta .txt::before {
    content: "";
    display: block;
    background: var(--main-color-transparent);
    position: absolute;
    height: 100%;
    width: 45vw;
    top: 0;
    z-index: -1;
  }
  .essentiel #presta .single-presta.reverse .txt {
    padding-right: 18%;
  }
  .essentiel #presta .single-presta.reverse .txt::before {
    right: 0;
    border-radius: var(--radius-l) 0 0 var(--radius-l);
  }
  .essentiel #presta .single-presta.reverse .img-container img {
    border-radius: 0 var(--radius-l) var(--radius-l) 0;
    left: 0;
  }
  .essentiel #presta .single-presta:not(.reverse) .txt {
    padding-left: 18%;
  }
  .essentiel #presta .single-presta:not(.reverse) .txt::before {
    left: 0;
    border-radius: 0 var(--radius-l) var(--radius-l) 0;
  }
  .essentiel #presta .single-presta:not(.reverse) .img-container img {
    right: 0;
    border-radius: var(--radius-l) 0 0 var(--radius-l);
  }
}

.wp-block-button .wp-block-button__link {
  display: flex;
  text-align: center;
  max-width: max-content;
  padding: 14px 16px;
  margin: auto;
  transition: transform 0.5s;
  gap: 8px;
  font-size: 16px;
  font-weight: 700;
  line-height: 20px;
  color: black;
}
.wp-block-button .wp-block-button__link:hover {
  transform: scale(1.1);
}
.wp-block-button .wp-block-button.has-custom-width {
  min-width: max-content !important;
  display: flex;
}
.wp-block-button .wp-block-button.has-custom-width a {
  margin: auto;
  display: block;
}
.wp-block-button:not(.is-style-outline) .wp-block-button__link {
  background: var(--main-color);
}

.wp-block-button.is-style-outline.is-style-outline--1 .wp-block-button__link {
  border: 1px solid;
}
.wp-block-button.is-style-outline.is-style-outline--1 .wp-block-button__link:not(.has-background) {
  background-color: initial;
}

.card-item.nouveau {
  position: relative;
}
.card-item.nouveau::before {
  content: "Nouveau !";
  position: absolute;
  font-size: 16px;
  color: #EF8F11;
  background: #FFF0DB;
  border-radius: 100px;
  padding: 4px 12px;
  top: 36px;
  left: 44px;
}
.card-item .card-item-content {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  border-radius: var(--radius-l);
  min-height: 543px;
  position: relative;
  overflow: hidden;
  padding: 32px;
}
.card-item .card-item-content .thumbnail {
  z-index: -2;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  object-fit: cover;
}
.card-item .card-item-content::before {
  content: "";
  display: block;
  height: 100%;
  width: 100%;
  background: #000000;
  background: linear-gradient(0deg, rgb(0, 0, 0) 0%, rgba(0, 0, 0, 0) 100%);
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
.card-item .card-item-content .txt-container a {
  color: white;
  text-decoration: none;
}
.card-item .card-item-content .txt-container a:hover .arrow {
  transform: translateX(10px);
}
.card-item .card-item-content .arrow {
  display: flex;
  height: 48px;
  width: 48px;
  background: var(--main-color);
  align-item: center;
  justify-content: center;
  border-radius: 150px;
  margin-top: 32px;
  transition: transform 0.4s;
}
.card-item .card-item-content .more-links a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
  padding: 10px 0;
}
.card-item .card-item-content .more-links a svg {
  min-width: 20px;
  margin-left: 10px;
  transition: transform 0.4s;
}
.card-item .card-item-content .more-links a:not(:last-child) {
  margin-bottom: 16px;
}
.card-item .card-item-content .more-links a:not(:last-child)::after {
  content: "";
  width: 100%;
  height: 1px;
  display: block;
  background: rgba(255, 255, 255, 0.3);
  position: absolute;
  left: 0;
  bottom: -8px;
}
.card-item .card-item-content .more-links a.no-border {
  margin-bottom: 0;
}
.card-item .card-item-content .more-links a.no-border::after {
  display: none;
}
.card-item .card-item-content .more-links a:hover svg {
  transform: translateX(10px);
}
@media (min-width: 992px) {
  .card-item.big .txt-container > .more-links {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .card-item.big .txt-container > .more-links a {
    width: 47%;
  }
}
.card-item.search-item {
  border-radius: var(--radius-l);
  max-width: 950px;
  margin-bottom: 32px;
  margin-left: auto;
  margin-right: auto;
}
.card-item.search-item .card-item-content {
  min-height: unset;
  padding: 12px;
}
.card-item.search-item .card-item-content::before {
  display: none;
}
.card-item.search-item .card-item-content .thumbnail {
  position: relative;
  border-radius: var(--radius-s);
}
.card-item.search-item .card-item-content .txt * {
  color: black;
}
.card-item.search-item .card-item-content .txt .title, .card-item.search-item .card-item-content .txt .wp-block-button__link {
  margin-top: 32px;
}
.card-item.search-item .card-item-content .txt .wp-block-button__link {
  margin-bottom: 16px;
}
@media (min-width: 768px) {
  .card-item.search-item .card-item-content {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
  }
  .card-item.search-item .card-item-content .thumbnail {
    max-width: 346px;
    height: auto;
    object-fit: cover;
  }
  .card-item.search-item .card-item-content .txt {
    padding-left: 48px;
  }
}
.card-item.post-item {
  border-radius: var(--radius-l);
  min-height: calc(100% - 1.5rem);
  display: flex;
}
.card-item.post-item .card-item-content {
  min-height: calc(100% - 1.5rem);
  overflow: visible;
  padding: 16px;
  display: flex;
  justify-content: flex-start;
}
.card-item.post-item .card-item-content::before {
  display: none;
}
.card-item.post-item .card-item-content a {
  text-decoration: none;
  position: relative;
  height: 100%;
}
.card-item.post-item .card-item-content a:hover .imgContainer img {
  transform: scale(1.1);
}
.card-item.post-item .card-item-content a .imgContainer {
  border-radius: var(--radius-s);
  overflow: hidden;
}
.card-item.post-item .card-item-content a .imgContainer img {
  position: relative;
  height: 220px;
  width: 100%;
  object-fit: cover;
  transition: transform 0.5s;
}
.card-item.post-item .card-item-content a .txt {
  padding: 16px;
}
.card-item.post-item .card-item-content a .txt p {
  color: black;
}
.card-item.post-item .card-item-content a .arrow {
  position: absolute;
  transform: translate(-50%, -50%);
  bottom: -64px;
  left: 50%;
}

.lightSepa {
  background: var(--grey-color);
  display: block;
  height: 1px !important;
  width: 100%;
  margin: 24px auto;
}
@media (min-width: 992px) {
  .lightSepa {
    margin: 32px auto;
  }
}

.regularSepa {
  background: var(--grey-color);
  display: block;
  height: 5px !important;
  width: 100px;
  margin: 30px auto;
}
@media (min-width: 992px) {
  .regularSepa {
    margin: 50px auto;
  }
}

.tns-outer {
  width: calc(100% - 1.5rem);
  margin-right: 0.75rem !important;
  margin-left: 0.75rem !important;
  border-radius: 0 0 28px 28px;
  overflow: hidden;
}
.tns-outer .tns-nav {
  transform: unset;
  left: 16px;
  bottom: 16px;
}
.tns-outer .tns-nav button {
  background: var(--light-grey-color);
}
.tns-outer .tns-nav button.tns-nav-active {
  background: var(--main-color);
  transform: unset;
}
.tns-outer .tns-controls {
  display: initial;
  position: absolute;
  bottom: 16px;
  z-index: 10;
  right: 16px;
}
.tns-outer .tns-controls button[data-controls=prev] {
  display: none;
}
.tns-outer .tns-controls button[data-controls=next] {
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  background: unset;
  border: unset;
  color: white;
  display: flex;
  align-items: center;
  font-size: 16px;
  font-weight: 700;
  line-height: 20px;
}
.tns-outer .tns-controls button[data-controls=next]::before {
  content: url(../../assets/img/slider-arrow.svg);
  margin-right: 10px;
  margin-bottom: -6px;
}
.tns-outer .slider-item .img {
  position: relative;
}
.tns-outer .slider-item .img::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  height: 100%;
  width: 100%;
  background: rgba(0, 0, 0, 0.5);
}
.tns-outer .slider-item .txt {
  background: unset;
  margin-bottom: 35px;
}
.tns-outer .slider-item .txt p {
  color: white;
}
.tns-outer .slider-item .txt .wp-block-button__link {
  width: max-content;
}
@media (min-width: 992px) {
  .tns-outer {
    width: calc(100% - 3rem);
    border-radius: var(--radius-l);
    max-width: 1776px;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  .tns-outer .tns-nav {
    position: relative;
    width: 49%;
    display: flex;
    justify-content: flex-end;
    margin-top: -30px;
  }
  .tns-outer .tns-nav button {
    width: 16px;
    height: 16px;
  }
  .tns-outer .tns-controls {
    position: relative;
    width: 45%;
    margin-left: auto;
    display: flex;
    margin-top: -27px;
    margin-bottom: 3px;
  }
  .tns-outer .slider-item {
    height: 593px;
  }
  .tns-outer .slider-item .img {
    width: 100%;
    height: 100%;
  }
  .tns-outer .slider-item .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .tns-outer .slider-item .txt {
    margin-bottom: 0;
    height: 100%;
    justify-content: center;
    display: flex;
    flex-direction: column;
  }
  .tns-outer .slider-item .txt p {
    text-align: left;
  }
  .tns-outer .slider-item .txt .regularSepa {
    margin: 30px auto;
  }
}

@media (min-width: 992px) {
  .slider-container {
    margin-bottom: 20px;
  }
}
.essentiel .tns-outer {
  width: 100%;
  margin: 0 !important;
  border-radius: unset;
}
.essentiel .tns-outer .slider-item .img {
  height: 75dvh;
}
.essentiel .tns-outer .slider-item .img::after {
  background: linear-gradient(0deg, rgba(2, 2, 28, 0.7) 0%, rgba(2, 2, 28, 0.6) 50%, rgba(2, 2, 28, 0.6) 50%, rgba(0, 0, 0, 0) 97%);
}
.essentiel .tns-outer .searchform {
  padding: 0;
  background: unset;
  max-width: 300px;
  margin: 18px auto;
  box-shadow: unset;
}
.essentiel .tns-outer .searchform::before {
  content: url(../../assets/img/loupe-w.svg);
}
.essentiel .tns-outer .searchform input {
  background: unset;
  color: white;
  border-color: white;
}
.essentiel .tns-outer .searchform input:focus-visible {
  outline: none;
}
.essentiel .tns-outer .searchform input::placeholder {
  color: white;
}
.essentiel .tns-outer .searchform .false-button img {
  filter: invert(1);
}
@media (min-width: 992px) {
  .essentiel .tns-outer .slider-item .txt p {
    text-align: center;
  }
  .essentiel .tns-outer .slider-item .txt .regularSepa {
    margin-left: auto !important;
    max-width: auto !important;
  }
  .essentiel .tns-outer .slider-item .img::after {
    background: rgba(2, 2, 28, 0.5);
  }
  .essentiel .tns-outer .searchform {
    margin: 32px auto;
  }
  .essentiel .tns-outer .tns-nav {
    margin-top: -60px;
    margin-bottom: 40px;
    width: 100%;
    justify-content: center;
    left: 0;
  }
  .essentiel .tns-outer .tns-controls {
    display: none;
  }
}

.popup {
  position: fixed;
  height: 100dvh;
  width: 100vw;
  background: rgba(0, 0, 0, 0.4431372549);
  z-index: 100000000000;
  top: 0;
  left: 0;
}
.popup:not(.open) {
  display: none;
}
.popup .popupContainer {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
}
.popup .popupContainer .popupBg {
  border-radius: 80px;
  background: var(--main-color-light);
  width: 90vw;
  height: 80dvh;
  max-width: 1200px;
  min-height: 305px;
  padding: 40px;
  position: relative;
}
.popup .popupContainer .popupBg .closePopup {
  position: absolute;
  top: 50px;
  right: 50px;
  cursor: pointer;
}
.popup .contentPopup {
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.searchform {
  position: relative;
  width: 100%;
  max-width: 558px;
}
@media (min-width: 992px) {
  .searchform {
    margin-top: 14px;
    margin-left: 10px;
  }
}
.searchform::before {
  content: url(../../assets/img/loupe.svg);
  position: absolute;
  top: 12px;
  left: 12px;
  z-index: 1;
}
.searchform .s {
  height: 48px;
  border-radius: 8px;
  background: white;
  border: 1px solid var(--grey-color);
  position: relative;
  padding-left: 42px;
  color: black;
  margin: 0;
  padding-top: 2px;
  max-width: calc(100% - 4rem);
}
@media (min-width: 992px) {
  .searchform .s {
    max-width: calc(100% - 56px);
    width: 100%;
  }
}
.searchform .submitsearchform {
  width: 48px;
  height: 48px;
  border-radius: 150px;
  border: unset;
  margin-left: 5px;
  opacity: 0;
  z-index: 10;
  position: absolute;
}
.searchform .submitsearchform:hover + div {
  transform: translateX(5px);
}
.searchform .false-button {
  z-index: 0;
  display: flex;
  width: 48px;
  height: 48px;
  border-radius: 150px;
  background-color: var(--main-color);
  position: absolute;
  top: 0;
  right: 0;
  transition: transform 0.5s;
}
.searchform .false-button img {
  display: block;
  margin: auto;
}

.wp-block-heading {
  font-size: 30px;
  line-height: 39px;
  font-weight: 800;
  margin-bottom: 1rem;
}
@media (min-width: 992px) {
  .wp-block-heading {
    font-size: 35px;
    line-height: 41px;
  }
}
.wp-block-heading {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}

.is-style-heading1 {
  font-size: 30px;
  line-height: 39px;
  font-weight: 800;
  margin-bottom: 1rem;
}
@media (min-width: 992px) {
  .is-style-heading1 {
    font-size: 35px;
    line-height: 41px;
  }
}

.is-style-heading2 {
  font-size: 26px;
  font-weight: 800;
  line-height: auto;
}
@media (min-width: 992px) {
  .is-style-heading2 {
    font-size: 32px;
  }
}

.is-style-heading3 {
  font-size: 22px;
  font-weight: 800;
  line-height: auto;
}
@media (min-width: 992px) {
  .is-style-heading3 {
    font-weight: 500;
    font-size: 24px;
  }
}

.is-style-heading4 {
  font-size: 18px;
  font-weight: 700;
  line-height: auto;
}

.wp-block-image {
  max-width: calc(100vw - 1.5rem);
}
.wp-block-image.is-style-rounded img {
  border-radius: var(--radius-s);
}

.wp-block-group.has-background.alignfull {
  width: calc(100% - 1.5rem);
  margin-right: 0.75rem;
  margin-left: 0.75rem;
  border-radius: var(--radius-xl);
}
@media (min-width: 992px) {
  .wp-block-group.has-background.alignfull {
    width: calc(100% - 3rem);
    margin-left: auto;
    margin-right: auto;
    max-width: 1776px;
    padding-top: 68px;
    padding-bottom: 68px;
  }
}
.wp-block-group .wp-block-group:where(:not(.alignleft):not(.alignright):not(.alignfull):not(.alignwide)) {
  max-width: var(--wp--style--global--content-size);
  margin-left: auto;
  margin-right: auto;
}

.wp-block-video {
  border-radius: var(--radius-s);
  overflow: hidden;
}

.wp-block-separator {
  display: block;
  height: 1px !important;
  width: 100%;
  margin: 24px auto;
}
@media (min-width: 992px) {
  .wp-block-separator {
    margin: 32px auto;
  }
}
.wp-block-separator.is-style-epais {
  display: block;
  height: 5px !important;
  width: 100px;
  margin: 30px auto;
}
@media (min-width: 992px) {
  .wp-block-separator.is-style-epais {
    margin: 50px auto;
  }
}
.wp-block-separator.is-style-epais-left {
  display: block;
  height: 5px !important;
  width: 100px;
  margin: 30px auto;
}
@media (min-width: 992px) {
  .wp-block-separator.is-style-epais-left {
    margin: 50px auto;
  }
}
.wp-block-separator.is-style-epais-left {
  margin-left: 1.5rem;
}

.is-style-ticket .wp-block-cover__inner-container::before {
  content: "";
  margin: 0 auto 15px;
  width: 166px;
  height: 130px;
  display: block;
  background-color: var(--main-color);
  -webkit-mask: no-repeat center/contain url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 166 130"><path fill-rule="evenodd" clip-rule="evenodd" d="M55 74.8223C55 72.0609 57.2386 69.8223 60 69.8223H106C108.761 69.8223 111 72.0609 111 74.8223V82.8926C111 83.6065 110.619 84.2663 110.001 84.6238C108.203 85.6642 107 87.604 107 89.8223C107 92.0406 108.203 93.9804 110.001 95.0208C110.619 95.3783 111 96.0381 111 96.752V104.822C111 107.584 108.761 109.822 106 109.822H60C57.2386 109.822 55 107.584 55 104.822V96.752C55 96.0381 55.3806 95.3783 55.9985 95.0208C57.7972 93.9804 59 92.0406 59 89.8223C59 87.604 57.7972 85.6642 55.9985 84.6238C55.3806 84.2663 55 83.6065 55 82.8926V74.8223ZM60 73.8223C59.4477 73.8223 59 74.27 59 74.8223V81.8219C61.426 83.6441 63 86.5485 63 89.8223C63 93.0962 61.426 96.0005 59 97.8228V104.822C59 105.375 59.4477 105.822 60 105.822H93V103.822C93 102.718 93.8954 101.822 95 101.822C96.1046 101.822 97 102.718 97 103.822V105.822H106C106.552 105.822 107 105.375 107 104.822V97.8228C104.574 96.0005 103 93.0962 103 89.8223C103 86.5484 104.574 83.6441 107 81.8218V74.8223C107 74.27 106.552 73.8223 106 73.8223H97V75.8223C97 76.9269 96.1046 77.8223 95 77.8223C93.8954 77.8223 93 76.9269 93 75.8223V73.8223H60ZM95 81.8223C96.1046 81.8223 97 82.7177 97 83.8223V85.8223C97 86.9269 96.1046 87.8223 95 87.8223C93.8954 87.8223 93 86.9269 93 85.8223V83.8223C93 82.7177 93.8954 81.8223 95 81.8223ZM69 91.8223C69 90.7177 69.8954 89.8223 71 89.8223H85C86.1046 89.8223 87 90.7177 87 91.8223C87 92.9269 86.1046 93.8223 85 93.8223H71C69.8954 93.8223 69 92.9269 69 91.8223ZM95 91.8223C96.1046 91.8223 97 92.7177 97 93.8223V95.8223C97 96.9269 96.1046 97.8223 95 97.8223C93.8954 97.8223 93 96.9269 93 95.8223V93.8223C93 92.7177 93.8954 91.8223 95 91.8223ZM69 97.8223C69 96.7177 69.8954 95.8223 71 95.8223H79C80.1046 95.8223 81 96.7177 81 97.8223C81 98.9269 80.1046 99.8223 79 99.8223H71C69.8954 99.8223 69 98.9269 69 97.8223Z" fill="%23FFCB00"/><mask id="mask0" maskUnits="userSpaceOnUse" x="115" y="14" width="47" height="60"><path d="M162 14H115V73.2889H162V14Z" fill="white"/></mask><g mask="url(%23mask0)"><path d="M124.33 73.2894L161.999 54.5538L158.212 29.8975L125.955 65.2402L124.33 73.2894Z" fill="%23FFCB00"/><path d="M115.897 62.1906L139.426 30.9245L130.054 14L115 55.3654L115.897 62.1906Z" fill="%23FFCB00"/></g></svg>');
  z-index: 10;
}

.wp-block-columns {
  max-width: var(--wp--style--global--content-size);
  margin-left: auto;
  margin-right: auto;
}

.bav-content {
  padding-top: 40px;
  position: relative;
}
.bav-content .has-main-color-color {
  color: #FFCB00;
}
.bav-content .has-main-color-background-color, .bav-content .has-main-background-color {
  background: #FFCB00 !important;
}
.bav-content figure {
  position: relative;
}
.bav-content figure::before {
  border-radius: var(--radius-l) 0 0 var(--radius-l);
  z-index: -1;
  content: "";
  display: block;
  height: calc(100% + 50px);
  width: 50vw;
  position: absolute;
  top: 0;
  left: 50%;
  background: RGBA(255, 203, 0, 0.6);
  background: linear-gradient(180deg, rgba(255, 203, 0, 0.6) 0%, rgb(255, 203, 0) 100%);
}
.bav-content .wp-block-button {
  margin-left: auto !important;
  margin-right: auto !important;
}
.bav-content .wp-block-button__link[href*=labourseauxvacances] {
  display: flex;
}
.bav-content .wp-block-button__link[href*=labourseauxvacances]::before {
  content: url(../../assets/img/target-blank.svg);
  margin-top: -1px;
  margin-bottom: -8px;
}
@media (min-width: 992px) {
  .bav-content {
    padding-top: 95px;
  }
  .bav-content::before {
    border-radius: 0 0 0 var(--radius-l);
    z-index: -1;
    content: "";
    display: block;
    height: calc(100% + 15px);
    width: 45vw;
    position: absolute;
    top: 0;
    left: calc(50% + 5vw);
    background: RGBA(255, 203, 0, 0.6);
    background: linear-gradient(180deg, rgba(255, 203, 0, 0.6) 0%, rgb(255, 203, 0) 100%);
  }
  .bav-content figure::before {
    display: none;
  }
  .bav-content .wp-block-button {
    margin: 0 !important;
  }
}

.billetterie-content {
  padding-top: 40px;
  position: relative;
}
.billetterie-content .has-main-color-color {
  color: #FFCB00;
}
.billetterie-content .has-main-color-background-color, .billetterie-content .has-main-background-color {
  background: #FFCB00 !important;
}
@media (min-width: 992px) {
  .billetterie-content {
    padding-top: 95px;
    padding-bottom: 95px;
  }
  .billetterie-content .wp-block-column:first-child {
    padding-right: 16%;
  }
}

.billetterie-explanation {
  background: #FFFAE6;
}
.billetterie-explanation .is-style-deco1::before {
  background-color: #FFCB00;
}

.contact-content .wp-block-group__inner-container {
  max-width: unset;
  padding-left: 0;
  padding-right: 0;
}
.contact-content #contact {
  margin-top: -150px;
  z-index: 10;
  position: relative;
  max-width: var(--wp--style--global--content-size);
  margin-bottom: 150px;
}

.wp-block-group.warning {
  border-radius: var(--radius-l);
  box-shadow: var(--medium-shadow);
  margin-bottom: 64px;
  margin-top: 32px;
}
.wp-block-group.warning .wp-block-group__inner-container {
  display: flex;
  flex-direction: row;
  align-items: center;
}
.wp-block-group.warning .wp-block-group__inner-container::before {
  content: url(../../assets/img/warning.svg);
  margin-left: -10px;
  margin-right: 20px;
}
.wp-block-group.warning .wp-block-group__inner-container > *:last-child {
  margin-bottom: 0;
}

.promo-code {
  display: flex;
  justify-content: center;
}
.promo-code .wp-block-group__inner-container {
  background: var(--red-color-light);
  border-radius: var(--radius-xs);
  display: flex;
  justify-content: center;
  flex-direction: row;
  align-items: center;
  width: max-content;
  padding: 16px;
  min-width: 200px;
}
.promo-code .wp-block-group__inner-container p {
  font-size: 16px;
  font-weight: 700;
  line-height: 20px;
  margin: 0;
}
.promo-code .wp-block-group__inner-container p:last-child {
  color: var(--red-color);
  margin-left: 3px;
}
@media (min-width: 992px) {
  .promo-code .wp-block-group__inner-container {
    min-width: 300px;
  }
}

@keyframes wiggle {
  0% {
    transform: rotate(-1deg);
  }
  100% {
    transform: rotate(1deg);
  }
}
.movable {
  animation: wiggle 0.4s infinite alternate-reverse;
  animation-timing-function: cubic-bezier(0.645, 0.045, 0.355, 1);
  cursor: grab;
}
/*# sourceMappingURL=main.css.map */
