@charset "UTF-8";
/* ----Normalize for all---- */
* {
  margin: 0;
  /* init margin and paddi */
  padding: 0;
  /* adding padding no change de fl */
  box-sizing: border-box;
  background: transparent;
  border: none;
  border-radius: none;
  /* remove tag a default sty */
  outline: none;
  /* Beautify fon */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-decoration: none;
  /* remove btns & inputs default sty */
  -webkit-appearence: none;
  -webkit-apparence: none;
  -webkit-text-size-adjust: 100%;
     -moz-text-size-adjust: 100%;
          text-size-adjust: 100%;
}

address {
  font-style: normal;
}

ul,
ol {
  padding: 0;
  list-style: none;
}

.overflow {
  width: var(--vw);
  height: var(--vh);
  overflow: hidden;
}

main {
  position: relative;
  width: 100%;
  height: 100%;
  /*opacity: 0;
  animation: appear 0s 1s forwards;

  @keyframes appear {
    0% {
      opacity: 0;
    }
    100% {
      opacity: 1;
    }
  } */
}

button {
  cursor: pointer;
}

body {
  position: relative;
  width: 100%;
  font-size: 16px;
}
body[focus=on] *:focus, body[focus=on] input[type=checkbox]:focus ~ label {
  outline: 2px solid #00f !important;
}

:root {
  --font-primary: "Roboto", sans-serif;
  --font-secondary: "charcuterie-sans", sans-serif;
  --font-tertiary: "verveine",sans-serif;
}

:root {
  --textlittle: max(14px, 0.875rem);
  --text: max(16px, 1rem);
  --textasideliste: max(16px, 1rem);
  --textbig: max(18px, 1.125rem);
  --textvbig: max(20px, 1.25rem);
  --textcitation: max(21px, 1.3125rem);
  --textfooter: max(18px, 1.125rem);
  --subtitle: max(14px, 0.875rem);
  --headerlogo: max(18px, 1.125rem);
  --footertitle: max(28px,1.625rem);
  --titleprod: max(28px,1.625rem);
  --titlebanderole: max(28px,1.625rem);
  --titletemplate: max(38px, 2.375rem);
  /* TITRES FLUIDES (Utilisation de clamp(min, preferred, max)) */
  /* (Mobile : 25px/1,5625rem, Desktop: 37px/2,3125rem) */
  --titleartists: clamp(1.5625rem, calc(1.5625rem + ((1vw - 11px) * 3.5294)), 2.3125rem);
  /* (Mobile: 32px/2rem, Desktop: 49px/3.0625rem) */
  --titlevlittle: clamp(2rem, calc(2rem + ((1vw - 3.6px) * 1.4757)), 3.0625rem);
  /* (Mobile: 38px/2.375rem, Desktop: 43px/2.68rem) */
  --titlelittle: clamp(2.375rem, 2.2719rem + 0.4398vw, 2.6875rem);
  /* (Mobile: 44px/2.75rem, Desktop: 49px/3.06rem) */
  --title: clamp(2.75rem, 2.6469rem + 0.4398vw, 3.0625rem);
  /* ATTENTION A ADAPTER EN FLUIDE SVP*/
  /* (Mobile: 50px/3.125rem, Desktop: 57px/3.56rem) */
  --titlemiddle: max( 50px, 3.125rem);
  /* ATTENTION A ADAPTER EN FLUIDE SVP*/
  /* (Mobile: 25px/1.5625rem, Desktop: 40px/2.3125rem) */
  --subtitlemiddle: clamp(1.563rem, 2.366vw + 0.986rem, 2.5rem);
  /* (Mobile: 58px/3.625rem, Desktop: 65px/4.06rem) */
  --titlebig: clamp(3.625rem, 3.4807rem + 0.6157vw, 4.0625rem);
  /* (Mobile: (58px-)67px/4,1875rem, Desktop: 104px/6,5rem) */
  --titlembig: clamp(3.625rem, 4.082vw + 2.622rem, 6.5rem);
  /* (Mobile: 77px/4,8125rem, Desktop: 134px/8,375rem) */
  --titlevbig: clamp(4.8125rem, calc(4.8125rem + ((1vw - 3.6px) * 4.9479)), 8.375rem);
  /* (Mobile: 28px/1,75rem, Desktop: 32px/2rem) */
  --titlemini: clamp(1.75rem, calc(1.75rem + ((1vw - 3.6px) * 0.3472)), 2rem);
}

@media (min-width: 980px) {
  :root {
    --textlittle: max(16px, 1rem);
    --textasideliste: max(20px, 1.25rem);
    --text: max(18px, 1.125rem);
    --textvbig: max(24px, 1.5rem);
    --textfooter: max(21px, 1.3125rem);
    --subtitle: max(16px, 1rem);
    --headerlogo: max(24px, 1.5rem);
    --footertitle: max(32px,2rem);
    --titleprod: max(32px,2rem);
    --titletemplate: max(48px, 3rem);
    --titlemiddle: max( 57px, 3.5625rem);
    --subtitlemiddle: max( 37px, 2.3125rem);
  }
}
@media (min-width: 1100px) {
  :root {
    --textbig: max(21px, 1.3125rem);
  }
}
@media (min-width: 1280px) {
  :root {
    --titlebanderole: max(49px,3.06rem);
  }
}
@media (min-width: 1440px) {
  :root {
    --textcitation: max(32px, 1.3125rem);
  }
}
:root {
  --primary: #162A6B;
  --secondary: #5E6BCC;
  --secondary2: #8CA3EC;
  --tertiary: #DD0343;
  --bg-color: #FFF2E8;
  --neutral: #FFFFFF;
}

body {
  background: var(--bg-color);
}

body,
.text {
  font-family: var(--font-primary);
  font-weight: 400;
  font-style: normal;
  font-size: var(--text);
  font-stretch: 100%;
  line-height: 1.4;
  color: var(--primary);
  font-variant-ligatures: none;
}

.link {
  /*display: inline-flex;
  text-decoration: none;
  width: fit-content;
  transition: color 0.2s ease-in-out;

  background:
    linear-gradient(to right, rgba(22, 42, 107, 1), rgba(22, 42, 107, 1)),
    linear-gradient(to right, rgba(94, 107, 204, 1), rgba(94, 107, 204, 1));
  background-size:
    100% 2px,
    0 2px;
  background-position:
    100% 100%,
    0 100%;
  background-repeat: no-repeat;
  transition: background-size 400ms;
  position: relative;
  position: relative;

  /*&::after {
    content: url(../assets/images/icon-link.svg);
    display: block;
    position: absolute;
    top: 0px;
    right: -20px;
    width: 1em;
    height: 1em;
    transition: color 400ms;
  }*/
  /*&--menu {
    font-size: 18px;
    &--active {
      background:
        linear-gradient(to right, rgba(22, 42, 107, 1), rgba(22, 42, 107, 1)),
        linear-gradient(to right, rgba(94, 107, 204, 1), rgba(94, 107, 204, 1));
      background-size:
        100% 2px,
        0 2px;
      background-position:
        100% 100%,
        0 100%;
      background-repeat: no-repeat;
      transition: background-size 400ms;
      position: relative;
      position: relative;
      &:hover,
      &:focus {
        background-size:
          0 2px,
          100% 2px;
          transition: background-size 400ms;
        &::after {
          content: url(../assets/images/icon-link-hover.svg);
          transition: color 400ms;
        }
      }
    }
    @media (min-width: v.$md){
      font-size: 20px;
    }
  } */
}
.link-menu {
  /* (Mobile: 44px/2.75rem, Desktop: 49px/3.06rem) */
  font-family: var(--font-secondary);
  font-size: clamp(2.75rem, 2.6469rem + 0.4398vw, 3.0625rem);
  font-style: normal;
  font-weight: 700;
  line-height: 1.15;
  color: var(--primary);
  font-variant-ligatures: none;
}
@media (min-width: 980px) {
  .link-menu {
    font-family: var(--font-primary);
    font-weight: 400;
    font-style: normal;
    font-size: 20px;
    font-stretch: 100%;
    line-height: 1;
  }
}

.menu-links__networks-title {
  font-family: var(--font-secondary);
  font-size: 24px;
  font-style: normal;
  font-weight: 700;
  line-height: 1.15;
  color: var(--primary);
  font-variant-ligatures: none;
}
.menu-links__networks-links li a {
  font-size: 18px;
  font-weight: 400;
  color: var(--primary);
}

.main {
  margin: 0 auto;
  overflow: hidden;
}

.text {
  max-width: 69ch;
}
.text--little {
  font-size: var(--textlittle);
  max-width: 64ch;
}
.text--little--citation {
  font-weight: 300;
}
.text--aside {
  font-size: 14px;
  line-height: 1.1;
  text-transform: uppercase;
  color: var(--tertiary);
}
.text--asidelist {
  font-size: var(--textasidelist);
  line-height: 1.1;
  font-weight: 600;
}
.text--big {
  font-size: var(--textbig);
}
.text--vbig {
  font-size: var(--textvbig);
  max-width: 58ch;
}
.text--citation {
  font-family: var(--font-tertiary);
  font-size: var(--textcitation);
  font-weight: 400;
  line-height: 1.35;
}
.text--artworks {
  font-size: var(--textlittle);
  color: var(--secondary);
}
@media (min-width: 1440px) {
  .text--artworks {
    font-size: var(--text);
  }
}
.text--footer {
  font-size: var(--textfooter);
  font-weight: 400;
  color: var(--neutral);
}

.section--about .text--little {
  font-size: var(--text);
}
@media (min-width: 980px) {
  .section--about .text--little {
    font-size: var(--textlittle);
  }
}

.title {
  font-family: var(--font-secondary);
  font-size: var(--title);
  font-style: normal;
  font-weight: 700;
  line-height: 1.15;
  color: var(--secondary);
  font-variant-ligatures: none;
}
.title--prod, .title--little, .title--mini, .title--vbig, .title--mbig, .title--big, .title--middle, .title--subtitlemiddle {
  color: var(--primary);
}
.title--mini {
  font-size: var(--titlemini);
  max-width: 70ch;
}
.title--prod {
  font-size: var(--titleprod);
  color: var(--tertiary);
}
.title--prod-mini {
  font-family: var(--font-tertiary);
  font-size: var(--text);
  font-weight: 400;
  line-height: 1.15;
}
.title--artists, .title--banderole {
  font-family: var(--font-tertiary);
  font-size: var(--titleartists);
  font-weight: 400;
  line-height: 1.1;
  color: var(--primary);
}
.title--template {
  font-family: var(--font-tertiary);
  font-size: var(--titletemplate);
  font-weight: 400;
  line-height: 1.1;
  color: var(--tertiary);
  margin-bottom: 2.5rem;
}
.title--banderole {
  font-size: var(--titlebanderole);
  color: var(--secondary);
}
.title--vlittle {
  font-size: var(--titlevlittle);
  color: var(--primary);
  max-width: 38ch;
}
.title--little {
  font-size: var(--titlelittle);
}
.title--subtitlemiddle {
  font-family: var(--font-tertiary);
  font-size: var(--subtitlemiddle);
  font-weight: 400;
  line-height: 1.1;
  text-align: center;
  max-width: 28ch;
  margin: 0 auto;
}
.title--subtitlemiddle--color {
  color: var(--secondary2);
}
.title--middle {
  font-size: var(--titlemiddle);
  line-height: 1.15;
}
.title--big {
  font-size: var(--titlebig);
}
.title--big span {
  color: var(--secondary);
}
.title--mbig {
  font-size: var(--titlembig);
}
.title--vbig {
  font-size: var(--titlevbig);
}
.title--footer {
  font-size: var(--footertitle);
  color: var(--secondary2);
}

.subtitle {
  font-family: var(--font-primary);
  font-size: var(--subtitle);
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  line-height: 1.1;
  color: var(--tertiary);
  text-transform: uppercase;
  font-variant-ligatures: none;
}
.subtitle--big {
  font-weight: 500;
}

.section--dark .text, .section--dark .subtitle {
  color: var(--neutral);
}
.section--dark .title {
  color: var(--secondary2);
}
.section--dark .title--prod {
  color: var(--tertiary);
}
.section--dark .title--prod-mini {
  color: var(--primary);
}
.section--dark .section--productions__el .text {
  color: var(--primary);
}

a {
  color: var(--primary);
  /*&:hover,
  &:focus {
    color: var(--primary);
    transition: color 0.2s ease-in-out;
  }*/
}
a:visited {
  color: var(--primary);
}

.link--footer {
  color: var(--neutral);
}
.link--footer:visited, .link--footer:hover, .link--footer:focus {
  color: var(--neutral);
}

strong {
  font-weight: 800;
}

.header .menu__logo {
  font-size: var(--headerlogo);
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
}

:root {
  --base-width: 1512;
  --origin-width: 375;
  --origin-margin: 24px;
  --columns-count: 4;
  --columns-gap: 1px;
  --rows-gap: 0px;
  --grid-color: #bada5550;
  --margin: var(--origin-margin);
  --vw: calc(100vw - (var(--margin) * 2));
  --vh: 100vh;
  --columns-size: calc(
    (var(--vw) - (var(--columns-count) - 1) * var(--columns-gap)) /
      var(--columns-count)
  );
  /* ESPACEMENTS VERTICAUX FLUIDES */
  --spacing-top: 240px;
  --spacing-bottom: var(--spacing-top);
  --spacing-xl: clamp(80px, 0.065vw + 70px, 160px);
}

.grid {
  display: flex;
  flex-direction: column;
}

@media (min-width: 600px) {
  :root {
    --origin-margin: 40px;
  }
}
/* --- AJUSTEMENTS POUR TABLETTE (à partir de 768px) --- */
@media (min-width: 768px) {
  :root {
    --origin-width: 1024;
    --origin-margin: 80px;
    --columns-gap: 16px;
    --columns-count: 8;
  }
}
@media (min-width: 980px) {
  .grid {
    display: grid;
    grid-template-columns: repeat(var(--columns-count), 1fr);
    grid-gap: var(--rows-gap) var(--columns-gap);
    max-width: calc(var(--columns-count) * var(--columns-size) + (var(--columns-count) - 1) * var(--columns-gap));
  }
  .grid > * {
    grid-column-start: 1;
    grid-column-end: -1;
  }

  .col-start-2 {
    grid-column-start: 2;
  }

  .col-start-3 {
    grid-column-start: 3;
  }

  .col-start-4 {
    grid-column-start: 4;
  }

  .col-start-6 {
    grid-column-start: 6;
  }

  .col-end-0 {
    grid-column-end: -1;
  }

  .col-end-1 {
    grid-column-end: -2;
  }

  .col-end-2 {
    grid-column-end: -3;
  }

  .col-end-3 {
    grid-column-end: -4;
  }

  .col-end-6 {
    grid-column-end: -7;
  }
}
/* --- AJUSTEMENTS POUR DESKTOP (à partir de 1100px) --- */
@media (min-width: 1100px) {
  :root {
    --origin-width: 1512;
    --origin-margin: 80px;
    --columns-gap: 24px;
  }
}
@media (min-width: 1440px) {
  :root {
    --origin-width: 1512;
    --origin-margin: 80px;
    --columns-gap: 24px;
    --columns-count: 12;
  }
}
@media (min-width: 1700px) {
  :root {
    --origin-margin: 120px;
  }
}
@media (min-width: 1900px) {
  :root {
    --origin-margin: 220px;
  }
}
/* COMMON */
html {
  scroll-behavior: smooth;
}

.disable-scrolling {
  height: 100%;
  overflow: hidden;
}

.body {
  background-image: url(../assets/images/background.png);
  background-repeat: repeat;
  background-size: auto;
  background-blend-mode: darken;
  /* background appel à participation */
}
.body .main {
  padding-top: 66px;
  overflow: clip;
}
.body--appel {
  background-image: url(../assets/images/background.png), url("../assets/images/tree1-mobile.png"), url("../assets/images/tree2-mobile.png");
  background-repeat: repeat, no-repeat, no-repeat;
  background-position: top left, top left, top right;
  background-size: auto, 15vw auto, 62vw auto;
  background-blend-mode: darken;
}
@media (min-width: 450px) {
  .body--appel {
    background-size: auto, 11vw auto, 50vw auto;
  }
}
@media (min-width: 768px) {
  .body--appel {
    background-image: url(../assets/images/background.png), url("../assets/images/tree1-desktop.png"), url("../assets/images/tree2-desktop.png");
    background-size: auto, 12vw auto, 47vw auto;
  }
}
@media (min-width: 980px) {
  .body--appel {
    background-size: auto, 10vw auto, 41vw auto;
  }
}
@media (min-width: 980px) {
  .body .main {
    padding-top: 88px;
  }
}

