@import "https://fonts.googleapis.com/css2?family=Mulish:ital,wght@0,300;0,700;1,300;1,700&family=Space+Mono:ital@0;1&display=swap";
html {
  -webkit-text-size-adjust: 100%;
  line-height: 1.15;
}

body {
  margin: 0;
}

main {
  display: block;
}

h1 {
  margin: .67em 0;
  font-size: 2em;
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

pre {
  font-family: monospace;
  font-size: 1em;
}

a {
  background-color: #0000;
}

abbr[title] {
  border-bottom: none;
  text-decoration: underline dotted;
}

b, strong {
  font-weight: bolder;
}

code, kbd, samp {
  font-family: monospace;
  font-size: 1em;
}

small {
  font-size: 80%;
}

sub, sup {
  vertical-align: baseline;
  font-size: 75%;
  line-height: 0;
  position: relative;
}

sub {
  bottom: -.25em;
}

sup {
  top: -.5em;
}

img {
  border-style: none;
}

button, input, optgroup, select, textarea {
  margin: 0;
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
}

button, input {
  overflow: visible;
}

button, select {
  text-transform: none;
}

button, [type="button"], [type="reset"], [type="submit"] {
  -webkit-appearance: button;
}

button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

fieldset {
  padding: .35em .75em .625em;
}

legend {
  box-sizing: border-box;
  color: inherit;
  max-width: 100%;
  white-space: normal;
  padding: 0;
  display: table;
}

progress {
  vertical-align: baseline;
}

textarea {
  overflow: auto;
}

[type="checkbox"], [type="radio"] {
  box-sizing: border-box;
  padding: 0;
}

[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button {
  height: auto;
}

[type="search"] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

details {
  display: block;
}

summary {
  display: list-item;
}

template, [hidden] {
  display: none;
}

.headroom {
  transition: transform .2s linear;
}

.headroom--pinned {
  transform: translateY(0%);
}

.headroom--unpinned {
  transform: translateY(-100%);
}

.flickity-enabled {
  position: relative;
}

.flickity-enabled:focus {
  outline: none;
}

.flickity-viewport {
  height: 100%;
  touch-action: pan-y;
  position: relative;
  overflow: hidden;
}

.flickity-slider {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
}

.flickity-rtl .flickity-slider {
  left: unset;
  right: 0;
}

.flickity-enabled.is-draggable {
  -webkit-tap-highlight-color: transparent;
  -webkit-user-select: none;
  user-select: none;
}

.flickity-enabled.is-draggable .flickity-viewport {
  cursor: move;
  cursor: grab;
}

.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down {
  cursor: grabbing;
}

.flickity-cell {
  position: absolute;
  left: 0;
}

.flickity-rtl .flickity-cell {
  left: unset;
  right: 0;
}

.flickity-button {
  color: #333;
  background: #ffffffbf;
  border: none;
  position: absolute;
}

.flickity-button:hover {
  cursor: pointer;
  background: #fff;
}

.flickity-button:focus {
  outline: none;
  box-shadow: 0 0 0 5px #19f;
}

.flickity-button:active {
  opacity: .6;
}

.flickity-button:disabled {
  opacity: .3;
  cursor: auto;
  pointer-events: none;
}

.flickity-button-icon {
  fill: currentColor;
}

.flickity-prev-next-button {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  top: 50%;
  transform: translateY(-50%);
}

.flickity-prev-next-button.previous {
  left: 10px;
}

.flickity-prev-next-button.next {
  right: 10px;
}

.flickity-rtl .flickity-prev-next-button.previous {
  left: auto;
  right: 10px;
}

.flickity-rtl .flickity-prev-next-button.next {
  left: 10px;
  right: auto;
}

.flickity-prev-next-button .flickity-button-icon {
  width: 60%;
  height: 60%;
  position: absolute;
  top: 20%;
  left: 20%;
}

.flickity-page-dots {
  width: 100%;
  text-align: center;
  flex-wrap: wrap;
  justify-content: center;
  display: flex;
  position: absolute;
  bottom: -25px;
}

.flickity-rtl .flickity-page-dots {
  direction: rtl;
}

.flickity-page-dot {
  width: 10px;
  height: 10px;
  cursor: pointer;
  appearance: none;
  text-indent: -9999px;
  background: #33333340;
  border: none;
  border-radius: 50%;
  margin: 0 8px;
  padding: 0;
  display: block;
  overflow: hidden;
}

.flickity-rtl .flickity-page-dot {
  text-indent: 9999px;
}

.flickity-page-dot:focus {
  outline: none;
  box-shadow: 0 0 0 5px #19f;
}

.flickity-page-dot.is-selected {
  background: #333;
}

*, :before, :after {
  box-sizing: border-box;
}

::selection {
  background: #feaa9b;
}

body {
  font-family: Mulish, sans-serif;
  font-size: clamp(.8125rem, .8125rem + 2 * ( ( 100vw - 640px ) / 700 ), .9375rem);
  background-color: #fafafa;
  line-height: 1.6;
}

h1, h2 {
  font-family: Space Mono, monospace;
  font-weight: normal;
}

h1, .h1 {
  font-size: clamp(2.25rem, 2.25rem + 28 * ( ( 100vw - 640px ) / 700 ), 4rem);
  line-height: 1.1;
}

h2, .h2 {
  font-size: clamp(1.75rem, 1.75rem + 4 * ( ( 100vw - 640px ) / 700 ), 2rem);
  line-height: 1.1;
}

h3, .h3 {
  font-size: clamp(1.125rem, 1.125rem + 6 * ( ( 100vw - 640px ) / 700 ), 1.5rem);
  line-height: 1.4;
}

img, svg {
  max-width: 100%;
  height: auto;
}

.duotone {
  background-color: #ffffff;
  transition: all .2s ease-in-out;
  display: flex;
  position: relative;
  overflow: hidden;
}

.duotone img {
  /* filter: grayscale(); */
  mix-blend-mode: multiply;
  object-fit: cover;
  flex: 1 0 100%;
  transition: all .2s ease-in-out;
}

.duotone.single__img, .duotone.single__img img {
  align-self: flex-start;
}

.duotone:before {
  content: "";
  mix-blend-mode: lighten;
  z-index: 1;
  background-color: #1d096b;
  transition: all .2s ease-in-out;
  position: absolute;
  inset: 0;
}

.noscroll, .noscroll body {
  overflow: hidden;
}

.listUnstyled {
  margin: 0;
  padding: 0;
  list-style: none;
}

.sr-only {
  width: 1px;
  height: 1px;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
  margin: -1px;
  padding: 0;
  position: absolute;
  overflow: hidden;
}

.grid {
  padding-left: 24px;
  padding-right: 24px;
}

@media (min-width: 960px) {
  .grid {
    grid: auto-flow dense / repeat(12, minmax(0, 63.6667px));
    justify-content: center;
    gap: 48px;
    display: grid;
  }
}

.header {
  width: 100%;
  min-height: 80px;
  z-index: 10;
  justify-content: space-between;
  align-items: stretch;
  padding: 0 24px;
  transition: all .4s;
  display: flex;
  position: fixed;
  top: 0;
  left: 0;
}

.header.headroom--not-top {
  background-color: #fff;
}

@media (min-width: 960px) {
  .header {
    background-color: #fff;
    padding-right: 0;
  }
}

.header__start {
  align-items: center;
  display: flex;
}

.header__end {
  flex-direction: row-reverse;
  display: flex;
}

@media (min-width: 960px) {
  .header__end {
    flex-direction: row;
  }
}

.header__search {
  appearance: none;
  background: inherit;
  width: 80px;
  cursor: pointer;
  border: none;
}

.header__search:focus {
  outline: none;
}

.headroom--top .header__search svg circle, .headroom--top .header__search svg path {
  stroke: #fafafa;
}

@media (min-width: 960px) {
  .headroom--top .header__search svg circle, .headroom--top .header__search svg path {
    stroke: #1c1514;
  }
}

.header__logo {
  z-index: 20;
  position: relative;
}

.header__logo .style-svg {
  width: 50px;
  height: 50px;
  display: block;
}

@media (min-width: 960px) {
  .header__logo .style-svg {
    /* border: 1px solid #1c1514; */
  }
}

.footer {
  color: #fafafa;
  background-color: #1c1514;
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.footer a {
  color: #fafafa;
  text-decoration: none;
}

@media (min-width: 640px) {
  .footer__logo {
    grid-column: 1 / span 4;
  }
}

.footer__menu, .footer__gb {
  margin-top: 24px;
}

@media (min-width: 640px) {
  .footer__menu, .footer__gb {
    grid-column: 7 / span 3;
    margin-top: 0;
  }
}

.footer__contact, .footer__social {
  margin-top: 24px;
}

@media (min-width: 640px) {
  .footer__contact, .footer__social {
    grid-column: 10 / span 3;
    margin-top: 0;
  }
}

.footer__social {
  grid-row: 2 / span 1;
}

.footer__social svg path {
  fill: #fafafa;
}

.footer__gb {
  grid-row: 2 / span 1;
}

.footer__gb svg {
  width: 100px;
}

@media (min-width: 640px) {
  .footer__gb svg {
    width: 200px;
  }
}

.footer__gb svg path {
  fill: #fafafa;
}

.footer__list {
  font-size: clamp(1.375rem, 1.375rem + 6 * ( ( 100vw - 640px ) / 700 ), 1.75rem);
  line-height: 1.5;
  display: flex;
}

.footer__list li {
  margin-right: 20px;
}

.footer__title {
  margin-top: 0;
}

.footer__address {
  font-style: normal;
}

.section {
  margin-top: 96px;
  margin-bottom: 96px;
  position: relative;
}

@media (min-width: 960px) {
  .section:has(header):before {
    content: "";
    height: 1px;
    background-color: #1c1514;
    grid-column: 1 / span 2;
    margin-top: 3.375rem;
  }
}

.section--bg {
  color: #fafafa;
  margin-top: 0;
  margin-bottom: 0;
  padding-top: 10rem;
  padding-bottom: 10rem;
}

.section--bg:has(header):before {
  background-color: #fafafa;
}

@media (min-width: 960px) {
  .section__header {
    grid-column: 3 / span 6;
  }

  .section__header--full {
    grid-column: 3 / span 10;
  }
}

.section__title {
  font-size: clamp(2.25rem, 2.25rem + 28 * ( ( 100vw - 640px ) / 700 ), 4rem);
  margin: 0;
  line-height: 1.1;
}

.section__intro {
  font-size: clamp(1.375rem, 1.375rem + 6 * ( ( 100vw - 640px ) / 700 ), 1.75rem);
  line-height: 1.5;
}

@media (min-width: 960px) {
  .section__link {
    grid-column: 9 / span 4;
    place-self: flex-start end;
  }
}

.section__img {
  z-index: -1;
  object-fit: cover;
  position: absolute;
  inset: 0;
}

.section__img:after {
  content: "";
  z-index: 1;
  opacity: .5;
  background-color: #6AB43E;
  position: absolute;
  inset: 0;
}

.menu {
  font-size: clamp(.6875rem, .6875rem + 2 * ( ( 100vw - 640px ) / 700 ), .8125rem);
  text-transform: uppercase;
  letter-spacing: .0625rem;
  font-weight: bold;
  display: flex;
}

@media (max-width: 960px) {
  .menu {
    pointer-events: none;
    visibility: hidden;
    width: 100vw;
    height: 100vh;
    font-size: clamp(1.375rem, 1.375rem + 6 * ( ( 100vw - 640px ) / 700 ), 1.75rem);
    text-transform: inherit;
    opacity: 0;
    background: #1d096b;
    font-weight: 300;
    line-height: 1.5;
    transition: all .4s ease-in-out;
    position: fixed;
    top: 0;
    left: 0;
    overflow: hidden;
  }
}

.menu--open {
  pointer-events: auto;
  visibility: visible;
  opacity: 1;
}

.menu__list {
  margin-top: 25vh;
  margin-left: 10vw;
}

@media (min-width: 960px) {
  .menu__list {
    margin: 0;
    display: flex;
  }
}

.menu__item {
  margin-top: .5rem;
  position: relative;
}

@media (min-width: 960px) {
  .menu__item {
    align-items: stretch;
    margin-top: 0;
    display: flex;
  }

  .menu__item:before {
    content: "";
    width: 100%;
    height: 0;
    background-color: #1c1514;
    transition: height .3s;
    position: absolute;
    bottom: 0;
    left: 0;
  }

  .menu__item:hover:before {
    height: 5px;
  }

  .menu__item--btn {   
     background-color: transparent;
    background-image: linear-gradient(180deg, #6AB43E 0%, #6AB43E 100%);

    background-color: #1c1514;
    margin-left: 24px;
  }
}

.menu__link {
  color: #fafafa;
  align-items: center;
  padding: 5px 20px;
  text-decoration: none;
  display: flex;
}

@media (min-width: 960px) {
  .menu__link {
    color: #1c1514;
  }
}

.menu__item--btn .menu__link {
  color: #fafafa;
}

@media (min-width: 960px) {
  .menu__item--btn .menu__link {
    padding-left: 40px;
    padding-right: 40px;
  }
}

.menuBurger {
  width: 30px;
  cursor: pointer;
  appearance: none;
  background: none;
  border: none;
  outline: none;
  justify-content: center;
  align-items: center;
  display: flex;
  position: relative;
}

@media (min-width: 960px) {
  .menuBurger {
    display: none;
  }
}

.menuBurger__bar, .menuBurger__bar:before, .menuBurger__bar:after {
  content: "";
  height: 2px;
  width: 100%;
  z-index: 10;
  background: #fafafa;
  border-radius: 2px;
  transition: all .4s ease-in-out;
  position: absolute;
  left: 0;
}

.headroom--not-top .menuBurger__bar, .headroom--not-top .menuBurger__bar:before, .headroom--not-top .menuBurger__bar:after {
  background: #1c1514;
}

.menuBurger--open .menuBurger__bar, .menuBurger--open .menuBurger__bar:before, .menuBurger--open .menuBurger__bar:after {
  background: #fafafa;
  transform: rotate(135deg);
}

.menuBurger--open .menuBurger__bar:before, .menuBurger--open .menuBurger__bar:after {
  top: 0;
  transform: rotate(90deg);
}

.menuBurger__bar:before {
  top: -10px;
}

.menuBurger__bar:after {
  top: 10px;
}

.btn {
  text-transform: uppercase;
  cursor: pointer;
  letter-spacing: 1px;
  color: #1c1514;
  font-weight: bold;
  font-size: clamp(.6875rem, .6875rem + 2 * ( ( 100vw - 640px ) / 700 ), .8125rem);
  border: 1px solid #feaa9b;
  justify-content: center;
  align-items: center;
  padding: 16px 24px;
  text-decoration: none;
  transition: all .3s ease-in-out;
  display: inline-flex;
}

@media (min-width: 640px) {
  .btn {
    padding: 24px 32px;
  }
}

.btn:hover {
  box-shadow: inset 0 0 0 8px #feaa9b;
}

.btn--outlined {
  color: #fafafa;
  border-color: #fafafa;
}

.btn--outlined:hover {
  box-shadow: inset 0 0 0 8px #fafafa;
}

.btn--dark {
  color: #fafafa;
  background-color: #1c1514;
  border-color: #1c1514;
}

.btn--dark:hover {
  box-shadow: none;
}

.btn__arrow {
  margin-right: 24px;
}

.btn--outlined .btn__arrow path {
  fill: #fafafa;
}

.morelink {
  text-transform: uppercase;
  color: #1c1514;
  text-decoration: none;
  display: inline-block;
  position: relative;
}

.morelink:before, .morelink:after {
  content: "";
  width: 100%;
  height: 2px;
  background-color: #1c1514;
  position: absolute;
  bottom: 0;
  left: 0;
}

.morelink:before {
  transform-origin: 100%;
  transition: all .3s ease-in-out;
  transform: scaleX(1);
}

.morelink:after {
  transform-origin: 0;
  transition: all .3s ease-in-out .1s;
  transform: scaleX(0);
}

.morelink:hover:before {
  transform: scaleX(0);
}

.morelink:hover:after {
  transform: scaleX(1);
}

.hero {
  height: 100vh;
  grid-row-gap: 48px;
  grid-template-rows: 4fr 1fr;
  display: grid;
  position: relative;
}

@media (min-width: 640px) {
  .hero {
    grid-template-rows: 3fr 1fr;
  }
}

.hero__header {
  z-index: 1;
  color: #fafafa;
  grid-area: 1 / 1 / span 1;
  align-self: flex-end;
}

@media (min-width: 640px) {
  .hero__header {
    grid-column: 1 / span 9;
  }
}

.hero__subTitle {
  text-transform: uppercase;
  letter-spacing: .0625rem;
  font-size: clamp(.6875rem, .6875rem + 2 * ( ( 100vw - 640px ) / 700 ), .8125rem);
}

.hero__img, .hero__map {
  object-fit: cover;
  z-index: -2;
  position: absolute;
  inset: 0;
}

.hero__map {
  height: 100%;
}

.hero__patterns {
  opacity: .4;
  z-index: -1;
  justify-content: flex-end;
  align-items: start;
  display: flex;
  position: absolute;
  inset: 0;
  overflow: hidden;
}

.hero__patterns svg {
  width: 80vmax;
  margin-top: 15vh;
  margin-right: -5vw;
}

@media (min-width: 640px) {
  .hero__patterns svg {
    margin-top: 0;
  }
}

.hero__chapo {
  background-color: #fafafa;
  grid-area: 2 / 1 / span 1;
  align-items: center;
  margin-left: -24px;
  margin-right: -24px;
  padding: 0 24px;
  display: grid;
  position: relative;
}

@media (min-width: 640px) {
  .hero__chapo {
    grid-column: 1 / span 9;
    margin: 0;
    padding: 0;
  }

  .hero__chapo:before {
    content: "";
    width: 100%;
    height: 100%;
    background-color: #fafafa;
    margin-left: -100%;
    position: absolute;
    top: 0;
  }
}

.hero__text {
  font-size: clamp(1.375rem, 1.375rem + 6 * ( ( 100vw - 640px ) / 700 ), 1.75rem);
  line-height: 1.5;
}

@media (min-width: 640px) {
  .hero__text {
    margin-right: 48px;
  }
}

.hero__map.map {
  height: 100%;
}

.curveLines path {
  stroke: #feaa9b;
  fill: none;
  stroke-linejoin: round;
  stroke-width: 24px;
}

.menuTheme__list {
  grid-template-columns: repeat(3, 1fr);
  align-items: center;
  gap: 24px;
  display: grid;
}

@media (min-width: 640px) {
  .menuTheme__list {
    gap: 48px;
  }
}

.menuTheme__item {
  font-size: clamp(1.375rem, 1.375rem + 6 * ( ( 100vw - 640px ) / 700 ), 1.75rem);
  font-family: Space Mono, monospace;
  font-weight: normal;
  line-height: 1.5;
}

@media (min-width: 960px) {
  .menuTheme__item {
    font-size: clamp(1.75rem, 1.75rem + 4 * ( ( 100vw - 640px ) / 700 ), 2rem);
    line-height: 1.1;
  }
}

.menuTheme__link {
  color: #1c1514;
  flex-direction: column;
  align-items: center;
  text-decoration: none;
  display: flex;
}

.menuTheme__link svg {
  margin-right: 10px;
}

@media (min-width: 640px) {
  .menuTheme__link {
    flex-direction: row;
  }
}

.crd {
  margin: 80px 0;
}

@media (min-width: 640px) {
  .crd {
    margin: 200px 0;
  }
}

.crd:before {
  content: "";
  z-index: -1;
  /* background-color: #feaa9b; */
  grid-area: 2 / 1 / span 1 / span 7;
  margin-bottom: -40px;
  margin-right: -40px;
}

.crd__header {
  z-index: 2;
  grid-area: 1 / 6 / span 1 / span 5;
  padding: 80px 0 104px;
}

.crd__title {
  font-size: clamp(1.375rem, 1.375rem + 6 * ( ( 100vw - 640px ) / 700 ), 1.75rem);
  font-family: Space Mono, monospace;
  font-style: italic;
  line-height: 1.5;
}

.crd__title strong {
  font-weight: normal;
  display: inline-block;
  position: relative;
}

.crd__title strong:before {
  content: "";
  z-index: -1;
  width: 100%;
  height: .9375rem;
  background-color: #6AB43E;
  position: absolute;
  bottom: 0;
  left: 0;
}

.crd__img {
  position: relative;
}

.crd__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 100% 100%;
}

@media (min-width: 640px) {
  .crd__img {
    grid-area: 1 / 1 / span 2 / span 7;
  }
}

@media (min-width: 960px) {
  .crd__img {
    margin-left: -24px;
  }
}

@media (min-width: 1340px) {
  .crd__img {
    margin-left: calc(646px - 50vw);
  }
}

.crd__bg {
  z-index: 1;
  background: #fafafa url("pattern.c63daeeb.svg") 100% no-repeat;
  grid-area: 1 / 5 / span 1 / span 7;
}

.crd__stats {
  grid-area: 2 / 9 / span 1 / span 4;
  grid-template-columns: repeat(2, 1fr);
  gap: 48px;
  display: grid;
}

.stat__chiffre {
  font-size: clamp(3rem, 3rem + 16 * ( ( 100vw - 640px ) / 700 ), 4rem);
  color: #6AB43E;
  line-height: 1.1;
  display: block;
}

.card {
  grid-column: span 4;
  grid-template-rows: 200px 48px 1fr;
  grid-template-columns: 24px 1fr;
  margin-top: 32px;
  display: grid;
}

@media (min-width: 640px) {
  .card {
    grid-template-columns: 2fr 11fr;
  }
}

@media (min-width: 960px) {
  .card {
    margin-top: 0;
  }
}

.card:hover .card__img, .card:hover .card__img:before {
  background-color: #0000;
}

.card:hover .card__img img {
  filter: inherit;
}

.card__img {
  grid-area: 1 / 1 / span 2 / span 2;
}

.card__title {
  z-index: 1;
  color: #fafafa;
  font-family: Space Mono, monospace;
  font-weight: normal;
  font-size: clamp(1.75rem, 1.75rem + 4 * ( ( 100vw - 640px ) / 700 ), 2rem);
  grid-area: 1 / 2 / span 1 / span 1;
  align-self: flex-end;
  margin-right: 16px;
  line-height: 1.1;
}

.card__titleLink {
  color: #fafafa;
  text-decoration: none;
  display: block;
}

.card__caption {
  z-index: 1;
  background-color: #fafafa;
  grid-area: 2 / 2 / span 2 / span 1;
  padding: 24px;
}

.card__date {
  text-transform: uppercase;
  margin: 0;
}

.card__link {
  margin: 0;
}

.carousel {
  width: 100vw;
  margin-left: -24px;
  padding-top: 48px;
  padding-bottom: 48px;
}

@media (min-width: 640px) {
  .carousel {
    margin-left: calc(311px - 50vw);
  }
}

.carousel__item {
  width: 66%;
  margin-right: 24px;
}

@media (min-width: 640px) {
  .carousel__item {
    width: 33%;
  }
}

.flickity-button {
  z-index: 1;
  background: none;
  border: 1px solid #1c1514;
  margin-top: 12px;
  padding: 0;
  position: relative;
}

.flickity-prev-next-button {
  transform: translateY(0);
}

.flickity-prev-next-button .flickity-button-icon {
  width: 100%;
  height: 100%;
  position: relative;
  top: 0;
  left: 0;
}

.flickity-prev-next-button.next {
  left: calc(50% - 301px);
}

.flickity-prev-next-button.previous {
  left: calc(50% - 311px);
}

.flickity-page-dots {
  bottom: 74px;
}

.flickity-page-dots .dot {
  height: 1px;
  width: 40px;
  border-radius: 0;
  margin: 0;
}

.map {
  height: 600px;
}

.gm-style .gm-style-iw-c {
  border-radius: 0;
  padding: 0 !important;
}

.gm-style .gm-style-iw-d {
  overflow: hidden !important;
}

.gm-style .gm-style-iw-t:after {
  top: -1px;
}

.gm-ui-hover-effect {
  display: none !important;
}

.infoWindows {
  display: flex;
}

.infoWindows__img img {
  width: 100px;
  display: block;
}

.infoWindows__infos {
  padding: 12px 24px;
}

.infoWindows__infos h3, .infoWindows__infos p {
  margin-top: 0;
  margin-bottom: 10px;
}

.searchForm {
  visibility: hidden;
  opacity: 0;
  z-index: 100;
  background: #fff;
  transition: all .4s ease-in-out;
  position: absolute;
  inset: 0;
  transform: translateY(-80px);
}

@media (min-width: 960px) {
  .searchForm {
    left: 100px;
  }
}

.searchForm--open {
  visibility: visible;
  opacity: 1;
  transform: translateY(0);
}

.searchForm__close, .searchForm__input, .searchForm__submit {
  appearance: none;
  background: inherit;
  border: none;
}

.searchForm__close:focus, .searchForm__input:focus, .searchForm__submit:focus {
  outline: none;
}

.searchForm__close {
  cursor: pointer;
  width: 80px;
  height: 80px;
  position: absolute;
  top: 0;
  right: 0;
}

.searchForm__close svg {
  width: 24px;
  height: 24px;
}

.searchForm__submit {
  width: 80px;
  height: 80px;
  position: absolute;
  top: 0;
  right: 50px;
}

@media (min-width: 960px) {
  .searchForm__submit {
    right: 100px;
  }
}

.searchForm__submit svg {
  width: 24px;
  height: 24px;
}

.searchForm__form {
  height: 100%;
}

.searchForm__input {
  font-size: clamp(1.125rem, 1.125rem + 6 * ( ( 100vw - 640px ) / 700 ), 1.5rem);
  height: 100%;
  width: 80%;
  padding: 0 40px;
}

.searchFormPage__input {
  appearance: none;
  background: inherit;
  font-size: clamp(1.125rem, 1.125rem + 6 * ( ( 100vw - 640px ) / 700 ), 1.5rem);
  width: 100%;
  border: 1px solid #cdc8c6;
  margin-bottom: 24px;
  padding: 24px;
}

.searchFormPage__input:focus {
  outline: none;
}

.searchResult:not(:last-child) {
  border-bottom: 1px solid #cdc8c6;
  margin-bottom: 32px;
  padding-bottom: 32px;
}

.searchResult__type {
  text-transform: uppercase;
  letter-spacing: 1px;
  color: #828282;
  font-weight: bold;
  font-size: clamp(.6875rem, .6875rem + 2 * ( ( 100vw - 640px ) / 700 ), .8125rem);
  text-decoration: none;
}

.searchResult__titleLink {
  color: #1c1514;
  text-decoration: none;
  border: none !important;
}

.searchResult__link {
  border: none !important;
}

:root {
  --offset: 24px;
  --max_width: calc( 1340px - 24px * 2 );
  --columns: 4;
  --gutter: 48px;
  --color: #ff000026;
  --repeating-width: calc(100% / var(--columns));
  --column-width: calc((100% / var(--columns))  - var(--gutter));
  --background-width: calc(100% + var(--gutter));
  --background-columns: repeating-linear-gradient( to right, var(--color), var(--color) var(--column-width), transparent var(--column-width), transparent var(--repeating-width));
}

@media (min-width: 960px) {
  :root {
    --columns: 12;
  }
}

body {
  position: relative;
}

body:before {
  width: calc(100% - 2 * var(--offset));
  max-width: var(--max_width);
  min-height: 100vh;
  content: "";
  background-image: var(--background-columns);
  background-size: var(--background-width) 100%;
  opacity: 0;
  transform-origin: top;
  z-index: 1000;
  pointer-events: none;
  margin-left: auto;
  margin-right: auto;
  transition: opacity .5s;
  position: absolute;
  inset: 0;
}

body.show:before {
  opacity: 1;
}

.btnGrid {
  transform-origin: 0 0;
  z-index: 20;
  color: #fff9;
  cursor: pointer;
  background-color: #50505099;
  border: none;
  outline: 0;
  padding: 10px 20px;
  display: none;
  position: fixed;
  top: 300px;
  left: 0;
  transform: rotate(-90deg);
}

@media (min-width: 960px) {
  .btnGrid {
    display: block;
  }
}

.single .grid:first-child {
  margin-top: 0;
}

@media (min-width: 960px) {
  .single {
    margin-top: 112px;
  }
}

.single__patterns {
  opacity: .3;
  z-index: -1;
  transform-origin: 50% 80%;
  width: 100%;
  display: none;
  position: absolute;
  top: 0;
  left: 0;
}

.single__patterns path {
  stroke: #feaa9b;
}

@media (min-width: 960px) {
  .single__patterns {
    display: block;
  }
}

.single__img {
  grid-area: 1 / 1 / span 1 / span 5;
  margin-left: -24px;
  margin-right: -24px;
}

@media (min-width: 960px) {
  .single__img {
    margin-left: 0;
    margin-right: 0;
  }
}

.single__header {
  grid-area: 1 / 7 / span 1 / span 5;
}

.single__excerpt {
  font-size: clamp(1.375rem, 1.375rem + 6 * ( ( 100vw - 640px ) / 700 ), 1.75rem);
  margin-top: 3.625rem;
  padding-left: 24px;
  padding-right: 24px;
  line-height: 1.5;
}

@media (min-width: 640px) {
  .single__excerpt {
    box-sizing: content-box;
    max-width: 845.333px;
    margin-left: auto;
    margin-right: auto;
  }
}

.infos__row {
  border-bottom: 1px solid #cdc8c6;
  align-items: baseline;
  padding: 16px 0;
  display: flex;
}

.infos__label {
  font-size: clamp(.6875rem, .6875rem + 2 * ( ( 100vw - 640px ) / 700 ), .8125rem);
  text-transform: uppercase;
  letter-spacing: 1px;
  flex: 1;
  font-weight: bold;
}

.infos__value {
  flex: 3;
}

.infos__link {
  color: #1c1514;
  text-decoration: none;
}

.admin-bar {
  margin-top: 32px;
}

.admin-bar .header {
  top: 32px;
}

.wpcf7 {
  background-color: #e9e7e4;
  padding-top: 50px;
  padding-bottom: 50px;
}

.wpcf7 input, .wpcf7 select {
  appearance: none;
  width: 100%;
  background: none;
  border: none;
  border-bottom: 1px solid #cdc8c6;
  padding: .625rem 0;
}

.wpcf7 input:focus, .wpcf7 select:focus {
  outline: 0;
}

.wpcf7 label {
  color: #828282;
  margin-top: 40px;
  display: block;
}

.wpcf7 ::-webkit-datetime-edit {
  color: #828282;
}

.wpcf7 ::-webkit-calendar-picker-indicator {
  opacity: .2;
}

.wpcf7 button {
  margin-top: 40px;
}

.main-column {
  margin: 96px 0;
  padding-left: 24px;
  padding-right: 24px;
}

@media (min-width: 640px) {
  .main-column {
    box-sizing: content-box;
    max-width: 622px;
    margin-left: auto;
    margin-right: auto;
  }
}

.main-column a {
  color: #1c1514;
  border-bottom: 1px solid #828282;
  text-decoration: none;
  transition: all .3s;
}

.main-column a:hover {
  border-bottom-color: #1c1514;
}

.main-column figure {
  margin: 0;
}

@media (min-width: 960px) {
  .main-column figure {
    margin: 48px -111.667px;
  }
}

.main-column figcaption {
  font-size: clamp(.6875rem, .6875rem + 2 * ( ( 100vw - 640px ) / 700 ), .8125rem);
  color: #828282;
}

.wp-block-file {
  font-size: clamp(.6875rem, .6875rem + 2 * ( ( 100vw - 640px ) / 700 ), .8125rem);
  border-bottom: 1px solid #cdc8c6;
  justify-content: space-between;
  align-items: center;
  margin-top: 10px;
  padding-top: 12px;
  padding-bottom: 12px;
  display: flex;
}

.wp-block-file a:first-child {
  text-transform: uppercase;
  letter-spacing: 1px;
  color: #1c1514;
  border: none;
  font-weight: bold;
  text-decoration: none;
}

.wp-block-file__button {
  color: #fafafa;
  background-color: #1c1514;
  border-radius: 40px;
  padding: 4px 20px;
  text-decoration: none;
}

.screen-reader-text {
  width: 1px;
  height: 1px;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
  margin: -1px;
  padding: 0;
  position: absolute;
  overflow: hidden;
}

.pagination {
  justify-content: center;
  margin: 32px;
  display: flex;
}

.pagination .nav-links {
  text-transform: uppercase;
}

.pagination .nav-links .page-numbers {
  color: #1c1514;
  min-width: 45px;
  height: 45px;
  text-align: center;
  padding: 10px;
  text-decoration: none;
  display: inline-block;
}

.pagination .nav-links .current {
  border: 1px solid #cdc8c6;
  border-radius: 50%;
}

.cn-button.wp-default {
  background: #feaa9b;
}

/*# sourceMappingURL=index.e8265c92.css.map */
