@charset "UTF-8";
/*!
Theme Name: cegm.
Author: Sirup Communication - Vevey - Switzerland - Mathieu Voisard - Michael Caillet - Dimitri Schweizer
Description: Thème wordrpess sur mesure pour le site CEGM
Version: 0.2
Requires at least: 6.2
Tested up to: 6.2
Requires PHP: 8.0
License: The license of the theme.
License URI: The URL of the theme license.
Text Domain: cegm
*/
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  scroll-behavior: smooth;
}

body {
  margin: 0;
  scroll-behavior: smooth;
}

main {
  display: block;
}

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

pre {
  font-family: monospace, monospace;
  font-size: 1em;
}

a {
  background-color: transparent;
}

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  text-decoration: underline dotted;
}

b, strong {
  font-weight: bolder;
}

code, kbd, samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

small {
  font-size: 80%;
}

sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

img {
  border-style: none;
}

button, input, optgroup, select, textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
  margin: 0;
}

button, input {
  overflow: visible;
}

button, select {
  text-transform: none;
}

[type=button], [type=reset], [type=submit], button {
  -webkit-appearance: button;
}

[type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner, button::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

[type=button]:-moz-focusring, [type=reset]:-moz-focusring, [type=submit]:-moz-focusring, button:-moz-focusring {
  outline: 1px dotted ButtonText;
}

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal;
}

progress {
  vertical-align: baseline;
}

textarea {
  overflow: auto;
}

[type=checkbox], [type=radio] {
  box-sizing: border-box;
  padding: 0;
}

[type=number]::-webkit-inner-spin-button, [type=number]::-webkit-outer-spin-button {
  height: auto;
}

[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

details {
  display: block;
}

summary {
  display: list-item;
}

template {
  display: none;
}

[hidden] {
  display: none;
}

/* Accessibility
--------------------------------------------- */
/* Text meant only for screen readers. */
.vh,
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
}

.screen-reader-text:focus {
  background-color: #f1f1f1;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  clip-path: none;
  color: #21759b;
  display: block;
  font-size: 0.875rem;
  font-weight: 700;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
}

#primary[tabindex="-1"]:focus {
  outline: 0;
}

/* Box sizing
--------------------------------------------- */
*, :after, :before {
  box-sizing: inherit;
}

html {
  box-sizing: border-box;
}

/* Posts and pages
--------------------------------------------- */
.sticky {
  display: block;
}

.updated:not(.published) {
  display: none;
}

.entry-content, .entry-summary, .page-content {
  margin: 1.5em 0 0;
}

.page-links {
  clear: both;
  margin: 0 0 1.5em;
}

/* Widgets
--------------------------------------------- */
.widget {
  margin: 0 0 0;
}

.widget select {
  max-width: 100%;
}

/* Media
--------------------------------------------- */
.comment-content .wp-smiley, .entry-content .wp-smiley, .page-content .wp-smiley {
  border: none;
  margin-bottom: 0;
  margin-top: 0;
  padding: 0;
}

.custom-logo-link {
  display: inline-block;
}

/* Captions
--------------------------------------------- */
.wp-caption {
  margin-bottom: 1.5em;
  max-width: 100%;
}

.wp-caption img[class*=wp-image-] {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.wp-caption .wp-caption-text {
  margin: 0.8075em 0;
}

.wp-caption-text {
  text-align: center;
}

/* Galleries
--------------------------------------------- */
.gallery {
  margin-bottom: 1.5em;
  display: grid;
  grid-gap: 1.5em;
}

.gallery-item {
  display: inline-block;
  text-align: center;
  width: 100%;
}

.gallery-columns-2 {
  grid-template-columns: repeat(2, 1fr);
}

.gallery-columns-3 {
  grid-template-columns: repeat(3, 1fr);
}

.gallery-columns-4 {
  grid-template-columns: repeat(4, 1fr);
}

.gallery-columns-5 {
  grid-template-columns: repeat(5, 1fr);
}

.gallery-columns-6 {
  grid-template-columns: repeat(6, 1fr);
}

.gallery-columns-7 {
  grid-template-columns: repeat(7, 1fr);
}

.gallery-columns-8 {
  grid-template-columns: repeat(8, 1fr);
}

.gallery-columns-9 {
  grid-template-columns: repeat(9, 1fr);
}

.gallery-caption {
  display: block;
}

/* Alignments
--------------------------------------------- */
.alignleft {
  float: left;
  margin-right: 1.5em;
  margin-bottom: 1.5em;
}

.alignright {
  float: right;
  margin-left: 1.5em;
  margin-bottom: 1.5em;
}

.aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 1.5em;
}

/* Forms
--------------------------------------------- */
.frm_hidden {
  display: none;
}

input[type=color], input[type=date], input[type=datetime-local], input[type=datetime], input[type=email], input[type=month], input[type=number], input[type=password], input[type=range], input[type=search], input[type=tel], input[type=text], input[type=time], input[type=url], input[type=week], textarea {
  color: #666;
  border: 1px solid #ccc;
  border-radius: 3px;
  padding: 3px;
}

input[type=color]:focus, input[type=date]:focus, input[type=datetime-local]:focus, input[type=datetime]:focus, input[type=email]:focus, input[type=month]:focus, input[type=number]:focus, input[type=password]:focus, input[type=range]:focus, input[type=search]:focus, input[type=tel]:focus, input[type=text]:focus, input[type=time]:focus, input[type=url]:focus, input[type=week]:focus, textarea:focus {
  color: #111;
}

select {
  border: 1px solid #ccc;
}

textarea {
  width: 100%;
}

.site-main .post-navigation, .site-main .posts-navigation {
  margin: 0 0 1.5em;
}

.post-navigation .nav-links, .posts-navigation .nav-links {
  display: flex;
}

.post-navigation .nav-previous, .posts-navigation .nav-previous {
  flex: 1 0 50%;
}

.post-navigation .nav-next, .posts-navigation .nav-next {
  text-align: end;
  flex: 1 0 50%;
}

/* Elements
--------------------------------------------- */
p {
  margin-bottom: 1.5em;
}

cite, em, i {
  font-style: italic;
}

blockquote {
  margin: 0 1.5em;
}

hr {
  background-color: #ccc;
  border: 0;
  height: 1px;
  margin-bottom: 1.5em;
}

ol, ul {
  margin: 0 0 1.5em 3em;
}

ul {
  list-style: disc;
}

ol {
  list-style: decimal;
}

li > ol, li > ul {
  margin-bottom: 0;
  margin-left: 1.5em;
}

embed, iframe, object {
  max-width: 100%;
}

img {
  height: auto;
  max-width: 100%;
}

pre {
  background: #eee;
  font-family: "Courier 10 Pitch", courier, monospace;
  line-height: 1.6;
  margin-bottom: 1.6em;
  max-width: 100%;
  overflow: auto;
  padding: 1.6em;
}