.header {
  /* FIN DU BURGER MENU NAV DESKTOP */
}
.header .menu {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding: 0px 24px;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  overflow: hidden;
  z-index: 10;
}
.header .menu > * {
  padding: 24px 0px;
}
.header .menu--color {
  background-color: var(--neutral);
  background-image: url(../assets/images/background.png);
  background-repeat: repeat;
  background-size: auto;
  background-blend-mode: darken;
}
.header .menu__logo {
  z-index: 10;
}
.header .menu__logo--appel {
  background-color: var(--bg-color);
}
.header .menu__burger {
  z-index: 10;
  background-color: transparent;
  position: relative;
  height: 24px;
  width: 24px;
  padding: 33px 0px;
  border: none;
  outline: none;
  cursor: pointer;
  font-size: 0;
  transform: rotate(0deg);
  transition: 0.5s ease-in-out;
}
.header .menu__burger:active span:nth-child(2) {
  top: 29px;
}
.header .menu__burger:active span:not(span:first-child):nth-child(4) {
  top: 35px;
}
.header .menu__burger span:not(span:first-child) {
  display: block;
  position: absolute;
  height: 3px;
  width: 24px;
  background-image: url(../assets/images/line1.svg);
  background-repeat: no-repeat;
  background-size: auto;
  background-blend-mode: darken;
  opacity: 1;
  right: 0;
  transform: rotate(0deg);
  transition: 0.25s ease-in-out;
}
.header .menu__burger span:nth-child(2) {
  top: 24px;
}
.header .menu__burger span:not(span:first-child):nth-child(3) {
  background-image: url(../assets/images/line2.svg);
  top: 32px;
}
.header .menu__burger span:not(span:first-child):nth-child(4) {
  background-image: url(../assets/images/line3.svg);
  top: 40px;
}
.header .menu-links {
  background: var(--bg-color);
  background-image: url(../assets/images/background.png);
  background-repeat: repeat;
  background-size: auto;
  background-blend-mode: darken;
  position: fixed;
  width: 100vw;
  height: 100vh;
  padding: 72px 24px 56px;
  top: 0;
  left: 0%;
  display: flex;
  flex-direction: column;
  opacity: 0;
  visibility: hidden;
  transform: scale(1.04);
  pointer-events: none;
}
.header .menu-links__list {
  display: flex;
  flex-direction: column;
  gap: 56px;
  justify-content: center;
  height: 100%;
}
.header .menu-links__list li {
  opacity: 0;
  transform: translateY(15px);
}
.header .menu-links__list li a {
  transition: color 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  position: relative;
}
.header .menu-links__list li a::after {
  content: "";
  background-image: url(../assets/images/line_active.svg);
  background-repeat: no-repeat;
  background-size: cover;
  position: absolute;
  bottom: 0px;
  left: 0px;
  width: 100%;
  height: 3px;
  z-index: 10;
  left: auto;
  right: 0;
  width: 0%;
  -webkit-clip-path: inset(0 0 0 0);
          clip-path: inset(0 0 0 0);
  transition: width 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.header .menu-links__list li a:hover {
  color: var(--secondary);
}
.header .menu-links__list li a:hover::after {
  left: 0;
  right: auto;
  width: 100%;
  transition: width 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.header .menu-links__list li .link-menu--active::after {
  left: 0;
  right: auto;
  width: 100%;
}
.header .menu-links__networks {
  display: flex;
  flex-direction: column;
  position: relative;
  gap: 1rem;
}
.header .menu-links__networks::before {
  content: "";
  background-image: url(../assets/images/butterfly-duo.png);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  width: 109px;
  height: 70px;
  aspect-ratio: 175/113;
  top: -37px;
  right: 0px;
  z-index: 2;
  opacity: 0;
  transform: scaleX(-1) translateX(-8px) scale(0.8);
}
.header .menu-links__networks-links {
  display: flex;
  flex-direction: row;
  gap: 56px;
}
.header .menu-links__networks-links li a {
  display: flex;
  flex-direction: row;
  justify-content: center;
  gap: 8px;
}
.header .menu-links__networks-links li a svg {
  fill: var(--primary);
}
.header .menu-links__networks-title, .header .menu-links__networks-links li {
  opacity: 0;
  transform: translateY(15px);
}
.header .menu-links::before {
  content: "";
  background-image: url(../assets/images/bird.gif.gif);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 66px;
  right: 0px;
  width: 30vw;
  height: 28vw;
  max-width: 174px;
  max-height: 161px;
  opacity: 0;
  transform: scaleX(-1) translateX(-16px) scale(0.8);
}
.header--color .menu {
  background-color: var(--neutral);
  background-image: url(../assets/images/background.png);
  background-repeat: repeat;
  background-size: auto;
  background-blend-mode: darken;
}
@media (min-width: 768px) {
  .header .menu {
    padding: 0px 40px;
  }
  .header .menu > * {
    padding: 32px 0px;
  }
  .header .menu-links {
    padding: 72px 40px 56px;
  }
}
@media (min-width: 980px) {
  .header .menu__burger {
    display: none;
    pointer-events: none;
  }
  .header .menu-links {
    background: none;
    background-image: none;
    position: initial;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    padding: 0px;
    opacity: 1;
    visibility: visible;
    transform: scale(1);
    pointer-events: initial;
  }
  .header .menu-links__list {
    flex-direction: row;
    gap: 32px;
    align-items: center;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
  }
  .header .menu-links__list li {
    opacity: 1;
    transform: translateY(0);
  }
  .header .menu-links__list li a {
    padding: 32px 0px;
  }
  .header .menu-links__list li a::after {
    bottom: 30px;
  }
  .header .menu-links__networks {
    display: none;
  }
}

.link-menu--active {
  color: var(--secondary);
  position: relative;
}
.link-menu--active:visited {
  color: var(--secondary);
}
.link-menu--active a::after {
  content: "";
  background-image: url(../assets/images/line_active.svg);
  background-repeat: no-repeat;
  background-size: cover;
  position: absolute;
  bottom: 0px;
  height: 3px;
  z-index: 10;
  left: 0;
  right: auto;
  width: 100%;
}
@media (min-width: 980px) {
  .link-menu--active a::after {
    bottom: 30px;
  }
}

/*@keyframes textSlide {
    from {
        color: transparent;
        transform: translateY(10px);
    }

    to {
        color: var(--color-text);
        transform: translateY(0px);
    }
}*/
/* ouverture menu*/
body[data-menu] .menu-links {
  opacity: 1;
  visibility: visible;
  transform: scale(1);
  pointer-events: initial;
  transition: opacity 0.5s cubic-bezier(0.25, 1, 0.5, 1), transform 0.5s cubic-bezier(0.25, 1, 0.5, 1);
}
body[data-menu] .menu-links__list li, body[data-menu] .menu-links__networks-title, body[data-menu] .menu-links__networks-links li {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 0.4s cubic-bezier(0.25, 1, 0.5, 1), transform 0.4s cubic-bezier(0.25, 1, 0.5, 1);
}
body[data-menu] .menu-links__list li:nth-child(1) {
  transition-delay: 0.35s;
}
body[data-menu] .menu-links__list li:nth-child(2) {
  transition-delay: 0.4s;
}
body[data-menu] .menu-links__list li:nth-child(3) {
  transition-delay: 0.45s;
}
body[data-menu] .menu-links__list li:nth-child(4) {
  transition-delay: 0.5s;
}
body[data-menu] .menu-links__networks-title {
  transition-delay: 0.6s;
}
body[data-menu] .menu-links__networks-links li:nth-child(1) {
  transition-delay: 0.7s;
}
body[data-menu] .menu-links__networks-links li:nth-child(2) {
  transition-delay: 0.7s;
}
body[data-menu] .menu-links::before {
  opacity: 1;
  transform: scaleX(-1) translateX(0px) scale(1);
  transition: opacity 0.4s ease-out 0s, transform 0.5s cubic-bezier(0.25, 1, 0.5, 1) 0s;
}
body[data-menu] .menu-links__networks::before {
  opacity: 1;
  transform: scaleX(-1) translateX(0px) scale(1);
  transition: opacity 0.4s ease-out 0.7s, transform 0.5s cubic-bezier(0.25, 1, 0.5, 1) 0.8s;
}
@media (min-width: 980px) {
  body[data-menu] .menu-links {
    transform: none;
  }
}

/* anim icon menu */
body[data-menu] .menu__burger span:not(span:first-child):nth-child(2) {
  top: 31px;
  transform: rotate(-135deg);
}

body[data-menu] .menu__burger span:not(span:first-child):nth-child(3) {
  opacity: 0;
}

body[data-menu] .menu__burger span:not(span:first-child):nth-child(4) {
  top: 32px;
  transform: rotate(135deg);
  transition: 0.2s ease-in-out;
}

.footer {
  position: relative;
  color: var(--neutral);
  background: var(--primary);
  display: flex;
  flex-direction: column;
  gap: 32px;
  width: 100%;
  padding: 120px 0 32px;
  border-top: 8px solid transparent;
  border-image-source: url(../assets/images/stroke_bg_blue_mobile.svg);
  border-image-slice: 8;
  border-image-outset: 7px 0 0 0;
  border-image-repeat: stretch;
  z-index: 15;
}
.footer > * {
  width: calc(var(--columns-count) * var(--columns-size) + (var(--columns-count) - 1) * var(--columns-gap));
  margin: 0 auto;
}
.footer__content {
  gap: 40px;
}
.footer__content .title--footer {
  margin-bottom: 1rem;
}
.footer__content .footer-logo {
  font-size: 0;
  width: 75%;
  height: auto;
  max-width: 300px;
}
.footer__content .footer-logo svg {
  width: 100%;
  height: auto;
}
.footer__content .footer-list {
  display: flex;
  flex-direction: column;
  gap: 40px;
}
.footer__content .footer-list__nav {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
}
.footer__content .footer-list__nav .links li:not(:last-child) {
  margin-bottom: 16px;
}
.footer__content .footer-list__nav .links li .link {
  transform: scale(1);
  transition: transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.footer__content .footer-list__nav .links li .link:hover, .footer__content .footer-list__nav .links li .link:focus {
  transform: scale(0.95);
}
.footer__content .footer-list__partner .heaj-logo {
  display: block;
  font-size: 0px;
  width: 85px;
  height: 24px;
  aspect-ratio: 142/40;
}
.footer__content .footer-list__partner .heaj-logo img {
  width: 100%;
  height: auto;
}
.footer__legals {
  font-weight: 300;
  color: var(--neutral);
  text-transform: uppercase;
  padding-top: 32px;
  border-top: 0.5px solid var(--neutral);
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.footer__legals .text {
  color: var(--neutral);
}
.footer__legals ul {
  display: flex;
  flex-direction: row;
  gap: 24px;
}
.footer__legals ul li a:visited {
  color: var(--neutral);
}
@media (min-width: 450px) {
  .footer__content .footer-list__nav {
    justify-content: unset;
    gap: 80px;
  }
}
@media (min-width: 812px) {
  .footer__content {
    flex-direction: row-reverse;
    justify-content: space-between;
  }
  .footer__content .footer-list__nav {
    gap: 24px;
  }
}
@media (min-width: 980px) {
  .footer {
    padding: 104px 0 48px;
    gap: 56px;
    background-clip: unset;
    border-top: 25px solid transparent;
    border-image-source: url(../assets/images/stroke_bg_blue_desktop.svg);
    border-image-slice: 25;
    border-image-outset: 9px 0 0 0;
    position: relative;
  }
  .footer__content .title--footer {
    margin-bottom: 2rem;
  }
  .footer__content .footer-logo {
    grid-column-end: 4;
    order: 1;
    width: 100%;
    max-width: 100%;
  }
  .footer__content .footer-list {
    grid-column-start: 5;
    order: 2;
    gap: 64px;
  }
  .footer__content .footer-list__nav {
    justify-content: start;
    gap: 0px;
  }
  .footer__content .footer-list__nav div {
    width: calc(2 * var(--columns-size) + 2 * var(--columns-gap));
  }
  .footer__content .footer-list__partner .heaj-logo {
    width: 170px;
    height: 48px;
  }
  .footer__legals {
    flex-direction: row;
    justify-content: space-between;
    padding-top: 48px;
    gap: 0px;
  }
  .footer__legals ul {
    order: 2;
    gap: 32px;
  }
  .footer__legals .copyright {
    order: 1;
  }
  .footer a:not(:has(img, svg)) {
    position: relative;
  }
  .footer a:not(:has(img, svg))::after {
    content: "";
    background-image: url(../assets/images/line_active_white.svg);
    background-repeat: no-repeat;
    background-size: cover;
    position: absolute;
    bottom: -4px;
    left: 0px;
    width: 100%;
    height: 2px;
    z-index: 10;
    left: auto;
    right: 0;
    width: 0%;
    -webkit-clip-path: inset(0 0 0 0);
    clip-path: inset(0 0 0 0);
    transition: width 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  }
  .footer a:not(:has(img, svg)):hover::after {
    left: 0;
    right: auto;
    width: 100%;
    transition: width 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  }
}
@media (min-width: 1440px) {
  .footer__content .footer-list {
    grid-column-start: 7;
  }
}

.footer--apropos::after, .footer--home::after {
  content: "";
  background-image: url(../assets/images/tree_branch_left_mobile.png);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: -96px;
  left: 0;
  aspect-ratio: 127/198;
  width: 127px;
  height: auto;
  z-index: 17;
}

@media (min-width: 980px) {
  .footer--home::after {
    content: none;
  }

  .footer--apropos::after {
    background-image: url(../assets/images/tree_branch_left_desktop.png);
    top: -182px;
    left: 0;
    aspect-ratio: 117/264;
    width: 117px;
  }
}
.footer--newsletter {
  padding: 265px 0 32px;
}
@media (min-width: 980px) {
  .footer--newsletter {
    padding: 206px 0 48px;
  }
}

.section {
  width: calc(var(--columns-count) * var(--columns-size) + (var(--columns-count) - 1) * var(--columns-gap));
  max-width: 100%;
  margin: var(--spacing-top) auto var(--spacing-bottom);
  /* section bg color */
}
.section--color, .section--dark, .section--portrait {
  background-color: var(--neutral);
  width: auto;
  margin: 0;
  padding: var(--spacing-top) 0 var(--spacing-bottom);
}
.section--color > *, .section--dark > *, .section--portrait > * {
  width: calc(var(--columns-count) * var(--columns-size) + (var(--columns-count) - 1) * var(--columns-gap));
  max-width: 100%;
  margin: 0 auto;
}
.section--dark {
  background-color: var(--primary);
}
.section .title--mini {
  margin-bottom: 1rem;
}
.section .title--artists {
  margin-bottom: 0px;
}
.section .title--vlittle {
  margin-bottom: 1rem;
}
.section .title--little {
  margin-bottom: 1.5rem;
}
.section .title--subtitlemiddle {
  margin-bottom: 2rem;
}
.section .title--middle {
  margin-bottom: 2rem;
  line-height: 1.15;
}
.section .title--big {
  margin-bottom: 1.5rem;
}
.section .title--mbig {
  margin-bottom: 1rem;
}
.section .title--vbig {
  margin-bottom: 1.5rem;
  line-height: 1;
}
.section .subtitle {
  margin-bottom: 0.5rem;
}
.section .subtitle--big {
  margin-bottom: 0.25rem;
}
.section .text {
  margin-bottom: 1.5rem;
}
.section .text--big {
  margin-bottom: 2rem;
}
.section .text--citation {
  margin-bottom: 0.5rem;
}
.section .text--artworks {
  margin-bottom: 0px;
}
.section .text--aside {
  margin-bottom: 0.5rem;
}
@media (min-width: 980px) {
  .section .title--mini {
    margin-bottom: 1.5rem;
  }
  .section .title--artists {
    margin-bottom: 0.25rem;
  }
  .section .title--vlittle {
    margin-bottom: 2rem;
  }
  .section .title--little {
    margin-bottom: 2rem;
  }
  .section .title--subtitlemiddle {
    margin-bottom: 1.5rem;
  }
  .section .title--middle {
    margin-bottom: 1.5rem;
  }
  .section .title--big {
    margin-bottom: 1.5rem;
  }
  .section .title--vbig {
    margin-bottom: 2rem;
  }
  .section .text--big {
    margin-bottom: 3.5rem;
  }
  .section .text--citation {
    margin-bottom: 1rem;
  }
}

/* COMPONENTS */
.section--hero {
  margin: 0 auto var(--spacing-bottom);
}
.section--hero-home {
  padding-top: 120px;
  margin: 0 auto 120px;
}
.section--hero-home .title--big {
  font-size: 0;
  margin-bottom: 0.5rem;
  display: flex;
  flex-direction: column;
  align-content: center;
  flex-wrap: wrap;
}
.section--hero-home .title--big .logo {
  width: 100%;
  height: auto;
  max-width: 89vw;
}
.section--hero-home .title--subtitlemiddle {
  margin-bottom: 0px;
}
.section--hero-ecofeminism {
  padding-top: 160px;
}
.section--hero-ecofeminism .title--vbig {
  font-size: clamp(3.125rem, 7.507vw + 1.281rem, 8.375rem);
  line-height: 1.15;
  margin-bottom: 0.5rem;
  text-align: center;
}
.section--hero-ecofeminism a {
  display: inline-flex;
  flex-direction: column;
  font-size: 0px;
  width: 100%;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  align-self: center;
  margin-bottom: 120px;
  position: relative;
}
.section--hero-ecofeminism a .scroll-down {
  width: 48px;
  height: 48px;
  align-self: center;
}
.section--hero-ecofeminism a::before {
  content: "";
  background-image: url(../assets/images/clouds.png);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 1.5rem;
  left: 0;
  width: 60vw;
  max-width: 280px;
  height: auto;
  aspect-ratio: 234/95;
  transform: scaleX(-1);
  z-index: -1;
}
.section--hero-ecofeminism__img {
  width: 282px;
  height: auto;
  max-width: 522px;
  aspect-ratio: 354/540.44;
  margin-bottom: 1rem;
  align-self: end;
  transform: translateX(var(--margin));
}
.section--hero-expo {
  background-image: url(../assets/images/background.png);
  background-repeat: repeat;
  background-size: auto;
  background-blend-mode: darken;
  background-clip: content-box;
  margin: 0;
  padding-top: 0px;
  padding-bottom: clamp(120px, 108.444px + 2.963vw, 144px);
  position: relative;
}
.section--hero-expo:before {
  content: "";
  position: absolute;
  display: block;
  bottom: 0px;
  left: 0px;
  width: 150%;
  height: clamp(180px, (108.444px + 2.963vw) * 1.5, 216px);
  background-image: url("../assets/images/bg_white_stroke_bottom.svg");
  background-position: bottom left;
  background-repeat: stretch;
  background-size: auto;
  overflow: hidden;
  transform: rotate(-6.73deg) translateX(-5%) translateY(-33%);
  transform-origin: center;
  z-index: -1;
}
.section--hero-expo:after {
  content: "";
  background-image: url(../assets/images/plants.png);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  bottom: 0px;
  right: 0px;
  width: 27vw;
  height: 37vw;
  max-width: 239px;
  max-height: 322px;
  transform: translateY(18%);
  z-index: 2;
}
.section--hero-expo__content {
  padding-top: clamp(56px, 49.6px + 2vw, 80px);
}
.section--hero-expo__content > div:first-child {
  width: 100%;
  max-width: 86vw;
}
.section--hero-expo__content > div:first-child .title--big {
  font-size: 0px;
  margin-bottom: 0.5rem;
}
.section--hero-expo__content > div:first-child .title--big .logo {
  width: 100%;
  height: auto;
}
.section--hero-expo__content > div:first-child .title--vbig {
  font-size: 0px;
  width: 100%;
}
.section--hero-expo__content > div:first-child .title--vbig .expo-title {
  width: 100%;
  height: auto;
  aspect-ratio: 541/104;
}
.section--hero-expo__content__img {
  width: calc(2 * var(--columns-size) + var(--columns-gap) + var(--origin-margin));
  align-self: flex-end;
  transform: translateX(var(--origin-margin));
}
.section--hero-expo__content div:last-child {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-top: 32px;
}
.section--hero-expo__infos {
  margin-top: 144px;
}
.section--hero-expo__infos .title {
  position: relative;
}
.section--hero-expo__infos .title:before {
  content: "";
  display: block;
  background-image: url(../assets/images/butterfly-big.png);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  left: -33px;
  top: -90px;
  width: 64px;
  height: auto;
  aspect-ratio: 83/95;
  transform: scaleX(-1);
}
.section--hero-about {
  padding-top: 120px;
  margin: 0 auto 120px;
}
.section--hero-about .title--vbig {
  margin-bottom: 104px;
}
.section--hero-about .appletree {
  width: 100%;
  max-width: 440px;
  aspect-ratio: 345/342;
  margin: 0 auto;
  margin-bottom: 1.5rem;
}
.section--hero-about .text--citation {
  margin: 0 auto;
  margin-top: 96px;
}
.section--hero-template {
  background-image: url(../assets/images/background.png);
  background-repeat: repeat;
  background-size: auto;
  background-blend-mode: darken;
  padding: 64px 0 120px;
  margin-bottom: calc(7.9vw + 50px);
  position: relative;
}
.section--hero-template::before {
  content: "";
  position: absolute;
  display: block;
  bottom: -5%;
  left: 0px;
  width: 150%;
  height: clamp(180px, (108.444px + 2.963vw) * 1.5, 216px);
  background-image: url(../assets/images/bg_white_stroke_bottom.svg);
  background-position: bottom left;
  background-repeat: stretch;
  background-size: auto;
  overflow: hidden;
  transform: rotate(-6.73deg) translateX(-5%) translateY(-33%);
  transform-origin: center;
  z-index: -1;
}
.section--hero-template::after {
  content: "";
  display: block;
  background-image: url(../assets/images/bg_wood_big.png);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  bottom: -1px;
  left: -25%;
  width: 128vw;
  height: auto;
  aspect-ratio: 1913/1131;
  transform: translateY(60%) scaleX(-1);
}
.section--hero-template__content {
  order: 3;
}
.section--hero-template__content .title--vbig {
  position: relative;
  margin-bottom: 0rem;
}
.section--hero-template__content .title--vbig:before {
  content: "";
  display: block;
  background-image: url(../assets/images/butterfly-little.png);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  left: -9px;
  top: -11px;
  width: 20px;
  height: 30px;
  aspect-ratio: 2/3;
  transform: rotate(0deg) translateY(0px);
  -webkit-animation: none;
  animation: none;
}
.section--hero-template__content .text--vbig:last-of-type {
  margin-bottom: 120px;
}
.section--hero-template__back {
  margin-bottom: 2.5rem;
}
.section--hero-template__back .link--map {
  order: 1;
}
.section--hero-template__back .link--map img {
  width: 17px;
  height: 10px;
}
.section--hero-template__back .link--map:hover span {
  -webkit-text-decoration: dotted;
          text-decoration: dotted;
  -webkit-text-decoration-line: underline;
          text-decoration-line: underline;
  -webkit-text-decoration-style: dashed;
          text-decoration-style: dashed;
  -webkit-text-decoration-color: var(--primary);
          text-decoration-color: var(--primary);
  text-underline-offset: 4px;
  text-decoration-thickness: 1px;
}
.section--hero-template__list {
  order: 2;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  -moz-column-gap: 24px;
       column-gap: 24px;
  margin-bottom: 80px;
}
.section--hero-template__list .list__el:nth-of-type(2) {
  order: 3;
}
.section--hero-template__list .list__el:last-of-type {
  width: -webkit-min-content;
  width: -moz-min-content;
  width: min-content;
  min-width: 60%;
  order: 2;
}
.section--hero-template__list .list__el:last-of-type .text--asidelist {
  margin-bottom: 0px;
}
@media (min-width: 450px) {
  .section--hero-template__content .citation {
    width: 75%;
    margin: 0 auto;
  }
}
@media (min-width: 550px) {
  .section--hero-expo:after {
    transform: translateY(34%);
  }
  .section--hero-expo__content div:last-child {
    flex-direction: row;
    gap: 8px;
  }
  .section--hero-template {
    margin-bottom: calc(10.9vw + 50px);
  }
}
@media (min-width: 768px) {
  .section--hero-home .title--big .logo {
    max-width: 75vw;
  }
  .section--hero-expo:after {
    transform: translateY(42%);
  }
  .section--hero-expo__content div:first-child, .section--hero-expo__content div:last-child {
    max-width: 64vw;
  }
  .section--hero-expo__content__img {
    width: calc(4 * var(--columns-size) + var(--columns-gap) * 3 + var(--origin-margin));
  }
  .section--hero-template {
    margin-bottom: calc(13.9vw + 50px);
  }
  .section--hero-template::before {
    bottom: -7%;
  }
}
@media (min-width: 980px) {
  .section--hero-home {
    margin: 0 auto 240px;
    padding-top: 104px;
  }
  .section--hero-home .title--big {
    grid-column-start: 2;
    grid-column-end: -2;
  }
  .section--hero-home .title--big .logo {
    max-width: 45vw;
  }
  .section--hero-ecofeminism {
    padding-top: 132px;
  }
  .section--hero-ecofeminism .title--vbig {
    margin-bottom: 0rem;
  }
  .section--hero-ecofeminism a {
    margin-bottom: 0px;
  }
  .section--hero-ecofeminism a .scroll-down {
    width: 60px;
    height: 60px;
  }
  .section--hero-ecofeminism a::before {
    width: calc(3 * var(--columns-size) + 2 * var(--columns-gap));
    max-width: 546px;
    transform: translateX(calc(var(--margin) * 0.75 * -1)) scaleX(-1);
  }
  .section--hero-ecofeminism__img {
    grid-column-start: 7;
    order: 2;
    width: calc(2 * (var(--columns-size)) + var(--columns-gap) + var(--origin-margin));
  }
  .section--hero-ecofeminism div:last-child {
    grid-column-start: 1;
    grid-column-end: -3;
    order: 1;
    margin-top: 240px;
  }
  .section--hero-ecofeminism div:last-child .text--vbig {
    max-width: 49ch;
  }
  .section--hero-expo:before {
    width: 102%;
    background-size: cover;
    transform: rotate(-3.06deg) translateX(-1%) translateY(-25%);
  }
  .section--hero-expo__content > * {
    grid-column-start: 1;
    grid-column-end: -4;
    width: 100%;
  }
  .section--hero-expo__content .title--big {
    margin-bottom: 2rem;
  }
  .section--hero-expo__content .text--big {
    font-size: var(--textvbig);
  }
  .section--hero-expo__content__img {
    grid-column-start: 6;
    grid-column-end: -1;
    width: calc(3 * var(--columns-size) + 2 * var(--columns-gap) + var(--origin-margin));
    transform: translateX(var(--origin-margin));
  }
  .section--hero-expo__content div:last-child {
    margin-top: 0px;
  }
  .section--hero-expo__infos > * {
    grid-column-start: 2;
    grid-column-end: -2;
  }
  .section--hero-expo__infos .title:before {
    top: 0px;
    left: calc(((var(--columns-size)) + var(--columns-gap)) * -1);
    width: 83px;
    height: auto;
  }
  .section--hero-about {
    padding-top: 104px;
    margin: 0 auto 104px;
  }
  .section--hero-about .appletree {
    width: 100%;
    max-width: 556px;
    grid-column-end: 4;
    align-self: end;
  }
  .section--hero-about div {
    grid-column-start: 5;
    align-self: end;
  }
  .section--hero-template {
    padding: 64px var(--margin) 120px;
    margin-bottom: calc(15vw + 50px);
  }
  .section--hero-template::before {
    width: 102%;
    background-size: cover;
    transform: rotate(-3.06deg) translateX(-1%) translateY(-25%);
    bottom: -11%;
  }
  .section--hero-template > * {
    width: 100%;
  }
  .section--hero-template__content {
    grid-column-start: 3;
    grid-column-end: 7;
  }
  .section--hero-template__content .title--vbig:before {
    top: -9px;
  }
  .section--hero-template__content .text--vbig {
    font-size: 20px;
  }
  .section--hero-template__content .citation {
    width: 86%;
  }
  .section--hero-template__back {
    margin-bottom: 80px;
  }
  .section--hero-template__list {
    flex-direction: column;
    flex-wrap: nowrap;
    -moz-column-gap: 0px;
         column-gap: 0px;
    grid-column-end: 3;
  }
  .section--hero-template__list .list__el:nth-of-type(2) {
    order: 2;
  }
  .section--hero-template__list .list__el:last-of-type {
    width: auto;
    min-width: none;
    max-width: 90%;
    order: 3;
  }
  .section--hero-template__list .list__el:last-of-type .text--asidelist {
    margin-bottom: 1.25rem;
  }
}
@media (min-width: 1280px) {
  .section--hero-expo__infos > * {
    margin: 0 calc(var(--columns-size) / 2);
  }
  .section--hero-about .appletree {
    width: 100%;
    max-width: 556px;
    grid-column-end: 5;
  }
  .section--hero-about div {
    grid-column-start: 5;
    align-self: end;
  }
  .section--hero-template__content .text--vbig {
    font-size: 20px;
  }
  .section--hero-template__content .citation {
    width: 540px;
    max-width: 68%;
  }
}
@media (min-width: 1440px) {
  .section--hero-home {
    margin: 0 auto 320px;
  }
  .section--hero-home .title--big {
    grid-column-start: 4;
    grid-column-end: -4;
  }
  .section--hero-home .title--big .logo {
    max-width: 100%;
  }
  .section--hero-ecofeminism a::before {
    width: calc(5 * var(--columns-size) + 4 * var(--columns-gap));
    max-width: 546px;
  }
  .section--hero-ecofeminism__img {
    grid-column-start: 9;
    width: calc(4 * var(--columns-size) + 3 * var(--columns-gap) + var(--origin-margin));
    margin-left: auto;
  }
  .section--hero-ecofeminism div:last-child {
    grid-column-start: 2;
    grid-column-end: 9;
    margin-top: 360px;
  }
  .section--hero-expo__content > * {
    grid-column-start: 2;
    grid-column-end: 7;
  }
  .section--hero-expo__content__img {
    grid-column-start: 7;
    grid-column-end: -1;
    width: calc(5 * var(--columns-size) + 4 * var(--columns-gap) + var(--origin-margin));
    max-width: none;
    transform: translateX(calc(var(--columns-size) + var(--columns-gap)));
  }
  .section--hero-expo__infos > * {
    grid-column-start: 3;
    grid-column-end: -3;
  }
  .section--hero-about .appletree {
    grid-column-end: 6;
  }
  .section--hero-about div {
    grid-column-start: 7;
    align-self: end;
  }
  .section--hero-about .text--citation {
    grid-column-start: 4;
    grid-column-end: 10;
  }
  .section--hero-template__content {
    grid-column-start: 4;
    grid-column-end: -4;
  }
  .section--hero-template__content .text--vbig {
    font-size: 24px;
  }
  .section--hero-template__content .citation {
    max-width: none;
  }
  .section--hero-template__list {
    grid-column-end: 4;
  }
  .section--hero-template__list .list__el:last-of-type {
    width: auto;
    min-width: none;
    max-width: 75%;
    order: 3;
  }
}
@media (min-width: 1728px) {
  .section--hero {
    margin-bottom: calc(17vw + 50px);
  }
}
@media (min-width: 1900px) {
  .section--hero-expo__content__img {
    transform: translateX(var(--origin-margin));
  }
}

.section--hero-appel {
  padding-top: 96px;
}
.section--hero-appel .title--big {
  max-width: 19ch;
}
.section--hero-appel p.text:nth-of-type(1) {
  margin-bottom: 32px;
}
@media (min-width: 980px) {
  .section--hero-appel {
    margin-top: 80px;
    padding-top: 0px;
  }
  .section--hero-appel > * {
    grid-column: 2/span 5;
  }
  .section--hero-appel p.text:nth-of-type(1) {
    margin-bottom: 40px;
  }
}
@media (min-width: 1280px) {
  .section--hero-appel .title--big {
    max-width: none;
  }
}

.section--hero-expoafter {
  background-color: var(--neutral);
  background-image: url(../assets/images/background.png);
  background-repeat: repeat;
  background-size: auto;
  background-blend-mode: darken;
  padding: 56px 0 120px;
  margin-bottom: 0px;
}
.section--hero-expoafter .title--vbig {
  margin-bottom: 0.5rem;
}
.section--hero-expoafter .title--mbig {
  color: var(--tertiary);
}
.section--hero-expoafter .title--mini {
  max-width: 42ch;
}
.section--hero-expoafter .text {
  max-width: 46ch;
}
.section--hero-expoafter .video-container {
  width: 100%;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  position: relative;
}
.section--hero-expoafter .video-container::before, .section--hero-expoafter .video-container::after {
  content: "";
  position: absolute;
  top: -11px;
  left: 0;
  width: 100%;
  height: 0px;
  background-clip: padding-box;
  border-bottom: 16px solid transparent;
  border-image-source: url(../assets/images/bg-texture-white2.svg);
  border-image-slice: 16;
  border-image-repeat: stretch;
  z-index: 3;
  pointer-events: none;
}
.section--hero-expoafter .video-container::after {
  border-bottom: none;
  border-top: 16px solid transparent;
  background-clip: padding-box;
  top: auto;
  bottom: -2px;
}
.section--hero-expoafter .video-container .play-trigger {
  position: absolute;
  top: 50%;
  left: 50%;
  opacity: 1;
  transform: translateX(-50%) translateY(-50%);
  transition: opacity 0.3s ease, transform 0.2s ease;
}
.section--hero-expoafter .video-container .play-trigger img {
  width: 72px;
  height: auto;
}
.section--hero-expoafter .video-container.is-playing .play-trigger {
  opacity: 0;
  pointer-events: none;
}
.section--hero-expoafter .video-container video {
  width: 100%;
  height: auto;
  aspect-ratio: 1080/1920;
}
@media (min-width: 980px) {
  .section--hero-expoafter {
    padding: 56px var(--margin) 144px;
  }
  .section--hero-expoafter .title--vbig {
    font-size: 4.8125rem;
  }
  .section--hero-expoafter .title--mbig {
    font-size: 3.625rem;
    margin-bottom: 0px;
  }
  .section--hero-expoafter .title--mini {
    font-size: 1.75rem;
  }
  .section--hero-expoafter .text {
    margin-bottom: 16px;
  }
  .section--hero-expoafter__content {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 100%;
    grid-column-end: 6;
  }
  .section--hero-expoafter__content > * {
    width: 100%;
    min-width: 0;
  }
  .section--hero-expoafter .video-container {
    display: block;
    border-radius: 16px;
    grid-column-start: 6;
    min-width: 0;
    max-width: 440px;
    transform: rotate(3.45deg);
    overflow: hidden;
  }
  .section--hero-expoafter .video-container::before, .section--hero-expoafter .video-container::after {
    display: none;
  }
  .section--hero-expoafter .video-container::after {
    content: "";
    display: block;
    background-image: url(../assets/images/border_video.svg);
    background-repeat: no-repeat;
    background-size: contain;
    border: none;
    background-clip: initial;
    border-image-source: none;
    position: absolute;
    top: -6px;
    bottom: auto;
    left: -3px;
    width: 102%;
    height: 102%;
    max-width: 103%;
    max-height: 103%;
    aspect-ratio: 1080/1920;
    z-index: 2;
  }
  .section--hero-expoafter .video-container .play-trigger img {
    width: 104px;
    height: 104px;
  }
}
@media (min-width: 1280px) {
  .section--hero-expoafter {
    padding: 96px var(--margin) 144px;
  }
  .section--hero-expoafter .title--vbig {
    font-size: var(--titlevbig);
    margin-bottom: 1rem;
  }
  .section--hero-expoafter .title--mbig {
    font-size: var(--titlembig);
  }
  .section--hero-expoafter .title--mini {
    font-size: var(--titlemini);
  }
  .section--hero-expoafter .text {
    font-size: 24px;
  }
}
@media (min-width: 1440px) {
  .section--hero-expoafter__content {
    grid-column-start: 2;
    grid-column-end: 8;
  }
  .section--hero-expoafter .video-container {
    grid-column-start: 8;
    grid-column-end: -2;
    max-width: 480px;
  }
}

.section--about {
  display: flex;
  flex-direction: column;
  gap: 16px;
  position: relative;
  width: initial;
  overflow: visible;
  margin-top: 120px;
}
.section--about__img {
  display: block;
  width: 71vw;
  max-width: 285px;
  max-height: auto;
  height: auto;
}
.section--about__content {
  width: calc(var(--columns-count) * var(--columns-size) + (var(--columns-count) - 1) * var(--columns-gap));
  max-width: 100%;
  margin: auto;
}
.section--about::before {
  content: "";
  background-image: url(../assets/images/clouds.png);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  bottom: -1.5rem;
  right: var(--margin);
  width: 60vw;
  max-width: 280px;
  height: 0px;
  padding-bottom: 24%;
  transform: translateY(100%);
}
@media (min-width: 450px) {
  .section--about__img {
    max-width: 320px;
  }
}
@media (min-width: 768px) {
  .section--about {
    flex-direction: row;
    gap: 24px;
    margin-right: var(--margin);
  }
  .section--about__img {
    align-self: baseline;
    width: auto;
    max-width: 285px;
    transform: none;
  }
  .section--about__content {
    width: auto;
    margin-top: 136px;
  }
  .section--about::before {
    top: auto;
    bottom: 0px;
    left: auto;
    right: var(--margin);
    padding-bottom: 15%;
    transform: translateY(125%);
  }
}
@media (min-width: 980px) {
  .section--about {
    gap: var(--columns-gap);
  }
  .section--about__img {
    width: calc(var(--columns-size) * 2 + var(--columns-gap) + var(--margin));
    max-width: -webkit-fit-content;
    max-width: -moz-fit-content;
    max-width: fit-content;
  }
  .section--about__content {
    width: calc(var(--columns-size) * 5 + var(--columns-gap) * 4);
    margin: 0px;
    margin-top: 136px;
  }
  .section--about::before {
    bottom: 24px;
    right: 0px;
    transform: translateY(100%) translateX(20%);
  }
}
@media (min-width: 1280px) {
  .section--about::before {
    width: 480px;
    max-width: none;
    height: 190px;
    padding-bottom: 0%;
  }
}
@media (min-width: 1440px) {
  .section--about::before {
    width: 480px;
    height: 190px;
  }
}
@media (min-width: 1440px) {
  .section--about {
    gap: calc(var(--columns-size) / 2 + var(--columns-gap));
  }
  .section--about__img {
    width: calc(var(--columns-size) * 2.5 + var(--columns-gap) * 2 + var(--margin));
  }
  .section--about__content {
    width: calc(var(--columns-size) * 6 + var(--columns-gap) * 5);
  }
  .section--about::before {
    width: 480px;
    height: 190px;
    padding-bottom: 0%;
    transform: translateY(100%) translateX(30%);
  }
}

.section--aboutproject {
  position: relative;
  margin: 120px auto var(--spacing-bottom);
}
.section--aboutproject .title--big {
  max-width: 22ch;
}
.section--aboutproject::before {
  content: "";
  background-image: url(../assets/images/clouds.png);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  bottom: -1.5rem;
  left: 0;
  aspect-ratio: 234/95;
  width: 60vw;
  max-width: 280px;
  height: auto;
  transform: translateY(100%) translateX(-28%);
}
.section--aboutproject::after {
  content: "";
  background-image: url(../assets/images/bird.gif.gif);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  bottom: -136px;
  right: calc(-1 * (var(--margin)));
  width: 30vw;
  height: 28vw;
  max-width: 174px;
  max-height: 161px;
  transform: scaleX(-1) translateY(100%);
}
.section--aboutproject__img {
  display: block;
  width: 71vw;
  max-width: 285px;
  max-height: 490px;
  height: auto;
  align-self: flex-start;
  transform: translateX(calc(-1 * (var(--margin))));
  margin-bottom: 16px;
}
@media (min-width: 980px) {
  .section--aboutproject {
    margin-bottom: 320px;
  }
  .section--aboutproject:before {
    width: calc(3 * var(--columns-size) + 2 * var(--columns-gap));
    bottom: -120px;
    left: calc(2 * var(--columns-size) + var(--columns-gap));
    max-width: 436px;
  }
  .section--aboutproject:after {
    bottom: 0px;
  }
  .section--aboutproject .text {
    margin-bottom: 48px;
  }
  .section--aboutproject > * {
    grid-column-start: 4;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
  }
  .section--aboutproject__img {
    position: absolute;
    width: calc(2 * var(--columns-size) + var(--columns-gap) + var(--origin-margin));
    max-width: 484px;
    max-height: 843px;
    grid-column-start: 1;
    transform: translateX(calc(-1 * var(--origin-margin))) translateY(-55%);
  }
}
@media (min-width: 1440px) {
  .section--aboutproject {
    margin-bottom: 384px;
  }
  .section--aboutproject:before {
    width: calc(4 * var(--columns-size) + 3 * var(--columns-gap));
    bottom: -184px;
    left: calc(2 * var(--columns-size) + var(--columns-gap));
  }
  .section--aboutproject:after {
    width: 30vw;
    height: 28vw;
    max-width: 250px;
    max-height: 216px;
    transform: scaleX(-1) translateY(100%);
  }
  .section--aboutproject > * {
    grid-column-start: 5;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
  }
  .section--aboutproject__img {
    grid-column-start: 1;
    width: calc(4 * var(--columns-size) + 3 * var(--columns-gap) + 0.5 * var(--origin-margin));
    transform: translateX(calc(-1 * var(--origin-margin))) translateY(-64%);
  }
}
.section--artists {
  padding-bottom: clamp(120px, 108.444px + 2.963vw, 144px);
  position: relative;
  z-index: 1;
}
.section--artists__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  pointer-events: none;
}
.section--artists__bg::before {
  content: "";
  display: block;
  width: 100vw;
  height: 440px;
  margin-top: 120px;
  background-image: url("../assets/images/bg-trees2.png");
  background-size: auto 100%;
  background-repeat: no-repeat;
  background-position: 85%;
  position: -webkit-sticky;
  position: sticky;
  top: 30%;
  transform: translateX(calc(var(--margin) * -1));
  filter: opacity(0.4);
}
.section--artists .title--little {
  margin-bottom: 2.5rem;
}
.section--artists__content {
  display: flex;
  flex-direction: column;
  gap: 56px;
}
.section--artists__content .artists-row {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  -moz-column-gap: 32px;
       column-gap: 32px;
  row-gap: 56px;
}
.section--artists__content .artists-row__el {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.section--artists__content .artists-row__el .title--artists {
  text-align: center;
}
.section--artists__content .artists-row__el .text--artworks {
  text-align: center;
}
@media (min-width: 768px) {
  .section--artists__bg::before {
    margin-top: 144px;
    height: 50vh;
    background-position: 55%;
  }
  .section--artists__content .artists-row {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (min-width: 980px) {
  .section--artists .title--little {
    margin-bottom: 4.5rem;
  }
}
@media (min-width: 1024px) {
  .section--artists__bg::before {
    margin-top: 0px;
    position: absolute;
    top: 8%;
    height: 88%;
    background-position: 48%;
  }
  .section--artists__content {
    gap: 24px;
  }
  .section--artists__content .artists-row {
    padding: 8px var(--margin);
    width: 100vw;
    background-color: var(--neutral);
    background-clip: padding-box;
    border: 12px solid transparent;
    border-left: 0px;
    border-right: 0px;
    border-image-source: url(../assets/images/border-artists-row.png);
    border-image-slice: 12;
    border-image-repeat: stretch;
    display: flex;
    flex-direction: row;
    gap: unset;
    justify-content: space-between;
    transform: translateX(calc(var(--margin) * -1)) rotate(1.35deg);
  }
  .section--artists__content .artists-row--2 {
    transform: translateX(calc(var(--margin) * -1)) rotate(-1.35deg);
  }
  .section--artists__content .artists-row__el {
    align-items: baseline;
  }
  .section--artists__content .artists-row__el .artworks-type {
    width: 100%;
    display: flex;
    justify-content: center;
  }
  .section--artists__content .artists-row__el .title--artists {
    text-align: start;
  }
  .section--artists__content .artists-row__el .text--artworks {
    text-align: start;
  }
}
@media (min-width: 1440px) {
  .section--artists__content {
    gap: 32px;
  }
}
@media (min-width: 1728px) {
  .section--artists__content {
    gap: 40px;
  }
}

.main--expoafter .section--artists {
  margin-bottom: 120px;
}
.main--expoafter .section--artists .title--little {
  font-size: var(--titlebig);
}

.section--context {
  position: relative;
}
.section--context .title--mini {
  margin-bottom: 0.5rem;
}
.section--context__charts {
  display: flex;
  flex-direction: column;
  gap: 40px;
  margin: 0 auto;
  margin-bottom: 144px;
}
.section--context__charts .chartslist {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  max-width: 360px;
}
.section--context__charts .chartslist img {
  margin-bottom: 1rem;
  width: auto;
  height: 120px;
}
.section--context__charts .chartslist p:last-child {
  margin-bottom: 0px;
}
.section--context > .title--mini {
  position: relative;
}
.section--context > .title--mini:before {
  content: "";
  background-image: url(../assets/images/cloud_big.svg);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: -72px;
  left: 0px;
  width: 1098px;
  height: auto;
  aspect-ratio: 1098/345;
  z-index: -2;
  transform: translateX(calc((var(--margin) + 43.5%) * -1));
}
.section--context > .text:last-of-type {
  position: relative;
  max-width: none;
}
.section--context > .text:last-of-type:after {
  content: "";
  background-image: url(../assets/images/plants.png);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  bottom: 8px;
  right: 0px;
  width: 27vw;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  max-width: 250px;
  max-height: 337px;
  aspect-ratio: 250/337;
  transform: translateX(var(--margin)) translateY(100%);
  z-index: 2;
}
.section--context::before {
  content: "";
  background-image: url(../assets/images/bird.gif.gif);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 0px;
  left: calc(0px - var(--margin));
  width: 30vw;
  height: auto;
  aspect-ratio: 122/113;
  max-width: 174px;
  max-height: 161px;
  transform: translateY(-100%);
}
@media (min-width: 450px) {
  .section--context > .title--mini:before {
    top: -86px;
    transform: translateX(-45%);
  }
}
@media (min-width: 525px) {
  .section--context > .title--mini:before {
    width: 1008px;
    top: -86px;
    transform: translateX(-44%);
  }
}
@media (min-width: 768px) {
  .section--context__charts {
    flex-direction: row;
    flex-wrap: wrap;
    align-items: baseline;
    justify-content: space-between;
    gap: 2.5rem 1rem;
  }
  .section--context__charts .chartslist {
    width: calc(50% - 0.5rem);
    max-width: none;
  }
}
@media (min-width: 980px) {
  .section--context__charts {
    margin-bottom: 240px;
  }
  .section--context > .title, .section--context > .text {
    grid-column-start: 2;
    grid-column-end: -2;
  }
  .section--context > .title--mini:before {
    top: 0;
    left: -52%;
    width: 1008px;
    transform: translateY(-30%);
  }
  .section--context > .text:last-of-type:after {
    top: 0px;
    right: 0px;
    width: calc(1 * var(--columns-size) + var(--columns-gap) + var(--origin-margin));
    max-width: 250px;
    max-height: none;
    transform: translateX(calc(1 * var(--columns-size) + var(--columns-gap) + var(--origin-margin))) translateY(-55%);
  }
}
@media (min-width: 1024px) {
  .section--context__charts {
    flex-wrap: nowrap;
    gap: 0 1.5rem;
  }
  .section--context__charts .chartslist {
    width: calc(33% - 0.25rem);
  }
}
@media (min-width: 1280px) {
  .section--context__charts {
    gap: 0 2rem;
  }
  .section--context__charts .chartslist {
    width: calc(33% - 2rem);
  }
  .section--context > .title--mini:before {
    left: 11%;
    width: 906px;
    transform: translateY(-29%);
  }
}
@media (min-width: 1440px) {
  .section--context__charts {
    grid-column-start: 2;
    grid-column-end: -2;
  }
  .section--context::before {
    content: "";
    width: calc(2 * var(--columns-size) + var(--columns-gap) + var(--origin-margin));
    height: auto;
    max-width: 290px;
    max-height: 268px;
  }
  .section--context > .title, .section--context > .text {
    grid-column-start: 3;
    grid-column-end: -3;
  }
  .section--context > .title--mini:before {
    left: 12%;
    width: 66vw;
    transform: translateY(-39%);
  }
  .section--context > .text:last-of-type:after {
    width: calc(1.5 * var(--columns-size) + 2 * var(--columns-gap) + var(--origin-margin));
    transform: translateX(calc(2.5 * var(--columns-size) + var(--columns-gap) + var(--origin-margin))) translateY(-37%);
  }
}
@media (min-width: 1600px) {
  .section--context > .title, .section--context > .text {
    margin: 0 calc(var(--columns-size) / 2);
  }
  .section--context > .text:last-of-type:after {
    width: calc(1.5 * var(--columns-size) + 2 * var(--columns-gap) + var(--origin-margin));
    transform: translateX(calc(2.75 * var(--columns-size) + var(--columns-gap) + var(--origin-margin))) translateY(-40%);
  }
}

.section--conditions {
  position: relative;
}
.section--conditions__content {
  display: flex;
  flex-direction: column;
  max-width: 360px;
  margin: 0 auto;
}
.section--conditions .conditions {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  align-items: center;
}
.section--conditions .conditions .title {
  display: inline-flex;
  justify-content: center;
  align-self: stretch;
  width: 100%;
  height: auto;
  padding: 0px;
  background: var(--neutral);
  background-repeat: no-repeat;
  background-clip: padding-box;
  border: 16px solid transparent;
  border-radius: 4px;
  border-image-source: url(../assets/images/bg-texture-white2.svg);
  border-image-slice: 16;
  border-image-repeat: stretch;
  margin-bottom: 1rem;
}
.section--conditions .conditions > li:nth-child(2) .title {
  border-image-source: url(../assets/images/bg-texture-white.svg);
}
.section--conditions .conditions__el div {
  padding: 0px 1.5rem;
  margin-bottom: 2rem;
}
.section--conditions .conditions__el ol,
.section--conditions .conditions__el ul {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  list-style: disc;
  list-style-position: outside;
  margin-left: 1rem;
  margin-bottom: 1.5rem;
}
.section--conditions .conditions__el ol {
  list-style: decimal;
}
.section--conditions .conditions__el p {
  margin-bottom: 1.5rem;
}
.section--conditions::before {
  content: "";
  background-image: url(../assets/images/bird.png);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: -142px;
  left: calc(0px - var(--margin));
  width: 30vw;
  height: 28vw;
  max-width: 174px;
  max-height: 161px;
}
.section--conditions::after {
  content: "";
  background-image: url(../assets/images/totem_matriarcat.png);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  bottom: 0px;
  right: 0;
  width: var(--columns-size);
  height: auto;
  aspect-ratio: 141/269;
  max-width: 141px;
  max-height: 269px;
  transform: translateY(100%);
}
@media (min-width: 768px) {
  .section--conditions::after {
    width: calc(var(--columns-size) * 2);
    bottom: 3rem;
  }
}
@media (min-width: 880px) {
  .section--conditions__content {
    max-width: 720px;
  }
  .section--conditions .conditions {
    flex-direction: row;
    flex-wrap: wrap;
    align-items: baseline;
    justify-content: space-between;
    gap: 0rem 1.5rem;
  }
  .section--conditions .conditions__el {
    width: calc(50% - 24px);
  }
  .section--conditions::after {
    bottom: 7.5rem;
  }
}
@media (min-width: 1100px) {
  .section--conditions {
    display: grid;
    grid-template-columns: repeat(var(--columns-count), 1fr);
    grid-gap: var(--rows-gap) var(--columns-gap);
    max-width: calc(var(--columns-count) * var(--columns-size) + (var(--columns-count) - 1) * var(--columns-gap));
  }
  .section--conditions__content {
    margin: 0 calc(var(--columns-size) / 3);
    max-width: 100%;
    grid-column-start: 1;
    grid-column-end: -1;
  }
  .section--conditions .conditions {
    flex-wrap: nowrap;
  }
  .section--conditions .conditions__el {
    width: calc(33% - 24px);
  }
  .section--conditions .conditions__el .title {
    font-size: 43px;
  }
  .section--conditions:before {
    top: -4px;
    transform: translateY(-100%);
  }
  .section--conditions::after {
    bottom: -13rem;
    transform: translateY(0%);
  }
}
@media (min-width: 1280px) {
  .section--conditions__content {
    margin: 0 calc(var(--columns-size) / 2);
    max-width: 1124px;
  }
  .section--conditions .conditions__el {
    width: calc(33% - 14px);
  }
  .section--conditions .conditions__el .title {
    font-size: 49px;
  }
  .section--conditions::after {
    width: calc(var(--columns-size) * 1.5);
  }
}
@media (min-width: 1440px) {
  .section--conditions__content {
    margin: 0 auto;
    grid-column-start: 2;
    grid-column-end: -2;
  }
  .section--conditions .conditions {
    gap: 0rem 2.5rem;
  }
  .section--conditions .conditions__el {
    width: calc(33% - 16px);
  }
}
@media (min-width: 1728px) {
  .section--conditions .conditions {
    gap: 0rem 3.5rem;
  }
}

.section--definition .title--big {
  margin-bottom: 0.5rem;
}
.section--definition .text:nth-child(3) {
  margin-bottom: 144px;
}
.section--definition .appletree {
  max-width: 440px;
  aspect-ratio: 345/342;
  margin-bottom: 1.5rem;
}
.section--definition div .title--mini {
  position: relative;
}
.section--definition div .title--mini:before {
  content: "";
  display: block;
  background-image: url(../assets/images/butterfly-big.png);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: -24px;
  right: -32px;
  width: 64px;
  height: auto;
  aspect-ratio: 83/95;
}
@media (min-width: 980px) {
  .section--definition > .title, .section--definition > .text {
    grid-column-end: -3;
  }
  .section--definition .appletree {
    width: 100%;
    max-width: 549px;
    grid-column-end: 5;
  }
  .section--definition div {
    grid-column-start: 5;
    align-self: end;
  }
  .section--definition div .title--mini {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
  .section--definition div .title--mini:before {
    top: -80px;
    right: -78px;
    width: 83px;
    height: auto;
  }
}
@media (min-width: 1440px) {
  .section--definition > .title, .section--definition > .text {
    grid-column-start: 2;
    grid-column-end: -4;
  }
  .section--definition > .text {
    grid-column-end: -6;
  }
  .section--definition .appletree {
    grid-column-start: 2;
    grid-column-end: 7;
  }
  .section--definition div {
    grid-column-start: 7;
    grid-column-end: -2;
  }
}

.section--events {
  align-items: center;
  position: relative;
}
.section--events .title--big {
  text-align: center;
  margin-bottom: 56px;
}
.section--events .listevents {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 24px;
  margin-bottom: 144px;
}
.section--events .listevents > * {
  text-align: center;
}
.section--events .listevents p {
  font-size: 0px;
}
.section--events .listevents p img {
  width: 41vw;
  max-width: 208px;
  height: auto;
  aspect-ratio: 160/170;
  margin-bottom: 8px;
}
.section--events .listevents .title--mini {
  font-size: 28px;
  max-width: 23ch;
}
.section--events .listevents__el:last-child .title--mini {
  margin-bottom: 0px;
}
.section--events .text--citation:nth-child(3) {
  position: relative;
}
.section--events .text--citation:nth-child(3):before {
  content: "";
  display: block;
  background-image: url(../assets/images/cloud-big-alone.svg);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 164px;
  max-width: 327px;
  height: auto;
  aspect-ratio: 327/103;
  transform: translateX(-24%) translateY(calc(-100% - 16px)) scaleX(-1);
}
.section--events .text--citation:nth-child(4) {
  margin-bottom: 32px;
}
.section--events .text--citation--little:last-child {
  font-weight: 300;
  margin: 0 40px;
}
.section--events .chipkos-img {
  width: 792px;
  height: auto;
  aspect-ratio: 734/238;
  margin-bottom: 8px;
}
.section--events:before {
  content: "";
  display: block;
  background-image: url(../assets/images/cloud-little-alone.svg);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  bottom: 0px;
  right: calc(-1 * var(--margin));
  width: 109px;
  max-width: 272px;
  height: auto;
  aspect-ratio: 272/89;
  transform: translateY(100%);
}
@media (min-width: 768px) {
  .section--events .listevents {
    flex-direction: row;
    flex-wrap: wrap;
    align-items: baseline;
    justify-content: center;
    gap: 2.5rem 2.5rem;
    margin: 0 auto;
    margin-bottom: 144px;
    max-width: 840px;
  }
  .section--events .text--citation:nth-child(3):before {
    transform: translateX(-75%) translateY(calc(-100% - 16px)) scaleX(-1);
  }
}
@media (min-width: 980px) {
  .section--events .title--big {
    margin-bottom: 72px;
  }
  .section--events .chipkos-img {
    width: 100vw;
    max-width: 1513px;
    margin: 0 calc(-1 * var(--margin));
    margin-bottom: 8px;
    place-self: center;
  }
  .section--events .text--citation, .section--events .text--little {
    grid-column-start: 3;
    grid-column-end: -3;
    place-self: center;
  }
  .section--events .text--citation:nth-child(3):before {
    top: 24px;
    left: calc(-1 * (var(--columns-size) + var(--columns-gap)));
    transform: translateX(-100%);
  }
  .section--events .text--citation:nth-child(4) {
    position: relative;
  }
  .section--events .text--citation:nth-child(4):before {
    content: "";
    display: block;
    background-image: url(../assets/images/cloud-little-alone.svg);
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    bottom: 0px;
    right: calc(-1 * (2 * var(--columns-size) + 2 * var(--columns-gap) - 40px));
    width: 109px;
    max-width: 272px;
    height: auto;
    aspect-ratio: 272/89;
    transform: translateX(100%);
  }
  .section--events:before {
    display: none;
  }
}
@media (min-width: 1100px) {
  .section--events .text--citation:nth-child(3):before {
    width: 275px;
  }
  .section--events .text--citation:nth-child(4):before {
    width: 190px;
  }
}
@media (min-width: 1280px) {
  .section--events .listevents {
    flex-direction: row;
    flex-wrap: wrap;
    align-items: baseline;
    justify-content: center;
    gap: 0 0.5rem;
    max-width: none;
  }
}
@media (min-width: 1440px) {
  .section--events .listevents .title--mini {
    font-size: 32px;
  }
  .section--events .text--citation, .section--events .text--little {
    grid-column-start: 4;
    grid-column-end: -4;
    place-self: center;
  }
  .section--events .text--citation:nth-child(3):before {
    width: 327px;
  }
  .section--events .text--citation:nth-child(4):before {
    width: 272px;
  }
}

.section--ecofeminism {
  margin: var(--spacing-top) auto calc(58.9vw + 50px);
  position: relative;
  overflow: visible;
}
.section--ecofeminism__citation {
  margin: 0 auto;
}
.section--ecofeminism .text--citation {
  margin-top: 144px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  position: relative;
  text-indent: -13px;
}
.section--ecofeminism .text--citation:before {
  content: "";
  background-image: url(../assets/images/butterfly-duo.png);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  width: 109px;
  height: 70px;
  aspect-ratio: 175/113;
  top: -50px;
  right: -24px;
  transform: scaleX(-1);
  z-index: 2;
}
.section--ecofeminism:after {
  content: "";
  display: block;
  background-image: url(../assets/images/bg_wood_big.png);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  bottom: -1px;
  left: -19%;
  width: 138vw;
  height: auto;
  aspect-ratio: 1920/1131;
  transform: translateY(100%);
  z-index: -2;
}
@media (min-width: 980px) {
  .section--ecofeminism {
    margin-bottom: 0px;
    padding-bottom: 440px;
  }
  .section--ecofeminism:after {
    bottom: 0px;
    left: 50%;
    width: 1485px;
    height: auto;
    aspect-ratio: 1920/1131;
    transform: translateX(-50%) translateY(30%);
    z-index: -2;
  }
  .section--ecofeminism .subtitle, .section--ecofeminism .title, .section--ecofeminism .button, .section--ecofeminism div:first-of-type {
    grid-column-start: 2;
    grid-column-end: 8;
  }
}
@media (min-width: 1280px) {
  .section--ecofeminism .subtitle, .section--ecofeminism .title, .section--ecofeminism .button {
    grid-column-start: 1;
    grid-column-end: 5;
  }
  .section--ecofeminism .subtitle {
    grid-column-end: -1;
  }
  .section--ecofeminism .title {
    grid-row: 2 span;
    margin-bottom: 56px;
  }
  .section--ecofeminism div:first-of-type {
    grid-column-start: 5;
    grid-column-end: -1;
  }
  .section--ecofeminism .text--citation {
    font-size: 24px;
    text-indent: -15px;
  }
}
@media (min-width: 1440px) {
  .section--ecofeminism {
    margin-bottom: 0px;
    padding-bottom: 440px;
  }
  .section--ecofeminism:after {
    bottom: 0px;
    left: calc(-1 * var(--origin-margin));
    width: 100.5vw;
    height: auto;
    aspect-ratio: 1920/1131;
    transform: translateY(30%);
    z-index: -2;
  }
  .section--ecofeminism .subtitle, .section--ecofeminism .title, .section--ecofeminism .button {
    grid-column-end: 7;
  }
  .section--ecofeminism .subtitle {
    grid-column-end: -1;
  }
  .section--ecofeminism div:first-of-type {
    grid-column-start: 7;
  }
  .section--ecofeminism .text--citation {
    font-size: 32px;
    text-indent: -20px;
  }
}
@media (min-width: 1728px) {
  .section--ecofeminism {
    padding-bottom: 520px;
  }
}
@media (min-width: 1920px) {
  .section--ecofeminism {
    padding-bottom: 560px;
  }
}

.section--expo {
  margin-top: 0px;
  padding-top: 160px;
  position: relative;
}
.section--expo::after {
  content: "";
  background-image: url(../assets/images/clouds.png);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  bottom: -56px;
  right: 0;
  aspect-ratio: 234/95;
  width: 60vw;
  max-width: 280px;
  height: auto;
  transform: translateX(calc(var(--margin) * 1)) translateY(100%);
}
@-webkit-keyframes defilementInfinis {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}
@keyframes defilementInfinis {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}
.section--expo__date, .section--expo__place {
  padding: 16px var(--margin) 6px;
  width: 100vw;
  background-color: var(--neutral);
  background-clip: padding-box;
  border: 12px solid transparent;
  border-left: 0px;
  border-right: 0px;
  border-image-source: url(../assets/images/border-artists-row.png);
  border-image-slice: 12;
  border-image-repeat: stretch;
  /*display: flex;
  flex-direction: row;
  gap: 24px;
  justify-content: space-between;*/
  position: absolute;
  transform: translateX(calc(var(--margin) * -1)) rotate(1.31deg);
  overflow: hidden;
}
.section--expo__date ul, .section--expo__place ul {
  display: flex;
  flex-direction: row;
  gap: 24px;
  justify-content: space-between;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  white-space: nowrap;
  -webkit-animation: defilementInfinis 20s linear infinite;
          animation: defilementInfinis 20s linear infinite;
}
.section--expo__date ul li, .section--expo__place ul li {
  flex-shrink: 0;
}
.section--expo__date {
  top: -8px;
}
.section--expo__place {
  top: 72px;
  transform: translateX(calc(var(--margin) * -1)) rotate(-2.12deg);
}
.section--expo__date .title--banderole {
  color: var(--tertiary);
}
.section--expo img {
  width: 78%;
  height: auto;
  max-width: 380px;
  aspect-ratio: 283/236;
  transform: translateX(calc(-1 * var(--margin))) scaleX(-1);
  margin-bottom: 8px;
}
.section--expo .title--big {
  margin-bottom: 8px;
}
@media (min-width: 980px) {
  .section--expo {
    padding-top: 220px;
  }
  .section--expo::after {
    width: calc(3 * var(--columns-size) + 2 * var(--columns-gap));
    max-width: 100%;
    bottom: 24px;
  }
  .section--expo__place {
    top: 88px;
  }
  .section--expo img {
    width: calc(3 * var(--columns-size) + 2 * var(--columns-gap) + var(--origin-margin));
    max-width: 100%;
    grid-column-end: 5;
  }
  .section--expo__content {
    grid-column-start: 5;
  }
}
@media (min-width: 1280px) {
  .section--expo {
    padding-top: 280px;
  }
  .section--expo__place {
    top: 104px;
  }
}
@media (min-width: 1440px) {
  .section--expo {
    padding-top: 400px;
  }
  .section--expo::after {
    width: calc(4 * var(--columns-size) + 3 * var(--columns-gap));
  }
  .section--expo__date, .section--expo__place {
    padding: 32px var(--margin) 24px;
    gap: 40px;
  }
  .section--expo__place {
    top: 144px;
  }
  .section--expo img {
    width: calc(5 * var(--columns-size) + 4 * var(--columns-gap) + var(--origin-margin));
    max-width: 100%;
    grid-column-end: 7;
  }
  .section--expo__content {
    grid-column-start: 7;
    grid-column-end: -2;
    align-self: center;
  }
}

.sib-form {
  font-family: var(--font-primary);
  font-size: var(--text);
  background-attachment: initial;
  padding: 32px 24px;
  background: var(--neutral);
  background-clip: padding-box;
  border: 16px solid transparent;
  border-radius: 8px;
  border-image-source: url(../assets/images/bg-texture-white2.svg);
  border-image-slice: 16;
  border-image-repeat: stretch;
}
.sib-form #sib-container {
  background: none;
  display: inline-block;
  margin: 0 auto;
  padding: 0px;
  width: 100%;
}
.sib-form #sib-container form {
  display: flex;
  flex-direction: column;
  /*background: var(--neutral);
  border-radius: 16px;
  border: 1px solid #162A6B;*/
}
.sib-form #sib-container .sib-input {
  padding: 0;
  margin-bottom: 32px;
}
.sib-form #sib-container .sib-input .entry__label {
  color: #162A6B;
  font-size: 21px;
  font-style: normal;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
  margin-bottom: 8px;
}
.sib-form #sib-container .sib-input .entry__label::after {
  color: var(--font-primary);
  margin-left: 4px;
}
.sib-form #sib-container .sib-input .entry__field {
  padding: 0;
  margin: 0;
  border: none;
  border-bottom: 0.5px solid #162A6B;
  border-radius: 0;
}
.sib-form #sib-container .sib-input .entry__field .input {
  color: #162A6B;
  font-size: 18px;
  font-style: normal;
  font-weight: 200;
  padding: 0;
}
.sib-form #sib-container .sib-input .entry__field .input::-moz-placeholder {
  color: #162A6B;
  font-size: 18px;
}
.sib-form #sib-container .sib-input .entry__field .input:-ms-input-placeholder {
  color: #162A6B;
  font-size: 18px;
}
.sib-form #sib-container .sib-input .entry__field .input::placeholder {
  color: #162A6B;
  font-size: 18px;
}
.sib-form #sib-container .sib-input .entry__choice {
  margin-bottom: 0;
}
.sib-form #sib-container .sib-input:has(.entry__choice) {
  margin-bottom: 40px;
}
.sib-form #sib-container .sib-form-block {
  margin-bottom: 32px;
  padding: 0;
}
.sib-form #sib-container .sib-form-block:has(.button) {
  margin-bottom: 0;
}
.sib-form #sib-container .sib-form__declaration {
  display: none;
}
.sib-form #sib-container .checkbox {
  margin-right: 0.3em;
}
@media (min-width: 980px) {
  .sib-form {
    border-radius: 16px;
    border-image-source: url(../assets/images/bg-texture-white3.svg);
  }
}
@media (min-width: 1440px) {
  .sib-form {
    padding: 40px 32px;
  }
}

