@charset "UTF-8";
/* Eric Meyer’s Reset CSS v2.0 (https://meyerweb.com/eric/tools/css/reset/) */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

/* Corriger le comportement des blocs */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

/* Supprimer le comportement des listes */
ol, ul {
  list-style: none;
}

/* Supprimer l'héritage des citations */
blockquote, q {
  quotes: none;
}

blockquote::before, blockquote::after,
q::before, q::after {
  content: "";
  content: none;
}

/* Correction des tableaux */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

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

#burger {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  cursor: pointer;
  display: inline-block;
  margin: 0;
  min-height: 60px;
  min-width: 65px;
  z-index: 9999;
  position: relative;
}
@media (min-width: 1024px) {
  #burger {
    display: none;
  }
}

.burger-wrapper {
  align-items: flex-end;
  display: flex;
  flex-direction: column;
  gap: 5px;
  position: absolute;
  z-index: 10;
  padding: 15px;
}
@media (min-width: 1024px) {
  .burger-wrapper {
    display: none;
  }
}

.burger-wrapper > span {
  background-color: #000;
  display: inline-block;
  min-height: 3px;
  width: 25px;
  transition: opacity var(--transition), width var(--transition), rotate var(--transition), translate var(--transition), background var(--transition);
}

#burger:checked ~ .burger-wrapper > span:nth-child(2) {
  opacity: 0;
  width: 0;
}

#burger:checked ~ .burger-wrapper span:nth-child(1) {
  translate: 0 9px 0;
  rotate: 45deg;
}

#burger:checked ~ .burger-wrapper span:nth-child(3) {
  translate: 0 -6px 0;
  rotate: -45deg;
}

#burger:checked ~ .nav-list {
  translate: 0;
}

#burger:checked ~ .burger-wrapper {
  background: #FFF;
  padding: 15px;
  border-radius: 0;
  box-shadow: none;
}

.button {
  color: var(--text);
  transition: all 0.3s ease;
}
@media (min-width: 1024px) {
  .button {
    font-size: 1.5rem;
    line-height: 2rem;
  }
}
.button-green {
  background-color: var(--green);
  border-radius: 10px;
  padding: 8px 16px;
  color: black;
  border: 1px solid transparent;
  transition: all 0.3s ease;
}
.button-green:hover {
  background-color: #FFFFF8;
  border-color: var(--green);
  color: black;
}
.button-yellow {
  background-color: var(--yellow);
  border-radius: 10px;
  padding: 8px 16px;
  color: black;
  border: 1px solid transparent;
  transition: all 0.3s ease;
}
.button-yellow:hover {
  background-color: #FFFFF8;
  border-color: var(--yellow);
  color: black;
}
.button-blue {
  background-color: var(--blue);
  border-radius: 10px;
  padding: 8px 16px;
  color: black;
  border: 1px solid transparent;
  transition: all 0.3s ease;
}
.button-blue:hover {
  background-color: #FFFFF8;
  border-color: var(--blue);
  color: black;
}
.button-red {
  background-color: var(--red);
  border-radius: 10px;
  padding: 8px 16px;
  color: black;
  border: 1px solid transparent;
  transition: all 0.3s ease;
}
.button-red:hover {
  background-color: #FFFFF8;
  border-color: var(--red);
  color: black;
}