/* GPRD links break */
body.privacy-policy .entry-content p a:not([href^="mailto:"]) {
  /* These are technically the same, but use both */
  overflow-wrap: break-word;
  word-wrap: break-word;
  -ms-word-break: break-all;
  /* This is the dangerous one in WebKit, as it breaks things wherever */
  word-break: break-all;
  /* Instead use this non-standard one: */
  word-break: break-word;
  /* Adds a hyphen where the word breaks, if supported (No Blink) */
  -ms-hyphens: auto;
  -moz-hyphens: auto;
  -webkit-hyphens: auto;
  hyphens: auto;
}

@font-face {
  font-family: "cegm-icons";
  src: url("assets/fonts/cegm-icons.woff2?um9w5u") format("woff2");
  font-weight: normal;
  font-style: normal;
  font-display: block;
}
.intranet-link a:before,
[class^=icon-], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: "cegm-icons" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-arrow-45:before {
  content: "\e900";
}

.icon-arrow-back:before {
  content: "\e901";
}

.icon-arrow:before {
  content: "\e902";
}

.intranet-link a:before,
.icon-lock-2:before {
  content: "\e903";
}

.icon-lock:before {
  content: "\e904";
}

.icon-marker-2:before {
  content: "\e905";
}

.icon-marker:before {
  content: "\e906";
}

.icon-twitter:before,
.icon-x:before {
  content: "\e917";
}

.icon-sphere:before {
  content: "\e9c9";
}

.icon-link:before {
  content: "\e9cb";
}

.icon-facebook:before {
  content: "\ea91";
}

.icon-instagram:before {
  content: "\ea92";
}

.icon-youtube:before {
  content: "\ea9d";
}

:root {
  --fz:max(16px,1.28vw);
  --lh:1.35;
  --gap:1.5rem;
  --easeoutquart:cubic-bezier(0.25, 1, 0.5, 1);
  --ease:cubic-bezier(0.22, 1, 0.36, 1);
}

html {
  max-width: 100%;
  font-size: var(--fz);
  line-height: var(--lh);
}

::selection {
  color: #fff;
  background: #ff3798;
}

::-moz-selection {
  color: #fff;
  background: #ff3798;
}

body {
  -webkit-font-smoothing: antialiased;
  -mox-osx-font-smoothing: grayscale;
}

h1, h2, h3, h4, h5, h6 {
  line-height: 1.1;
  letter-spacing: -0.05em;
  text-transform: uppercase;
}

@media screen and (min-width: 600px) {
  header.wp-block-template-part {
    margin-top: 1.6rem;
  }
}
/* target front-end menu block (not in editor) */
header.wp-block-template-part .wp-block-navigation li a {
  position: relative;
  font-weight: bold;
  color: var(--wp--preset--color--main);
}
header.wp-block-template-part .wp-block-navigation li a:after {
  content: "";
  display: block;
  width: 0%;
  height: 0.1em;
  background: var(--wp--preset--color--main);
  position: absolute;
  bottom: -0.2rem;
  left: 50%;
  transform: translateX(-50%);
  transition: all 0.3s var(--ease);
}
header.wp-block-template-part .wp-block-navigation li.current-menu-item a:after {
  transition: all 0.5s var(--ease);
  width: 80%;
}
@media (hover: hover) {
  header.wp-block-template-part .wp-block-navigation li:hover a:after {
    width: 80%;
  }
}

body.single-ecole header.wp-block-template-part .wp-block-navigation li.ecoles a:after {
  width: 80%;
}

.wp-block-navigation__responsive-container.is-menu-open button.wp-block-navigation__responsive-container-close,
button.wp-block-navigation__responsive-container-open {
  position: fixed;
  transition: all 0.8s ease-out;
  top: 1rem;
  right: 0.55rem;
  z-index: 10002;
  color: var(--wp--preset--color--main);
  cursor: pointer;
}
.wp-block-navigation__responsive-container.is-menu-open button.wp-block-navigation__responsive-container-close svg,
button.wp-block-navigation__responsive-container-open svg {
  width: 2.2rem;
  height: auto;
  display: block;
}

.wp-block-navigation__responsive-container:before {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 0;
  opacity: 1;
}

html.has-modal-open .wp-block-site-logo {
  z-index: 100005;
  position: fixed;
  top: 0.3rem;
  left: 0.3rem;
  transform: translateX(-110%);
  clip-path: inset(0 100% 0 0);
  animation: slideLogo 1s cubic-bezier(0.075, 0.82, 0.165, 1) 0.2s forwards;
}

html.has-modal-open button.wp-block-navigation__responsive-container-open {
  opacity: 0;
}