.section--inscription {
  width: 100%;
  margin: var(--spacing-top) auto 0;
  padding-bottom: calc(var(--spacing-bottom) + 105px);
  position: relative;
  z-index: 0;
  /* bd trees */
}
.section--inscription::after {
  content: "";
  background-image: url(../assets/images/bg-trees.png);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  width: 200vw;
  bottom: 0px;
  left: -21%;
  transform: rotate(-1deg);
  aspect-ratio: 804.93/260.27;
  z-index: -1;
}
.section--inscription .subtitle {
  width: calc(var(--columns-count) * var(--columns-size) + (var(--columns-count) - 1) * var(--columns-gap));
  margin: 0 auto;
  margin-bottom: 0.5rem;
}
.section--inscription .inscription {
  display: flex;
  flex-direction: column;
  gap: 40px;
  width: calc(var(--columns-count) * var(--columns-size) + (var(--columns-count) - 1) * var(--columns-gap));
  margin: 0 auto;
}
.section--inscription .inscription__info {
  position: relative;
}
.section--inscription .inscription__info::before {
  content: "";
  display: block;
  background-image: url(../assets/images/butterfly-big.png);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  right: -2px;
  top: -58px;
  width: 83px;
  height: 95px;
  aspect-ratio: 83/95;
}
.section--inscription .inscription__info .text--big {
  margin-bottom: 0px;
}
.section--inscription .inscription .container {
  display: flex;
  flex-direction: column;
  gap: 32px;
}
.section--inscription .inscription .sib-form .text {
  margin-bottom: 32px;
}
.section--inscription .inscription .sib-form .button {
  text-align: center;
}
@media (min-width: 600px) {
  .section--inscription .inscription .sib-form {
    max-width: calc((var(--columns-count) - 0.5) * var(--columns-size) + (var(--columns-count) - 1) * var(--columns-gap));
    margin: 0 auto;
  }
}
@media (min-width: 768px) {
  .section--inscription .inscription {
    gap: 32px;
  }
  .section--inscription .inscription .container {
    display: flex;
    flex-direction: row;
    gap: 24px;
  }
  .section--inscription .inscription .sib-form {
    max-width: -webkit-fit-content;
    max-width: -moz-fit-content;
    max-width: fit-content;
  }
}
@media (min-width: 980px) {
  .section--inscription .inscription {
    flex-direction: row;
    gap: 80px;
  }
  .section--inscription .inscription__info::before {
    left: 301px;
    top: -73px;
  }
  .section--inscription .inscription .container {
    flex-direction: column;
  }
  .section--inscription .inscription .sib-form {
    max-width: 80vw;
  }
}
@media (min-width: 1280px) {
  .section--inscription .inscription {
    gap: calc(var(--columns-size) + var(--columns-gap) * 2);
  }
  .section--inscription .inscription__info {
    width: calc(var(--columns-size) * 4 + var(--columns-gap) * 3);
  }
  .section--inscription .inscription .sib-form {
    width: calc(var(--columns-size) * 4 + var(--columns-gap) * 3);
    max-width: 480px;
  }
}
@media (min-width: 1440px) {
  .section--inscription .inscription {
    gap: calc(var(--columns-size) + var(--columns-gap) * 2);
  }
  .section--inscription .inscription__info {
    width: calc(var(--columns-size) * 5 + var(--columns-gap) * 4);
  }
  .section--inscription .inscription__info .text--big {
    max-width: 530px;
  }
  .section--inscription .inscription .sib-form {
    width: calc(var(--columns-size) * 5 + var(--columns-gap) * 4);
    max-width: 500px;
  }
}
@media (min-width: 1500px) {
  .section--inscription .inscription .sib-form {
    max-width: 551px;
  }
}
@media (min-width: 600px) {
  .section--inscription {
    padding-bottom: calc(var(--spacing-bottom) + 204px);
  }
}
@media (min-width: 768px) {
  .section--inscription {
    padding-bottom: calc(var(--spacing-bottom) + 30px);
  }
  .section--inscription::after {
    width: 100vw;
    height: 55vw;
    bottom: 0px;
    left: 0px;
  }
}
@media (min-width: 980px) {
  .section--inscription {
    margin: var(--spacing-top) auto var(--spacing-bottom);
    padding-bottom: 0px;
  }
  .section--inscription::after {
    width: 105vw;
    height: 55vw;
    bottom: -44px;
    left: 0px;
  }
}
@media (min-width: 1024px) {
  .section--inscription {
    margin-bottom: calc(var(--spacing-bottom) / 2 + 72px);
  }
  .section--inscription::after {
    width: 105vw;
    height: 55vw;
    bottom: -72px;
    left: 0px;
  }
}
@media (min-width: 1100px) {
  .section--inscription {
    margin-bottom: calc(var(--spacing-bottom) / 2 + 110px);
  }
  .section--inscription::after {
    bottom: -110px;
  }
}
@media (min-width: 1147px) {
  .section--inscription {
    margin-bottom: calc(var(--spacing-bottom) / 2 + 132px);
  }
  .section--inscription::after {
    bottom: -132px;
  }
}
@media (min-width: 1210px) {
  .section--inscription {
    margin-bottom: calc(var(--spacing-bottom) / 2 + 175px);
  }
  .section--inscription::after {
    bottom: -175px;
  }
}
@media (min-width: 1280px) {
  .section--inscription {
    margin-bottom: calc(var(--spacing-bottom) / 2 + 192px);
  }
  .section--inscription::after {
    width: 100vw;
    bottom: -192px;
  }
}
@media (min-width: 1300px) {
  .section--inscription {
    margin-bottom: calc(var(--spacing-bottom) / 2 + 225px);
  }
  .section--inscription::after {
    bottom: -225px;
  }
}
@media (min-width: 1440px) {
  .section--inscription {
    margin-bottom: calc(var(--spacing-bottom) / 2 + 240px);
  }
  .section--inscription::after {
    bottom: -240px;
  }
}
@media (min-width: 1500px) {
  .section--inscription {
    margin-bottom: calc(var(--spacing-bottom) / 2 + 304px);
  }
  .section--inscription::after {
    bottom: -304px;
  }
}
@media (min-width: 1600px) {
  .section--inscription {
    margin-bottom: calc(var(--spacing-bottom) / 2 + 170px);
  }
  .section--inscription::after {
    background-image: url(../assets/images/bg-trees2.png);
    width: 129vw;
    height: auto;
    bottom: -170px;
    left: -91px;
    aspect-ratio: 2202/712;
  }
}
@media (min-width: 1700px) {
  .section--inscription {
    margin-bottom: calc(var(--spacing-bottom) / 2 + 189px);
  }
  .section--inscription::after {
    width: 127vw;
    height: auto;
    bottom: -189px;
  }
}
@media (min-width: 1800px) {
  .section--inscription {
    margin-bottom: calc(var(--spacing-bottom) / 2 + 207px);
  }
  .section--inscription::after {
    width: 123vw;
    bottom: -207px;
  }
}
@media (min-width: 1920px) {
  .section--inscription {
    margin-bottom: calc(var(--spacing-bottom) / 2 + 240px);
  }
  .section--inscription::after {
    bottom: -240px;
  }
}