.brush {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
.brush-red {
  background-image: url("/wp-content/themes/VieuxMoulin/resources/img/brush-stroke-red.svg");
}
.brush-green {
  background-image: url("/wp-content/themes/VieuxMoulin/resources/img/brush-stroke-green.svg");
}
.brush-blue {
  background-image: url("/wp-content/themes/VieuxMoulin/resources/img/brush-stroke-blue.svg");
}
.brush-yellow {
  background-image: url("/wp-content/themes/VieuxMoulin/resources/img/brush-stroke-yellow.svg");
}
.brush-bigtitle {
  font-size: 2.2rem;
  line-height: 2.5rem;
}
@media (min-width: 1024px) {
  .brush-bigtitle {
    font-size: 3.5rem;
    line-height: 1;
  }
}

.bubbleCanvas {
  position: fixed;
  top: 0;
  left: 0;
  z-index: -10;
  pointer-events: none;
}

.block {
  display: block;
}

.inline-block {
  display: inline-block;
}

.inline {
  display: inline;
}

.none {
  display: none;
}

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

.not-sr-only {
  position: static;
  width: auto;
  height: auto;
  padding: 0;
  margin: 0;
  overflow: visible;
  clip: auto;
  white-space: normal;
}

.flex {
  display: flex;
}

.inline-flex {
  display: inline-flex;
}

.flex-row {
  flex-direction: row;
}

.flex-row-reverse {
  flex-direction: row-reverse;
}

.flex-col {
  flex-direction: column;
}

.flex-col-reverse {
  flex-direction: column-reverse;
}

.flex-wrap {
  flex-wrap: wrap;
}

.flex-wrap-reverse {
  flex-wrap: wrap-reverse;
}

.flex-nowrap {
  flex-wrap: nowrap;
}

.flex-1 {
  flex: 1 1 0;
}

.flex-auto {
  flex: 1 1 auto;
}

.flex-initial {
  flex: 0 1 auto;
}

.flex-none {
  flex: none;
}

.grid {
  display: grid;
}

.grid-cols-1 {
  grid-template-columns: repeat(1, minmax(0, 1fr));
}

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

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

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

.grid-rows-1 {
  grid-template-rows: repeat(1, minmax(0, 1fr));
}

.grid-rows-2 {
  grid-template-rows: repeat(2, minmax(0, 1fr));
}

.grid-rows-3 {
  grid-template-rows: repeat(3, minmax(0, 1fr));
}

.grid-rows-4 {
  grid-template-rows: repeat(4, minmax(0, 1fr));
}

.justify-start {
  justify-content: flex-start;
}

.justify-center {
  justify-content: center;
}

.justify-end {
  justify-content: flex-end;
}

.justify-between {
  justify-content: space-between;
}

.justify-around {
  justify-content: space-around;
}

.justify-evenly {
  justify-content: space-evenly;
}

.content-start {
  align-items: flex-start;
}

.content-center {
  align-items: center;
}

.content-end {
  align-items: flex-end;
}

.content-between {
  align-items: space-between;
}

.content-around {
  align-items: space-around;
}

.content-evenly {
  align-items: space-evenly;
}

.place-content-start {
  place-content: start;
}

.place-content-center {
  place-content: center;
}

.place-content-end {
  place-content: end;
}

.place-content-between {
  place-content: space-between;
}

.place-content-around {
  place-content: space-around;
}

.place-content-evenly {
  place-content: space-evenly;
}

@font-face {
  font-family: "Caveat Bold";
  src: url("/wp-content/themes/VieuxMoulin/resources/fonts/Caveat-Bold.ttf");
  font-display: swap;
}
@font-face {
  font-family: "Fredoka Bold";
  src: url("/wp-content/themes/VieuxMoulin/resources/fonts/Fredoka-Bold.ttf");
  font-display: swap;
}
@font-face {
  font-family: "Fredoka Regular";
  src: url("/wp-content/themes/VieuxMoulin/resources/fonts/Fredoka-Regular.ttf");
  font-display: swap;
}
@font-face {
  font-family: "Fredoka SemiBold";
  src: url("/wp-content/themes/VieuxMoulin/resources/fonts/Fredoka-SemiBold.ttf");
  font-display: swap;
}
@font-face {
  font-family: "Nunito Black";
  src: url("/wp-content/themes/VieuxMoulin/resources/fonts/Nunito-Black.ttf");
  font-display: swap;
}
@font-face {
  font-family: "Nunito Bold";
  src: url("/wp-content/themes/VieuxMoulin/resources/fonts/Nunito-Bold.ttf");
  font-display: swap;
}
@font-face {
  font-family: "Nunito Regular";
  src: url("/wp-content/themes/VieuxMoulin/resources/fonts/Nunito-Regular.ttf");
  font-display: swap;
}
@font-face {
  font-family: "Nunito SemiBold";
  src: url("/wp-content/themes/VieuxMoulin/resources/fonts/Nunito-SemiBold.ttf");
  font-display: swap;
}
@font-face {
  font-family: "Nunito Medium";
  src: url("/wp-content/themes/VieuxMoulin/resources/fonts/Nunito-Medium.ttf");
  font-display: swap;
}
.font-bigtitle {
  font-family: "Fredoka Bold", sans-serif;
}

.font-subtitle {
  font-family: "Fredoka SemiBold", sans-serif;
}

.font-brush {
  font-family: "Caveat Bold", sans-serif;
}

.font-sm {
  font-family: "Nunito Regular", sans-serif;
}

.font-span {
  font-family: "Nunito SemiBold", sans-serif;
}

.font-text {
  font-family: "Nunito Medium", sans-serif;
}

.text-xs {
  font-size: 0.75rem;
  line-height: 1rem;
}

.text-sm, .single-actuality-text > p, .archive-actualities-article-text > p, .frontpage-actualities-article-text > p, .contact-content-description > p, .donation-types-content-description > p, .donation-description > p, .about-description > p, .foster-family-conclusion > p, .foster-family-li-description > p, .foster-family-description > p {
  font-size: 0.875rem;
  line-height: 1.25rem;
}

.text-base, .hero-description {
  font-size: 1rem;
  line-height: 1.5rem;
}

.text-lg {
  font-size: 1.125rem;
  line-height: 1.75rem;
}

.text-xl {
  font-size: 1.25rem;
  line-height: 1.75rem;
}

.text-2xl {
  font-size: 1.5rem;
  line-height: 2rem;
}

.text-3xl, .legal-li-title:before, .foster-family-li-title:before {
  font-size: 1.875rem;
  line-height: 2.25rem;
}

.text-4xl {
  font-size: 2.25rem;
  line-height: 2.5rem;
}

.text-5xl {
  font-size: 3rem;
  line-height: 1;
}

.text-6xl {
  font-size: 3.75rem;
  line-height: 1;
}

.text-7xl {
  font-size: 4.5rem;
  line-height: 1;
}

.text-8xl {
  font-size: 6rem;
  line-height: 1;
}

.text-9xl {
  font-size: 8rem;
  line-height: 1;
}

:root {
  --background: #FFFFF8;
  --red: #FF6B6B;
  --yellow: #FFD000;
  --blue: #3A86FF;
  --green: #43A047;
  --green-grass: #2E7D32;
  --white: #FFFFFF;
  --text: #000000;
}

:root {
  --transition: 300ms ease-in-out;
  --slide-timing: 30s linear infinite;
}

@keyframes slide {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}
.header {
  min-height: 50px;
  max-height: 150px;
  background-color: var(--white);
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
}
@media (min-width: 1024px) {
  .header {
    min-height: 150px;
    max-height: 150px;
  }
}

.nav {
  padding: 1em;
  max-height: 50px;
}
@media (min-width: 1024px) {
  .nav {
    min-height: 150px;
    max-height: 150px;
  }
}
.nav-logo > svg {
  width: 65px;
  max-height: 60px;
}
@media (min-width: 1024px) {
  .nav-logo > svg {
    width: 150px;
    min-height: 150px;
    max-height: 150px;
  }
}
.nav-container {
  width: 100%;
}
@media (min-width: 1024px) {
  .nav-container {
    margin-left: 5%;
  }
}
.nav-list {
  transition: translate var(--transition);
  translate: -150%;
  min-width: 100vw;
  min-height: 100vh;
  position: absolute;
  top: 0;
  left: 0;
  padding-top: 5%;
  background-color: var(--white);
  list-style: none;
  z-index: 2;
}
@media (min-width: 1024px) {
  .nav-list {
    list-style: none;
    translate: 0;
    min-height: 0;
    min-width: 0;
    position: relative;
    flex-direction: row;
    padding-top: 0;
    width: 100%;
  }
}
.nav-list-link {
  text-decoration: none;
  color: var(--text);
  transition: scale var(--transition);
}
.nav-list-link:hover {
  scale: 1.2;
}
.nav-list-button {
  text-decoration: none;
}
.nav-list-icon > svg path {
  transition: fill var(--transition);
}
.nav-list-icon > svg path:hover {
  fill: #4460A0;
}

.footer {
  color: var(--white);
}
.footer-deco {
  width: 100%;
  height: 110%;
  display: block;
  margin: 0;
}
.footer-logo {
  width: -moz-fit-content;
  width: fit-content;
  gap: 1em;
  margin: 12px 36px;
}
.footer-logo > svg path {
  transition: fill var(--transition);
}
.footer-logo:hover svg path {
  fill: var(--yellow);
}
.footer-name {
  text-decoration: none;
  color: var(--white);
  transition: color var(--transition);
}
.footer-name:hover {
  color: var(--yellow);
}
.footer-container {
  padding: 1em;
  gap: 1em;
  background-color: var(--green-grass);
}
@media (min-width: 1024px) {
  .footer-container {
    flex-direction: row;
  }
}
@media (min-width: 760px) {
  .footer-content {
    flex-direction: row;
    width: 100%;
  }
}
.footer-informations {
  margin: 12px 36px;
  gap: 0.5em;
  width: -moz-fit-content;
  width: fit-content;
}
.footer-informations-phone {
  text-decoration: none;
  color: var(--white);
  transition: color var(--transition);
}
.footer-informations-phone:hover {
  color: var(--yellow);
}
.footer-informations-email {
  text-decoration: none;
  color: var(--white);
  transition: color var(--transition);
}
.footer-informations-email:hover {
  color: var(--yellow);
}
.footer-nav {
  margin: 12px 36px;
  gap: 0.5em;
  width: -moz-fit-content;
  width: fit-content;
}
.footer-nav-ul {
  gap: 0.5em;
}
.footer-nav-li {
  text-decoration: none;
  color: var(--white);
  transition: color var(--transition);
}
.footer-nav-li:hover {
  color: var(--yellow);
}
.footer-lower {
  background-color: var(--green-grass);
  display: block;
  margin: 0;
  padding: 1em;
}
.footer-lower-content {
  border-top: var(--white) solid 2px;
  margin: 0 5%;
}
.hero {
  gap: 1em;
}
@media (min-width: 760px) {
  .hero {
    gap: 1.5em;
  }
}
.hero-deco {
  position: absolute;
  top: 0;
  left: 0;
  background-image: url("/wp-content/themes/VieuxMoulin/resources/img/filter.png");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  width: 100dvw;
  min-height: 50dvh;
}
@media (min-width: 1024px) {
  .hero-deco {
    min-height: 80dvh;
  }
}
.hero-fig {
  position: relative;
}
.hero-image {
  width: 100dvw;
  height: 50dvh;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (min-width: 1024px) {
  .hero-image {
    min-height: 80dvh;
  }
}
.hero-title {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 1;
  transform: translate(-50%, -50%);
  color: var(--white);
}
@media (min-width: 1024px) {
  .hero-title {
    font-size: 3.75rem;
    line-height: 1;
  }
}
.hero-description {
  margin: 0 10px;
}
@media (min-width: 760px) {
  .hero-description {
    margin: 0 5%;
  }
}
@media (min-width: 1024px) {
  .hero-description {
    max-width: 1000px;
    font-size: 1.5rem;
    line-height: 2rem;
  }
}
.hero-link {
  width: 100%;
}
.hero-button {
  transition: scale var(--transition);
}
@media (min-width: 1024px) {
  .hero-button {
    font-size: 1.5rem;
    line-height: 2rem;
  }
}
.hero-button:hover {
  scale: 1.2;
}

.house {
  margin: 5% 0 0 0;
}
.house-title {
  margin: 1em 0 1em 10px;
}
@media (min-width: 1024px) {
  .house-title {
    font-size: 2.25rem;
    line-height: 2.5rem;
    margin: 0 0 2% 80px;
  }
}
.house-container {
  gap: 1em;
}
.house-link {
  min-height: 40dvh;
  width: 80dvw;
  height: auto;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  transition: width var(--transition);
}
@media (min-width: 1024px) {
  .house-link {
    min-height: 50dvh;
    width: 60dvw;
  }
}
.house-link:hover {
  width: 95dvw;
}
.house-text {
  color: var(--white);
}
@media (min-width: 1024px) {
  .house-text {
    font-size: 1.8rem;
    line-height: 2rem;
  }
}

.edelweiss {
  background-image: url("/wp-content/themes/VieuxMoulin/resources/img/filter.png"), url("/wp-content/themes/VieuxMoulin/resources/img/edelweiss-ext2.jpg");
  border-radius: 40px 0 0 40px;
  align-self: flex-end;
}

.le-vieux-moulin {
  background-image: url("/wp-content/themes/VieuxMoulin/resources/img/filter.png"), url("/wp-content/themes/VieuxMoulin/resources/img/vm-1920.jpg");
  border-radius: 0 40px 40px 0;
}

.foster-family {
  margin: 10% 10px;
  gap: 1em;
}
@media (min-width: 1024px) {
  .foster-family {
    gap: 2em;
    margin: 5% 80px;
  }
}
@media (min-width: 1024px) {
  .foster-family-title {
    font-size: 2.25rem;
    line-height: 2.5rem;
  }
}
@media (min-width: 1024px) {
  .foster-family-description {
    max-width: 700px;
  }
}
@media (min-width: 760px) {
  .foster-family-description > p {
    font-size: 1rem;
  }
}
@media (min-width: 1024px) {
  .foster-family-description > p {
    font-size: 1.2rem;
  }
}
.foster-family-ul {
  counter-reset: step 0;
  margin-top: 5%;
  gap: 1em;
}
@media (min-width: 1024px) {
  .foster-family-ul {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2rem;
    justify-items: center;
  }
}
.foster-family-li {
  max-width: 250px;
  align-self: center;
}
@media (min-width: 760px) {
  .foster-family-li {
    max-width: 350px;
  }
  .foster-family-li:nth-child(even) {
    align-self: flex-start;
  }
  .foster-family-li:nth-child(odd) {
    align-self: flex-end;
    margin-left: 10%;
  }
}
@media (min-width: 1024px) {
  .foster-family-li {
    max-width: 800px;
  }
}
.foster-family-li-title {
  counter-increment: step;
}
.foster-family-li-title:before {
  content: counter(step) ". ";
  color: var(--yellow);
  font-family: "Fredoka Bold", sans-serif;
}
@media (min-width: 1024px) {
  .foster-family-li-description > p {
    max-width: 700px;
    font-size: 1.2rem;
  }
}
.foster-family-conclusion {
  margin-top: 5%;
}
@media (min-width: 1024px) {
  .foster-family-conclusion {
    align-self: center;
  }
}
.foster-family-conclusion > p {
  text-align: center;
}
@media (min-width: 760px) {
  .foster-family-conclusion > p {
    font-size: 1em;
  }
}
@media (min-width: 1024px) {
  .foster-family-conclusion > p {
    max-width: 700px;
    font-size: 1.2rem;
    align-self: center;
  }
}

.about {
  margin: 0 10px 2em 10px;
  gap: 1em;
}
@media (min-width: 760px) {
  .about {
    flex-direction: row;
  }
}
@media (min-width: 1024px) {
  .about {
    margin: 0 80px 5% 80px;
  }
}
.about-title {
  margin: 5% 10px;
}
@media (min-width: 1024px) {
  .about-title {
    margin: 5% 80px 0 80px;
    font-size: 3.5rem;
    line-height: 1;
  }
}
.about-content {
  gap: 1em;
}
@media (min-width: 760px) {
  .about-content {
    max-width: 50%;
  }
}
.about-description > p {
  margin-bottom: 0.5em;
}
@media (min-width: 1024px) {
  .about-description > p {
    font-size: 1.25rem;
    line-height: 1.75rem;
  }
}
.about-button {
  max-width: -moz-fit-content;
  max-width: fit-content;
}
.about-fig {
  margin: 0;
  overflow: hidden;
  position: relative;
  border-radius: 20px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}
.about-image {
  width: 100%;
  height: 100%;
  max-height: 500px;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}

@media (min-width: 760px) {
  .value-objectives {
    flex-direction: row;
    gap: 1em;
  }
}
@media (min-width: 1024px) {
  .value-objectives {
    margin: 5% 80px;
    gap: 9rem;
  }
}

.value {
  margin: 0 10px 5% 10px;
  gap: 1.5em;
}
@media (min-width: 760px) {
  .value {
    max-width: 50%;
    gap: 0.5em;
  }
}
@media (min-width: 1024px) {
  .value-title {
    font-size: 2.25rem;
    line-height: 2.5rem;
  }
}
.value-description {
  gap: 1em;
}
@media (min-width: 760px) {
  .value-description {
    gap: 0.5em;
    max-width: 80%;
  }
}
.value-description > p {
  font-size: 0.825rem;
}
@media (min-width: 1024px) {
  .value-description > p {
    font-size: 1.2rem;
    line-height: 2rem;
  }
}
.value-description > p > strong {
  font-family: "Fredoka SemiBold", sans-serif;
  font-size: 1rem;
}
@media (min-width: 1024px) {
  .value-description > p > strong {
    font-size: 1.5rem;
    line-height: 2rem;
  }
}

.objectives {
  margin: 0 10px 5% 10px;
}
@media (min-width: 760px) {
  .objectives {
    max-width: 50%;
  }
}
@media (min-width: 1024px) {
  .objectives-title {
    font-size: 2.25rem;
    line-height: 2.5rem;
  }
}
.objectives-description > p {
  font-size: 0.825rem;
}
@media (min-width: 1024px) {
  .objectives-description > p {
    font-size: 1.2rem;
    line-height: 2rem;
  }
}
.objectives-description > ul {
  margin-top: 1em;
  display: flex;
  flex-direction: column;
  gap: 0.5em;
}
@media (min-width: 760px) {
  .objectives-description > ul {
    gap: 1em;
  }
}
.objectives-description > ul > li {
  font-size: 0.825rem;
}
@media (min-width: 1024px) {
  .objectives-description > ul > li {
    font-size: 1.2rem;
    line-height: 2rem;
  }
}

.daily-life {
  margin: 0 10px 2em 10px;
}
@media (min-width: 1024px) {
  .daily-life {
    margin: 5% 80px 0 80px;
  }
}
@media (min-width: 1024px) {
  .daily-life-title {
    font-size: 2.25rem;
    line-height: 2.5rem;
  }
}
.daily-life-description > p {
  font-size: 0.825rem;
  margin-bottom: 1em;
}
@media (min-width: 1024px) {
  .daily-life-description > p {
    font-size: 1.2rem;
    line-height: 2rem;
  }
}
.daily-life-description > p:nth-child(1) {
  margin-top: 1em;
}

.routine {
  margin: 0 10px 2em 10px;
}
@media (min-width: 1024px) {
  .routine {
    gap: 6rem;
    margin: 5% 0;
  }
}
.routine-block {
  flex-direction: column-reverse;
}
@media (min-width: 760px) {
  .routine-block {
    align-items: center;
  }
}
@media (min-width: 1024px) {
  .routine-block {
    gap: 5rem;
  }
}
.routine-fig {
  flex: 1;
  margin: 0;
}
@media (min-width: 1024px) {
  .routine-fig {
    max-width: 640px;
    height: auto;
  }
}
.routine-image {
  max-width: 100%;
  border-radius: 40px;
  height: auto;
}
@media (min-width: 1024px) {
  .routine-image {
    max-width: 640px;
    height: auto;
  }
}
@media (min-width: 760px) {
  .routine-image-left {
    flex-direction: row;
  }
}
@media (min-width: 760px) {
  .routine-image-right {
    flex-direction: row-reverse;
  }
}
.routine-content {
  gap: 1em;
  margin: 1em 0;
  flex: 1;
  max-width: 700px;
}
@media (min-width: 1024px) {
  .routine-content-title {
    font-size: 1.8rem;
    line-height: 2rem;
    width: -moz-fit-content;
    width: fit-content;
  }
}
.routine-content-activity {
  width: -moz-fit-content;
  width: fit-content;
}
@media (min-width: 1024px) {
  .routine-content-activity-time {
    font-size: 1.2rem;
    line-height: 2rem;
    width: -moz-fit-content;
    width: fit-content;
  }
}
@media (min-width: 1024px) {
  .routine-content-activity-separation {
    font-size: 1.2rem;
    line-height: 2rem;
    width: -moz-fit-content;
    width: fit-content;
  }
}
@media (min-width: 1024px) {
  .routine-content-activity-title {
    font-size: 1.2rem;
    line-height: 2rem;
    width: -moz-fit-content;
    width: fit-content;
  }
}
@media (min-width: 1024px) {
  .routine-content-activity-description {
    max-width: 700px;
    width: -moz-fit-content;
    width: fit-content;
  }
}
.routine-content-activity-description > p {
  font-size: 0.825rem;
}
@media (min-width: 1024px) {
  .routine-content-activity-description > p {
    font-size: 1rem;
    line-height: 1.5rem;
    width: -moz-fit-content;
    width: fit-content;
  }
}

.partner {
  padding: 1em 2em;
  overflow: hidden;
}
@media (max-width: 479px) {
  .partner {
    margin: 0;
  }
}
.partner-title {
  margin-bottom: 2em;
}
@media (min-width: 1024px) {
  .partner-title {
    font-size: 2.25rem;
    line-height: 2.5rem;
  }
}
.partner-ul {
  gap: 2em;
  animation: slide var(--slide-timing);
  overflow: hidden;
  min-width: -moz-fit-content;
  min-width: fit-content;
}
@media (max-width: 479px) {
  .partner-ul {
    overflow: hidden;
  }
}
@media (min-width: 1920px) {
  .partner-ul {
    min-width: 100%;
  }
}
.partner-image {
  max-width: 100px;
  height: auto;
}

.donation {
  margin: 0 10px 2em 10px;
  gap: 1em;
}
@media (min-width: 760px) {
  .donation {
    flex-direction: row;
  }
}
@media (min-width: 1024px) {
  .donation {
    margin: 5% 80px;
    gap: 2rem;
  }
}
.donation-title {
  margin: 5% 10px;
}
@media (min-width: 1024px) {
  .donation-title {
    margin: 5% 80px;
    font-size: 3.5rem;
    line-height: 1;
  }
}
@media (min-width: 1024px) {
  .donation-description {
    max-width: 90%;
  }
}
.donation-description > p {
  margin-bottom: 0.5em;
}
@media (min-width: 1024px) {
  .donation-description > p {
    font-size: 1.25rem;
    line-height: 1.75rem;
  }
}
.donation-image {
  width: 100%;
}
.donation-types {
  margin: 0 10px 2em 10px;
  gap: 1em;
}
@media (min-width: 760px) {
  .donation-types {
    flex-direction: row;
  }
}
@media (min-width: 1024px) {
  .donation-types {
    margin: 5% 80px;
  }
}
.donation-types-title {
  margin-bottom: 5%;
}
@media (min-width: 1024px) {
  .donation-types-title {
    font-size: 2.5rem;
    line-height: 1;
  }
}
@media (min-width: 760px) {
  .donation-types-container {
    flex-direction: row;
  }
}
.donation-types-content {
  margin: 0 10px 2em 10px;
  gap: 1em;
}
.donation-types-content:nth-child(1) {
  margin-top: 2rem;
}
@media (min-width: 1024px) {
  .donation-types-content {
    margin: 5% 80px;
  }
}
.donation-types-content-description > p {
  margin-bottom: 0.5em;
}
@media (min-width: 1024px) {
  .donation-types-content-description > p {
    font-size: 1.25rem;
    line-height: 1.75rem;
  }
}
.contact {
  margin: 5% 10px 2em 10px;
  gap: 1em;
}
@media (min-width: 1024px) {
  .contact {
    flex-direction: row;
    margin: 3% 80px 5% 80px;
    gap: 2rem;
  }
}
@media (min-width: 1024px) {
  .contact-content {
    max-width: 600px;
    min-width: 600px;
  }
}
.contact-content-title {
  margin-bottom: 2%;
}
@media (min-width: 760px) {
  .contact-content-description > p {
    max-width: 70%;
  }
}
@media (min-width: 1024px) {
  .contact-content-description > p {
    font-size: 1.5rem;
    line-height: 1.75rem;
  }
}
.contact-form {
  margin-top: 5%;
}
@media (min-width: 1024px) {
  .contact-form {
    margin-top: 0;
  }
}
@media (min-width: 1024px) {
  .contact-form-validation {
    width: 100%;
  }
}
.contact-form-fieldset {
  gap: 2em;
}
.contact-form-container {
  gap: 2em;
}
@media (min-width: 760px) {
  .contact-form-container {
    width: 70%;
  }
}
@media (min-width: 1024px) {
  .contact-form-container {
    width: 100%;
    gap: 1em;
  }
}
.contact-form-container-informations {
  gap: 2em;
}
@media (min-width: 1024px) {
  .contact-form-container-informations {
    gap: 1em;
  }
}
.contact-form-container-informations-label {
  margin-bottom: 2%;
}
@media (min-width: 1024px) {
  .contact-form-container-informations-label {
    font-size: 1.5rem;
    line-height: 2rem;
  }
}
.contact-form-container-informations-input {
  border: var(--text) 2px solid;
  min-height: 40px;
  border-radius: 40px;
  padding: 10px 15px;
}
@media (min-width: 1024px) {
  .contact-form-container-informations-input {
    font-size: 1.25rem;
    line-height: 1.75rem;
  }
}
.contact-form-container-informations-textarea {
  border: var(--text) 2px solid;
  border-radius: 10px;
  padding: 10px 15px;
}
@media (min-width: 1024px) {
  .contact-form-container-informations-textarea {
    font-size: 1.25rem;
    line-height: 1.75rem;
    border-radius: 20px;
  }
}
.contact-form-button {
  border: none;
}

.success-text {
  color: var(--green);
}

.error-text {
  color: var(--red);
}

.frontpage-actualities {
  margin: 10% 10px;
  gap: 1em;
}
@media (min-width: 1024px) {
  .frontpage-actualities {
    gap: 2em;
    margin: 5% 80px;
  }
}
.frontpage-actualities-container {
  overflow-x: scroll;
  gap: 2em;
  overflow-y: hidden;
  scroll-behavior: smooth;
  scrollbar-width: none;
}
@media (min-width: 1024px) {
  .frontpage-actualities-container {
    justify-content: space-evenly;
  }
}
.frontpage-actualities-article {
  width: 300px;
  background-color: var(--white);
  max-height: 300px;
  border-radius: 24px;
  padding-bottom: 1em;
  transition: box-shadow var(--transition);
  box-shadow: inset 0px 0px 0px 1px var(--text);
}
.frontpage-actualities-article:hover {
  box-shadow: inset 0px 0px 0px 3px var(--text);
}
@media (min-width: 1024px) {
  .frontpage-actualities-article {
    min-width: 600px;
    min-height: 700px;
  }
}
.frontpage-actualities-article-image {
  transition: box-shadow var(--transition);
  box-shadow: inset 0px 0px 0px 1px var(--text);
  min-width: 300px;
  max-width: 300px;
  max-height: 100px;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 24px 24px 0 0;
}
.frontpage-actualities-article-image:hover {
  box-shadow: inset 0px 0px 0px 3px var(--text);
}
@media (min-width: 1024px) {
  .frontpage-actualities-article-image {
    min-width: 600px;
    min-height: 300px;
  }
}
.frontpage-actualities-article-container {
  padding: 0 1em 1em;
}
.frontpage-actualities-article-title {
  color: var(--text);
}
@media (min-width: 1024px) {
  .frontpage-actualities-article-title {
    font-size: 2rem;
    margin: 10% 0;
  }
}
.frontpage-actualities-article-date {
  color: var(--text);
}
@media (min-width: 1024px) {
  .frontpage-actualities-article-date {
    font-size: 1.2rem;
  }
}
.frontpage-actualities-article-text {
  padding: 0 1em 1em;
}
@media (min-width: 1024px) {
  .frontpage-actualities-article-text {
    align-self: center;
  }
}
.frontpage-actualities-article-text > p {
  color: var(--text);
  max-width: 300px;
  max-height: 200px;
}
@media (min-width: 1024px) {
  .frontpage-actualities-article-text > p {
    font-size: 1.4rem;
    line-height: 2rem;
    max-width: 700px;
    max-height: 300px;
    align-self: center;
  }
}

.archive-actualities {
  margin: 5% 10px 2em 10px;
  gap: 1em;
}
@media (min-width: 1024px) {
  .archive-actualities {
    gap: 2em;
    margin: 5% 80px;
  }
}
@media (min-width: 1024px) {
  .archive-actualities-title {
    font-size: 3.5rem;
    line-height: 1;
  }
}
@media (min-width: 760px) {
  .archive-actualities-container {
    justify-content: space-evenly;
  }
}
@media (min-width: 1024px) {
  .archive-actualities-container {
    justify-content: space-evenly;
  }
}
.archive-actualities-article {
  width: 300px;
  background-color: var(--white);
  max-height: 300px;
  border-radius: 24px;
  padding-bottom: 1em;
  transition: box-shadow var(--transition);
  margin-bottom: 2em;
  box-shadow: inset 0px 0px 0px 1px var(--text);
}
@media (min-width: 760px) {
  .archive-actualities-article {
    width: 100%;
    max-height: none;
    flex-direction: column;
    padding-bottom: 0;
  }
}
.archive-actualities-article:hover {
  box-shadow: inset 0px 0px 0px 3px var(--text);
}
@media (min-width: 760px) {
  .archive-actualities-article {
    flex-direction: row;
  }
}
@media (min-width: 760px) {
  .archive-actualities-article-link {
    flex-direction: row;
    width: 100%;
  }
}
@media (min-width: 760px) {
  .archive-actualities-article-content {
    width: 100%;
    justify-content: space-evenly;
  }
}
.archive-actualities-article-image {
  min-width: 300px;
  max-width: 300px;
  max-height: 100px;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 24px 24px 0 0;
}
@media (min-width: 760px) {
  .archive-actualities-article-image {
    border-radius: 24px 0 0 24px;
    max-height: none;
    height: auto;
  }
}
.archive-actualities-article-container {
  padding: 0 1em 1em;
}
@media (min-width: 760px) {
  .archive-actualities-article-container {
    justify-content: space-between;
    margin-top: 1em;
  }
}
.archive-actualities-article-title {
  color: var(--text);
}
@media (min-width: 1024px) {
  .archive-actualities-article-title {
    font-size: 2rem;
  }
}
.archive-actualities-article-date {
  color: var(--text);
}
@media (min-width: 1024px) {
  .archive-actualities-article-date {
    font-size: 1.2rem;
  }
}
.archive-actualities-article-text {
  padding: 0 1em 1em;
}
.archive-actualities-article-text > p {
  color: var(--text);
  max-width: 300px;
  max-height: 200px;
}
@media (min-width: 760px) {
  .archive-actualities-article-text > p {
    flex-direction: row;
    max-width: 700px;
    max-height: none;
  }
}
@media (min-width: 1024px) {
  .archive-actualities-article-text > p {
    font-size: 1.4rem;
    line-height: 2rem;
    max-height: 300px;
    align-self: center;
    width: 100%;
    min-width: 100%;
  }
}

.single-actuality {
  margin: 0 10px 2em 10px;
}
@media (min-width: 1024px) {
  .single-actuality {
    margin: 5% 80px;
  }
}
.single-actuality-title {
  margin: 5% 0;
}
@media (min-width: 1024px) {
  .single-actuality-title {
    font-size: 3.5rem;
    line-height: 1;
  }
}
@media (min-width: 760px) {
  .single-actuality-container {
    gap: 2em;
  }
}
.single-actuality-content {
  gap: 1em;
}
@media (min-width: 1024px) {
  .single-actuality-content {
    gap: 2em;
  }
}
.single-actuality-image {
  width: 100%;
  border-radius: 40px;
  height: auto;
}
@media (min-width: 760px) {
  .single-actuality-image {
    max-width: 400px;
    aspect-ratio: 1/1;
    -o-object-fit: cover;
       object-fit: cover;
  }
}
@media (min-width: 1024px) {
  .single-actuality-image {
    max-width: none;
    min-width: 400px;
  }
}
@media (min-width: 760px) {
  .single-actuality-image-left {
    flex-direction: row;
  }
}
@media (min-width: 760px) {
  .single-actuality-image-right {
    flex-direction: row-reverse;
  }
}
.single-actuality-text {
  margin: 0 10px 1em 10px;
}
.single-actuality-text > p {
  margin-bottom: 0.5em;
}
@media (min-width: 760px) {
  .single-actuality-text > p {
    font-size: 1rem;
    line-height: 1.5rem;
    min-width: 300px;
    max-width: 450px;
  }
}
@media (min-width: 1024px) {
  .single-actuality-text > p {
    max-width: none;
    font-size: 1.25rem;
    line-height: 1.75rem;
  }
}
.single-actuality-gallery-title {
  margin-bottom: 1rem;
}
.single-actuality-gallery-container {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 1rem;
}
.single-actuality-gallery-fig {
  margin: 0;
  overflow: hidden;
  position: relative;
  aspect-ratio: 1/1;
}
.single-actuality-gallery-link {
  display: block;
  height: 100%;
  width: 100%;
}
.single-actuality-gallery-image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 40px;
  display: block;
}

.single-house-title {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 1;
  transform: translate(-50%, -50%);
  color: var(--white);
}
@media (min-width: 1024px) {
  .single-house-title {
    font-size: 3.5rem;
    line-height: 1;
  }
}
.single-house-deco {
  position: absolute;
  top: 0;
  left: 0;
  background-image: url("/wp-content/themes/VieuxMoulin/resources/img/filter.png");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  width: 100dvw;
  min-height: 50dvh;
}
@media (min-width: 1024px) {
  .single-house-deco {
    min-height: 80dvh;
  }
}
.single-house-fig {
  position: relative;
}
.single-house-image {
  width: 100dvw;
  height: 50dvh;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (min-width: 1024px) {
  .single-house-image {
    min-height: 80dvh;
  }
}
.single-house-history {
  margin: 5% 10px;
}
@media (min-width: 1024px) {
  .single-house-history {
    margin: 5% 80px;
  }
}
@media (min-width: 1024px) {
  .single-house-history-title {
    font-size: 2.25rem;
    line-height: 2.5rem;
  }
}
.single-house-history-container {
  display: flex;
  flex-direction: column;
  gap: 3rem;
  padding: 1rem;
}
.single-house-history-row {
  grid-template-columns: 1fr;
}
@media (min-width: 1024px) {
  .single-house-history-row {
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    align-items: center;
    gap: 2rem;
  }
}
@media (min-width: 1024px) and (min-width: 760px) {
  .single-house-history-row-left .single-house-history-fig {
    order: 1;
  }
}
@media (min-width: 1024px) {
  .single-house-history-row-right .single-house-history-fig {
    order: 2;
  }
  .single-house-history-row-right .single-house-history-description {
    order: 1;
  }
}
.single-house-history-fig {
  width: 100%;
}
.single-house-history-image {
  width: 100%;
  height: auto;
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 0.5rem;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
}
.single-house-history-description {
  padding: 1rem;
}
.single-house-history-description > p {
  font-size: 1rem;
  line-height: 1.6;
}
.single-house-today {
  margin: 5% 10px;
}
@media (min-width: 1024px) {
  .single-house-today {
    margin: 5% 80px;
  }
}
.single-house-today-title {
  margin-bottom: 2rem;
}
@media (min-width: 1024px) {
  .single-house-today-title {
    font-size: 2.25rem;
    line-height: 2.5rem;
  }
}
.single-house-today-gallery {
  max-width: 100%;
  gap: 1.5rem;
  margin-bottom: 1rem;
  overflow-x: scroll;
}
@media (min-width: 760px) {
  .single-house-today-gallery {
    display: grid;
    grid-template-columns: repeat(4, minmax(220px, 1fr));
    margin: 0 2rem;
    overflow: hidden;
    max-width: 2000px;
  }
}
.single-house-today-gallery-link {
  transition: transform 0.3s ease;
  min-width: 100px;
}
.single-house-today-gallery-link:hover {
  transform: scale(1.03);
}
.single-house-today-fig {
  margin: 0;
  overflow: hidden;
  position: relative;
  aspect-ratio: 1/1;
  border-radius: 20px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}
.single-house-today-image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}
.single-house-today-description {
  margin: 0 auto;
  font-size: 1rem;
  line-height: 1.6;
  padding: 1rem;
}
.single-house-flat {
  margin: 5% 10px;
}
@media (min-width: 1024px) {
  .single-house-flat {
    margin: 5% 80px;
  }
}
@media (min-width: 1024px) {
  .single-house-flat-title {
    font-size: 2.25rem;
    line-height: 2.5rem;
  }
}
.single-house-flat-description {
  font-size: 1rem;
  line-height: 1.6;
  padding: 1rem;
}
.single-house-conclusion {
  margin: 5% 10px;
}
@media (min-width: 1024px) {
  .single-house-conclusion {
    margin: 5% 80px;
  }
}
.single-house-conclusion-description {
  text-align: center;
  font-size: 1rem;
  line-height: 1.6;
  padding: 1rem;
}

.legal {
  gap: 1em;
  margin: 10% 10px;
}
.legal-ul {
  counter-reset: step 0;
  gap: 1.5em;
}
.legal-li-title {
  counter-increment: step;
}
.legal-li-title:before {
  content: counter(step) ". ";
  color: var(--text);
  font-family: "Fredoka Bold", sans-serif;
}
.error-page {
  margin: 5%;
  gap: 2em;
}
.error-page-title {
  font-size: 3rem;
  line-height: 1;
}
.error-page-text {
  font-size: 1.875rem;
  line-height: 2.25rem;
  max-width: 1000px;
}

.body:has(#burger:checked) {
  overflow-y: hidden;
}

.body {
  background-color: var(--background);
  scroll-behavior: smooth;
}

a {
  text-decoration: none;
}