@keyframes slideLogo {
  100% {
    transform: translateX(0);
    clip-path: inset(0 0 0 0);
  }
}
.wp-block-navigation__responsive-container.is-menu-open {
  justify-content: center;
  background-color: var(--wp--preset--color--grey-2) !important;
  backdrop-filter: blur(10px);
  --webkit-backdrop-filter: blur(10px);
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
  padding-top: 0 !important;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content ul {
  width: 90%;
  margin-left: auto;
  margin-right: auto;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content ul li.wp-block-navigation-item {
  font-size: 1.8rem;
  font-family: var(--wp--preset--font-family--aller);
  text-transform: uppercase;
  width: 100%;
  --navigation-layout-justification-setting: center!important;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content ul li.wp-block-navigation-item a.wp-block-navigation-item {
  display: block !important;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog {
  margin-top: -3rem !important;
}
.wp-block-navigation__responsive-container.is-menu-open .hide-on-desktop {
  background: var(--wp--preset--color--grey-2);
  position: absolute;
  bottom: 0;
  left: 0;
  padding: 1rem;
  width: 100%;
  margin: 0;
  display: flex;
  animation: slide-from-bottom 1s cubic-bezier(0.165, 0.84, 0.44, 1) 1s forwards;
  transform: translateY(100%);
  opacity: 0;
  box-shadow: rgba(0, 0, 0, 0.4) 0px 0px 0px 0px;
}
.wp-block-navigation__responsive-container.is-menu-open .hide-on-desktop .wp-block-group {
  max-width: 70%;
}
.wp-block-navigation__responsive-container.is-menu-open .hide-on-desktop .wp-block-group p > a > mark {
  color: var(--wp--preset--color--black) !important;
}
.wp-block-navigation__responsive-container.is-menu-open .hide-on-desktop p.intranet-link {
  text-align: right;
}

@keyframes slide-from-bottom {
  100% {
    box-shadow: rgba(0, 0, 0, 0.4) 0px 8px 32px 0px;
    transform: translateY(0);
    opacity: 1;
  }
}
@media not (prefers-reduced-motion) {
  div.wp-block-navigation__responsive-container.is-menu-open {
    animation: menu 1s cubic-bezier(0.075, 0.82, 0.165, 1) !important;
    animation-duration: 3s !important;
    animation-fill-mode: forwards;
  }
  div.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content ul li.wp-block-navigation-item {
    opacity: 0;
    animation: fadeInUp 0.3s cubic-bezier(0.075, 0.82, 0.165, 1) forwards;
  }
  div.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content ul li.wp-block-navigation-item:nth-child(1) {
    animation-delay: 0.42s;
  }
  div.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content ul li.wp-block-navigation-item:nth-child(2) {
    animation-delay: 0.54s;
  }
  div.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content ul li.wp-block-navigation-item:nth-child(3) {
    animation-delay: 0.66s;
  }
  div.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content ul li.wp-block-navigation-item:nth-child(4) {
    animation-delay: 0.78s;
  }
  div.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content ul li.wp-block-navigation-item:nth-child(5) {
    animation-delay: 0.9s;
  }
  div.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content ul li.wp-block-navigation-item:nth-child(6) {
    animation-delay: 1.02s;
  }
  div.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content ul li.wp-block-navigation-item:nth-child(7) {
    animation-delay: 1.14s;
  }
  div.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content ul li.wp-block-navigation-item:nth-child(8) {
    animation-delay: 1.26s;
  }
  div.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content ul li.wp-block-navigation-item:nth-child(9) {
    animation-delay: 1.38s;
  }
  div.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content ul li.wp-block-navigation-item:nth-child(10) {
    animation-delay: 1.5s;
  }
  div.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content ul li.wp-block-navigation-item:nth-child(11) {
    animation-delay: 1.62s;
  }
  div.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content ul li.wp-block-navigation-item:nth-child(12) {
    animation-delay: 1.74s;
  }
  div.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content ul li.wp-block-navigation-item:nth-child(13) {
    animation-delay: 1.86s;
  }
  div.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content ul li.wp-block-navigation-item:nth-child(14) {
    animation-delay: 1.98s;
  }
  div.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content ul li.wp-block-navigation-item:nth-child(15) {
    animation-delay: 2.1s;
  }
  div.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content ul li.wp-block-navigation-item:nth-child(16) {
    animation-delay: 2.22s;
  }
  div.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content ul li.wp-block-navigation-item:nth-child(17) {
    animation-delay: 2.34s;
  }
  div.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content ul li.wp-block-navigation-item:nth-child(18) {
    animation-delay: 2.46s;
  }
}
@keyframes fadeInUp {
  0% {
    opacity: 0;
    transform: translateY(4rem);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes menu {
  0% {
    clip-path: circle(0% at 100% 0);
  }
  100% {
    clip-path: circle(200% at 100% 0);
  }
}
/***
 *                  (_)                               _                   _   
 *     ____   _____  _  ____      ____  ___   ____  _| |_  _____  ____  _| |_ 
 *    |    \ (____ || ||  _ \    / ___)/ _ \ |  _ \(_   _)| ___ ||  _ \(_   _)
 *    | | | |/ ___ || || | | |  ( (___| |_| || | | | | |_ | ____|| | | | | |_ 
 *    |_|_|_|\_____||_||_| |_|   \____)\___/ |_| |_| \__)|_____)|_| |_|  \__)                                                                          
 */
.wp-site-blocks p > a:not(.wp-block-button__link) {
  text-decoration: none;
  font-weight: bold;
  color: var(--wp--preset--color--main);
}
@media (hover: hover) {
  .wp-site-blocks p > a:not(.wp-block-button__link) {
    transition: color 0.3s var(--ease), background-size 1.2s var(--ease);
    background-image: linear-gradient(transparent calc(100% - 2px), var(--wp--preset--color--secondary) 2px);
    background-repeat: no-repeat;
    background-position: 100%;
    background-size: 0% 100%;
  }
  .wp-site-blocks p > a:not(.wp-block-button__link):hover {
    color: var(--wp--preset--color--black);
    background-position: 0%;
    background-size: 100% 100%;
  }
}

.entry-content {
  margin-top: 2.5rem;
}

body:not(.home).wp-singular.page-template-default .has-grey-bg {
  padding-top: 8rem;
}
body:not(.home).wp-singular.page-template-default .has-grey-bg:before {
  height: 100%;
}
body:not(.home).wp-singular.page-template-default .has-grey-bg h1.wp-block-post-title {
  transform-origin: left bottom;
  transform: translateY(calc(-100% - 3.8vw)) rotate(-8deg);
}
body:not(.home).wp-singular.page-template-default .has-grey-bg h1, body:not(.home).wp-singular.page-template-default .has-grey-bg h2, body:not(.home).wp-singular.page-template-default .has-grey-bg h3, body:not(.home).wp-singular.page-template-default .has-grey-bg h4, body:not(.home).wp-singular.page-template-default .has-grey-bg h5, body:not(.home).wp-singular.page-template-default .has-grey-bg h6 {
  color: var(--wp--preset--color--main);
}
body:not(.home).wp-singular.page-template-default .has-grey-bg h3 {
  margin-top: 4em;
}

div.wp-block-button.is-style-arrow > a {
  text-transform: none;
  font-weight: bold;
  padding: 0.2em 0.8em 0.2em 0;
  background-color: unset !important;
  border: none;
  display: flex;
  align-items: center;
  gap: 0.3em;
  font-size: 1rem;
}
div.wp-block-button.is-style-arrow > a i.icon-arrow {
  font-size: 1.2em;
}
@media (hover: hover) {
  div.wp-block-button.is-style-arrow > a i.icon-arrow {
    transition: transform 0.3s var(--ease);
  }
  div.wp-block-button.is-style-arrow > a:hover {
    background-color: var(--wp--preset--color--secondary) !important;
  }
  div.wp-block-button.is-style-arrow > a:hover i.icon-arrow {
    transform: rotate(360deg) translateX(0.1em);
  }
}

div.wp-block-button.is-style-arrow.reversed > a i.icon-arrow:before {
  display: inline-block;
  transform: scaleX(-1);
}
@media (hover: hover) {
  div.wp-block-button.is-style-arrow.reversed > a {
    border: 0.08rem solid transparent;
  }
  div.wp-block-button.is-style-arrow.reversed > a:hover {
    background-color: transparent !important;
    border-color: var(--wp--preset--color--main) !important;
  }
}

@media screen and (min-width: 600px) {
  body.home #homeIntro > * {
    max-width: var(--wp--style--global--content-size);
    margin-left: auto;
    margin-right: auto;
  }
  body.home #homeIntro p {
    margin-left: 10rem !important;
    max-width: 40rem;
  }
}
.waves-container {
  width: 100vw;
  position: absolute;
  overflow: hidden;
}
.waves-container svg {
  height: 35rem;
  width: auto;
}

body.home #homeIntro p {
  margin-bottom: 2.5rem;
}

.schools-list {
  position: relative;
  margin: 12rem 0 5rem 0;
  padding-top: 0;
}
.schools-list:before {
  background: var(--wp--preset--color--grey-2);
  content: "";
  display: block;
  height: 120%;
  width: 100%;
  position: absolute;
  top: -5rem;
  left: 0;
  z-index: -1;
  transform: skewY(-8deg);
}
.schools-list > .schools-list-grid {
  max-width: var(--wp--style--global--content-size);
  margin-left: auto;
  margin-right: auto;
}
.schools-list .school-card-header {
  position: absolute;
  top: 0;
  display: flex;
  align-items: center;
  align-items: end;
  gap: 12vw;
  transform-origin: left center;
  transform: translateY(-0.45vw) rotate(-8deg);
  transform: translateY(-1.15vw) rotate(-8deg);
  transform: translateY(-2.2vw) rotate(-8deg);
}
.schools-list .school-card-header h2 {
  text-transform: uppercase;
  color: var(--wp--preset--color--main);
  margin: 0;
}
.schools-list .school-card-header .filters {
  display: flex;
  gap: 1rem;
}
.schools-list .school-card-header .filters button {
  background: unset;
  border: unset;
  font-weight: bold;
  color: var(--wp--preset--color--main);
}
.schools-list .school-card-header .filters button:not(.active) {
  cursor: pointer;
}
.schools-list .school-card-header .filters button.mixitup-control-active {
  color: var(--wp--preset--color--secondary);
}
@media screen and (max-width: 600px) {
  .schools-list .school-card-header .filters {
    gap: 0.3rem;
  }
}
.schools-list ul.school-list-element {
  list-style-type: none;
  margin: 3rem 0;
  margin-top: 5rem;
  padding: 0;
  padding-bottom: 2rem;
  padding-top: 3rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: start;
  gap: 1rem 8vw;
}
.schools-list ul.school-list-element li {
  background: var(--wp--preset--color--white);
  border-radius: 1rem;
  color: var(--wp--preset--color--black);
  position: relative;
  display: block;
  margin-top: 4rem;
  margin-bottom: 4rem;
  max-width: 22rem;
  width: fit-content;
}
@media screen and (min-width: 600px) {
  .schools-list ul.school-list-element li:nth-child(odd) {
    transform: translateY(-3rem);
  }
  .schools-list ul.school-list-element li:nth-child(even) {
    transform: translateY(4rem);
  }
}
.schools-list ul.school-list-element li > a {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  padding: 1rem;
  text-decoration: none;
  color: inherit;
}
.schools-list ul.school-list-element li h3 {
  margin-bottom: 0.3rem;
  margin-right: 3rem;
}
.schools-list ul.school-list-element li p {
  margin: 0;
  margin-right: 3rem;
}
.schools-list ul.school-list-element li .icon-arrow {
  align-self: end;
  display: block;
  text-align: right;
}
.schools-list ul.school-list-element li figure {
  margin: 0;
  display: flex;
  position: absolute;
  transform: translateY(calc(-50% - 1rem));
  mix-blend-mode: multiply;
}
.schools-list ul.school-list-element li figure img {
  max-height: 6rem;
  height: auto;
  width: auto;
  max-width: 10rem;
}
.schools-list ul.school-list-element li.studio-kodaly figure, .schools-list ul.school-list-element li.accademia-darchi figure, .schools-list ul.school-list-element li.la-bulle-dair figure {
  transform: translateY(calc(-50% - 2.5rem));
}
.schools-list ul.school-list-element li.grid-sizer {
  width: 80%;
  min-height: 12rem;
}
.schools-list ul.school-list-element li .markers {
  position: absolute;
  top: -0.8rem;
  right: 0.4rem;
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  align-items: end;
  gap: 0.2rem;
}
.schools-list ul.school-list-element li .markers div.sub {
  display: none;
}
.schools-list ul.school-list-element li .markers svg {
  width: 0.9rem;
  height: auto;
  cursor: pointer;
}

.has-grey-bg {
  padding-bottom: 4rem;
  position: relative;
}
.has-grey-bg:before {
  background: var(--wp--preset--color--grey-2);
  content: "";
  display: block;
  height: 80%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  transform: skewY(-8deg);
  animation: openGreyBG 0.8s var(--ease) forwards;
}
/* Popup groupée SubPlaces */
.grouped-popup {
  max-height: 300px;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.grouped-popup__item {
  display: flex;
  gap: 10px;
  align-items: flex-start;
}

.grouped-popup__marker {
  background: var(--wp--preset--color--secondary);
  color: white;
  border-radius: 50%;
  width: 28px;
  height: 28px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  flex-shrink: 0;
}

.grouped-popup hr {
  border: none;
  border-top: 1px solid #eee;
  margin: 4px 0;
}

@keyframes openGreyBG {
  0% {
    clip-path: inset(0 50% 0 50%);
  }
  100% {
    clip-path: inset(0 0% 0 0%);
  }
}
p.contact-info {
  position: relative;
  padding-left: 2rem;
  color: var(--wp--preset--color--main);
  font-weight: bold;
}
p.contact-info a {
  text-decoration: none;
}
p.contact-info::before {
  content: "\e902";
  font-family: "cegm-icons" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  position: absolute;
  left: 0;
  top: 0%;
  transform: translateY(0%);
  font-size: 1.5rem;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body.single-ecole .wp-block-post-featured-image img {
  max-width: 21rem;
  mix-blend-mode: multiply;
}
body.single-ecole .wp-block-post-featured-image img[src$=".svg"] {
  mix-blend-mode: unset;
}

.places-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr));
  gap: var(--gap);
  font-size: 0.8rem;
}
.places-list .place-card {
  cursor: pointer;
  display: grid;
  gap: 0.3rem 0.5rem;
  grid-template-columns: 1.5rem 1fr;
}
.places-list .place-card svg.marker {
  display: block;
  width: 0.8rem;
  height: auto;
}
.places-list .place-card > i {
  display: flex;
  justify-content: center;
  align-items: start;
  font-style: normal;
  text-align: center;
  font-size: 1.3rem;
  grid-row: 1/span 2;
  border-right: var(--wp--preset--color--black) 0.08rem solid;
}
.places-list .place-card h4 {
  margin: 0;
  line-height: 1.1;
}
.places-list .place-card p {
  margin: 0;
  line-height: 1.1;
}

.places-map {
  border-radius: 2rem;
  min-height: 40vmax;
  box-shadow: rgba(85, 221, 224, 0.2) 0px 0px 0px 2px, rgba(0, 0, 0, 0.3) 0px 5px 15px 0px inset;
}
.places-map .mapboxgl-marker:has(.main) {
  z-index: 2;
}
.places-map .mapboxgl-popup-content h4 {
  margin: 0;
  font-size: 0.6rem;
  color: var(--wp--preset--color--secondary);
}
.places-map .mapboxgl-popup-content h4 a {
  text-decoration: none;
  color: inherit;
}
.places-map .mapboxgl-popup-content p {
  margin: 0;
}
.places-map .mapboxgl-popup-content a {
  outline: none;
}
.places-map .mapboxgl-popup-content a.more {
  color: var(--wp--preset--color--main);
  font-weight: bold;
}
@media (hover: hover) {
  .places-map .mapboxgl-popup-content a.more:hover {
    color: var(--wp--preset--color--secondary);
  }
}

svg.waves {
  width: 100vw;
  height: 200px;
  mix-blend-mode: multiply;
  pointer-events: none;
}
svg.waves#waves-footer {
  position: absolute;
  transform: translateY(-100%);
}
svg.waves#waves-intro {
  position: absolute;
  top: 25rem;
}