.section--insta__feed {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  width: 100%;
  margin: 0 auto;
}
.section--insta__feed a {
  width: 100%;
  max-width: 400px;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  display: inline-block;
  overflow: hidden;
}
.section--insta__feed a img {
  width: 100%;
  height: auto;
  aspect-ratio: 323/404;
  display: block;
  transform: scale(1);
  transition: transform 0.3s ease-in-out;
}
.section--insta__feed a:hover img {
  transform: scale(1.04);
  transition: transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.section--insta .button {
  margin: 56px auto 0px;
}
@media (min-width: 600px) {
  .section--insta__feed {
    flex-direction: row;
    flex-wrap: wrap;
  }
  .section--insta__feed a {
    width: calc(50% - 8px);
  }
}
@media (min-width: 980px) {
  .section--insta .title--big {
    grid-column-end: 5;
    grid-row: 2 span;
  }
  .section--insta__content {
    grid-column-start: 5;
  }
  .section--insta__feed a {
    width: calc(25% - 16px);
  }
}
@media (min-width: 1440px) {
  .section--insta__content {
    grid-column-start: 7;
  }
  .section--insta__feed {
    margin-top: 56px;
    gap: var(--columns-gap);
  }
  .section--insta__feed a {
    width: calc(3 * var(--columns-size) + 2 * var(--columns-gap));
  }
  .section--insta .button {
    margin: 80px auto 0px;
  }
}

.section--newsletter {
  margin: 0 auto;
  padding-bottom: 0;
  position: relative;
  z-index: 20;
}
.section--newsletter .sib-form {
  margin: 0 auto;
  padding: 40px 24px;
  position: relative;
  transform: translateY(243px);
  z-index: 2;
}
.section--newsletter .sib-form #sib-container .sib-form-block:has(.entry__field) {
  margin-bottom: 12px;
}
.section--newsletter .sib-form #sib-container .sib-form-block:has(.button) {
  margin-bottom: 24px;
}
.section--newsletter .sib-form #sib-container .sib-form-block:has(.checkbox) {
  margin-bottom: 0;
}
.section--newsletter .sib-form:before {
  content: "";
  background-image: url(../assets/images/butterfly-duo.png);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  width: 175px;
  height: 113px;
  top: -73px;
  left: -52px;
  z-index: 2;
}
@media (min-width: 445px) {
  .section--newsletter .sib-form {
    transform: translateY(221px);
  }
}
@media (min-width: 600px) {
  .section--newsletter .sib-form {
    transform: translateY(219px);
    max-width: calc((var(--columns-count) - 0.5) * var(--columns-size) + (var(--columns-count) - 1) * var(--columns-gap));
  }
}
@media (min-width: 768px) {
  .section--newsletter .sib-form {
    transform: translateY(118px);
  }
  .section--newsletter .sib-form #sib-container form {
    flex-direction: row;
    flex-wrap: wrap;
    -moz-column-gap: 10px;
         column-gap: 10px;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
  .section--newsletter .sib-form #sib-container form > div {
    width: 100%;
  }
  .section--newsletter .sib-form #sib-container form > div:nth-child(3) {
    width: calc(100% - 159.1px);
  }
  .section--newsletter .sib-form #sib-container form > div:nth-child(4) {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
}
@media (min-width: 980px) {
  .section--newsletter .sib-form {
    max-width: calc((var(--columns-count) - 2) * var(--columns-size) + (var(--columns-count) - 3) * var(--columns-gap));
    transform: translateY(148px);
  }
  .section--newsletter .sib-form #sib-container .sib-form-block {
    margin-bottom: 0px;
  }
  .section--newsletter .text--newsletter {
    font-size: max(21px, 1.3125rem);
    line-height: 1.55;
  }
}
@media (min-width: 1000px) {
  .section--newsletter .sib-form {
    transform: translateY(123px);
  }
  .section--newsletter .sib-form::before {
    width: 225px;
    height: 136px;
    top: -135px;
    left: -202px;
  }
}
@media (min-width: 1440px) {
  .section--newsletter .sib-form {
    padding: 48px 32px;
    transform: translateY(131px);
  }
}

.section--faq {
  margin: calc(var(--spacing-top) / 2) auto calc(var(--spacing-top) / 2);
}
.section--faq .accordeon {
  margin-bottom: 24px;
}
.section--faq .accordeon .text {
  max-width: 100%;
}
.section--faq .accordeon .text--little {
  margin-bottom: 1rem;
  max-width: 64ch;
}
.section--faq .accordeon details {
  border-bottom: 1px solid var(--primary);
}
.section--faq .accordeon details summary {
  display: flex;
  gap: 16px;
  margin-bottom: 0;
  padding: 12px 12px 12px 0;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  max-width: 100%;
}
.section--faq .accordeon details summary::-webkit-details-marker {
  display: none;
}
.section--faq .accordeon details summary:hover {
  cursor: pointer;
}
.section--faq .accordeon details summary::after {
  content: url(../assets/images/arrow-down.svg);
  display: block;
  text-align: center;
  width: 24px;
  height: 24px;
}
.section--faq .accordeon details:open summary::after {
  transform: rotate(180deg);
}
.section--faq .accordeon details ul,
.section--faq .accordeon details ol {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  list-style: disc;
  list-style-position: outside;
  margin-left: 1rem;
  margin-bottom: 1rem;
}
.section--faq .accordeon details ul .text--little,
.section--faq .accordeon details ol .text--little {
  margin-bottom: 0;
}
@media (min-width: 980px) {
  .section--faq .accordeon {
    margin-bottom: 32px;
  }
  .section--faq > * {
    grid-column-start: 2;
    grid-column-end: -2;
  }
}
@media (min-width: 1100px) {
  .section--faq {
    position: relative;
  }
  .section--faq > * {
    grid-column-start: 3;
    grid-column-end: -3;
  }
  .section--faq::after {
    content: "";
    background-image: url(../assets/images/woman-in-tree.png);
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    width: calc(var(--columns-size) * 1.5 + var(--columns-gap) * 1 + var(--margin));
    height: auto;
    top: 50%;
    right: calc(var(--margin) * -1);
    transform: translateY(-25%);
    aspect-ratio: 354/540.44;
    z-index: 2;
  }
}
@media (min-width: 1440px) {
  .section--faq > * {
    grid-column-start: 4;
    grid-column-end: -4;
  }
  .section--faq::after {
    width: calc(var(--columns-size) * 2.5 + var(--columns-gap) * 2 + var(--margin));
  }
}