svg.waves path {
  opacity: 1;
  stroke: var(--wp--preset--color--secondary);
  stroke-width: max(10px, 2rem);
  stroke-linecap: round;
  fill: none;
}

.school-tags {
  max-width: 75ch;
  margin-left: auto;
  margin-right: auto;
}

.school-tags ul {
  margin: 0;
  background: var(--wp--preset--color--grey-2);
  border-radius: 1rem;
  padding: 1rem;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 1rem 8vw;
}
.school-tags ul li {
  list-style-type: none;
  font-family: var(--wp--preset--font-family--aller);
  font-weight: bold;
  text-transform: uppercase;
  color: var(--wp--preset--color--main);
  padding: 0.2rem 4vw;
}

/* PAGINATION */
/**
 * Pousse le footer en bas
 * il faut:
 * header main footer 
 * enfants directs de div.wp-site-blocks
 */
html, body {
  min-height: 100%;
}

div.wp-site-blocks {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}
div.wp-site-blocks .main {
  flex: 1 0;
}
div.wp-site-blocks footer.wp-block-template-part,
div.wp-site-blocks header.wp-block-template-part {
  flex: 0 1;
}

footer.wp-block-template-part {
  margin-top: 5rem;
}
footer.wp-block-template-part .sponsors figure {
  max-width: 3.8rem;
}
footer.wp-block-template-part a {
  text-decoration: none;
}
footer.wp-block-template-part aside {
  padding: 0.3rem;
}
footer.wp-block-template-part aside nav.items-justified-right {
  margin: 0;
}