.section--value {
  align-items: center;
  position: relative;
  margin-bottom: 0px;
  padding-bottom: 240px;
}
.section--value:after {
  content: "";
  display: block;
  background-image: url(../assets/images/bg_wood.png);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  bottom: -1px;
  left: -20%;
  width: 138vw;
  height: auto;
  aspect-ratio: 1913/729;
}
.section--value .title--big {
  text-align: center;
  margin-bottom: 56px;
}
.section--value .listvalue {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 24px;
}
.section--value .listvalue > * {
  text-align: center;
}
.section--value .listvalue__el {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.section--value .listvalue__el img {
  width: 41vw;
  max-width: 240px;
  height: auto;
  aspect-ratio: 160/148;
  margin-bottom: 16px;
}
.section--value .listvalue__el .title--mini {
  max-width: 31ch;
}
@media (min-width: 768px) {
  .section--value:after {
    left: -28%;
  }
  .section--value .listvalue {
    flex-direction: row;
    flex-wrap: wrap;
    align-items: baseline;
    justify-content: center;
    gap: 2.5rem 2.5rem;
    margin: 0 auto;
  }
  .section--value .listvalue img {
    width: 25vw;
  }
  .section--value .listvalue__el .title--mini {
    margin-bottom: 0px;
    max-width: 24ch;
  }
}
@media (min-width: 980px) {
  .section--value {
    padding-bottom: 360px;
  }
  .section--value:after {
    left: -18%;
    width: 126vw;
  }
  .section--value .listvalue {
    flex-direction: row;
    gap: 2.5rem 2.5rem;
  }
  .section--value .listvalue img {
    width: 33vw;
  }
}
@media (min-width: 1100px) {
  .section--value .listvalue {
    flex-direction: row;
    gap: 2.5rem 2.5rem;
  }
  .section--value .listvalue img {
    width: 33vw;
  }
  .section--value .listvalue__el .title--mini {
    max-width: 31ch;
  }
}
@media (min-width: 1440px) {
  .section--value .listvalue {
    grid-column-start: 3;
    grid-column-end: -3;
    gap: 2.5rem 1.5rem;
    justify-content: space-between;
    max-width: 900px;
  }
  .section--value .listvalue__el .title--mini {
    max-width: 31ch;
  }
}
@media (min-width: 1464px) {
  .section--value .listvalue {
    gap: 2.5rem 2.5rem;
  }
}
@media (min-width: 1900px) {
  .section--value:after {
    left: -20%;
    width: 115vw;
  }
}

.section--portrait {
  background-color: var(--bg-color);
  background-image: url(../assets/images/background.png);
  background-repeat: repeat;
  background-size: auto;
  background-blend-mode: darken;
  padding-top: 0px;
  padding-bottom: 120px;
  gap: 80px;
}
.section--portrait__img {
  display: flex;
  justify-content: flex-end;
  width: 100%;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  overflow: hidden;
}
.section--portrait__img .portrait {
  width: 125%;
  height: auto;
  transform: translateX(5%);
}
.section--portrait .text--big {
  margin-bottom: 1.5rem;
}
@media (min-width: 900px) {
  .section--portrait {
    flex-direction: row;
    padding-bottom: 0px;
    gap: 0px;
  }
  .section--portrait div:last-child {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 40px 40px;
  }
  .section--portrait div:last-child .title--mbig {
    font-size: clamp(3.813rem, 6.935vw - 0.089rem, 6.5rem);
  }
  .section--portrait div:last-child .text {
    font-size: 20px;
  }
}
@media (min-width: 980px) {
  .section--portrait {
    margin-top: 22px;
    gap: 0px;
  }
  .section--portrait > * {
    width: 100%;
  }
  .section--portrait__img {
    grid-column-end: 5;
    margin-bottom: 0px;
  }
  .section--portrait div:last-child {
    grid-column-start: 5;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 48px 56px;
  }
}
@media (min-width: 1280px) {
  .section--portrait div:last-child .text {
    font-size: var(--textbig);
    margin-bottom: 2.5rem;
  }
}
@media (min-width: 1440px) {
  .section--portrait__img {
    grid-column-end: 7;
    margin-bottom: 0px;
  }
  .section--portrait div:last-child {
    grid-column-start: 7;
    padding: 72px var(--origin-margin);
  }
}
@media (min-width: 1728px) {
  .section--portrait__img .portrait {
    transform: none;
  }
  .section--portrait div:last-child {
    grid-column-start: 7;
    padding: 72px var(--origin-margin) 72px 120px;
  }
}

.section--map {
  padding-top: 0px;
  padding-bottom: clamp(120px, 108.444px + 2.963vw, 144px);
  background-clip: padding-box;
  border-bottom: 8px solid transparent;
  border-image-source: url(../assets/images/stroke_bg_blue_mobile.svg);
  border-image-slice: 8;
  border-image-repeat: stretch;
  z-index: 15;
  position: relative;
}
.section--map__img {
  max-width: 665px;
  height: auto;
  margin-bottom: 2.5rem;
  position: relative;
}
.section--map__img .postit {
  width: 100%;
  height: auto;
  transform: rotate(-3.26deg);
  z-index: 0;
}
.section--map__img::before {
  content: "";
  display: block;
  background-image: url(../assets/images/punaise_little.svg);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 0px;
  left: 50%;
  width: 10%;
  height: auto;
  aspect-ratio: 33/25;
  transform: translateY(-65%);
  z-index: 2;
}
.section--map .title--big {
  max-width: 21ch;
}
@media (min-width: 450px) {
  .section--map__img {
    max-width: 80vw;
  }
}
@media (min-width: 980px) {
  .section--map {
    padding-left: var(--origin-margin);
    padding-right: var(--origin-margin);
    background-clip: unset;
    border-bottom: 25px solid transparent;
    border-image-source: url(../assets/images/stroke_bg_blue_desktop.svg);
    border-image-slice: 25;
    border-image-outset: 0 0 25px 0;
  }
  .section--map > * {
    width: 100%;
  }
  .section--map__img {
    max-width: 665px;
    grid-column-start: 6;
    order: 2;
  }
  .section--map div:last-child {
    grid-column-end: 6;
  }
  .section--map div:last-child .text:last-of-type {
    margin-bottom: 48px;
  }
}
@media (min-width: 1280px) {
  .section--map__img {
    grid-column-start: 5;
    order: 2;
  }
  .section--map div:last-child {
    grid-column-end: 5;
  }
  .section--map div:last-child .text {
    max-width: calc(3 * var(--columns-size) + 5 * var(--columns-gap));
  }
}
@media (min-width: 1440px) {
  .section--map__img {
    grid-column-start: 7;
    order: 2;
  }
  .section--map div:last-child {
    grid-column-end: 6;
  }
  .section--map div:last-child .text {
    max-width: 69ch;
  }
}

.section--productions {
  padding-top: 120px;
  padding-bottom: 120px;
  position: relative;
}
.section--productions::before {
  content: "";
  background-image: url(../assets/images/plants.png);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 0px;
  right: 0px;
  width: 27vw;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  max-width: 146px;
  max-height: 337px;
  aspect-ratio: 250/337;
  transform: translateY(-81%);
  z-index: 2;
}
.section--productions .title--big {
  margin-bottom: 88px;
}
.section--productions__el {
  background: var(--neutral);
  background-repeat: no-repeat;
  background-clip: padding-box;
  border: 16px solid transparent;
  border-radius: 4px;
  border-image-source: url(../assets/images/bg-texture-white2.svg);
  border-image-slice: 16;
  border-image-repeat: stretch;
  margin-bottom: 72px;
  padding: 56px 0px 16px;
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  max-width: 440px;
}
.section--productions__el::before {
  content: "";
  background-image: url(../assets/images/production_icone_jdr.png);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: -64px;
  left: 50%;
  width: auto;
  height: 111px;
  aspect-ratio: 156/148;
  transform: translateX(-50%);
  z-index: 2;
}
.section--productions__el:nth-of-type(2)::before {
  background-image: url(../assets/images/production_icone_jeu.png);
  aspect-ratio: 173/148;
}
.section--productions__el:nth-of-type(2) .button:last-child {
  margin-top: 8px;
}
.section--productions__el:nth-of-type(3) {
  margin-bottom: 0px;
}
.section--productions__el:nth-of-type(3)::before {
  background-image: url(../assets/images/production_icone_bd.png);
  aspect-ratio: 145/148;
}
.section--productions__el .title {
  margin-bottom: 8px;
  text-align: center;
}
.section--productions__el .title--prod {
  margin-bottom: 8px;
}
.section--productions__el .title--prod-mini {
  margin-bottom: 24px;
  max-width: 236px;
}
.section--productions__el .text:last-of-type {
  margin-bottom: 32px;
}
.section--productions__el .button {
  margin: 0 auto;
}
@media (min-width: 450px) {
  .section--productions__el {
    margin-bottom: 104px;
    padding: 88px 16px 16px;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
  }
  .section--productions__el:nth-of-type(3) {
    margin-bottom: 0px;
  }
  .section--productions__el::before {
    top: -80px;
    height: 148px;
  }
  .section--productions__el .title--prod-mini {
    max-width: 244px;
  }
}
@media (min-width: 980px) {
  .section--productions {
    padding-top: 144px;
    padding-bottom: 144px;
  }
  .section--productions::before {
    width: calc(1 * var(--columns-size) + var(--columns-gap) + var(--origin-margin));
    max-width: 264px;
    max-height: none;
    transform: translateY(-81%);
  }
  .section--productions .grid {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
  }
  .section--productions__el {
    padding: 88px 8px 12px;
    margin-bottom: 0px;
    max-width: 400px;
  }
  .section--productions__el .text {
    font-size: 16px;
  }
  .section--productions__el:nth-of-type(2) {
    order: 3;
    margin-top: 80px;
  }
}
@media (min-width: 1280px) {
  .section--productions .title--big {
    margin-bottom: 104px;
  }
  .section--productions .grid {
    display: flex;
    flex-direction: row;
  }
  .section--productions__el {
    max-width: 357px;
  }
  .section--productions__el:nth-of-type(2) {
    order: 2;
    margin-top: 0px;
  }
  .section--productions__el:nth-of-type(3) {
    order: 3;
  }
}
@media (min-width: 1350px) {
  .section--productions__el {
    max-width: 380px;
  }
}
@media (min-width: 1440px) {
  .section--productions .title--big {
    margin-bottom: 120px;
  }
  .section--productions::before {
    width: calc(2 * var(--columns-size) + var(--columns-gap) + var(--origin-margin));
  }
  .section--productions .grid {
    display: grid;
    flex-direction: unset;
  }
  .section--productions__el {
    margin-bottom: 0px;
    max-width: 435px;
    grid-column-end: 5;
  }
  .section--productions__el:nth-of-type(2) {
    grid-column-start: 5;
    grid-column-end: 9;
  }
  .section--productions__el:nth-of-type(3) {
    grid-column-start: 9;
    grid-column-end: -1;
  }
  .section--productions__el .text {
    font-size: 18px;
  }
}

.section--team {
  position: relative;
}
.section--team .section--artists__bg {
  top: 12px;
}
.section--team .title--big {
  font-size: clamp(3.125rem, 1.327vw + 2.801rem, 4.063rem);
  margin-bottom: 48px;
}
.section--team__content {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
  justify-content: center;
}
.section--team__content li {
  background: var(--neutral);
  max-width: 400px;
  border-radius: 8px;
  padding: 24px 24px 0px 24px;
}
.section--team__content img {
  width: 100%;
  height: auto;
  aspect-ratio: 364/442;
  margin-bottom: 16px;
}
.section--team__content .title {
  font-size: 28px;
  color: var(--primary);
  margin-bottom: 8px;
}
@media (min-width: 600px) {
  .section--team .section--artists__bg::before {
    position: absolute;
    margin-top: 0px;
    position: absolute;
    top: 30%;
    height: 495px;
    background-position: 17%;
  }
  .section--team__content {
    gap: 16px;
  }
  .section--team__content li {
    width: calc(50% - 8px);
  }
}
@media (min-width: 980px) {
  .section--team .section--artists__bg::before {
    position: absolute;
    margin-top: 0px;
    position: absolute;
    top: 32%;
    height: 56%;
    background-position: 28%;
  }
  .section--team__content {
    gap: 16px;
    row-gap: 40px;
  }
  .section--team__content li {
    width: calc(33% - 8px);
    min-width: 262px;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
  }
  .section--team__content li .text--little {
    font-size: 14px;
  }
}
@media (min-width: 1440px) {
  .section--team__content {
    gap: 24px;
    row-gap: 80px;
  }
  .section--team__content li {
    padding: 32px;
    width: calc(4 * var(--columns-size) + 3 * var(--columns-gap));
    max-width: 461px;
  }
  .section--team__content li .text--little {
    font-size: 16px;
    margin-bottom: 0px;
  }
  .section--team__content .title {
    margin-bottom: 14px;
  }
  .section--team__content img {
    margin-bottom: 20px;
  }
}
@media (min-width: 1728px) {
  .section--team .section--artists__bg::before {
    top: 25%;
    height: 62%;
    background-position: 22%;
  }
}

.section--teamvalue {
  margin-bottom: 0px;
  padding-bottom: var(--spacing-bottom);
  position: relative;
}
.section--teamvalue::before {
  content: "";
  background-image: url(../assets/images/tree_branch_right.png);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 0px;
  right: 0;
  aspect-ratio: 248/235;
  width: 38vw;
  max-width: 184px;
  height: auto;
  transform: translateX(calc(var(--margin) * 1)) translateY(-85%);
}
.section--teamvalue .title--big {
  margin-bottom: 2.5rem;
}
.section--teamvalue__content {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.section--teamvalue__content li {
  display: flex;
  flex-direction: column;
  align-items: center;
  max-width: 400px;
}
.section--teamvalue__content li h2 {
  font-size: 0;
  display: inline-block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.section--teamvalue__content li h2 img {
  margin-bottom: 1rem;
  width: 240px;
  height: 255px;
}
@media (min-width: 980px) {
  .section--teamvalue {
    padding-bottom: 144px;
  }
  .section--teamvalue::before {
    transform: translateX(calc(var(--margin) * 1)) translateY(-50%);
  }
  .section--teamvalue .title--big {
    margin-bottom: 56px;
    position: relative;
  }
  .section--teamvalue .title--big::before {
    content: "";
    display: block;
    background-image: url(../assets/images/butterfly-big.png);
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    top: -80px;
    left: 354px;
    width: 83px;
    height: auto;
    aspect-ratio: 83/95;
  }
  .section--teamvalue__content {
    flex-direction: row;
    gap: 16px;
    align-items: start;
    justify-content: space-between;
  }
  .section--teamvalue__content li {
    max-width: 100%;
  }
  .section--teamvalue__content li img {
    margin-bottom: 1.5rem;
  }
  .section--teamvalue__content li .text {
    font-size: 16px;
  }
}
@media (min-width: 1280px) {
  .section--teamvalue::before {
    max-width: 248px;
  }
  .section--teamvalue__content {
    gap: 24px;
  }
  .section--teamvalue__content li .text {
    font-size: var(--text);
  }
}
@media (min-width: 1440px) {
  .section--teamvalue__content {
    gap: 56px;
  }
}

.section--after {
  width: 100%;
  background-color: unset;
  background-image: url(../assets/images/background.png), linear-gradient(to bottom, var(--neutral) 40%, transparent 40%);
  background-size: auto, 100% 100%;
  background-repeat: repeat, no-repeat;
  background-blend-mode: darken, normal;
  padding: 0;
  position: relative;
}
.section--after::after {
  content: "";
  position: absolute;
  display: block;
  top: 40%;
  left: 0px;
  width: 150%;
  height: clamp(180px, (108.444px + 2.963vw) * 1.5, 216px);
  background-image: url(../assets/images/bg_white_stroke_bottom.svg);
  background-position: bottom left;
  background-repeat: stretch;
  background-size: auto;
  overflow: hidden;
  transform: rotate(-6.73deg) translateX(-5%) translateY(-33%);
  transform-origin: center;
  z-index: -1;
}
.section--after__content {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.section--after__content > * {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.section--after__content .title--vbig {
  position: relative;
  width: 100%;
  text-align: center;
}
.section--after__content .title--vbig::before {
  content: "";
  display: block;
  background-image: url(../assets/images/butterfly-big.png);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: -56px;
  right: calc(0px - var(--margin));
  width: 64px;
  height: auto;
  aspect-ratio: 83/95;
}
.section--after__content ul {
  margin-bottom: 2rem;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap-reverse;
  justify-content: center;
}
.section--after__content ul li h3 {
  font-size: 0px;
}
.section--after__content ul li h3 img {
  width: 212px;
  height: 226px;
}
.section--after__gallery {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 4px;
  margin-top: 40px;
}
.section--after__gallery .gallery-col {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.section--after__gallery .gallery-col__el {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
  border-radius: 16px;
}
.section--after__gallery .gallery-col--down {
  transform: translateY(80px);
}
@media (min-width: 768px) {
  .section--after__gallery {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin-top: 80px;
  }
  .section--after__gallery .gallery-col {
    gap: 12px;
  }
  .section--after__gallery .gallery-col--up {
    transform: translateY(-16px);
  }
  .section--after__gallery .gallery-col--up:first-of-type {
    transform: translateY(0px);
  }
  .section--after__gallery .gallery-col--down {
    transform: translateY(120px);
  }
  .section--after__gallery .gallery-col--down:last-of-type {
    transform: translateY(80px);
  }
}
@media (min-width: 980px) {
  .section--after {
    background-image: url(../assets/images/background.png), linear-gradient(to bottom, var(--neutral) 50%, transparent 50%);
    padding: 0 var(--margin) 120px;
  }
  .section--after:after {
    width: 102%;
    background-size: cover;
    transform: rotate(-3.06deg) translateX(-1%) translateY(-25%);
    top: 50%;
  }
  .section--after__content {
    width: 100%;
    grid-column-start: 3;
    grid-column-end: -3;
  }
  .section--after__content .title--vbig::before {
    top: 100px;
    right: -93px;
    width: 83px;
    height: auto;
  }
  .section--after__content ul {
    flex-wrap: nowrap;
    width: 100%;
  }
  .section--after__content ul li {
    width: 33%;
  }
  .section--after__content ul li h3 {
    display: inline-block;
  }
  .section--after__content ul li h3 img {
    display: block;
    width: 100%;
    height: auto;
    max-width: 212px;
    max-height: 226px;
    aspect-ratio: 212/226;
  }
  .section--after__content .text--vbig {
    font-size: 18px;
  }
}
@media (min-width: 1280px) {
  .section--after__content .title--vbig {
    margin-bottom: 4.5rem;
  }
  .section--after__content .text--vbig {
    max-width: 666px;
  }
  .section--after__content ul {
    margin-bottom: 40px;
    justify-content: space-around;
  }
  .section--after__content ul li {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
  .section--after__gallery {
    gap: 16px;
  }
  .section--after__gallery .gallery-col {
    gap: 16px;
  }
}
@media (min-width: 1440px) {
  .section--after__content {
    grid-column-start: 4;
    grid-column-end: -4;
  }
  .section--after__content .title--vbig {
    margin-bottom: 4.5rem;
  }
  .section--after__content .text--vbig {
    font-size: 24px;
    max-width: 666px;
  }
  .section--after__content ul {
    margin-bottom: 40px;
    justify-content: space-around;
  }
  .section--after__content ul li {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
  .section--after__gallery {
    gap: 20px;
    margin-top: 120px;
  }
  .section--after__gallery .gallery-col {
    gap: 20px;
  }
}

.section--article {
  background-color: unset;
  background-image: linear-gradient(to bottom, var(--primary) 99.4%, transparent 0);
  padding: 16px 0px 0px;
  position: relative;
  z-index: 15;
}
.section--article:after {
  content: "";
  display: block;
  width: 101vw;
  height: 40px;
  background-color: var(--primary);
  background-clip: padding-box;
  border-bottom: 8px solid transparent;
  border-image-source: url(../assets/images/stroke_bg_blue_mobile.svg);
  border-image-slice: 8;
  border-image-repeat: stretch;
  position: absolute;
  bottom: -6px;
  left: -2px;
  z-index: 13;
  transform: rotate(-3.06deg);
}
.section--article > * {
  position: relative;
  z-index: 14;
}
.section--article img {
  width: 100%;
  max-width: 600px;
  height: auto;
  aspect-ratio: 598/798;
  order: 12;
  z-index: 15;
  position: relative;
  transform: translateY(16px);
}
.section--article .title--mini {
  margin-bottom: 1.5rem;
}
.section--article .text--last {
  margin-bottom: 40px;
}
@media (min-width: 450px) {
  .section--article img {
    width: 75%;
  }
}
@media (min-width: 600px) {
  .section--article {
    background-image: linear-gradient(to bottom, var(--primary) 99.4%, transparent 0);
  }
}
@media (min-width: 980px) {
  .section--article {
    background-image: linear-gradient(to bottom, var(--primary) 93.4%, transparent 0);
    align-items: start;
    padding: 40px var(--margin);
  }
  .section--article:after {
    border-image-source: url(../assets/images/stroke_bg_blue_desktop.svg);
    height: 80px;
    bottom: 49px;
    left: -3px;
  }
  .section--article > * {
    width: 100%;
  }
  .section--article .text {
    font-size: 16px;
  }
  .section--article img {
    grid-column-start: 1;
    grid-column-end: 5;
    width: 100%;
    grid-row: 1/span 2;
    transform: translateX(calc(var(--origin-margin) * -1)) translateY(16px);
    position: -webkit-sticky;
    position: sticky;
    top: 120px;
  }
  .section--article div:first-of-type {
    grid-column-start: 5;
  }
  .section--article div:last-of-type {
    grid-column-start: 5;
    margin-bottom: 120px;
  }
}
@media (min-width: 1280px) {
  .section--article {
    background-image: linear-gradient(to bottom, var(--primary) 86%, transparent 0);
    padding: 80px var(--margin);
    grid-template-columns: repeat(3, 1fr);
  }
  .section--article:after {
    bottom: 98px;
    left: -3px;
  }
  .section--article > * {
    width: 100%;
  }
  .section--article img {
    width: calc(100% + var(--origin-margin));
    top: 240px;
    order: 1;
    grid-column-end: 2;
  }
  .section--article .text {
    font-size: 16px;
  }
  .section--article div:first-of-type {
    order: 2;
    grid-column-start: 2;
    grid-column-end: 3;
    margin-bottom: 120px;
  }
  .section--article div:last-of-type {
    order: 3;
    grid-column-start: 3;
    margin-bottom: 0px;
  }
}
@media (min-width: 1440px) {
  .section--article {
    background-image: linear-gradient(to bottom, var(--primary) 79%, transparent 0);
  }
  .section--article:after {
    height: 160px;
    bottom: 102px;
    left: -5px;
  }
  .section--article img {
    top: 320px;
  }
  .section--article .text {
    font-size: var(--text);
  }
}
@media (min-width: 1600px) {
  .section--article {
    background-image: linear-gradient(to bottom, var(--primary) 79%, transparent 0);
  }
  .section--article:after {
    bottom: 104px;
  }
}
@media (min-width: 1728px) {
  .section--article {
    background-image: linear-gradient(to bottom, var(--primary) 79%, transparent 0);
  }
  .section--article:after {
    bottom: 107px;
    left: -6px;
  }
}
@media (min-width: 1870px) {
  .section--article:after {
    bottom: 113px;
  }
}

.section--keysdate {
  margin: 120px auto;
  position: relative;
  align-items: center;
}
.section--keysdate::before {
  content: "";
  background-image: url(../assets/images/clouds.png);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: -16px;
  right: 0;
  aspect-ratio: 234/95;
  width: 60vw;
  max-width: 280px;
  height: auto;
  transform: translateY(-100%);
}
.section--keysdate .title--big {
  margin-bottom: 124px;
}
.section--keysdate__content li {
  background-color: var(--neutral);
  background-clip: padding-box;
  border: 16px solid transparent;
  border-radius: 4px;
  border-image-source: url(../assets/images/bg-texture-white-keysdate.svg);
  border-image-slice: 16;
  border-image-repeat: stretch;
  max-width: 420px;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  display: flex;
  flex-direction: column;
  padding: 76px 8px 8px;
  margin-bottom: 104px;
  position: relative;
  align-items: center;
}
.section--keysdate__content li h3 {
  font-size: 0px;
  position: absolute;
  top: 0px;
  transform: translateY(calc(-50% - 16px));
}
.section--keysdate__content li h3 img {
  width: 160px;
  height: auto;
  aspect-ratio: 160/170;
}
.section--keysdate__content li .title--mini {
  text-align: center;
  max-width: 25ch;
}
.section--keysdate__content li .text {
  margin-bottom: 0px;
}
.section--keysdate__content li:last-child {
  margin-bottom: 0px;
}
@media (min-width: 980px) {
  .section--keysdate:before {
    width: calc(4 * var(--columns-size) + 3 * var(--columns-gap));
    top: -56px;
    right: 0;
    max-width: 436px;
    z-index: 20;
  }
  .section--keysdate__content {
    margin-bottom: 0px;
    display: flex;
    flex-direction: row;
    gap: 8px;
    justify-content: center;
  }
  .section--keysdate__content li .title--mini {
    font-size: 28px;
  }
  .section--keysdate__content li .text {
    font-size: 16px;
  }
}
@media (min-width: 1280px) {
  .section--keysdate:before {
    top: -104px;
  }
  .section--keysdate .title--big {
    margin-bottom: 184px;
  }
  .section--keysdate__content {
    gap: 16px;
  }
  .section--keysdate__content li {
    padding: 120px 8px 8px;
  }
  .section--keysdate__content li h3 img {
    width: 208px;
  }
}
@media (min-width: 1440px) {
  .section--keysdate__content {
    gap: 56px;
  }
}
@media (min-width: 1728px) {
  .section--keysdate:before {
    top: -112px;
  }
  .section--keysdate > * {
    grid-column-start: 2;
    grid-column-end: -2;
  }
}

.section--more {
  margin-top: 0px;
  margin-bottom: 0px;
  padding-bottom: 240px;
  align-items: center;
}
.section--more img {
  width: calc(100vw + 180px);
  height: auto;
  max-width: 900px;
  aspect-ratio: 576/201;
  mix-blend-mode: darken;
  margin-bottom: 80px;
}
.section--more .title--big {
  text-align: center;
  margin-bottom: 48px;
}
.section--more__content {
  display: flex;
  flex-direction: column;
  gap: 32px;
}
.section--more__content li {
  position: relative;
}
.section--more__content li a {
  display: inline-block;
  background-color: var(--secondary2);
  background-clip: padding-box;
  border: 16px solid transparent;
  border-radius: 4px;
  border-image-source: url(../assets/images/bg-texture-blue-more.svg);
  border-image-slice: 16;
  border-image-repeat: stretch;
  padding: 88px 8px 8px;
  max-width: 360px;
  position: relative;
  transition: transform 0.25s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.section--more__content li a::before {
  content: "";
  background-image: url(../assets/images/arrow_more.png);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 0px;
  right: 0;
  aspect-ratio: 73/73;
  width: 73px;
  height: auto;
  transform: translateX(0px) translateY(0);
  transition: transform 0.25s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.section--more__content li a:hover {
  transform: scale(1.02);
}
.section--more__content li a:hover::before {
  transform: translateX(8px) translateY(-8px);
  transition: transform 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.section--more__content .beforebooks::after {
  content: "";
  background-image: url(../assets/images/books.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-blend-mode: darken;
  mix-blend-mode: darken;
  position: absolute;
  bottom: -56px;
  left: 50%;
  aspect-ratio: 172/114;
  width: 172px;
  height: auto;
  transform: translateX(-50%) translateY(100%);
}
.section--more__content .title--mini {
  font-size: 24px;
  margin-bottom: 16px;
}
.section--more__content .text {
  font-size: 16px;
  font-weight: 300;
  margin-bottom: 32px;
}
.section--more__content .text:last-child {
  font-weight: 400;
  line-height: 1;
  margin-bottom: 0px;
}
@media (min-width: 980px) {
  .section--more img {
    width: 100%;
    margin: 0 auto 80px;
    grid-column-start: 2;
    grid-column-end: -2;
  }
  .section--more .title--big {
    margin-bottom: 80px;
  }
  .section--more__content {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    justify-content: center;
    align-items: center;
    gap: 32px;
    grid-column-start: 2;
    grid-column-end: -2;
  }
  .section--more__content li {
    grid-column-start: 1;
    grid-column-end: 2;
    justify-self: end;
  }
  .section--more__content li:last-of-type {
    grid-column-start: 2;
    grid-column-end: 3;
    grid-row: 1/span 2;
    align-self: center;
    justify-self: start;
  }
}
@media (min-width: 1440px) {
  .section--more__content {
    grid-column-start: 4;
    grid-column-end: 10;
  }
}

.section--others {
  margin: 120px auto 144px;
  /* On attribue le bon caractère Swiper à chaque bouton */
  /* --- Effet au survol (Hover) --- */
  /* --- Effet de disparition totale en fin de course (Identique au CodePen) --- */
}
.section--others .carousel-container {
  position: relative;
  width: 100%;
  box-sizing: border-box;
  padding: 0;
}
.section--others .carousel-container .swiper {
  width: 100%;
  height: auto;
}
.section--others .carousel-container .swiper .swiper-wrapper {
  display: flex;
  flex-direction: row;
}
.section--others .carousel-container .swiper .swiper-wrapper .swiper-slide {
  width: auto;
}
.section--others .carousel-container .swiper-button-prev,
.section--others .carousel-container .swiper-button-next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
  /* 🚀 TES NOUVELLES COULEURS */
  background-color: var(--secondary) !important;
  /* Le fond bleu que tu as demandé */
  color: var(--neutral) !important;
  /* L'arrow en blanc */
  /* Structure et forme identiques au CodePen */
  width: 45px !important;
  height: 45px !important;
  border-radius: 50%;
  border: none;
  padding: 0;
  cursor: pointer;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
  transition: opacity 0.3s ease, transform 0.2s ease;
  /* Supprime le gros SVG de fond qui posait problème au début */
  background-image: none !important;
}
.section--others .carousel-container .swiper-button-prev {
  left: -22.5px;
}
.section--others .carousel-container .swiper-button-next {
  right: -22.5px;
}
.section--others .carousel-container .swiper-button-next:after,
.section--others .carousel-container .swiper-button-prev:after {
  font-family: swiper-icons;
  /* Utilise les flèches natives de Swiper */
  font-size: 18px !important;
  font-weight: bold;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-left: 3px;
}
.section--others .carousel-container .swiper-button-prev:after {
  padding-left: 0px;
  padding-right: 3px;
}
.section--others .carousel-container .swiper-button-prev:after {
  content: "prev" !important;
}
.section--others .carousel-container .swiper-button-next:after {
  content: "next" !important;
}
.section--others .swiper-navigation-icon {
  display: none;
}
.section--others .carousel-container .swiper-button-next:hover,
.section--others .carousel-container .swiper-button-prev:hover {
  transform: translateY(-50%) scale(1.05);
}
.section--others .carousel-container .swiper-button-disabled {
  opacity: 0 !important;
  pointer-events: none;
}
.section--others .title--big {
  margin-bottom: 48px;
}

.section--worldmap {
  margin: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
}
.section--worldmap .title--big {
  width: calc(var(--columns-count) * var(--columns-size) + (var(--columns-count) - 1) * var(--columns-gap));
  margin: 120px auto 48px;
}
.section--worldmap__container {
  position: relative;
  width: 100%;
  height: 100%;
}
.section--worldmap__container .world {
  display: none;
}
.section--worldmap__container .viewToggle {
  display: none;
}
.section--worldmap__container .womenList {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  width: calc(var(--columns-count) * var(--columns-size) + (var(--columns-count) - 1) * var(--columns-gap));
  margin: 0 auto;
  row-gap: 16px;
  justify-content: center;
}
@media (min-width: 980px) {
  .section--worldmap .title--big {
    font-size: 43px;
    margin: 32px auto 12px;
    text-align: center;
  }
  .section--worldmap__container .womenList {
    padding-top: 116px;
    padding-bottom: 144px;
  }
}
@media (min-width: 1280px) {
  .section--worldmap__container .womenList {
    padding-top: 116px;
    padding-bottom: 144px;
    justify-content: space-between;
    row-gap: 32px;
  }
  .section--worldmap__container .womenList .swiper-slide__card {
    width: calc(4 * var(--columns-size) + 3 * var(--columns-gap));
    max-width: 356px;
  }
}
@media (min-width: 1440px) {
  .section--worldmap__container .womenList {
    row-gap: 20px;
  }
  .section--worldmap__container .womenList .swiper-slide__card {
    max-width: 480px;
  }
}

@-webkit-keyframes papillon-flotte {
  0% {
    /* Position basse (initiale) */
    transform: rotate(-5deg) translateY(-2px);
  }
  50% {
    /* Position haute (simule la remontée de l'aile) */
    transform: rotate(-2deg) translateY(-5px);
  }
  100% {
    /* Retour à la position basse pour boucler */
    transform: rotate(-5deg) translateY(-2px);
  }
}

@keyframes papillon-flotte {
  0% {
    /* Position basse (initiale) */
    transform: rotate(-5deg) translateY(-2px);
  }
  50% {
    /* Position haute (simule la remontée de l'aile) */
    transform: rotate(-2deg) translateY(-5px);
  }
  100% {
    /* Retour à la position basse pour boucler */
    transform: rotate(-5deg) translateY(-2px);
  }
}
.button {
  color: var(--neutral);
  font-family: var(--font-tertiary);
  font-size: 24px;
  font-style: normal;
  font-weight: 400;
  line-height: 100%;
  text-align: center;
  display: inline-block;
  justify-content: center;
  align-items: center;
  align-self: stretch;
  padding: 12px 28px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  background: var(--secondary);
  background-clip: padding-box;
  border: 4px solid transparent;
  border-radius: 4px;
  border-image-source: url(../assets/images/stroke_button_bg_little.svg);
  border-image-slice: 4;
  border-image-repeat: stretch;
  position: relative;
  cursor: pointer;
  transform: translateY(0px);
  transition: transform 0.3s ease-out, box-shadow 0.3s ease-out, background-color 0.3s ease;
}
.button:before {
  content: "";
  display: none;
  background-image: url(../assets/images/butterfly-little.png);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  left: -11px;
  top: -17px;
  width: 20px;
  height: 30px;
  aspect-ratio: 2/3;
  transform: rotate(0deg) translateY(0px);
  transition: transform 0.3s ease-out, left 0.3s ease-out;
  -webkit-animation: none;
          animation: none;
}
.button:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 15px rgba(22, 42, 107, 0.2);
}
.button:hover:before {
  left: -16px;
  transform: rotate(-3deg) translateY(-2px);
  -webkit-animation: papillon-flotte 1.2s ease-in-out infinite alternate;
          animation: papillon-flotte 1.2s ease-in-out infinite alternate;
}
.button:visited {
  color: var(--neutral);
}
.button--big {
  padding: 20px 0px;
  width: 100%;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  border-image-source: url(../assets/images/stroke_button_bg.svg);
}
.button--big:before {
  display: block;
}
.button--secondary {
  background: var(--neutral);
  color: var(--secondary);
  border-image-source: url(../assets/images/stroke_button.svg);
}
.button--secondary:before {
  display: none;
}
.button--secondary:visited {
  color: var(--secondary);
}
.button--menu {
  padding: 12px 36px;
}
.button--menu:before {
  display: block;
}
.button--frame {
  padding: 20px 28px;
  width: 100%;
  border-radius: 4px;
  border-image-source: url(../assets/images/stroke_button_bg_little.svg);
}
.button--frame:before {
  display: block;
}
@media (min-width: 630px) {
  .button--big {
    width: 100%;
  }
}
@media (min-width: 768px) {
  .button--frame {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
}

.section--dark .button {
  background: var(--tertiary);
  background-clip: padding-box;
  border-image-source: url(../assets/images/stroke_button_bg_little_red.svg);
}
.section--dark .section--productions__el .button {
  background: var(--secondary);
  background-clip: padding-box;
  border-image-source: url(../assets/images/stroke_button_bg_little.svg);
}
.section--dark .section--productions__el .button--secondary {
  background: var(--neutral);
  color: var(--secondary);
  background-clip: padding-box;
  border-image-source: url(../assets/images/stroke_button.svg);
}

.calendar-dropdown {
  position: relative;
  display: inline-block;
  width: 100%;
}
.calendar-dropdown .calendar-menu {
  background-color: white;
  margin: 0;
  padding: 0;
  border-radius: 0 0 8px 8px;
  box-shadow: 0 4px 15px rgba(22, 42, 107, 0.1);
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  z-index: 100;
  overflow: hidden;
}
.calendar-dropdown .calendar-menu.is-open {
  display: block;
}
.calendar-dropdown .calendar-menu li a {
  display: block;
  padding: 16px 32px;
  text-decoration: none;
  text-align: center;
  color: var(--primary);
  transition: background 0.2s;
}
.calendar-dropdown .calendar-menu li a:hover {
  background-color: #F7F9FE;
}

.swiper-slide__card {
  background-color: var(--neutral);
  border-radius: 8px;
  display: block;
  padding: 24px;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  width: calc(98vw - 2 * var(--margin));
  max-width: 360px;
  z-index: 5;
  overflow: hidden;
  position: relative;
}
.swiper-slide__card::before {
  content: "";
  display: block;
  background-image: url(../assets/images/tree_branch_hover_top.png);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 150px;
  height: 138px;
  z-index: 10;
  transform: translateY(-50px);
  transition: transform 0.5s cubic-bezier(0.66, 0, 0, 1.397);
}
.swiper-slide__card::after {
  content: "";
  display: block;
  background-image: url(../assets/images/tree_branch_hover_bottom.png);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  bottom: -3px;
  right: 0px;
  width: 195px;
  height: 114px;
  z-index: 10;
  transform: translateY(88px);
  transition: transform 0.5s cubic-bezier(0.66, 0, 0, 1.397);
}
.swiper-slide__card:hover::before, .swiper-slide__card:hover:after {
  transform: translateY(0px);
  transition: transform 0.5s cubic-bezier(0.66, 0, 0, 1.397);
}
.swiper-slide__card .card-image {
  width: 100%;
  height: auto;
  aspect-ratio: 297/312;
  -o-object-fit: cover;
     object-fit: cover;
  margin-bottom: 24px;
}
.swiper-slide__card .text--little {
  margin-bottom: 0px;
  padding-left: 20px;
  position: relative;
}
.swiper-slide__card .text--little::before {
  content: "";
  display: block;
  background-image: url(../assets/images/icon_location.svg);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 14px;
  height: 16px;
}
@media (min-width: 980px) {
  .swiper-slide__card {
    width: 345px;
  }
  .swiper-slide__card .text {
    font-size: 16px;
  }
  .swiper-slide__card .text--little {
    font-size: 14px;
  }
}
@media (min-width: 1440px) {
  .swiper-slide__card {
    padding: 32px;
    width: calc(4 * var(--columns-size) + 3 * var(--columns-gap));
    max-width: 440px;
  }
  .swiper-slide__card .text {
    font-size: 18px;
  }
  .swiper-slide__card .text--little {
    font-size: 16px;
  }
}

/*# sourceMappingURL=app.css.map*/