.intranet-link a {
  font-weight: bold;
}
.intranet-link a:hover:before {
  content: "\e904";
}

.hide-on-desktop {
  display: none !important;
}

@media screen and (max-width: 600px) {
  :root {
    --fz: max(14px, 1.1vw);
    --wp--style--global--content-size: min(140rem,93%);
  }
  .hide-on-mobile {
    display: none !important;
  }
  .hide-on-desktop {
    display: block !important;
  }
  header.wp-block-template-part > .wp-block-group > div.wp-block-group {
    max-width: unset;
    padding: 0.3rem;
  }
  header.wp-block-template-part > .wp-block-group > div.wp-block-group .wp-block-site-logo {
    padding: 0.3rem 0;
  }
  header.wp-block-template-part > .wp-block-group > div.wp-block-group img.custom-logo {
    max-width: 12rem;
    height: auto;
  }
  body.page-id-12 .entry-content {
    margin-top: 6rem;
  }
  .schools-list .school-card-header {
    flex-direction: column;
    align-items: flex-start;
    gap: 2rem;
    transform: translateY(-5rem) rotate(-8deg);
  }
  .schools-list ul.school-list-element li {
    margin-top: 2rem;
    margin-bottom: 1rem;
    width: 100%;
  }
  .places-list {
    grid-template-columns: repeat(auto-fit, minmax(11rem, 1fr));
    gap: 1.7rem 0.7rem;
  }
  footer aside div.hide-on-desktop {
    display: none !important;
  }
}
/* A11Y titles */
.tarteaucitron-modal-open #tac_title {
  display: none !important;
}

.tarteaucitron-magic-block {
  background-color: transparent;
  display: flex;
  flex: 1 0;
  height: 100% !important;
  font-size: 2em;
}

#map:has(.tarteaucitron-magic-block) {
  display: flex;
  align-items: center;
}

.tac_visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.tarteaucitron-modal-open {
  overflow: hidden;
  height: 100%;
}
.tarteaucitron-modal-open .wp-site-blocks {
  filter: blur(1px);
}

.tarteaucitron-display-none {
  display: none;
}

/***
 * Fallback activate link
 */
.tac_activate {
  background: transparent;
  color: var(--wp--preset--color--secondary);
  display: table;
  font-size: 12px;
  height: 100%;
  line-height: initial;
  margin: auto;
  text-align: center;
  width: 100%;
}
.tac_activate .tac_float {
  display: table-cell;
  text-align: center;
  vertical-align: middle;
  font-size: 2em;
}
.tac_activate .tac_float strong {
  color: #fff;
}
.tac_activate .tac_float .tarteaucitronAllow {
  background-color: var(--wp--preset--color--main);
  color: var(--wp--preset--color--white);
  display: inline-block;
  cursor: pointer;
  text-decoration: none;
  width: auto;
  border: 1px solid var(--wp--preset--color--main) !important;
  border-radius: 1.25em;
  padding: 0.5em 1em;
  animation: pulsate-bck 0.8s cubic-bezier(0.455, 0.03, 0.515, 0.955) infinite both;
}
@media (hover: hover) {
  .tac_activate .tac_float .tarteaucitronAllow {
    transition: all 0.3s var(--ease);
  }
  .tac_activate .tac_float .tarteaucitronAllow:hover {
    background-color: transparent;
    color: var(--wp--preset--color--main);
  }
}

@keyframes pulsate-bck {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(0.9);
  }
  100% {
    transform: scale(1);
  }
}
#tarteaucitronRoot {
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
  font-size: 14px;
}
#tarteaucitronRoot * {
  box-sizing: initial;
  color: var(--wp--preset--color--main);
  line-height: normal;
  vertical-align: initial;
}
#tarteaucitronRoot ol,
#tarteaucitronRoot ul {
  list-style: none;
}
#tarteaucitronRoot blockquote,
#tarteaucitronRoot q {
  quotes: none;
}
#tarteaucitronRoot blockquote:before, #tarteaucitronRoot blockquote:after,
#tarteaucitronRoot q:before,
#tarteaucitronRoot q:after {
  content: "";
}
#tarteaucitronRoot table {
  border-collapse: collapse;
  border-spacing: 0;
}
#tarteaucitronRoot a:focus-visible,
#tarteaucitronRoot button:focus-visible {
  outline: 2px dashed var(--wp--preset--color--main);
}
#tarteaucitronRoot button {
  background: transparent;
  border: 0;
}
#tarteaucitronRoot .tarteaucitronH1 {
  font-size: 1.3em;
  font-weight: 500;
  color: var(--wp--preset--color--black);
  margin-bottom: calc(calc(var(--gap) / 2) / 2);
}
#tarteaucitronRoot .tarteaucitronH2 {
  display: inline-block;
  font-size: 1.2em;
}
#tarteaucitronRoot a.tarteaucitronSelfLink {
  display: none !important;
}
#tarteaucitronRoot #tarteaucitronBack {
  display: none;
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 2147483646;
  background: var(--wp--preset--color--black);
  opacity: 0.2 !important;
}
#tarteaucitronRoot .tarteaucitronCTAButton .tarteaucitronCross,
#tarteaucitronRoot .tarteaucitronCTAButton .tarteaucitronCheck {
  display: none;
}
#tarteaucitronRoot {
  /* fix padding if no cookies */
  /* hide info about cookies number */
}
#tarteaucitronRoot .tarteaucitronStatusInfo {
  display: none;
}
#tarteaucitronRoot #tarteaucitronSave {
  margin-left: auto;
  width: fit-content;
}
@media screen and (max-width: 600px) {
  #tarteaucitronRoot {
    font-size: clamp(12px, 3vw, 14px);
  }
}

/***
 * Control panel
 */
#tarteaucitron {
  display: none;
  position: fixed;
  top: 33.33% !important;
  left: 50% !important;
  transform: translate(-50%, -50%);
  z-index: 2147483647;
  width: min(80%, 480px);
  max-height: 80vh;
  overflow-y: auto;
  padding: 0;
  border-radius: 1rem;
}
#tarteaucitron a {
  color: var(--wp--preset--color--main);
  font-size: 0.8em;
  text-decoration: none;
}
#tarteaucitron strong {
  font-weight: 500;
}
#tarteaucitron ul {
  padding: 0;
  margin: 0;
}
#tarteaucitron span[role=heading] {
  display: block;
}
#tarteaucitron .tarteaucitronH3 {
  font-size: 1.1em;
  font-weight: 500;
}
#tarteaucitron #tarteaucitronClosePanel {
  position: absolute;
  right: calc(calc(var(--gap) / 2) / 2);
  top: calc(calc(var(--gap) / 2) / 2);
  z-index: 1000;
  font-size: 1em;
  width: 2em;
  height: 2em;
  text-decoration: none;
  color: transparent;
  cursor: pointer;
  overflow: hidden;
}
#tarteaucitron #tarteaucitronClosePanel:before {
  content: "+";
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
  font-size: 3em;
  color: var(--wp--preset--color--main);
}
#tarteaucitron #tarteaucitronServices {
  height: auto !important;
  max-height: 60vh;
  padding: calc(var(--gap) / 2);
  background-color: var(--wp--preset--color--white);
  box-shadow: 7px 7px 10px rgba(0, 0, 0, 0.1);
}
#tarteaucitron #tarteaucitronServices .tarteaucitronHidden {
  display: none;
  position: relative;
}
#tarteaucitron #tarteaucitronServices .tarteaucitronDetails:not(.tarteaucitronDetailsInline) {
  display: none;
}
#tarteaucitron #tarteaucitronServices .tarteaucitronLine {
  margin: 0;
  overflow: hidden;
  margin-bottom: calc(calc(var(--gap) / 2) / 2);
  position: relative;
}
#tarteaucitron #tarteaucitronServices .tarteaucitronLine:first-child {
  margin-top: calc(calc(var(--gap) / 2) / 2);
}
#tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronAsk {
  position: absolute;
  right: 0;
  top: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(10ch + 3em);
  height: calc(3em / 2);
}
#tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronAsk button {
  position: absolute;
  width: 100%;
  height: 100%;
  cursor: pointer;
  z-index: 2;
  border: none;
  background: none;
  right: 0;
  text-align: right;
  color: var(--wp--preset--color--black);
  font-weight: normal;
  padding-right: calc(3em + 2.5ch);
}
#tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronAsk button span {
  display: none;
}
#tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronAsk .tarteaucitronAllow {
  z-index: 3;
}
#tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronAsk .tarteaucitronDeny {
  z-index: 2;
}
#tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronAsk:before {
  content: "";
  position: absolute;
  width: 3em;
  height: 100%;
  background: #c6c6c6;
  border-radius: calc(calc(3em / 2) / 2);
  transition: background-color 0.3s ease;
  right: 0;
}
#tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronAsk:after {
  content: "";
  position: absolute;
  width: auto;
  height: calc(100% - 4px);
  aspect-ratio: 1;
  background: var(--wp--preset--color--white);
  border-radius: 50%;
  right: calc(3em - calc(3em / 2) + 2px);
  top: 50%;
  transform: translateY(-50%);
  transition: right 0.3s ease;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
  z-index: 1;
}
#tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronName {
  text-align: left;
}
#tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronName .tarteaucitronH3 {
  max-width: 60%;
}
#tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronName .tarteaucitronH3 + span {
  margin-top: calc(calc(var(--gap) / 2) / 4);
  display: block;
  max-width: calc(100% - 3em);
}
#tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronName a:hover {
  text-decoration: underline;
}
#tarteaucitron #tarteaucitronServices .tarteaucitronMainLine {
  margin-bottom: 0;
  position: relative;
}
#tarteaucitron #tarteaucitronServices .tarteaucitronMainLine .tarteaucitronH2 {
  font-size: 1.1em !important;
  font-weight: 500;
  padding-bottom: 0.1em;
}
#tarteaucitron #tarteaucitronServices .tarteaucitronMainLine .tarteaucitronAsk {
  top: unset;
  bottom: 0;
  width: calc(14ch + 3em);
}
@media screen and (max-width: 600px) {
  #tarteaucitron #tarteaucitronServices .tarteaucitronMainLine .tarteaucitronName {
    max-width: 50%;
    text-wrap: balance;
  }
}
#tarteaucitron #tarteaucitronServices .tarteaucitronMainLine.tarteaucitronIsAllowed .tarteaucitronAllow,
#tarteaucitron #tarteaucitronServices .tarteaucitronBorder > ul > li > ul:first-of-type .tarteaucitronLine:not(.tarteaucitronMainLine) .tarteaucitronAsk.tarteaucitronIsAllowed .tarteaucitronAllow,
#tarteaucitron #tarteaucitronServices .tarteaucitronIsExpanded > ul:not(:first-of-type) .tarteaucitronLine.tarteaucitronIsAllowed .tarteaucitronAllow {
  z-index: 2;
  opacity: 1;
}
#tarteaucitron #tarteaucitronServices .tarteaucitronMainLine.tarteaucitronIsAllowed .tarteaucitronDeny,
#tarteaucitron #tarteaucitronServices .tarteaucitronBorder > ul > li > ul:first-of-type .tarteaucitronLine:not(.tarteaucitronMainLine) .tarteaucitronAsk.tarteaucitronIsAllowed .tarteaucitronDeny,
#tarteaucitron #tarteaucitronServices .tarteaucitronIsExpanded > ul:not(:first-of-type) .tarteaucitronLine.tarteaucitronIsAllowed .tarteaucitronDeny {
  z-index: 3;
  opacity: 0;
}
#tarteaucitron #tarteaucitronServices .tarteaucitronMainLine.tarteaucitronIsAllowed:before,
#tarteaucitron #tarteaucitronServices .tarteaucitronMainLine.tarteaucitronIsAllowed .tarteaucitronAsk:before,
#tarteaucitron #tarteaucitronServices .tarteaucitronBorder > ul > li > ul:first-of-type .tarteaucitronLine:not(.tarteaucitronMainLine) .tarteaucitronAsk.tarteaucitronIsAllowed:before,
#tarteaucitron #tarteaucitronServices .tarteaucitronBorder > ul > li > ul:first-of-type .tarteaucitronLine:not(.tarteaucitronMainLine) .tarteaucitronAsk.tarteaucitronIsAllowed .tarteaucitronAsk:before,
#tarteaucitron #tarteaucitronServices .tarteaucitronIsExpanded > ul:not(:first-of-type) .tarteaucitronLine.tarteaucitronIsAllowed:before,
#tarteaucitron #tarteaucitronServices .tarteaucitronIsExpanded > ul:not(:first-of-type) .tarteaucitronLine.tarteaucitronIsAllowed .tarteaucitronAsk:before {
  background: var(--wp--preset--color--secondary);
}
#tarteaucitron #tarteaucitronServices .tarteaucitronMainLine.tarteaucitronIsAllowed:after,
#tarteaucitron #tarteaucitronServices .tarteaucitronMainLine.tarteaucitronIsAllowed .tarteaucitronAsk:after,
#tarteaucitron #tarteaucitronServices .tarteaucitronBorder > ul > li > ul:first-of-type .tarteaucitronLine:not(.tarteaucitronMainLine) .tarteaucitronAsk.tarteaucitronIsAllowed:after,
#tarteaucitron #tarteaucitronServices .tarteaucitronBorder > ul > li > ul:first-of-type .tarteaucitronLine:not(.tarteaucitronMainLine) .tarteaucitronAsk.tarteaucitronIsAllowed .tarteaucitronAsk:after,
#tarteaucitron #tarteaucitronServices .tarteaucitronIsExpanded > ul:not(:first-of-type) .tarteaucitronLine.tarteaucitronIsAllowed:after,
#tarteaucitron #tarteaucitronServices .tarteaucitronIsExpanded > ul:not(:first-of-type) .tarteaucitronLine.tarteaucitronIsAllowed .tarteaucitronAsk:after {
  right: 2px;
}
#tarteaucitron #tarteaucitronServices .tarteaucitronMainLine.tarteaucitronIsDenied .tarteaucitronAllow,
#tarteaucitron #tarteaucitronServices .tarteaucitronBorder > ul > li > ul:first-of-type .tarteaucitronLine:not(.tarteaucitronMainLine) .tarteaucitronAsk.tarteaucitronIsDenied .tarteaucitronAllow,
#tarteaucitron #tarteaucitronServices .tarteaucitronIsExpanded > ul:not(:first-of-type) .tarteaucitronLine.tarteaucitronIsDenied .tarteaucitronAllow {
  z-index: 3;
  opacity: 0;
}
#tarteaucitron #tarteaucitronServices .tarteaucitronMainLine.tarteaucitronIsDenied .tarteaucitronDeny,
#tarteaucitron #tarteaucitronServices .tarteaucitronBorder > ul > li > ul:first-of-type .tarteaucitronLine:not(.tarteaucitronMainLine) .tarteaucitronAsk.tarteaucitronIsDenied .tarteaucitronDeny,
#tarteaucitron #tarteaucitronServices .tarteaucitronIsExpanded > ul:not(:first-of-type) .tarteaucitronLine.tarteaucitronIsDenied .tarteaucitronDeny {
  z-index: 2;
  opacity: 1;
}
#tarteaucitron #tarteaucitronServices .tarteaucitronMainLine:not(.tarteaucitronIsAllowed):not(.tarteaucitronIsDenied) .tarteaucitronAllow,
#tarteaucitron #tarteaucitronServices .tarteaucitronBorder > ul > li > ul:first-of-type .tarteaucitronLine:not(.tarteaucitronMainLine) .tarteaucitronAsk:not(.tarteaucitronIsAllowed):not(.tarteaucitronIsDenied) .tarteaucitronAllow,
#tarteaucitron #tarteaucitronServices .tarteaucitronIsExpanded > ul:not(:first-of-type) .tarteaucitronLine:not(.tarteaucitronIsAllowed):not(.tarteaucitronIsDenied) .tarteaucitronAllow {
  opacity: 0;
  z-index: 3;
}
#tarteaucitron #tarteaucitronServices .tarteaucitronMainLine:not(.tarteaucitronIsAllowed):not(.tarteaucitronIsDenied) .tarteaucitronDeny,
#tarteaucitron #tarteaucitronServices .tarteaucitronBorder > ul > li > ul:first-of-type .tarteaucitronLine:not(.tarteaucitronMainLine) .tarteaucitronAsk:not(.tarteaucitronIsAllowed):not(.tarteaucitronIsDenied) .tarteaucitronDeny,
#tarteaucitron #tarteaucitronServices .tarteaucitronIsExpanded > ul:not(:first-of-type) .tarteaucitronLine:not(.tarteaucitronIsAllowed):not(.tarteaucitronIsDenied) .tarteaucitronDeny {
  opacity: 1;
  z-index: 2;
}
#tarteaucitron #tarteaucitronServices .tarteaucitronIsExpanded ul:not(:first-of-type) .tarteaucitronLine .tarteaucitronH3 {
  font-size: 1em;
}
#tarteaucitron #tarteaucitronServices .tarteaucitronIsExpanded ul:not(:first-of-type) .tarteaucitronLine .tarteaucitronName > *:not(.tarteaucitronH3) {
  line-height: 0;
}
#tarteaucitron #tarteaucitronServices .tarteaucitronIsExpanded ul:not(:first-of-type) .tarteaucitronLine .tacCurrentStatus,
#tarteaucitron #tarteaucitronServices .tarteaucitronIsExpanded ul:not(:first-of-type) .tarteaucitronLine .tarteaucitronReadmoreSeparator {
  font-size: inherit;
}
#tarteaucitron #tarteaucitronServices .tarteaucitron-toggle-group {
  padding: 0.2em 0 0 0;
  cursor: pointer;
  font-size: 0.8em;
  font-weight: 500;
}
#tarteaucitron #tarteaucitronServices .tarteaucitron-toggle-group span {
  color: inherit;
  font-size: inherit;
}
#tarteaucitron #tarteaucitronServices .tarteaucitron-toggle-group:after {
  content: "▾";
  font-size: 1em;
  margin-left: 1ch;
  display: inline-block;
  line-height: 0;
}
#tarteaucitron #tarteaucitronServices .tarteaucitronIsExpanded .tarteaucitron-toggle-group:after {
  transform: rotate(180deg) translateY(-0.1em);
}
#tarteaucitron #tarteaucitronServices #tarteaucitronServices_mandatory .tarteaucitronName {
  max-width: calc(100% - 3em);
}
#tarteaucitron #tarteaucitronServices #tarteaucitronServices_mandatory .tarteaucitronH3 {
  font-weight: 500 !important;
  font-size: 1em;
  max-width: 100%;
}
#tarteaucitron #tarteaucitronServices #tarteaucitronServices_mandatory br,
#tarteaucitron #tarteaucitronServices #tarteaucitronServices_mandatory .tarteaucitronAsk {
  display: none !important;
}
#tarteaucitron #tarteaucitronInfo {
  padding: 0 0 calc(var(--gap) / 2);
}
#tarteaucitron #tarteaucitronInfo button {
  margin-top: calc(calc(var(--gap) / 2) / 2);
  font-weight: normal;
  display: block;
}
#tarteaucitron #tarteaucitronInfo br {
  display: none;
}
#tarteaucitron #tarteaucitronInfo p {
  all: unset;
  display: inline;
}
#tarteaucitron #tarteaucitronMainLineOffset {
  margin-top: 0 !important;
}
@media screen and (max-width: 600px) {
  #tarteaucitron {
    width: calc(100% - calc(var(--gap) / 2) * 2);
    top: 50% !important;
  }
}

@keyframes slide-in-bottom {
  0% {
    transform: translate(-150%, 0) scale(1.3);
    opacity: 0;
    filter: blur(20px);
  }
  100% {
    transform: translate(0, 0) scale(1);
    opacity: 1;
    filter: 0;
  }
}
html body #tarteaucitronRoot div#tarteaucitronAlertBig {
  animation: slide-in-bottom 0.554s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
  left: calc(calc(var(--gap) / 2) / 2) !important;
  bottom: calc(calc(var(--gap) / 2) / 2) !important;
  background: rgba(255, 255, 255, 0.75);
  backdrop-filter: blur(12px);
  color: var(--wp--preset--color--main);
  display: none;
  position: fixed;
  box-sizing: content-box;
  z-index: 2147483645;
  padding: calc(calc(var(--gap) / 2) / 2);
  border: 0.5px solid #c6c6c6;
  border-radius: 1em !important;
  width: 100% !important;
  max-width: clamp(220px, 20rem, 400px) !important;
  box-shadow: 7px 7px 10px rgba(0, 0, 0, 0.1);
}
html body #tarteaucitronRoot div#tarteaucitronAlertBig a {
  color: var(--wp--preset--color--secondary);
}
html body #tarteaucitronRoot div#tarteaucitronAlertBig {
  flex-direction: row;
  flex-wrap: wrap;
}
html body #tarteaucitronRoot div#tarteaucitronAlertBig:focus {
  outline: 0;
}
html body #tarteaucitronRoot div#tarteaucitronAlertBig:before {
  content: "";
  display: none;
}
html body #tarteaucitronRoot div#tarteaucitronAlertBig #tarteaucitronCloseCross {
  position: absolute;
  top: calc(-0.5 * var(--gap) / 2);
  right: calc(-0.5 * var(--gap) / 2);
  width: 1.45em;
  height: 1.45em;
  padding: 0;
  background: rgba(255, 255, 255, 0.75);
  backdrop-filter: blur(12px);
  border: 0.5px solid var(--wp--preset--color--main);
  border-radius: 50%;
  cursor: pointer;
  overflow: hidden;
  display: grid;
  place-items: center;
}
html body #tarteaucitronRoot div#tarteaucitronAlertBig #tarteaucitronCloseCross::before {
  content: "×";
  display: block;
  line-height: 0.8;
  font-weight: 400;
  font-size: 1.8em;
}
html body #tarteaucitronRoot div#tarteaucitronAlertBig #tarteaucitronCloseCross span {
  display: none;
}
@media (hover: hover) {
  html body #tarteaucitronRoot div#tarteaucitronAlertBig #tarteaucitronCloseCross {
    transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  }
  html body #tarteaucitronRoot div#tarteaucitronAlertBig #tarteaucitronCloseCross::before {
    transition: inherit;
  }
  html body #tarteaucitronRoot div#tarteaucitronAlertBig #tarteaucitronCloseCross:hover {
    border-color: var(--wp--preset--color--secondary);
    background-color: var(--wp--preset--color--secondary);
    color: var(--wp--preset--color--white);
  }
  html body #tarteaucitronRoot div#tarteaucitronAlertBig #tarteaucitronCloseCross:hover:before {
    transform: rotate(-180deg);
  }
}
html body #tarteaucitronRoot div#tarteaucitronAlertBig #tarteaucitronDisclaimerAlert {
  margin: 0;
  margin-bottom: 0.3rem;
  padding: 0;
  text-align: left;
  color: var(--wp--preset--color--main);
  font-size: 1em !important;
  flex-basis: 100%;
}
html body #tarteaucitronRoot div#tarteaucitronAlertBig #tarteaucitronDisclaimerAlert a {
  color: var(--wp--preset--color--black);
  text-decoration: none;
}
html body #tarteaucitronRoot div#tarteaucitronAlertBig button:not(#tarteaucitronCloseCross) {
  display: inline-flex;
  width: fit-content;
  margin: 0 !important;
  align-items: center;
}
html body #tarteaucitronRoot div#tarteaucitronAlertBig button:not(#tarteaucitronCloseCross).tarteaucitronAllow {
  order: 4;
}
html body #tarteaucitronRoot div#tarteaucitronAlertBig button:not(#tarteaucitronCloseCross).tarteaucitronDeny {
  margin-left: auto !important;
  margin-right: calc(calc(var(--gap) / 2) / 2) !important;
  order: 3;
}
html body #tarteaucitronRoot div#tarteaucitronAlertBig #tarteaucitronPrivacyUrl,
html body #tarteaucitronRoot div#tarteaucitronAlertBig #tarteaucitronPrivacyUrlDialog {
  display: none !important;
}
@media screen and (max-width: 600px) {
  html body #tarteaucitronRoot div#tarteaucitronAlertBig {
    max-width: calc(100% - calc(var(--gap) / 2) * 4) !important;
  }
}
html body #tarteaucitronRoot.tarteaucitronBeforeVisible #tarteaucitronAlertBig {
  display: flex !important;
}

#tarteaucitronAlertBig #tarteaucitronCloseAlert,
#tarteaucitronAlertBig #tarteaucitronPersonalize,
#tarteaucitronAlertBig #tarteaucitronPersonalize2,
.tarteaucitronCTAButton,
#tarteaucitron #tarteaucitronPrivacyUrl,
#tarteaucitron #tarteaucitronPrivacyUrlDialog,
#tarteaucitronRoot .tarteaucitronDeny,
#tarteaucitronRoot .tarteaucitronAllow {
  background: var(--wp--preset--color--white);
  color: var(--wp--preset--color--secondary);
  border: 0.5px solid var(--wp--preset--color--secondary);
  cursor: pointer;
  font-size: max(10px, 0.75em);
  padding: 0.5em 1em;
  font-weight: normal;
  text-transform: uppercase;
  text-decoration: none;
  border-radius: 1.25em;
}

#tarteaucitronAlertBig #tarteaucitronPersonalize2 {
  background: var(--wp--preset--color--secondary);
  color: var(--wp--preset--color--white);
  font-weight: bold;
}

#tarteaucitron #tarteaucitronPrivacyUrl,
#tarteaucitron #tarteaucitronPrivacyUrlDialog {
  color: var(--wp--preset--color--secondary);
  text-decoration: underline;
  background-color: transparent;
  margin: 0;
  padding: 0;
}

/***
 * Icon
 */
/***
 * Small alert (unused)
 */
/***
 * Embeded cookies list
 *//*# sourceMappingURL=style.css.map */