@charset "UTF-8";
/* ==========================================================================

	MODULES
	https://sass-guidelin.es/fr/

========================================================================== */
/* ==========================================================================

	20/12/2022

	TYPOGRAPHY

========================================================================== */
@import url("https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap");
/* CSS Document */
/* ==========================================================================

	20/12/2022

	@mixin

	@include transform(rotate(30deg));
	transition: all .2s ease-in-out;

	@include shadow-hover();

	@include media-width();

========================================================================== */
/* ==========================================================================

	20/12/2022

	MEDIA QUERIES

========================================================================== */
/*!
 * Bootstrap Reboot v4.3.1 (https://getbootstrap.com/)
 * Copyright 2011-2019 The Bootstrap Authors
 * Copyright 2011-2019 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 * Forked from Normalize.css, licensed MIT (https://github.com/necolas/normalize.css/blob/master/LICENSE.md)
 */
*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

html {
  font-family: sans-serif;
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {
  display: block;
}

body {
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.125em;
  color: #212529;
  text-align: left;
  background-color: #fff;
}

[tabindex="-1"]:focus {
  outline: 0 !important;
}

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

h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  margin-bottom: 0.25em;
}

p {
  margin-top: 0;
  margin-bottom: 1rem;
}

abbr[title],
abbr[data-original-title] {
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
  cursor: help;
  border-bottom: 0;
  -webkit-text-decoration-skip-ink: none;
  text-decoration-skip-ink: none;
}

address {
  margin-bottom: 1rem;
  font-style: normal;
  line-height: inherit;
}

ol,
ul,
dl {
  margin-top: 0;
  margin-bottom: 1rem;
}

ol ol,
ul ul,
ol ul,
ul ol {
  margin-bottom: 0;
}

dt {
  font-weight: 700;
}

dd {
  margin-bottom: 0.5rem;
  margin-left: 0;
}

blockquote {
  margin: 0 0 1rem;
}

b,
strong {
  font-weight: bolder;
}

small {
  font-size: 80%;
}

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

a {
  color: var(--color-text-link);
  text-decoration: none;
  background-color: transparent;
  text-decoration: underline;
  text-decoration-color: var(--color-text-link);
  text-decoration-thickness: 1pt;
  text-underline-offset: 3pt;
}

a:hover {
  color: var(--color-text-link-hover);
  text-decoration: underline;
}

a:not([href]):not([tabindex]) {
  color: inherit;
  text-decoration: none;
}

pre,
code,
kbd,
samp {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 1em;
}

pre {
  margin-top: 0;
  margin-bottom: 1rem;
  overflow: auto;
}

figure {
  margin: 0 0 1rem;
}

img {
  vertical-align: middle;
  border-style: none;
}

svg {
  overflow: hidden;
  vertical-align: middle;
}

table {
  border-collapse: collapse;
}

caption {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  color: #6c757d;
  text-align: left;
  caption-side: bottom;
}

th {
  text-align: inherit;
}

label {
  display: inline-block;
  margin-bottom: 0.5rem;
}

button {
  border-radius: 0;
}

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

button,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

select {
  word-wrap: normal;
}

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

button:not(:disabled),
[type=button]:not(:disabled),
[type=reset]:not(:disabled),
[type=submit]:not(:disabled) {
  cursor: pointer;
}

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

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

input[type=date],
input[type=time],
input[type=datetime-local],
input[type=month] {
  -webkit-appearance: listbox;
}

textarea {
  overflow: auto;
  resize: vertical;
}

fieldset {
  min-width: 0;
  padding: 0;
  margin: 0;
  border: 0;
}

legend {
  display: block;
  width: 100%;
  max-width: 100%;
  padding: 0;
  margin-bottom: 0.5rem;
  font-size: 1.5rem;
  line-height: inherit;
  color: inherit;
  white-space: normal;
}

progress {
  vertical-align: baseline;
}

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

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

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

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

output {
  display: inline-block;
}

summary {
  display: list-item;
  cursor: pointer;
}

template {
  display: none;
}

[hidden] {
  display: none !important;
}


:root {
  --font-family-base: "Montserrat", serif;
  --font-family-nav: "Montserrat", serif;
  --font-content: "Montserrat", serif;
  --font-family-title: "Montserrat", serif;
  --font-family-alternate: "Montserrat", serif;
  --font-family-handwriting: "Montserrat", serif;
  --font-family-icon: "Font Awesome 6 Pro";
  --font-size-text: 16px;
  --font-size-text-xs: 14px;
  --font-size-text-xxs: 12px;
  --h1-min-size: 32;
  --h1-max-size: 60;
  --h2-min-size: 28;
  --h2-max-size: 48;
  --h3-min-size: 24;
  --h3-max-size: 32;
  --font-size-h1: clamp(
  	calc(var(--h1-min-size) * 1px),
  	calc((var(--h1-min-size) * 1px) + ((var(--h1-max-size) - var(--h1-min-size)) * ((100vw - 380px) / (1920 - 380)))),
  	calc(var(--h1-max-size) * 1px)
  );
  --font-size-h2: clamp(
  	calc(var(--h2-min-size) * 1px),
  	calc((var(--h2-min-size) * 1px) + ((var(--h2-max-size) - var(--h2-min-size)) * ((100vw - 380px) / (1920 - 380)))),
  	calc(var(--h2-max-size) * 1px)
  );
  --font-size-h3: clamp(
  	calc(var(--h3-min-size) * 1px),
  	calc((var(--h3-min-size) * 1px) + ((var(--h3-max-size) - var(--h3-min-size)) * ((100vw - 380px) / (1920 - 380)))),
  	calc(var(--h3-max-size) * 1px)
  );
}
@media (max-width: 767.98px) {
  :root {
    --font-display-1: clamp(26px, 7.5vw, 48px);
    --font-size-h3: 24px;
    --font-size-h4: 18px;
    --font-size-lead: 18px;
    --font-size-big: 18px;
  }
}
@media (min-width: 768px) {
  :root {
    --font-display-1: 64px;
    --font-size-h4: 24px;
    --font-size-lead: 20px;
    --font-size-big: 18px;
  }
}
@media print {
  :root {
    --font-size-text-xs: 8pt;
    --font-size-text: 10pt;
    --font-size-h1: 24pt;
    --font-size-h2: 20pt;
    --font-size-h3: 16pt;
  }
}

.ss-main .ss-values .ss-max {
  font-size: var(--font-size-text-xs);
}

.ss-main .ss-values .ss-value .ss-value-delete {
  border-left: none;
}

.ss-content .ss-list .ss-option:hover:not(.ss-disabled) {
  border-left: none;
}

:root {
  --ss-primary-color: var(--color-text) !important;
}

.font-family-base {
  font-family: var(--font-family-base);
}

.font-family-nav {
  font-family: var(--font-family-nav);
}

.font-family-content {
  font-family: var(--font-family-content);
}

.font-family-title {
  font-family: var(--font-family-title);
}

.font-family-alternate {
  font-family: var(--font-family-alternate);
}

.font-family-handwriting {
  font-family: var(--font-family-handwriting);
}

.font-family-icon {
  font-family: var(--font-family-icon);
}

h1, .h1, h2, .h2, h3, .h3, h4, .h4 {
  font-family: var(--font-family-title);
  margin-bottom: 0.5em;
}

h1, .h1 {
  font-size: var(--font-size-h1);
  font-weight: 800;
  line-height: 1.2em;
}

h2, .h2 {
  font-size: var(--font-size-h2);
  font-weight: 800;
  line-height: 1.25;
  color: var(--color-text);
  padding-bottom: 0.5em;
  position: relative;
}
h2::before, .h2::before {
  z-index: 1;
  content: " ";
  position: absolute;
  width: 80px;
  height: 1px;
  bottom: 0;
  left: 0;
  border-bottom: 2px solid var(--color-text-accent);
}

h2[style*=text-align][style*=center]::before {
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

h3, .h3 {
  font-size: var(--font-size-h3);
  font-weight: 800;
  line-height: 1.2em;
  color: var(--color-text);
}

h4, .h4 {
  font-size: var(--font-size-h4);
  font-weight: 800;
  line-height: 1.2em;
  color: var(--color-text-accent);
}

.p {
  font-family: var(--font-family-base);
  font-weight: 400;
  font-size: var(--font-size-text);
  line-height: 1.5;
  margin-bottom: var(--spacer-paragraph);
}

p, ol, ul {
  margin-bottom: var(--spacer-paragraph);
}

body {
  font-family: var(--font-family-base);
  font-weight: 400;
  font-size: var(--font-size-text);
  line-height: 1.5;
}

.font-size-lead, .lead {
  font-size: var(--font-size-lead);
}

.font-size-text {
  font-size: var(--font-size-text);
}

.font-size-text-xs {
  font-size: var(--font-size-text-xs);
}

.font-size-text-xxs {
  font-size: var(--font-size-text-xxs);
}

.font-size-big {
  font-size: var(--font-size-big);
}

.font-size-h1 {
  font-size: var(--font-size-h1);
}

.font-size-h2 {
  font-size: var(--font-size-h2);
}

.font-size-h3 {
  font-size: var(--font-size-h3);
}

.font-size-h4 {
  font-size: var(--font-size-h4);
}

.text-overline {
  color: var(--color-text-title) !important;
  text-transform: uppercase;
  letter-spacing: 0.4em;
  font-size: var(--font-size-text);
}

ul.elem-list-checked {
  padding-left: 2em;
}
ul.elem-list-checked > li {
  padding-left: 0.5em;
}
ul.elem-list-checked > li + li {
  padding-top: 0.5em;
}
ul.elem-list-checked > ::marker {
  content: "\f058";
  font-size: 1.25em;
  font-family: var(--font-family-icon);
  font-weight: 500;
  position: relative;
  position: absolute;
  top: 10px;
}

ul.elem-list-chevron {
  padding-left: 2em;
}
ul.elem-list-chevron > li {
  padding-left: 0.5em;
}
ul.elem-list-chevron > li + li {
  padding-top: 0.5em;
}
ul.elem-list-chevron > ::marker {
  content: "\f054";
  font-size: 1em;
  font-family: var(--font-family-icon);
  font-weight: 500;
  position: relative;
}

.text-center {
  text-align: center;
}
.text-center h2::before {
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.col > *:last-child {
  margin-bottom: 0;
}

/* ==========================================================================

	20/12/2022

	COULEURS

	--[category]-[role]-[variant]-[state]

	category 		= type du token (color, font, spacing, etc.)
	role 			= usage ou fonction (text, bg, border, primary, etc.)
	variant			= nuance ou niveau (light, dark, accent, etc.)
	state/modifier	= état ou nature (hover, fixed, disabled, etc.)

========================================================================== */
:root {
  --color-primary-fixed: var(--color-primary );
  --color-primary-dark-fixed: var(--color-primary-fixed );
  --color-primary-grey-complementary-fixed: #f0f4f5;
  --color-text-dark-fixed: #1D1D1B;
  --color-white: #ffffff;
  --color-grey-ultra-light: #F8F9FA;
  --color-grey-light: #F8F9FA;
  --color-grey-medium: hsl(0, 0%, 90%);
  --color-scrollbar-track: var(--color-line-light);
  --color-scrollbar-thumb: var(--color-primary-fixed);
  --color-scrollbar-thumb-hover: var(--color-primary-dark-fixed);
  --color-hamburger-line: #ffffff;
  --nav-bg-opacity: 0;
}

:root, .theme-default {
  --color-bg: white;
  --color-text: #1D1D1B;
  --color-text-light: hsl(0, 0%, 43%);
  --color-text-accent: var(--color-primary-fixed);
  --color-text-link: var(--color-primary-dark-fixed);
  --color-text-link-hover: var(--color-primary-dark-fixed);
  --color-line: #1D1D1B;
  --color-line-accent: var(--color-primary-fixed);
  --color-line-light: hsl(0, 0%, 75%);
  --selection-color-bg: var(--color-primary-fixed);
  --selection-color-text: var(--color-white);
  --btn-primary-color-text: var(--color-text-dark-fixed);
  --btn-primary-color-text-hover: var(--color-text-dark-fixed);
  --btn-primary-color-bg: var(--color-primary-fixed);
  --btn-primary-color-bg-hover: var(--color-primary-dark-fixed);
  --btn-primary-border: 1pt solid var(--color-primary-fixed);
  --btn-primary-border-hover: 1pt solid var(--color-primary-dark-fixed);
  --btn-secondary-color-text: #ffffff;
  --btn-secondary-color-text-hover: #ffffff;
  --btn-secondary-color-bg: hsl(204, 0%, 70%);
  --btn-secondary-color-bg-hover: hsl(204, 0%, 50%);
  --btn-secondary-border: 1pt solid hsl(204, 0%, 70%);
  --btn-secondary-border-hover: 1pt solid hsl(204, 0%, 50%);
  --btn-transparent-color-text: var(--color-text);
  --btn-transparent-color-text-hover: var(--color-text-link-hover);
  --btn-transparent-color-picto: var(--color-primary-fixed);
  --btn-transparent-color-picto-hover: var(--color-primary-dark-fixed);
  --btn-transparent-color-bg: rgba(255, 255, 255, 0.2);
  --btn-transparent-color-bg-hover: var(--color-secondary);
  --btn-transparent-border: 1pt solid transparent;
  --btn-transparent-border-hover: 1pt solid transparent;
  --btn-link-color-text: var(--color-text-link);
  --btn-link-color-text-hover: var(--color-text-link-hover);
}
:root a:not(.btn):not([class*=card]):not([class*=card-]):not([class*=btn-]):not(.active):not(.leaflet-control-zoom > *), .theme-default a:not(.btn):not([class*=card]):not([class*=card-]):not([class*=btn-]):not(.active):not(.leaflet-control-zoom > *) {
  color: var(--color-text-link);
}
:root a:not(.btn):not([class*=card]):not([class*=card-]):not([class*=btn-]):not(.active):not(.leaflet-control-zoom > *):hover, .theme-default a:not(.btn):not([class*=card]):not([class*=card-]):not([class*=btn-]):not(.active):not(.leaflet-control-zoom > *):hover {
  color: var(--color-text-link-hover);
}
:root .color-line, .theme-default .color-line {
  border: var(--color-line) 1pt solid;
}
:root .color-line-accent, .theme-default .color-line-accent {
  border: var(--color-line-accent) 1pt solid;
}
:root .color-line-light, .theme-default .color-line-light {
  border: var(--color-line-light) 1pt solid;
}
:root ::-moz-selection, .theme-default ::-moz-selection {
  background: var(--selection-color-bg);
  color: var(--selection-color-text);
}
:root ::selection, .theme-default ::selection {
  background: var(--selection-color-bg);
  color: var(--selection-color-text);
}

.theme-light {
  --color-text: #2C2E41;
  --color-text-title: #2C2E41;
  --color-bg: #f0f4f5;
  --color-bg: var(--color-primary-grey-complementary-fixed);
}
.theme-light h3 {
  color: var(--color-text-title);
}

body, [class*=theme-] {
  background-color: var(--color-bg);
  color: var(--color-text);
}

footer {
  color: var(--color-text);
  background: var(--color-bg);
}

.theme-black {
  --color-bg: hsl(0, 0%, 0%);
  --color-text: var(--color-white);
  --color-text-light: hsl(0deg 0% 30%);
  --color-text-accent: var(--color-primary-fixed) !important;
  --color-line: var(--color-white);
  --color-line-accent: var(--color-primary-fixed);
  --color-line-light: hsl(0deg 0% 30%);
}
@media print {
  .theme-black {
    --color-bg: white;
    --color-text: #2C2E41;
    --color-text-light: hsl(0, 0%, 60%);
    --color-text-accent: var(--color-primary-fixed);
    --color-text-title: #2C2E41;
    --color-text-link: var(--color-primary-fixed);
    --color-text-link-hover: var(--color-primary-fixed);
  }
}

.theme-dark-grey {
  --color-bg: rgba(52, 58, 64, 1);
  --color-text: var(--color-white);
  --color-text-title: var(--color-white);
}
@media print {
  .theme-dark-grey {
    --color-bg: white;
    --color-text: #2C2E41;
    --color-text-light: hsl(0, 0%, 60%);
    --color-text-accent: var(--color-primary-fixed);
    --color-text-title: #2C2E41;
    --color-text-link: var(--color-primary-fixed);
    --color-text-link-hover: var(--color-primary-fixed);
  }
}

.theme-primary, .theme-background-image {
  --color-bg: var(--color-primary-fixed);
  --color-bg-hover: var(--color-primary-dark-fixed);
  --color-text: var(--color-white);
  --color-text-light: hsla(0, 0%, 100%, 0.8);
  --color-text-accent: #212529;
  --color-text-title: var(--color-white);
  --color-text-link: hsla(0, 0%, 0%, 0.8);
  --color-text-link-hover: hsla(0, 0%, 0%, 1);
  --color-line: hsla(0, 0%, 100%, 0.5);
  --color-line-accent: #212529;
  --color-line-light: hsla(0, 0%, 100%, 0.2);
  --selection-color-bg: #212529;
}

.background-image {
  --color-bg: var(--color-primary-fixed);
  --color-text: var(--color-white);
}

ul > ::marker {
  color: var(--color-text-accent);
}

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

.text-color-accent {
  color: var(--color-text-accent);
}

.text-color-light {
  color: var(--color-text-light);
}

.theme-dark-grey + .theme-dark-grey,
.theme-light + .theme-light,
.theme-black + .theme-black,
.theme-default + .theme-default,
.theme-primary + .theme-primary {
  padding-top: 0;
}

:root {
  --border-radius-style: 12px ;
  --btn-line-height: 1em;
  --btn-picto-gap: .5em;
  --btn-font-size-sm: 12px;
  --btn-font-weight-sm: 700;
  --btn-padding-sm: 4px 10px;
  --btn-border-radius-sm: 0px;
  --btn-min-height-sm: 27px;
  --btn-picto-font-size-sm: 16px;
  --btn-font-size: 14px;
  --btn-font-weight: 600;
  --btn-padding: 24px 36px;
  --btn-border-radius: 0px;
  --btn-min-height: 40px;
  --btn-picto-font-size: 16px;
  --btn-font-weight-lg: 700;
  --btn-border-radius-lg: 0px;
  --btn-picto-font-size-lg: 32px;
}
@media (max-width: 767.98px) {
  :root {
    --btn-font-size-lg: 18px;
    --btn-min-height-lg: 54px;
    --btn-padding-lg: 4px 20px;
  }
}
@media (min-width: 768px) {
  :root {
    --btn-font-size-lg: 18px;
    --btn-min-height-lg: 54px;
    --btn-padding-lg: 4px 24px;
  }
}

.btn-primary.btn-shadow {
  -webkit-box-shadow: 0px 3px 4px 0px rgba(0, 0, 0, 0.25);
          box-shadow: 0px 3px 4px 0px rgba(0, 0, 0, 0.25);
}

.btn-border-white {
  border: 2pt solid var(--color-white) !important;
}

.btn-shadow {
  -webkit-box-shadow: 0px 3px 4px 0px rgba(0, 0, 0, 0.15);
          box-shadow: 0px 3px 4px 0px rgba(0, 0, 0, 0.15);
}

.btn-white {
  background-color: var(--color-white);
  color: var(--color-text-dark-fixed);
}
.btn-white:hover {
  background-color: var(--color-grey-medium);
  color: var(--color-text-dark-fixed);
}
.btn-white.btn-shadow {
  -webkit-box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.25);
          box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.25);
}

.btn-light {
  background-color: var(--color-grey-light);
  color: var(--color-primary-fixed);
}
.btn-light:hover {
  color: var(--color-text-dark-fixed);
}

.btn {
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  position: relative;
  text-decoration: none;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 1em;
  border-radius: var(--btn-border-radius);
  border: none;
  font-size: var(--btn-font-size);
  font-family: var(--font-family-nav);
  padding: var(--btn-padding);
  font-weight: var(--btn-font-weight);
  line-height: var(--btn-line-height);
  min-height: var(--btn-min-height);
}
.btn h3 {
  font-size: var(--btn-font-size);
  font-family: var(--font-family-nav);
  font-weight: var(--btn-font-weight);
  line-height: var(--btn-line-height);
  margin-bottom: 0;
}
.btn i {
  font-size: var(--btn-picto-font-size);
}
.btn:hover {
  text-decoration: none;
}
.btn-circle {
  aspect-ratio: 1;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding-right: 0 !important;
  padding-left: 0 !important;
  text-align: center;
  border-radius: 200px;
}
.btn-sm {
  min-height: var(--btn-min-height-sm);
  padding: var(--btn-padding-sm);
  font-weight: var(--btn-font-weight-sm);
  font-size: var(--btn-font-size-sm);
}
.btn-sm.btn-circle {
  width: var(--btn-min-height-sm);
}
.btn-sm i {
  font-size: var(--btn-picto-font-size-sm);
}
.btn-lg {
  min-height: var(--btn-min-height-lg);
  padding: var(--btn-padding-lg);
  font-weight: var(--btn-font-weight-lg);
  font-size: var(--btn-font-size-lg);
}
.btn-lg.btn-circle {
  width: var(--btn-min-height-lg);
}
@media (max-width: 767.98px) {
  .btn i + span.hide-mobile {
    margin-left: 0;
  }
  .btn span.hide-mobile + i {
    margin-left: 0;
  }
}
@media (min-width: 768px) {
  .btn i + span.hide-desktop {
    margin-left: 0;
  }
  .btn span.hide-desktop + i {
    margin-left: 0;
  }
}
.btn svg {
  height: 16px;
  fill: currentColor;
  -webkit-transform: scale(2);
          transform: scale(2);
}
.btn .btn-text-active {
  display: none;
}
.btn.active .btn-text-default {
  display: none;
}
.btn.active .btn-text-active {
  display: initial;
}

.btn-transparent {
  color: var(--btn-transparent-color-text);
  background-color: var(--btn-transparent-color-bg);
  border: var(--btn-transparent-border);
}
.btn-transparent i, .btn-transparent > svg {
  color: var(--btn-transparent-color-picto) !important;
}
.btn-transparent:hover {
  color: var(--btn-transparent-color-text-hover);
  background-color: var(--btn-transparent-color-bg-hover);
  border: var(--btn-transparent-border-hover);
}
.btn-transparent:hover > svg {
  color: var(--color-transparent) !important;
}
.btn-transparent:not(:disabled):not(.disabled):active, .btn-transparent:not(:disabled):not(.disabled).active {
  color: var(--color-transparent);
  background-color: var(--color-white);
  border-color: var(--color-transparent);
  outline: 2px var(--color-transparent) solid;
}
.btn-transparent.disabled {
  opacity: 0.4;
}
.btn-transparent.disabled:hover {
  opacity: 1;
}
.btn-deselected {
  color: var(--btn-primary-color-text);
  border: #1a1a1a solid 1pt;
  background-color: #1a1a1a;
}

.btn-favoris {
  backdrop-filter: blur(6px);
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 100%;
  width: 32px;
  height: 32px;
  background-color: rgba(255, 255, 255, 0.5);
  color: var(--color-text);
}
.btn-favoris i {
  font-weight: 400;
}
.btn-favoris.active i {
  font-weight: 600;
  color: var(--color-important);
}
.btn-favoris:hover {
  text-decoration: none;
  color: var(--color-text);
}

.btn-primary {
  color: var(--btn-primary-color-text);
  background-color: var(--btn-primary-color-bg);
  border: var(--btn-primary-border);
  /* Couleur par défaut (claire) */
  background-color: var(--color-primary-fixed);
  /* On prépare le “volet” foncé à gauche (0%) */
  background-image: -webkit-gradient(linear, left top, right top, from(var(--color-primary-dark-fixed)), color-stop(50%, var(--color-primary-dark-fixed)), color-stop(50%, var(--color-primary-fixed)), to(var(--color-primary-fixed)));
  background-image: linear-gradient(to right, var(--color-primary-dark-fixed) 0%, var(--color-primary-dark-fixed) 50%, var(--color-primary-fixed) 50%, var(--color-primary-fixed) 100%);
  background-size: 0% 100%; /* invisible au repos */
  background-repeat: no-repeat;
  background-position: left center;
  -webkit-transition: background-size 0.4s ease;
  transition: background-size 0.4s ease;
}
.btn-primary > span, .btn-primary > i {
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  color: var(--btn-primary-color-text);
}
.btn-primary > svg {
  color: var(--color-white) !important;
}
.btn-primary:hover {
  color: var(--btn-primary-color-text-hover);
  border: var(--btn-primary-border-hover);
  background-size: 200% 100%; /* double largeur = expansion complète */
}
.btn-primary:hover > svg {
  color: var(--color-primary) !important;
}
.btn-primary:hover > span, .btn-primary:hover > i {
  color: var(--btn-primary-color-text-hover);
}
.btn-primary:not(:disabled):not(.disabled):active, .btn-primary:not(:disabled):not(.disabled).active {
  color: var(--color-primary);
  background-color: var(--color-primary-fixed);
  border-color: var(--color-primary-fixed);
}
.btn-outline {
  background-color: var(--color-white);
  border: 1pt solid var(--color-primary-fixed);
  color: var(--color-text-dark-fixed);
  /* On prépare le “volet” foncé à gauche (0%) */
  background-image: -webkit-gradient(linear, left top, right top, from(var(--color-primary-fixed)), color-stop(50%, var(--color-primary-fixed)), color-stop(50%, var(--color-white)), to(var(--color-white)));
  background-image: linear-gradient(to right, var(--color-primary-fixed) 0%, var(--color-primary-fixed) 50%, var(--color-white) 50%, var(--color-white) 100%);
  background-size: 0% 100%; /* invisible au repos */
  background-repeat: no-repeat;
  background-position: left center;
  -webkit-transition: background-size 0.4s ease;
  transition: background-size 0.4s ease;
}
.btn-outline:hover {
  color: var(--btn-primary-color-text-hover);
  border: var(--btn-primary-border-hover);
  border-color: var(--color-primary-fixed);
  background-size: 200% 100%; /* double largeur = expansion complète */
}

.btn-secondary {
  color: var(--btn-secondary-color-text);
  background-color: var(--btn-secondary-color-bg);
  border: var(--btn-secondary-border);
}
.btn-secondary > svg {
  color: var(--color-white) !important;
}
.btn-secondary:hover {
  color: var(--btn-secondary-color-text-hover);
  background-color: var(--btn-secondary-color-bg-hover);
  border: var(--btn-secondary-border-hover);
}
.btn-secondary:hover > svg {
  color: var(--btn-secondary-color-text-hover) !important;
}
.btn-secondary:not(:disabled):not(.disabled):active, .btn-secondary:not(:disabled):not(.disabled).active,
.btn-secondary .show > .btn-secondary.dropdown-toggle {
  color: var(--color-primary);
  background-color: var(--color-white);
  border-color: var(--color-primary);
  outline: 2px var(--color-primary) solid;
}
.btn-link {
  position: relative;
  color: var(--btn-link-color-text);
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: none;
  background: none;
}
.btn-link:hover {
  color: var(--btn-link-color-text-hover);
}

.btn-simple i {
  font-size: var(--btn-picto-font-size);
}
.btn-simple i + span {
  margin-left: 0.5em;
}
.btn-simple span + i {
  margin-left: 0.5em;
}
.btn-simple svg + span {
  margin-left: 0.5em;
  margin-right: 1em;
}
.btn-simple span + svg {
  margin-left: 1em;
  margin-right: 0.5em;
}
.btn-simple svg {
  height: 16px;
  fill: currentColor;
  -webkit-transform: scale(2);
          transform: scale(2);
}

.btn-favoris {
  text-decoration: none;
  backdrop-filter: blur(6px);
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 100%;
  width: 32px;
  height: 32px;
  background-color: rgba(255, 255, 255, 0.5);
  color: var(--color-text);
}
.btn-favoris i {
  font-weight: 400;
  -webkit-transition: color 0.2s ease-in-out;
  transition: color 0.2s ease-in-out;
}
.btn-favoris.active i {
  font-weight: 600;
  color: var(--color-primary-fixed);
}
.btn-favoris:hover {
  text-decoration: none;
  color: var(--color-text);
}

.btn-outline-link {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 10px 16px;
  min-height: 48px;
  font-size: 16px;
  font-weight: 700;
  color: #6a737b;
  background-color: transparent;
  border: 1pt solid #6a737b;
  border-radius: 8px;
}
.btn-outline-link:hover, .btn-outline-link:focus {
  color: white;
  background-color: #6a737b;
  border-color: #6a737b;
}
.btn-outline-link.active {
  color: white;
  background-color: var(--color-primary-fixed);
  border-color: var(--color-primary-fixed);
}
.btn-outline-link i {
  margin-right: 8px;
  font-size: 16px;
}

/* ==========================================================================

	04/09/2023

	SPACER

<-- side margin -->  <-- col -->  <-- gutter -->  <-- col -->  <-- gutter -->  <-- col -->  <-- side margin -->

========================================================================== */
:root {
  --max-width-xxs: 320px;
  --max-width-xs: 480px;
  --max-width-sm: 540px;
  --max-width-md: 720px;
  --max-width-lg: 960px;
  --max-width-xl: 1140px;
  --max-width-xxl: 1320px;
  --max-width-xxxl: 1920px;
}

.max-width-xxs {
  max-width: var(--max-width-xxs);
}

.max-width-xs {
  max-width: var(--max-width-xs);
}

.max-width-sm {
  max-width: var(--max-width-sm);
}

.max-width-md {
  max-width: var(--max-width-md);
}

.max-width-lg {
  max-width: var(--max-width-lg);
}

.max-width-xl {
  max-width: var(--max-width-xl);
}

:root {
  --aspect-ratio-img-custom: 66%;
  --form-spacer: var(--spacer-paragraph);
  --form-subtitle-spacer: 22px;
  --spacer-gap: 32px;
  --spacer-gap-menu-item: 32px;
  --gap-nav-primary-item: 32px;
  --logo-trevi-height: 32px;
  --logo-text-size: 14px;
  --spacer-padding-card: 24px;
  --mask-width: 400%;
  --spacer-side-margin: 32px;
  --spacer-gutter: 32px;
  --spacer-gap-main: var(--spacer-side-margin);
  --spacer-gap-col: var(--spacer-gutter);
}

:root {
  --spacer-max-width-body: 1380px;
  --spacer-side-margin: 16px;
  --spacer-gap-list-estate: 64px;
  --spacer-gap-list-estate-x: 64px;
  --spacer-gap-list-estate-y: 64px;
  --spacer-gutter: 16px;
}
@media (min-width: 768px) and (max-width: 991.98px) {
  :root {
    --spacer-gutter: 24px;
    --spacer-side-margin: 32px;
    --spacer-gap-list-estate: 64px 32px;
    --spacer-gap-list-estate-x: 32px;
    --spacer-gap-list-estate-y: 64px;
  }
}
@media (min-width: 992px) and (max-width: 1199.98px) {
  :root {
    --spacer-gutter: 44px;
    --spacer-side-margin: 32px;
    --spacer-gap-list-estate: 64px 32px;
    --spacer-gap-list-estate-x: 32px;
    --spacer-gap-list-estate-y: 64px;
  }
}
@media (min-width: 1200px) {
  :root {
    --spacer-gutter: 44px;
    --spacer-side-margin: 32px;
    --spacer-gap-list-estate: 48px;
    --spacer-gap-list-estate-x: 48px;
    --spacer-gap-list-estate-y: 48px;
  }
}

@media (max-width: 767.98px) {
  :root {
    --spacer-section: 96px;
    --spacer-block: 48px;
    --spacer-paragraph: 24px;
  }
  body.menu-shadow {
    --menu-height: 60px;
  }
}
@media (min-width: 768px) {
  :root {
    --spacer-section: 128px;
    --spacer-block: 64px;
    --spacer-paragraph: 24px;
  }
}
/* ==========================================================================

	SPACER

========================================================================== */
:root {
  --spacer-0: 0px;
  --spacer-1: 4px;
  --spacer-2: 8px;
  --spacer-3: var(--spacer-paragraph);
  --spacer-4: var(--spacer-block);
  --spacer-5: var(--spacer-section);
}

.p-0 {
  padding: 0 !important;
}

.pb-0 {
  padding-bottom: 0 !important;
}

.pb-1 {
  padding-bottom: 4px !important;
}

.pb-2 {
  padding-bottom: 8px !important;
}

.pb-3 {
  padding-bottom: var(--spacer-paragraph) !important;
}

.pb-4 {
  padding-bottom: var(--spacer-block) !important;
}

.pb-5 {
  padding-bottom: var(--spacer-section) !important;
}

.pt-0 {
  padding-top: 0 !important;
}

.pt-1 {
  padding-top: 4px !important;
}

.pt-2 {
  padding-top: 8px !important;
}

.pt-3 {
  padding-top: var(--spacer-paragraph) !important;
}

.pt-4 {
  padding-top: var(--spacer-block) !important;
}

.pt-5 {
  padding-top: var(--spacer-section) !important;
}

@media (max-width: 767.98px) {
  .pt-sm-5 {
    padding-top: var(--spacer-section) !important;
  }
}
.py-0 {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.py-1 {
  padding-top: 4px !important;
  padding-bottom: 4px !important;
}

.py-2 {
  padding-top: 8px !important;
  padding-bottom: 8px !important;
}

.py-3 {
  padding-top: var(--spacer-paragraph) !important;
  padding-bottom: var(--spacer-paragraph) !important;
}

.py-4 {
  padding-top: var(--spacer-block) !important;
  padding-bottom: var(--spacer-block) !important;
}

.py-5 {
  padding-top: var(--spacer-section) !important;
  padding-bottom: var(--spacer-section) !important;
}

.px-0 {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.px-1 {
  padding-left: 4px !important;
  padding-right: 4px !important;
}

.px-2 {
  padding-left: 8px !important;
  padding-right: 8px !important;
}

.px-3 {
  padding-left: 16px !important;
  padding-right: 16px !important;
}

.px-4 {
  padding-left: 24px !important;
  padding-right: 24px !important;
}

.px-5 {
  padding-left: 32px !important;
  padding-right: 32px !important;
}

.m-0 {
  margin: 0 !important;
}

.m-auto {
  margin: auto !important;
}

.my-auto {
  margin-top: auto !important;
  margin-bottom: auto !important;
}

.mx-auto {
  margin-left: auto !important;
  margin-right: auto !important;
}

.mb-0 {
  margin-bottom: 0 !important;
}

.mb-1 {
  margin-bottom: 4px !important;
}

.mb-2 {
  margin-bottom: 8px !important;
}

.mb-3 {
  margin-bottom: var(--spacer-paragraph) !important;
}

.mb-4 {
  margin-bottom: var(--spacer-block) !important;
}

.mb-5 {
  margin-bottom: var(--spacer-section) !important;
}

.mt-0 {
  margin-top: 0 !important;
}

.mt-1 {
  margin-top: 4px !important;
}

.mt-2 {
  margin-top: 8px !important;
}

.mt-3 {
  margin-top: var(--spacer-paragraph) !important;
}

.mt-4 {
  margin-top: var(--spacer-block) !important;
}

.mt-5 {
  margin-top: var(--spacer-section) !important;
}

.mr-0 {
  margin-right: 0 !important;
}

.mr-1 {
  margin-right: 4px !important;
}

.mr-2 {
  margin-right: 8px !important;
}

.mr-3 {
  margin-right: var(--spacer-paragraph) !important;
}

.mr-4 {
  margin-right: var(--spacer-block) !important;
}

.mr-5 {
  margin-right: var(--spacer-section) !important;
}

.ml-0 {
  margin-left: 0 !important;
}

.ml-1 {
  margin-left: 4px !important;
}

.ml-2 {
  margin-left: 8px !important;
}

.ml-3 {
  margin-left: var(--spacer-paragraph) !important;
}

.ml-4 {
  margin-left: var(--spacer-block) !important;
}

.ml-5 {
  margin-left: var(--spacer-section) !important;
}

/* ==========================================================================

	WIDTH

========================================================================== */
:root {
  --max-width-14: calc(1380px / 12 * 14);
  --max-width-13: calc(1380px / 12 * 13);
  --max-width-12: calc(1380px / 12 * 12);
  --max-width-11: calc(1380px / 12 * 11);
  --max-width-10: calc(1380px / 12 * 10);
  --max-width-9: calc(1380px / 12 * 9);
  --max-width-8: calc(1380px / 12 * 8);
  --max-width-7: calc(1380px / 12 * 7);
  --max-width-6: calc(1380px / 12 * 6);
  --max-width-5: calc(1380px / 12 * 5);
  --max-width-4: calc(1380px / 12 * 4);
  --max-width-3: calc(1380px / 12 * 3);
  --max-width-2: calc(1380px / 12 * 2);
  --max-width-1: calc(1380px / 12 * 1);
}

.max-width-14 {
  max-width: var(--max-width-14) !important;
}

.max-width-13 {
  max-width: var(--max-width-13) !important;
}

.max-width-12 {
  max-width: var(--max-width-12) !important;
}

.max-width-11 {
  max-width: var(--max-width-11) !important;
}

.max-width-10 {
  max-width: var(--max-width-10) !important;
}

.max-width-9 {
  max-width: var(--max-width-9) !important;
}

.max-width-8 {
  max-width: var(--max-width-8) !important;
}

.max-width-7 {
  max-width: var(--max-width-7) !important;
}

.max-width-6 {
  max-width: var(--max-width-6) !important;
}

.max-width-5 {
  max-width: var(--max-width-5) !important;
}

.max-width-4 {
  max-width: var(--max-width-4) !important;
}

.max-width-3 {
  max-width: var(--max-width-3) !important;
}

.max-width-2 {
  max-width: var(--max-width-2) !important;
}

.max-width-1 {
  max-width: var(--max-width-1) !important;
}

.no-last-margin > *:last-child {
  margin-bottom: 0;
}

.no-margin-on-last-child-element > *:last-child {
  margin-bottom: 0;
}

/* ==========================================================================

	15/03/2023

	SCROLLBAR

========================================================================== */
*::-webkit-scrollbar {
  width: 8px;
}
*::-webkit-scrollbar-track {
  background: var(--color-scrollbar-track);
}
*::-webkit-scrollbar-thumb {
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  background-color: var(--color-scrollbar-thumb);
}
*::-webkit-scrollbar-thumb:hover {
  background-color: var(--color-scrollbar-thumb-hover);
}

/* ==========================================================================

	.hide-desktop
	.hide-mobile

========================================================================== */
@media (max-width: 767.98px) {
  .hide-mobile {
    display: none !important;
  }
}
@media (min-width: 768px) {
  .hide-desktop {
    display: none !important;
  }
}
.justify-content-start {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}

.justify-content-center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.justify-content-end {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.justify-content-between {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.justify-content-around {
  -ms-flex-pack: distribute;
      justify-content: space-around;
}

.justify-content-evenly {
  -webkit-box-pack: space-evenly;
      -ms-flex-pack: space-evenly;
          justify-content: space-evenly;
}

.align-items-start {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.align-items-center {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.align-items-end {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}

.align-items-stretch {
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}

.align-items-baseline {
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
}

.container {
  width: 100%;
  margin-inline: auto;
  padding-inline: 16px;
}
@media (min-width: 576px) {
  .container {
    padding-inline: 16px;
    max-width: 1440px;
  }
}
@media (min-width: 768px) {
  .container {
    padding-inline: 32px;
    max-width: 1440px;
  }
}
@media (min-width: 992px) {
  .container {
    padding-inline: 32px;
    max-width: 1440px;
  }
}
@media (min-width: 1200px) {
  .container {
    padding-inline: 32px;
    max-width: 1440px;
  }
}
@media (max-width: 767.98px) {
  .container--px-mobile-0 {
    padding-inline: 0 !important;
  }
  .container--px-mobile-0 .row {
    margin-inline: 0 !important;
  }
  .container--px-mobile-0 .row > .col {
    padding-inline: 0 !important;
  }
}

.container-reading {
  max-width: 720px;
  margin-inline: auto;
  padding-inline: 16px;
}

.container-fluid {
  width: 100%;
  margin-inline: auto;
  padding-inline: 16px;
}
@media (min-width: 576px) {
  .container-fluid {
    padding-inline: 16px;
  }
}
@media (min-width: 768px) {
  .container-fluid {
    padding-inline: 32px;
  }
}
@media (min-width: 992px) {
  .container-fluid {
    padding-inline: 32px;
  }
}
@media (min-width: 1200px) {
  .container-fluid {
    padding-inline: 32px;
  }
}
.container-fluid--px-0 {
  padding-inline: 0 !important;
}

.row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-inline: calc(-1 * 16px / 2);
}
@media (min-width: 576px) {
  .row {
    margin-inline: calc(-1 * 16px / 2);
  }
}
@media (min-width: 768px) {
  .row {
    margin-inline: calc(-1 * 16px / 2);
  }
}
@media (min-width: 992px) {
  .row {
    margin-inline: calc(-1 * 16px / 2);
  }
}
@media (min-width: 1200px) {
  .row {
    margin-inline: calc(-1 * 32px / 2);
  }
}

.col {
  -webkit-box-flex: 1;
      -ms-flex: 1 0 0px;
          flex: 1 0 0;
  padding-inline: calc(16px / 2);
}
@media (min-width: 576px) {
  .col {
    padding-inline: calc(16px / 2);
  }
}
@media (min-width: 768px) {
  .col {
    padding-inline: calc(16px / 2);
  }
}
@media (min-width: 992px) {
  .col {
    padding-inline: calc(16px / 2);
  }
}
@media (min-width: 1200px) {
  .col {
    padding-inline: calc(32px / 2);
  }
}

.col-1 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 calc(1 / 12 * 100%);
          flex: 0 0 calc(1 / 12 * 100%);
  max-width: calc(1 / 12 * 100%);
}

.col-2 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 calc(2 / 12 * 100%);
          flex: 0 0 calc(2 / 12 * 100%);
  max-width: calc(2 / 12 * 100%);
}

.col-3 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 calc(3 / 12 * 100%);
          flex: 0 0 calc(3 / 12 * 100%);
  max-width: calc(3 / 12 * 100%);
}

.col-4 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 calc(4 / 12 * 100%);
          flex: 0 0 calc(4 / 12 * 100%);
  max-width: calc(4 / 12 * 100%);
}

.col-5 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 calc(5 / 12 * 100%);
          flex: 0 0 calc(5 / 12 * 100%);
  max-width: calc(5 / 12 * 100%);
}

.col-6 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 calc(6 / 12 * 100%);
          flex: 0 0 calc(6 / 12 * 100%);
  max-width: calc(6 / 12 * 100%);
}

.col-7 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 calc(7 / 12 * 100%);
          flex: 0 0 calc(7 / 12 * 100%);
  max-width: calc(7 / 12 * 100%);
}

.col-8 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 calc(8 / 12 * 100%);
          flex: 0 0 calc(8 / 12 * 100%);
  max-width: calc(8 / 12 * 100%);
}

.col-9 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 calc(9 / 12 * 100%);
          flex: 0 0 calc(9 / 12 * 100%);
  max-width: calc(9 / 12 * 100%);
}

.col-10 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 calc(10 / 12 * 100%);
          flex: 0 0 calc(10 / 12 * 100%);
  max-width: calc(10 / 12 * 100%);
}

.col-11 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 calc(11 / 12 * 100%);
          flex: 0 0 calc(11 / 12 * 100%);
  max-width: calc(11 / 12 * 100%);
}

.col-12 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 calc(12 / 12 * 100%);
          flex: 0 0 calc(12 / 12 * 100%);
  max-width: calc(12 / 12 * 100%);
}

@media (min-width: 576px) {
  .col-sm-1 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(1 / 12 * 100%);
            flex: 0 0 calc(1 / 12 * 100%);
    max-width: calc(1 / 12 * 100%);
  }
  .col-sm-2 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(2 / 12 * 100%);
            flex: 0 0 calc(2 / 12 * 100%);
    max-width: calc(2 / 12 * 100%);
  }
  .col-sm-3 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(3 / 12 * 100%);
            flex: 0 0 calc(3 / 12 * 100%);
    max-width: calc(3 / 12 * 100%);
  }
  .col-sm-4 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(4 / 12 * 100%);
            flex: 0 0 calc(4 / 12 * 100%);
    max-width: calc(4 / 12 * 100%);
  }
  .col-sm-5 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(5 / 12 * 100%);
            flex: 0 0 calc(5 / 12 * 100%);
    max-width: calc(5 / 12 * 100%);
  }
  .col-sm-6 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(6 / 12 * 100%);
            flex: 0 0 calc(6 / 12 * 100%);
    max-width: calc(6 / 12 * 100%);
  }
  .col-sm-7 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(7 / 12 * 100%);
            flex: 0 0 calc(7 / 12 * 100%);
    max-width: calc(7 / 12 * 100%);
  }
  .col-sm-8 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(8 / 12 * 100%);
            flex: 0 0 calc(8 / 12 * 100%);
    max-width: calc(8 / 12 * 100%);
  }
  .col-sm-9 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(9 / 12 * 100%);
            flex: 0 0 calc(9 / 12 * 100%);
    max-width: calc(9 / 12 * 100%);
  }
  .col-sm-10 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(10 / 12 * 100%);
            flex: 0 0 calc(10 / 12 * 100%);
    max-width: calc(10 / 12 * 100%);
  }
  .col-sm-11 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(11 / 12 * 100%);
            flex: 0 0 calc(11 / 12 * 100%);
    max-width: calc(11 / 12 * 100%);
  }
  .col-sm-12 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(12 / 12 * 100%);
            flex: 0 0 calc(12 / 12 * 100%);
    max-width: calc(12 / 12 * 100%);
  }
  .col-sm {
    -webkit-box-flex: 1;
        -ms-flex: 1 0 0px;
            flex: 1 0 0;
  }
}
@media (min-width: 768px) {
  .col-md-1 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(1 / 12 * 100%);
            flex: 0 0 calc(1 / 12 * 100%);
    max-width: calc(1 / 12 * 100%);
  }
  .col-md-2 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(2 / 12 * 100%);
            flex: 0 0 calc(2 / 12 * 100%);
    max-width: calc(2 / 12 * 100%);
  }
  .col-md-3 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(3 / 12 * 100%);
            flex: 0 0 calc(3 / 12 * 100%);
    max-width: calc(3 / 12 * 100%);
  }
  .col-md-4 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(4 / 12 * 100%);
            flex: 0 0 calc(4 / 12 * 100%);
    max-width: calc(4 / 12 * 100%);
  }
  .col-md-5 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(5 / 12 * 100%);
            flex: 0 0 calc(5 / 12 * 100%);
    max-width: calc(5 / 12 * 100%);
  }
  .col-md-6 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(6 / 12 * 100%);
            flex: 0 0 calc(6 / 12 * 100%);
    max-width: calc(6 / 12 * 100%);
  }
  .col-md-7 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(7 / 12 * 100%);
            flex: 0 0 calc(7 / 12 * 100%);
    max-width: calc(7 / 12 * 100%);
  }
  .col-md-8 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(8 / 12 * 100%);
            flex: 0 0 calc(8 / 12 * 100%);
    max-width: calc(8 / 12 * 100%);
  }
  .col-md-9 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(9 / 12 * 100%);
            flex: 0 0 calc(9 / 12 * 100%);
    max-width: calc(9 / 12 * 100%);
  }
  .col-md-10 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(10 / 12 * 100%);
            flex: 0 0 calc(10 / 12 * 100%);
    max-width: calc(10 / 12 * 100%);
  }
  .col-md-11 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(11 / 12 * 100%);
            flex: 0 0 calc(11 / 12 * 100%);
    max-width: calc(11 / 12 * 100%);
  }
  .col-md-12 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(12 / 12 * 100%);
            flex: 0 0 calc(12 / 12 * 100%);
    max-width: calc(12 / 12 * 100%);
  }
  .col-md {
    -webkit-box-flex: 1;
        -ms-flex: 1 0 0px;
            flex: 1 0 0;
  }
}
@media (min-width: 992px) {
  .col-lg-1 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(1 / 12 * 100%);
            flex: 0 0 calc(1 / 12 * 100%);
    max-width: calc(1 / 12 * 100%);
  }
  .col-lg-2 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(2 / 12 * 100%);
            flex: 0 0 calc(2 / 12 * 100%);
    max-width: calc(2 / 12 * 100%);
  }
  .col-lg-3 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(3 / 12 * 100%);
            flex: 0 0 calc(3 / 12 * 100%);
    max-width: calc(3 / 12 * 100%);
  }
  .col-lg-4 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(4 / 12 * 100%);
            flex: 0 0 calc(4 / 12 * 100%);
    max-width: calc(4 / 12 * 100%);
  }
  .col-lg-5 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(5 / 12 * 100%);
            flex: 0 0 calc(5 / 12 * 100%);
    max-width: calc(5 / 12 * 100%);
  }
  .col-lg-6 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(6 / 12 * 100%);
            flex: 0 0 calc(6 / 12 * 100%);
    max-width: calc(6 / 12 * 100%);
  }
  .col-lg-7 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(7 / 12 * 100%);
            flex: 0 0 calc(7 / 12 * 100%);
    max-width: calc(7 / 12 * 100%);
  }
  .col-lg-8 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(8 / 12 * 100%);
            flex: 0 0 calc(8 / 12 * 100%);
    max-width: calc(8 / 12 * 100%);
  }
  .col-lg-9 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(9 / 12 * 100%);
            flex: 0 0 calc(9 / 12 * 100%);
    max-width: calc(9 / 12 * 100%);
  }
  .col-lg-10 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(10 / 12 * 100%);
            flex: 0 0 calc(10 / 12 * 100%);
    max-width: calc(10 / 12 * 100%);
  }
  .col-lg-11 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(11 / 12 * 100%);
            flex: 0 0 calc(11 / 12 * 100%);
    max-width: calc(11 / 12 * 100%);
  }
  .col-lg-12 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(12 / 12 * 100%);
            flex: 0 0 calc(12 / 12 * 100%);
    max-width: calc(12 / 12 * 100%);
  }
  .col-lg {
    -webkit-box-flex: 1;
        -ms-flex: 1 0 0px;
            flex: 1 0 0;
  }
}
@media (min-width: 1200px) {
  .col-xl-1 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(1 / 12 * 100%);
            flex: 0 0 calc(1 / 12 * 100%);
    max-width: calc(1 / 12 * 100%);
  }
  .col-xl-2 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(2 / 12 * 100%);
            flex: 0 0 calc(2 / 12 * 100%);
    max-width: calc(2 / 12 * 100%);
  }
  .col-xl-3 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(3 / 12 * 100%);
            flex: 0 0 calc(3 / 12 * 100%);
    max-width: calc(3 / 12 * 100%);
  }
  .col-xl-4 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(4 / 12 * 100%);
            flex: 0 0 calc(4 / 12 * 100%);
    max-width: calc(4 / 12 * 100%);
  }
  .col-xl-5 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(5 / 12 * 100%);
            flex: 0 0 calc(5 / 12 * 100%);
    max-width: calc(5 / 12 * 100%);
  }
  .col-xl-6 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(6 / 12 * 100%);
            flex: 0 0 calc(6 / 12 * 100%);
    max-width: calc(6 / 12 * 100%);
  }
  .col-xl-7 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(7 / 12 * 100%);
            flex: 0 0 calc(7 / 12 * 100%);
    max-width: calc(7 / 12 * 100%);
  }
  .col-xl-8 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(8 / 12 * 100%);
            flex: 0 0 calc(8 / 12 * 100%);
    max-width: calc(8 / 12 * 100%);
  }
  .col-xl-9 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(9 / 12 * 100%);
            flex: 0 0 calc(9 / 12 * 100%);
    max-width: calc(9 / 12 * 100%);
  }
  .col-xl-10 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(10 / 12 * 100%);
            flex: 0 0 calc(10 / 12 * 100%);
    max-width: calc(10 / 12 * 100%);
  }
  .col-xl-11 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(11 / 12 * 100%);
            flex: 0 0 calc(11 / 12 * 100%);
    max-width: calc(11 / 12 * 100%);
  }
  .col-xl-12 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(12 / 12 * 100%);
            flex: 0 0 calc(12 / 12 * 100%);
    max-width: calc(12 / 12 * 100%);
  }
  .col-xl {
    -webkit-box-flex: 1;
        -ms-flex: 1 0 0px;
            flex: 1 0 0;
  }
}
.row-cols-1 > .col {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 calc(100% / 1);
          flex: 0 0 calc(100% / 1);
  max-width: calc(100% / 1);
}

.row-cols-2 > .col {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 calc(100% / 2);
          flex: 0 0 calc(100% / 2);
  max-width: calc(100% / 2);
}

.row-cols-3 > .col {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 calc(100% / 3);
          flex: 0 0 calc(100% / 3);
  max-width: calc(100% / 3);
}

.row-cols-4 > .col {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 calc(100% / 4);
          flex: 0 0 calc(100% / 4);
  max-width: calc(100% / 4);
}

.row-cols-5 > .col {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 calc(100% / 5);
          flex: 0 0 calc(100% / 5);
  max-width: calc(100% / 5);
}

.row-cols-6 > .col {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 calc(100% / 6);
          flex: 0 0 calc(100% / 6);
  max-width: calc(100% / 6);
}

.row-cols-7 > .col {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 calc(100% / 7);
          flex: 0 0 calc(100% / 7);
  max-width: calc(100% / 7);
}

.row-cols-8 > .col {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 calc(100% / 8);
          flex: 0 0 calc(100% / 8);
  max-width: calc(100% / 8);
}

.row-cols-9 > .col {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 calc(100% / 9);
          flex: 0 0 calc(100% / 9);
  max-width: calc(100% / 9);
}

.row-cols-10 > .col {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 calc(100% / 10);
          flex: 0 0 calc(100% / 10);
  max-width: calc(100% / 10);
}

.row-cols-11 > .col {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 calc(100% / 11);
          flex: 0 0 calc(100% / 11);
  max-width: calc(100% / 11);
}

.row-cols-12 > .col {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 calc(100% / 12);
          flex: 0 0 calc(100% / 12);
  max-width: calc(100% / 12);
}

@media (min-width: 576px) {
  .row-cols-sm-1 > .col {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% / 1);
            flex: 0 0 calc(100% / 1);
    max-width: calc(100% / 1);
  }
  .row-cols-sm-2 > .col {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% / 2);
            flex: 0 0 calc(100% / 2);
    max-width: calc(100% / 2);
  }
  .row-cols-sm-3 > .col {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% / 3);
            flex: 0 0 calc(100% / 3);
    max-width: calc(100% / 3);
  }
  .row-cols-sm-4 > .col {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% / 4);
            flex: 0 0 calc(100% / 4);
    max-width: calc(100% / 4);
  }
  .row-cols-sm-5 > .col {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% / 5);
            flex: 0 0 calc(100% / 5);
    max-width: calc(100% / 5);
  }
  .row-cols-sm-6 > .col {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% / 6);
            flex: 0 0 calc(100% / 6);
    max-width: calc(100% / 6);
  }
  .row-cols-sm-7 > .col {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% / 7);
            flex: 0 0 calc(100% / 7);
    max-width: calc(100% / 7);
  }
  .row-cols-sm-8 > .col {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% / 8);
            flex: 0 0 calc(100% / 8);
    max-width: calc(100% / 8);
  }
  .row-cols-sm-9 > .col {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% / 9);
            flex: 0 0 calc(100% / 9);
    max-width: calc(100% / 9);
  }
  .row-cols-sm-10 > .col {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% / 10);
            flex: 0 0 calc(100% / 10);
    max-width: calc(100% / 10);
  }
  .row-cols-sm-11 > .col {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% / 11);
            flex: 0 0 calc(100% / 11);
    max-width: calc(100% / 11);
  }
  .row-cols-sm-12 > .col {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% / 12);
            flex: 0 0 calc(100% / 12);
    max-width: calc(100% / 12);
  }
}
@media (min-width: 768px) {
  .row-cols-md-1 > .col {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% / 1);
            flex: 0 0 calc(100% / 1);
    max-width: calc(100% / 1);
  }
  .row-cols-md-2 > .col {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% / 2);
            flex: 0 0 calc(100% / 2);
    max-width: calc(100% / 2);
  }
  .row-cols-md-3 > .col {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% / 3);
            flex: 0 0 calc(100% / 3);
    max-width: calc(100% / 3);
  }
  .row-cols-md-4 > .col {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% / 4);
            flex: 0 0 calc(100% / 4);
    max-width: calc(100% / 4);
  }
  .row-cols-md-5 > .col {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% / 5);
            flex: 0 0 calc(100% / 5);
    max-width: calc(100% / 5);
  }
  .row-cols-md-6 > .col {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% / 6);
            flex: 0 0 calc(100% / 6);
    max-width: calc(100% / 6);
  }
  .row-cols-md-7 > .col {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% / 7);
            flex: 0 0 calc(100% / 7);
    max-width: calc(100% / 7);
  }
  .row-cols-md-8 > .col {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% / 8);
            flex: 0 0 calc(100% / 8);
    max-width: calc(100% / 8);
  }
  .row-cols-md-9 > .col {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% / 9);
            flex: 0 0 calc(100% / 9);
    max-width: calc(100% / 9);
  }
  .row-cols-md-10 > .col {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% / 10);
            flex: 0 0 calc(100% / 10);
    max-width: calc(100% / 10);
  }
  .row-cols-md-11 > .col {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% / 11);
            flex: 0 0 calc(100% / 11);
    max-width: calc(100% / 11);
  }
  .row-cols-md-12 > .col {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% / 12);
            flex: 0 0 calc(100% / 12);
    max-width: calc(100% / 12);
  }
}
@media (min-width: 992px) {
  .row-cols-lg-1 > .col {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% / 1);
            flex: 0 0 calc(100% / 1);
    max-width: calc(100% / 1);
  }
  .row-cols-lg-2 > .col {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% / 2);
            flex: 0 0 calc(100% / 2);
    max-width: calc(100% / 2);
  }
  .row-cols-lg-3 > .col {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% / 3);
            flex: 0 0 calc(100% / 3);
    max-width: calc(100% / 3);
  }
  .row-cols-lg-4 > .col {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% / 4);
            flex: 0 0 calc(100% / 4);
    max-width: calc(100% / 4);
  }
  .row-cols-lg-5 > .col {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% / 5);
            flex: 0 0 calc(100% / 5);
    max-width: calc(100% / 5);
  }
  .row-cols-lg-6 > .col {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% / 6);
            flex: 0 0 calc(100% / 6);
    max-width: calc(100% / 6);
  }
  .row-cols-lg-7 > .col {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% / 7);
            flex: 0 0 calc(100% / 7);
    max-width: calc(100% / 7);
  }
  .row-cols-lg-8 > .col {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% / 8);
            flex: 0 0 calc(100% / 8);
    max-width: calc(100% / 8);
  }
  .row-cols-lg-9 > .col {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% / 9);
            flex: 0 0 calc(100% / 9);
    max-width: calc(100% / 9);
  }
  .row-cols-lg-10 > .col {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% / 10);
            flex: 0 0 calc(100% / 10);
    max-width: calc(100% / 10);
  }
  .row-cols-lg-11 > .col {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% / 11);
            flex: 0 0 calc(100% / 11);
    max-width: calc(100% / 11);
  }
  .row-cols-lg-12 > .col {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% / 12);
            flex: 0 0 calc(100% / 12);
    max-width: calc(100% / 12);
  }
}
@media (min-width: 1200px) {
  .row-cols-xl-1 > .col {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% / 1);
            flex: 0 0 calc(100% / 1);
    max-width: calc(100% / 1);
  }
  .row-cols-xl-2 > .col {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% / 2);
            flex: 0 0 calc(100% / 2);
    max-width: calc(100% / 2);
  }
  .row-cols-xl-3 > .col {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% / 3);
            flex: 0 0 calc(100% / 3);
    max-width: calc(100% / 3);
  }
  .row-cols-xl-4 > .col {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% / 4);
            flex: 0 0 calc(100% / 4);
    max-width: calc(100% / 4);
  }
  .row-cols-xl-5 > .col {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% / 5);
            flex: 0 0 calc(100% / 5);
    max-width: calc(100% / 5);
  }
  .row-cols-xl-6 > .col {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% / 6);
            flex: 0 0 calc(100% / 6);
    max-width: calc(100% / 6);
  }
  .row-cols-xl-7 > .col {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% / 7);
            flex: 0 0 calc(100% / 7);
    max-width: calc(100% / 7);
  }
  .row-cols-xl-8 > .col {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% / 8);
            flex: 0 0 calc(100% / 8);
    max-width: calc(100% / 8);
  }
  .row-cols-xl-9 > .col {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% / 9);
            flex: 0 0 calc(100% / 9);
    max-width: calc(100% / 9);
  }
  .row-cols-xl-10 > .col {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% / 10);
            flex: 0 0 calc(100% / 10);
    max-width: calc(100% / 10);
  }
  .row-cols-xl-11 > .col {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% / 11);
            flex: 0 0 calc(100% / 11);
    max-width: calc(100% / 11);
  }
  .row-cols-xl-12 > .col {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(100% / 12);
            flex: 0 0 calc(100% / 12);
    max-width: calc(100% / 12);
  }
}
@media (max-width: 767.98px) {
  .container--slider {
    padding-inline: 0;
  }
  .container--slider .row {
    margin-inline: 0 !important;
  }
  .container--slider .row > .col {
    padding-inline: 0 !important;
  }
}

.row > * {
  width: 100%;
  max-width: 100%;
}

.section img {
  width: 100%;
  height: auto;
}

.section {
  padding-block: var(--spacer-section);
}

/* ==========================================================================



========================================================================== */
/* ==========================================================================

.carousel

	.carousel--1-slide : Affiche 1 slide visible quelle que soit la taille de l’écran.

	.carousel--1-2-3 : 1 slide en mobile, 2 en tablette, 3 en desktop

	.carousel--peek-1-2-3
		Mobile : 1 slide visible + un peek (1/3 de slide suivante)
		Tablette : 2 slides visibles + un peek
		Desktop : 3 slides, sans peek

	.carousel--peek-2-3-3
		Mobile : 2 slides visibles + peek de 25% d’une 3e slide
		Tablette et Desktop : 3 slides visibles sans peek

========================================================================== */
.carousel--team .f-carousel__dots {
  position: relative;
}
@media (max-width: 767.98px) {
  .carousel--team .f-carousel__viewport {
    padding-left: 16px;
    padding-right: 16px;
  }
}
.carousel--team .f-carousel__slide {
  --f-carousel-spacing: 16px;
  --f-carousel-slide-width: calc((100% - 16px - 1 * 16px) / 1.125); /* 2 slides + 25% peek + 16px padding latéraux */
}
@media (min-width: 576px) {
  .carousel--team .f-carousel__slide {
    --f-carousel-spacing: 32px;
    --f-carousel-slide-width: calc((100% - (32px * 1)) / 2); /* 2 slides visibles, sans peek */
  }
}
@media (min-width: 768px) {
  .carousel--team .f-carousel__slide {
    --f-carousel-spacing: 32px;
    --f-carousel-slide-width: calc((100% - (32px * 2)) / 3); /* 3 slides visibles, sans peek */
  }
}
@media (min-width: 1024px) {
  .carousel--team .f-carousel__slide {
    --f-carousel-spacing: 32px;
    --f-carousel-slide-width: calc((100% - (32px * 3)) / 4); /* 4 slides visibles, sans peek */
  }
}

.carousel--estate .f-carousel__dots {
  position: relative;
}
@media (max-width: 767.98px) {
  .carousel--estate .f-carousel__viewport {
    padding-left: 16px;
    padding-right: 16px;
  }
}
.carousel--estate .f-carousel__slide {
  --f-carousel-spacing: 16px;
  --f-carousel-slide-width: calc((100% - 16px - 1 * 16px) / 1.125); /* 2 slides + 25% peek + 16px padding latéraux */
}
@media (min-width: 768px) {
  .carousel--estate .f-carousel__slide {
    --f-carousel-spacing: 32px;
    --f-carousel-slide-width: calc((100% - 64px) / 3); /* 3 slides visibles, sans peek */
  }
}
@media (min-width: 1024px) {
  .carousel--estate .f-carousel__slide {
    --f-carousel-spacing: 32px;
    --f-carousel-slide-width: calc((100% - (48px * 1)) / 2.25); /* idem desktop */
  }
}

.f-carousel__nav {
  display: none;
}

:root {
  --f-carousel-dot-color: var(--color-text-accent);
}

.f-carousel__dots {
  position: initial;
}

.f-carousel .card {
  height: 100%;
}

.f-carousel:not(.is-horizontal) {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  overflow: hidden;
  margin-bottom: var(--f-carousel-dots-height);
}

/* Partie de code issue de Bootstrap v5.0.2
 * Copyright 2011–2021 The Bootstrap Authors
 * Copyright 2011–2021 Twitter, Inc.
 * Licence MIT – https://github.com/twbs/bootstrap/blob/main/LICENSE
 */
.form-control,
.form-select {
  display: block;
  width: 100%;
  padding: 8px 0px 8px 0px;
  border-radius: var(--radius-corner-input);
  border-top: var(--input-border-top-width) var(--input-border-top-style) var(--input-border-top-color);
  border-bottom: var(--input-border-bottom-width) var(--input-border-bottom-style) var(--input-border-bottom-color);
  border-left: var(--input-border-left-width) var(--input-border-left-style) var(--input-border-left-color);
  border-right: var(--input-border-right-width) var(--input-border-right-style) var(--input-border-right-color);
  background: var(--input-bg);
  -webkit-transition: border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
  transition: border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.form-control:not[textarea],
.form-select:not[textarea] {
  height: var(--input-height);
}
.form-control:focus-visible,
.form-select:focus-visible {
  outline: solid 2px var(--color-primary-fixed);
  outline-offset: 4px;
  outline: none;
  border-bottom-color: var(--color-primary-fixed);
}

.form-select {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right 0.75rem center;
  background-size: 16px 12px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  color: var(--color-text);
}

.form-row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-right: calc(-1 * 16px);
  margin-left: calc(-1 * 16px);
}
@media (min-width: 576px) {
  .form-row {
    margin-right: calc(-1 * 16px);
    margin-left: calc(-1 * 16px);
  }
}
@media (min-width: 768px) {
  .form-row {
    margin-right: calc(-1 * 16px);
    margin-left: calc(-1 * 16px);
  }
}
@media (min-width: 992px) {
  .form-row {
    margin-right: calc(-1 * 16px);
    margin-left: calc(-1 * 16px);
  }
}
@media (min-width: 1200px) {
  .form-row {
    margin-right: calc(-1 * 32px);
    margin-left: calc(-1 * 32px);
  }
}

.form-row > .col,
.form-row > [class*=col-] {
  padding-right: 16px;
  padding-left: 16px;
}
@media (min-width: 576px) {
  .form-row > .col,
  .form-row > [class*=col-] {
    padding-right: 16px;
    padding-left: 16px;
  }
}
@media (min-width: 768px) {
  .form-row > .col,
  .form-row > [class*=col-] {
    padding-right: 16px;
    padding-left: 16px;
  }
}
@media (min-width: 992px) {
  .form-row > .col,
  .form-row > [class*=col-] {
    padding-right: 16px;
    padding-left: 16px;
  }
}
@media (min-width: 1200px) {
  .form-row > .col,
  .form-row > [class*=col-] {
    padding-right: 32px;
    padding-left: 32px;
  }
}

.input-group {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  width: 100%;
}

.input-group > .form-control,
.input-group > .custom-select,
.input-group > .custom-file {
  position: relative;
  -webkit-box-flex: 1;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  width: 1%;
  margin-bottom: 0;
}

.input-group > .form-control:focus,
.input-group > .custom-select:focus,
.input-group > .custom-file:focus {
  z-index: 3;
}

.input-group > .form-control + .form-control,
.input-group > .form-control + .custom-select,
.input-group > .form-control + .custom-file,
.input-group > .custom-select + .form-control,
.input-group > .custom-select + .custom-select,
.input-group > .custom-select + .custom-file,
.input-group > .custom-file + .form-control,
.input-group > .custom-file + .custom-select,
.input-group > .custom-file + .custom-file {
  margin-left: -1px;
}

.input-group > .form-control:not(:last-child),
.input-group > .custom-select:not(:last-child) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.input-group > .form-control:not(:first-child),
.input-group > .custom-select:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.input-group > .custom-file {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.input-group > .custom-file:not(:last-child) .custom-file-label,
.input-group > .custom-file:not(:last-child) .custom-file-label::before {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.input-group > .custom-file:not(:first-child) .custom-file-label,
.input-group > .custom-file:not(:first-child) .custom-file-label::before {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.input-group-prepend,
.input-group-append {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.input-group-prepend .btn,
.input-group-append .btn {
  position: relative;
  z-index: 2;
}

.input-group-prepend .btn + .btn,
.input-group-prepend .btn + .input-group-text,
.input-group-prepend .input-group-text + .input-group-text,
.input-group-prepend .input-group-text + .btn,
.input-group-append .btn + .btn,
.input-group-append .btn + .input-group-text,
.input-group-append .input-group-text + .input-group-text,
.input-group-append .input-group-text + .btn {
  margin-left: -1px;
}

.input-group-prepend {
  margin-right: -1px;
}

.input-group-append {
  margin-left: -1px;
}

.input-group-text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 6px 12px;
  margin-bottom: 0;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  text-align: center;
  white-space: nowrap;
  border: 1px solid #A0A0A0;
  border-radius: 0.25rem;
}

.input-group > .input-group-prepend > .btn,
.input-group > .input-group-prepend > .input-group-text,
.input-group > .input-group-append:not(:last-child) > .btn,
.input-group > .input-group-append:not(:last-child) > .input-group-text,
.input-group > .input-group-append:last-child > .btn:not(:last-child):not(.dropdown-toggle),
.input-group > .input-group-append:last-child > .input-group-text:not(:last-child) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.input-group > .input-group-append > .btn,
.input-group > .input-group-append > .input-group-text,
.input-group > .input-group-prepend:not(:first-child) > .btn,
.input-group > .input-group-prepend:not(:first-child) > .input-group-text,
.input-group > .input-group-prepend:first-child > .btn:not(:first-child),
.input-group > .input-group-prepend:first-child > .input-group-text:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

/* ==========================================================================

.hamburger
	&__box
		&__inner

========================================================================== */
.hamburger {
  width: 32px;
  height: 24px;
  border: none;
  padding: 0;
  background-color: transparent;
}
.hamburger__box {
  display: block;
  position: relative;
}
.hamburger__inner {
  display: block;
  width: 32px;
  height: 2px;
  background-color: var(--color-primary-fixed);
  border-radius: 2px;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.hamburger__inner:before, .hamburger__inner:after {
  position: absolute;
  content: "";
  display: block;
  width: 32px;
  height: 2px;
  background-color: var(--color-primary-fixed);
  border-radius: 2px;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.hamburger__inner:before {
  top: -11px;
}
.hamburger__inner:after {
  bottom: -11px;
}
.hamburger[aria-expanded=true] .hamburger__inner {
  background-color: transparent;
}
.hamburger[aria-expanded=true] .hamburger__inner:before {
  -webkit-transform: rotate(45deg) translate(8px, 8px);
          transform: rotate(45deg) translate(8px, 8px);
}
.hamburger[aria-expanded=true] .hamburger__inner:after {
  -webkit-transform: rotate(-45deg) translate(8px, -7px);
          transform: rotate(-45deg) translate(8px, -7px);
}

/* ==========================================================================

.alert-cookie
	&__body
		&__text
		&__link
		&__btn-container
		&__close

========================================================================== */
.alert-cookie {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: fixed;
  bottom: 0;
  width: 100%;
  padding-top: 15px;
  padding-bottom: 15px;
  z-index: 1000;
  border-top-width: 5px;
  border-top-style: solid;
  border-top-color: var(--color-primary-fixed);
  -webkit-box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.9), 0 6px 20px 0 rgba(0, 0, 0, 0.9);
          box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.9), 0 6px 20px 0 rgba(0, 0, 0, 0.9);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.alert-cookie__hidden {
  -webkit-transform: translateY(100%);
          transform: translateY(100%);
  opacity: 0;
}
.alert-cookie__body {
  width: 750px;
  margin-inline: auto;
}
.alert-cookie__title {
  font-size: var(--font-size-lead);
  font-weight: bold;
}
.alert-cookie__text {
  font-size: 14px;
  line-height: 20px;
  width: 100%;
  padding: 10px 0 0 0;
  text-align: left;
}
.alert-cookie__btn-container {
  padding: 10px 0;
  text-align: center;
}
@media (max-width: 767px) {
  .alert-cookie__body {
    width: 100%;
    padding: 0 20px;
  }
  .alert-cookie__btn-container {
    padding: 0 0 10px 0;
  }
  .alert-cookie__btn-container .btn {
    margin: 10px;
  }
}
@media (min-width: 768px) {
  .alert-cookie__body {
    width: 1170px;
  }
}
@media print {
  .alert-cookie {
    display: none;
  }
}

/* ==========================================================================

.cookies-config
	&__body
		&__header
			&__title
			&__text
			&__content
		&__footer
			&__col-left
			&__col-right

.list-cookie-type
	&__item
		&__col-text
			&__title
				&__label
			&__text
		&__col-cta

.btn-help

========================================================================== */
.cookies-config {
  position: relative;
}
.cookies-config__hidden {
  -webkit-transform: translateY(100%);
          transform: translateY(100%);
  opacity: 0;
}
.cookies-config__header {
  max-height: 61vh;
  overflow: auto;
  padding: 0 10px;
}
.cookies-config__title {
  font-size: 20px;
  line-height: 1.25em;
  font-weight: bold;
  color: var(--color-primary-fixed);
}
.cookies-config__text {
  font-size: 14px;
  line-height: 1.5em;
  padding-top: 10px;
}
.cookies-config__text p {
  margin-bottom: 7px;
}
.cookies-config__footer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding-top: 30px;
}
@media (max-width: 767px) {
  .cookies-config__header {
    max-height: 100%;
    padding: 0 10px;
  }
  .cookies-config__footer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .cookies-config__col-left {
    text-align: center;
  }
  .cookies-config__col-right {
    text-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.list-cookie-type {
  list-style: none;
  padding: 0;
  margin: 0;
  padding-bottom: 20px;
}
.list-cookie-type__item {
  padding: 15px;
  border-bottom: 1px solid #f0f4f5;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  position: relative;
}
.list-cookie-type__title {
  font-size: 18px;
  line-height: 1.75em;
  font-weight: bold;
}
.list-cookie-type__label {
  font-size: 14px;
  line-height: 1.5em;
  background-color: #f0f4f5;
  padding: 2px 8px;
  font-weight: normal;
  color: green;
  margin-left: 10px;
  border-radius: 10px;
}
.list-cookie-type__text {
  font-size: 14px;
  line-height: 1.5em;
  font-weight: normal;
}
.list-cookie-type__col-cta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-line-pack: center;
      align-content: center;
  padding-top: 8px;
}
@media (max-width: 767px) {
  .list-cookie-type__item {
    padding: 15px 0;
  }
  .list-cookie-type__label {
    display: inline-block;
    font-size: 12px;
    margin: 0px;
  }
  .list-cookie-type__text {
    padding-top: 10px;
  }
  .list-cookie-type__col-cta {
    position: absolute;
    right: 0;
  }
}
@media (min-width: 768px) {
  .list-cookie-type__title br {
    display: none;
  }
}

.btn-help {
  color: var(--color-primary-fixed);
}

/* ==========================================================================

	Switch swipe

========================================================================== */
/* The switch - the box around the slider */
.switch {
  position: relative;
  display: inline-block;
  width: 42px;
  height: 20px;
}

/* Hide default HTML checkbox */
.switch input {
  opacity: 0;
  width: 0;
  height: 0;
}

/* The slider */
.slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #ccc;
  -webkit-transition: 0.4s;
  transition: 0.4s;
}

.slider:before {
  position: absolute;
  content: "";
  height: 14px;
  width: 14px;
  left: 3px;
  bottom: 3px;
  background-color: white;
  -webkit-transition: 0.4s;
  transition: 0.4s;
}

input:checked + .slider {
  background-color: var(--color-primary-fixed);
}

input:focus + .slider {
  -webkit-box-shadow: 0 0 1px var(--color-primary-fixed);
          box-shadow: 0 0 1px var(--color-primary-fixed);
}

input:checked + .slider:before {
  -webkit-transform: translateX(22px);
  transform: translateX(22px);
}

/* Rounded sliders */
.slider.round {
  border-radius: 34px;
}

.slider.round:before {
  border-radius: 50%;
}

.hidden {
  display: none;
}

.fancybox-bg {
  background-color: red;
  opacity: 0.95 !important;
}

.fancybox-infobar {
  color: var(--color-white);
  font-size: 16px;
  height: 48px;
  line-height: 48px;
  min-width: 48px;
  bottom: 0;
  top: auto;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  background-color: red;
}

.fancybox-progress {
  background-color: red;
  height: 3px;
}

.fancybox-button:not([disabled]) {
  background-color: red;
  border-color: red;
  border-style: solid;
  border-width: 1px;
}
.fancybox-button:not([disabled]):hover {
  background-color: var(--color-white);
  border-color: red;
}
.fancybox-button:not([disabled]):hover::after {
  color: red;
}

.fancybox-button[disabled] {
  background-color: red;
  border-color: red;
  border-style: solid;
  border-width: 1px;
}

.fancybox-button,
.fancybox-button:link,
.fancybox-button:visited {
  color: var(--color-white);
}

.fancybox-slide--html .fancybox-close-small {
  color: var(--color-white);
}

.fancybox-button[disabled], .fancybox-button[disabled]:hover {
  color: rgba(255, 255, 255, 0.5);
}

.fancybox-button {
  height: 48px;
  width: 48px;
  padding: 10px;
}

.fancybox-button--arrow_right, .fancybox-button--arrow_left {
  padding: 0px !important;
  height: 48px !important;
  width: 48px !important;
}

.fancybox-navigation .fancybox-button {
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.fancybox-button--zoom::after,
.fancybox-button--close::after,
.fancybox-button--arrow_left::after,
.fancybox-button--arrow_right::after,
.fancybox-close-small::after,
.fancybox-button--play::after {
  font-family: verdana;
  font-size: 16px;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.fancybox-button--zoom svg,
.fancybox-button--close svg,
.fancybox-button--arrow_left svg,
.fancybox-button--arrow_right svg,
.fancybox-close-small svg,
.fancybox-button--play svg {
  opacity: 0;
}

.fancybox-button--close::after {
  content: "\f00d";
}

.fancybox-button--arrow_left::after {
  content: "\f060";
}

.fancybox-button--arrow_right::after {
  content: "\f061";
}

.fancybox-button--zoom::after {
  content: "\f002";
}

.fancybox-close-small::after {
  content: "\f00d";
}

.fancybox-button--play::after {
  content: "\f04b";
}

.fancybox-thumbs__list a:before {
  border: 6px solid red;
}

/* ==========================================================================

	fancybox-form
		fancybox-form__body

   ========================================================================== */
.fancybox-form {
  display: none;
}
.fancybox-form .fancybox-form__body {
  width: 800px;
}
@media (max-width: 991px) {
  .fancybox-form .fancybox-form__body {
    width: 100%;
    overflow: hidden;
  }
}

/* ==========================================================================

	.tooltip	

========================================================================== */
.tooltip {
  position: absolute;
  z-index: 9999999;
  top: 0;
  padding-left: 8px;
  padding-right: 8px;
  opacity: 1;
  display: inline-block;
}
.tooltip:not(.active) {
  pointer-events: none;
  opacity: 0;
  -webkit-transform: translate(-1000px, -1000px);
          transform: translate(-1000px, -1000px);
}
.tooltip__body {
  -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
          box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
  background-color: #ffffff;
  color: #5a5a5a;
  padding: 16px;
  border-radius: 8px;
}
.tooltip__body, .tooltip__body > * {
  font-size: 14px;
  line-height: 1.4em;
}
.tooltip__body > * {
  margin-bottom: 0;
}
.tooltip__triangle {
  content: " ";
  position: absolute;
  top: -10px;
  left: 0;
  height: 0px;
  width: 0px;
  bottom: -10px;
  -webkit-transform: translateX(-50%) rotate(180deg);
          transform: translateX(-50%) rotate(180deg);
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-top: 10px solid #ffffff;
}
.tooltip__triangle::before {
  -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
          box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
  z-index: 0;
  content: " ";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  height: 20px;
  width: 20px;
  background-color: white;
  -webkit-transform-origin: top left;
          transform-origin: top left;
  -webkit-transform: rotate(225deg);
          transform: rotate(225deg);
  background-color: white;
  clip-path: polygon(-30% -30%, -54% 120%, 125% -54%);
}

.tooltip-text {
  display: none;
}

.tooltip-control {
  color: var(--color-primary, #ED7458);
  font-family: "Open Sans", sans-serif;
  cursor: pointer;
  white-space: nowrap;
}

.tooltip {
  position: absolute;
  z-index: 9999;
  opacity: 0;
  pointer-events: none;
  -webkit-transition: opacity 0.15s ease-in-out;
  transition: opacity 0.15s ease-in-out;
  /* background, padding, etc. */
}

.tooltip.active {
  opacity: 1;
  pointer-events: auto;
}

/* ==========================================================================

.peb-fr-nrj-card
	&__body
		&__main
			&__table
				&__tr
					&__td-selector
					&__td-label   &--title-head   &--title-foot

	.peb-fr-nrj-item-selector
		&__head
			&__conso-label
			&__emission-label
		&__main
			&__conso-value
			&__emission-value

	.peb-fr-nrj-item-label &--a &--b &--c &--d &--e &--f &--g 

.peb-fr-gaz-card
	&__head
		&__title
	&__body
		&__main
			&__table
				&__tr
					&__td-label   &--title-head   &--title-foot
					&__td-selector

	.peb-fr-gaz-item-label &--a &--b &--c &--d &--e &--f &--g 

	.peb-fr-gaz-item-selector

--------------------------------------------------------

.peb-fr-card-item-selector &--vierge

========================================================================== */
/* ==========================================================================

	.peb-fr
		&__body
			&__col-nrj
			&__col-gaz

========================================================================== */
.peb-fr-label-vierge {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(-33deg);
          transform: translate(-50%, -50%) rotate(-33deg);
  font-size: 2em;
  z-index: 1;
  color: #000000;
  font-weight: bold;
  font-family: sans-serif;
}

.peb-fr {
  padding-bottom: var(--spacer-3);
}
.peb-fr__body {
  border: solid 1px hsl(0, 0%, 85%);
  border-radius: 15px;
  padding-left: 10px;
  padding-right: 10px;
  padding-top: 15px;
  padding-bottom: 15px;
  background-color: #FFFFFF;
}
.peb-fr__col-nrj {
  font-size: 16px;
  position: relative;
}
.peb-fr__col-gaz {
  font-size: 12px;
  border: solid 2px #a4dbf8;
  padding: 10px;
  border-radius: 10px;
  position: relative;
}
@media (max-width: 991.98px) {
  .peb-fr__col-nrj {
    padding-bottom: var(--paragraph-spacer);
    max-width: 500px;
    margin: auto;
  }
  .peb-fr__col-gaz {
    max-width: 272px;
    margin: auto;
  }
}
@media (min-width: 992px) {
  .peb-fr__body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .peb-fr__col-nrj {
    max-width: 60%;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 60%;
            flex: 0 0 60%;
    padding-right: 5px;
  }
  .peb-fr__col-gaz {
    max-width: 40%;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 40%;
            flex: 0 0 40%;
    margin-top: 2em;
  }
}
@media (max-width: 575.98px) {
  .peb-fr__col-nrj {
    font-size: 14px;
  }
  .peb-fr__col-gaz {
    font-size: 12px;
  }
}
@media (min-width: 768px) and (max-width: 991.98px) {
  .peb-fr__col-nrj {
    font-size: 14px;
  }
}
@media (min-width: 992px) and (max-width: 1199.98px) {
  .peb-fr__col-nrj {
    font-size: 14px;
  }
  .peb-fr__col-gaz {
    font-size: 10px;
  }
}
@media (min-width: 1200px) {
  .peb-fr__col-nrj {
    font-size: 14px;
  }
  .peb-fr__col-gaz {
    font-size: 10px;
  }
}

/* ==========================================================================

.peb-fr-nrj-card
	&__body
		&__main
			&__table
				&__tr
					&__td-selector
					&__td-label &--title-head   &--title-foot

.peb-fr-nrj-item-selector
	&__head
		&__conso-label
		&__emission-label
	&__main
		&__conso-value
		&__emission-value

.peb-fr-nrj-item-label &--g

========================================================================== */
.peb-fr-nrj-card {
  font-family: sans-serif;
  color: #000000;
}
.peb-fr-nrj-card--vierge {
  opacity: 0.3;
}
.peb-fr-nrj-card__body {
  padding-right: 2.5em;
}
.peb-fr-nrj-card__table {
  display: table;
  width: 100%;
}
.peb-fr-nrj-card__tr {
  display: table-row;
  position: relative;
}
.peb-fr-nrj-card__td-selector {
  display: table-cell;
  padding-bottom: 0.5em;
  vertical-align: top;
  position: relative;
  width: 33%;
}
.peb-fr-nrj-card__td-label {
  display: table-cell;
  padding-bottom: 0.5em;
  vertical-align: top;
  width: 100%;
  position: relative;
}
.peb-fr-nrj-card__td-label--title-head {
  color: #009c6d;
  font-weight: bold;
  font-size: 0.8em;
}
.peb-fr-nrj-card__td-label--title-foot {
  color: #d7221f;
  font-weight: bold;
  font-size: 0.8em;
}

.peb-fr-nrj-item-selector {
  border-top: 2px solid #000000;
  border-bottom: 2px solid #000000;
  border-left: 2px solid #000000;
  border-radius: 0.66em 0 0 0.66em;
  height: 4em;
  position: relative;
}
.peb-fr-nrj-item-selector__head {
  position: absolute;
  top: -128px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 0.5em;
  font-weight: bold;
}
.peb-fr-nrj-item-selector small {
  font-size: 0.333em;
  display: block;
  font-weight: bold;
  white-space: nowrap;
}
.peb-fr-nrj-item-selector__main {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 2em;
  line-height: 1em;
  font-weight: bold;
  text-align: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  height: 100%;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.peb-fr-nrj-item-selector__main small {
  font-size: 0.333em;
  display: block;
  font-weight: bold;
  line-height: 1em;
}
.peb-fr-nrj-item-selector__conso-value {
  padding-left: 0.5em;
  padding-right: 0.5em;
  position: relative;
}
.peb-fr-nrj-item-selector__conso-value span {
  position: absolute;
  font-size: 0.33em;
  left: 0;
  right: 0;
  bottom: 5.5em;
  line-height: 1.5em;
}
.peb-fr-nrj-item-selector__conso-value span small {
  font-size: 1em;
  opacity: 0.6;
  white-space: initial;
}
.peb-fr-nrj-item-selector__conso-value::before {
  z-index: 1;
  content: " ";
  position: absolute;
  width: 0.0625em;
  top: 0;
  bottom: 0;
  right: -0.0625em;
  background-color: #000000;
}
.peb-fr-nrj-item-selector__emission-value {
  padding-left: 0.25em;
  padding-right: 0.25em;
  position: relative;
}
.peb-fr-nrj-item-selector__emission-value span {
  position: absolute;
  font-size: 0.33em;
  left: 0;
  right: 0;
  bottom: 5.5em;
  line-height: 1.5em;
}
.peb-fr-nrj-item-selector__emission-value span small {
  font-size: 1em;
  white-space: initial;
  opacity: 0.6;
}

.peb-fr-nrj-item-label {
  overflow: hidden;
  padding-right: 1.5em;
  z-index: 2;
  position: relative;
}
.peb-fr-nrj-item-label__body {
  font-size: 1.5em;
  font-weight: bold;
  position: relative;
  padding-left: 0.5em;
  color: #ffffff;
  line-height: 1.5em;
  position: relative;
}
.peb-fr-nrj-item-label__body::after {
  display: block;
  content: " ";
  position: absolute;
  right: -0.6em;
  width: 1.5em;
  height: 1.5em;
  top: 50%;
  -webkit-transform: scaleX(0.7) translateY(-50%) rotate(45deg);
          transform: scaleX(0.7) translateY(-50%) rotate(45deg);
  z-index: -1;
}
.peb-fr-nrj-item-label--selected .peb-fr-nrj-item-label__body {
  height: 2.67em;
  border-top: solid 0.1em #000000;
  border-bottom: solid 0.1em #000000;
  border-left: solid 0.1em #000000;
}
.peb-fr-nrj-item-label--selected .peb-fr-nrj-item-label__body span {
  font-size: 2.5em;
  line-height: 1em;
  -webkit-text-stroke: 0.033em #000000;
  -webkit-text-fill-color: white;
}
.peb-fr-nrj-item-label--selected .peb-fr-nrj-item-label__body::after {
  border: solid 0.1em #000000;
  width: 2em;
  height: 2em;
  right: -1em;
}
.peb-fr-nrj-item-label--a {
  max-width: 33.33%;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 33.33%;
          flex: 0 0 33.33%;
}
.peb-fr-nrj-item-label--a .peb-fr-nrj-item-label__body {
  background-color: #009c6d;
}
.peb-fr-nrj-item-label--a .peb-fr-nrj-item-label__body::after {
  background-color: #009c6d;
}
.peb-fr-nrj-item-label--b {
  max-width: 44.44%;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 44.44%;
          flex: 0 0 44.44%;
}
.peb-fr-nrj-item-label--b .peb-fr-nrj-item-label__body {
  background-color: #52b153;
}
.peb-fr-nrj-item-label--b .peb-fr-nrj-item-label__body::after {
  background-color: #52b153;
}
.peb-fr-nrj-item-label--c {
  max-width: 55.55%;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 55.55%;
          flex: 0 0 55.55%;
}
.peb-fr-nrj-item-label--c .peb-fr-nrj-item-label__body {
  background-color: #78bd76;
}
.peb-fr-nrj-item-label--c .peb-fr-nrj-item-label__body::after {
  background-color: #78bd76;
}
.peb-fr-nrj-item-label--d {
  max-width: 66.66%;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 66.66%;
          flex: 0 0 66.66%;
}
.peb-fr-nrj-item-label--d .peb-fr-nrj-item-label__body {
  background-color: #f4e70f;
}
.peb-fr-nrj-item-label--d .peb-fr-nrj-item-label__body::after {
  background-color: #f4e70f;
}
.peb-fr-nrj-item-label--e {
  max-width: 77.77%;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 77.77%;
          flex: 0 0 77.77%;
}
.peb-fr-nrj-item-label--e .peb-fr-nrj-item-label__body {
  background-color: #f0b50f;
}
.peb-fr-nrj-item-label--e .peb-fr-nrj-item-label__body::after {
  background-color: #f0b50f;
}
.peb-fr-nrj-item-label--f {
  max-width: 88.88%;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 88.88%;
          flex: 0 0 88.88%;
}
.peb-fr-nrj-item-label--f .peb-fr-nrj-item-label__body {
  background-color: #eb8235;
}
.peb-fr-nrj-item-label--f .peb-fr-nrj-item-label__body::after {
  background-color: #eb8235;
}
.peb-fr-nrj-item-label--g {
  max-width: 100%;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 100%;
          flex: 0 0 100%;
}
.peb-fr-nrj-item-label--g .peb-fr-nrj-item-label__body {
  background-color: #d7221f;
}
.peb-fr-nrj-item-label--g .peb-fr-nrj-item-label__body::after {
  background-color: #d7221f;
}

.peb-fr-nrj-card-label-passoir {
  position: absolute;
  right: 0.5em;
  text-align: right;
  height: 5em;
  border-right: 2px solid hsl(0, 0%, 50%);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.peb-fr-nrj-card-label-passoir__text {
  font-size: 0.75em;
  color: hsl(0, 0%, 50%);
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  line-height: 1em;
  padding-right: 0.75em;
}

.peb-fr-nrj-card-picto-passoir {
  position: absolute;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  top: -6.33em;
  right: -2.5em;
  z-index: 1;
}
.peb-fr-nrj-card-picto-passoir--f {
  right: -1em;
}
.peb-fr-nrj-card-picto-passoir__body {
  position: relative;
  padding-bottom: 3em;
}
.peb-fr-nrj-card-picto-passoir__head {
  text-align: center;
  line-height: 1em;
  font-weight: bold;
  color: #d7221f;
  padding-bottom: 0.25em;
  font-size: 0.75em;
  height: 2.5em;
}
.peb-fr-nrj-card-picto-passoir__main {
  margin: auto;
  width: 3.5em;
  height: 3.5em;
  border-radius: 3.5em;
  border: solid 0.15em #000000;
  background-color: #ffffff;
  background-position: center;
  background-size: 2.5em;
  background-repeat: no-repeat;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1MTIgNTEyIj48ZGVmcz48c3R5bGU+LmNscy0xe2ZpbGw6I2Q3MjIxZjt9LmNscy0ye2ZpbGw6bm9uZTtzdHJva2U6I2Q3MjIxZjtzdHJva2UtbWl0ZXJsaW1pdDoxMDtzdHJva2Utd2lkdGg6MTZweDt9PC9zdHlsZT48L2RlZnM+PGNpcmNsZSBjbGFzcz0iY2xzLTEiIGN4PSIxOTIiIGN5PSIyMjQiIHI9IjMyIi8+PGNpcmNsZSBjbGFzcz0iY2xzLTEiIGN4PSIzMjAiIGN5PSIyMjQiIHI9IjMyIi8+PHBhdGggY2xhc3M9ImNscy0yIiBkPSJNMTYwLDM1MnMzMi0zMiw5Ni0zMiw5NiwzMiw5NiwzMiIvPjxwb2x5Z29uIGNsYXNzPSJjbHMtMSIgcG9pbnRzPSIyMzIgNDE2IDIxNiA0MTYgMjE2IDQ4MCAxOTIgNDgwIDIyNCA1MTIgMjU2IDQ4MCAyMzIgNDgwIDIzMiA0MTYiLz48cG9seWdvbiBjbGFzcz0iY2xzLTEiIHBvaW50cz0iMjk2IDQxNiAyODAgNDE2IDI4MCA0ODAgMjU2IDQ4MCAyODggNTEyIDMyMCA0ODAgMjk2IDQ4MCAyOTYgNDE2Ii8+PHBvbHlnb24gY2xhc3M9ImNscy0xIiBwb2ludHM9Ijk2IDI4MCA5NiAyNjQgMzIgMjY0IDMyIDI0MCAwIDI3MiAzMiAzMDQgMzIgMjgwIDk2IDI4MCIvPjxwb2x5Z29uIGNsYXNzPSJjbHMtMSIgcG9pbnRzPSI5NiAzNDQgOTYgMzI4IDMyIDMyOCAzMiAzMDQgMCAzMzYgMzIgMzY4IDMyIDM0NCA5NiAzNDQiLz48cG9seWdvbiBjbGFzcz0iY2xzLTEiIHBvaW50cz0iNDE2IDMyOCA0MTYgMzQ0IDQ4MCAzNDQgNDgwIDM2OCA1MTIgMzM2IDQ4MCAzMDQgNDgwIDMyOCA0MTYgMzI4Ii8+PHBvbHlnb24gY2xhc3M9ImNscy0xIiBwb2ludHM9IjQxNiAyNjQgNDE2IDI4MCA0ODAgMjgwIDQ4MCAzMDQgNTEyIDI3MiA0ODAgMjQwIDQ4MCAyNjQgNDE2IDI2NCIvPjxwb2x5Z29uIGNsYXNzPSJjbHMtMSIgcG9pbnRzPSI0MzIgMzY4IDQzMiA0NDggMzIwIDQ0OCAzMjAgNDY0IDQ0OCA0NjQgNDQ4IDM2OCA0MzIgMzY4Ii8+PHBvbHlnb24gY2xhc3M9ImNscy0xIiBwb2ludHM9IjgwIDM2OCA4MCA0NDggMTkyIDQ0OCAxOTIgNDY0IDY0IDQ2NCA2NCAzNjggODAgMzY4Ii8+PHBvbHlnb24gY2xhc3M9ImNscy0xIiBwb2ludHM9IjMwNC41MiA2NC41MiAyNTYgMTYgMjA4IDY0IDIxOS4zMSA3NS4zMSAyNTYgMzguNjMgMjkzLjEyIDc1Ljc1IDMwNC41MiA2NC41MiIvPjxwb2x5Z29uIGNsYXNzPSJjbHMtMSIgcG9pbnRzPSIzOTUuNzUgMTU1Ljc1IDM4NC42MiAxNjcuMjQgNDMyIDIxNC42MyA0MzIgMjQwIDQ0OCAyNDAgNDQ4IDIwOCAzOTUuNzUgMTU1Ljc1Ii8+PHBvbHlnb24gY2xhc3M9ImNscy0xIiBwb2ludHM9IjgwIDIxNC42MyAxMjguMDYgMTY2LjU3IDExNi43NSAxNTUuMjUgNjQgMjA4IDY0IDI0MCA4MCAyNDAgODAgMjE0LjYzIi8+PHBvbHlnb24gY2xhc3M9ImNscy0xIiBwb2ludHM9IjE5MS40OCAxMDUuNTQgMjAyLjc5IDk0LjIyIDE1Ny41NCA0OC45NyAxNzQuNTEgMzIgMTI5LjI1IDMyIDEyOS4yNSA3Ny4yNSAxNDYuMjIgNjAuMjggMTkxLjQ4IDEwNS41NCIvPjxwb2x5Z29uIGNsYXNzPSJjbHMtMSIgcG9pbnRzPSIxNDYuMjIgMTUwLjc5IDE1Ny41NCAxMzkuNDggMTEyLjI4IDk0LjIyIDEyOS4yNSA3Ny4yNSA4NCA3Ny4yNSA4NCAxMjIuNTEgMTAwLjk3IDEwNS41NCAxNDYuMjIgMTUwLjc5Ii8+PHBvbHlnb24gY2xhc3M9ImNscy0xIiBwb2ludHM9IjMyMC41MiAxMDUuNTQgMzA5LjIxIDk0LjIyIDM1NC40NiA0OC45NyAzMzcuNDkgMzIgMzgyLjc1IDMyIDM4Mi43NSA3Ny4yNSAzNjUuNzcgNjAuMjggMzIwLjUyIDEwNS41NCIvPjxwb2x5Z29uIGNsYXNzPSJjbHMtMSIgcG9pbnRzPSIzNjUuNzcgMTUwLjc5IDM1NC40NiAxMzkuNDggMzk5LjcyIDk0LjIyIDM4Mi43NSA3Ny4yNSA0MjggNzcuMjUgNDI4IDEyMi41MSA0MTEuMDMgMTA1LjU0IDM2NS43NyAxNTAuNzkiLz48L3N2Zz4=");
}
.peb-fr-nrj-card-picto-passoir__foot {
  border-radius: 0 0 0.25em 0;
  border-right: solid 0.15em #000000;
  border-bottom: solid 0.15em #000000;
  position: absolute;
  height: 3em;
  width: 2em;
  right: calc(50% - 0.075em);
}

/* ==========================================================================

.peb-fr-gaz-card
	&__head
		&__title
	&__body
		&__main
			&__table
				&__tr
					&__td-label   &--title-head   &--title-foot
					&__td-selector

	.peb-fr-gaz-item-label &--g

	.peb-fr-gaz-item-selector

========================================================================== */
.peb-fr-gaz-card {
  font-family: sans-serif;
}
.peb-fr-gaz-card--vierge {
  opacity: 0.3;
}
.peb-fr-gaz-card__title {
  font-size: 1.33em;
  line-height: 1em;
  font-weight: bold;
  color: #000000;
  margin-bottom: 1em;
}
.peb-fr-gaz-card__table {
  display: table;
  width: 100%;
}
.peb-fr-gaz-card__tr {
  display: table-row;
}
.peb-fr-gaz-card__td-label {
  display: table-cell;
  overflow: hidden;
  padding-bottom: 0.5em;
  vertical-align: top;
  position: relative;
  font-weight: bold;
  font-size: 0.8em;
}
.peb-fr-gaz-card__td-label--title-head {
  color: #a4dbf8;
  font-weight: bold;
  font-size: 0.8em;
}
.peb-fr-gaz-card__td-label--title-foot {
  color: #281b35;
  font-weight: bold;
  font-size: 0.8em;
}
.peb-fr-gaz-card__td-label-body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-right: 1em;
}
.peb-fr-gaz-card__td-label-line {
  max-width: 100%;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 100%;
          flex: 0 0 100%;
  position: relative;
}
.peb-fr-gaz-card__td-label-line::after {
  content: "";
}
.peb-fr-gaz-card__td-label-line::before {
  z-index: 1;
  content: " ";
  position: absolute;
  width: 100%;
  height: 0.25em;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  left: 0;
  background-color: #000000;
}
.peb-fr-gaz-card__td-selector {
  display: table-cell;
  padding-bottom: 0.5rem;
  vertical-align: top;
  position: relative;
  width: 21%;
  white-space: nowrap;
  font-weight: bold;
  font-size: 2em;
  padding-left: 0.2em;
  color: #000000;
}
.peb-fr-gaz-card__td-selector small {
  font-size: 0.333em;
  font-weight: bold;
}

.peb-fr-gaz-item-label {
  overflow: hidden;
  padding-right: 0.5em;
}
.peb-fr-gaz-item-label__body {
  font-size: 1.5em;
  font-weight: bold;
  position: relative;
  padding-left: 0.25em;
  color: #ffffff;
  border-radius: 0 2em 2em 0;
}
.peb-fr-gaz-item-label--selected .peb-fr-gaz-item-label__body {
  height: 2.65em;
  border: solid 0.1em #000000;
}
.peb-fr-gaz-item-label--selected .peb-fr-gaz-item-label__body span {
  font-size: 2.5em;
  line-height: 1em;
  -webkit-text-stroke: 0.033em #000000;
  -webkit-text-fill-color: white;
}
.peb-fr-gaz-item-label--selected .peb-fr-gaz-item-label__body::after {
  border: solid 0.1em #000000;
  width: 2em;
  height: 2em;
  right: -1em;
}
.peb-fr-gaz-item-label--a {
  max-width: 33.33%;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 33.33%;
          flex: 0 0 33.33%;
}
.peb-fr-gaz-item-label--a .peb-fr-gaz-item-label__body {
  background-color: #a4dbf8;
}
.peb-fr-gaz-item-label--a .peb-fr-gaz-item-label__body::after {
  background-color: #a4dbf8;
}
.peb-fr-gaz-item-label--b {
  max-width: 44.44%;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 44.44%;
          flex: 0 0 44.44%;
}
.peb-fr-gaz-item-label--b .peb-fr-gaz-item-label__body {
  background-color: #8cb4d3;
}
.peb-fr-gaz-item-label--b .peb-fr-gaz-item-label__body::after {
  background-color: #8cb4d3;
}
.peb-fr-gaz-item-label--c {
  max-width: 55.55%;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 55.55%;
          flex: 0 0 55.55%;
}
.peb-fr-gaz-item-label--c .peb-fr-gaz-item-label__body {
  background-color: #7792b1;
}
.peb-fr-gaz-item-label--c .peb-fr-gaz-item-label__body::after {
  background-color: #7792b1;
}
.peb-fr-gaz-item-label--d {
  max-width: 66.66%;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 66.66%;
          flex: 0 0 66.66%;
}
.peb-fr-gaz-item-label--d .peb-fr-gaz-item-label__body {
  background-color: #606f8f;
}
.peb-fr-gaz-item-label--d .peb-fr-gaz-item-label__body::after {
  background-color: #606f8f;
}
.peb-fr-gaz-item-label--e {
  max-width: 77.77%;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 77.77%;
          flex: 0 0 77.77%;
}
.peb-fr-gaz-item-label--e .peb-fr-gaz-item-label__body {
  background-color: #4d5271;
}
.peb-fr-gaz-item-label--e .peb-fr-gaz-item-label__body::after {
  background-color: #4d5271;
}
.peb-fr-gaz-item-label--f {
  max-width: 88.88%;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 88.88%;
          flex: 0 0 88.88%;
}
.peb-fr-gaz-item-label--f .peb-fr-gaz-item-label__body {
  background-color: #393551;
}
.peb-fr-gaz-item-label--f .peb-fr-gaz-item-label__body::after {
  background-color: #393551;
}
.peb-fr-gaz-item-label--g {
  max-width: 100%;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 100%;
          flex: 0 0 100%;
}
.peb-fr-gaz-item-label--g .peb-fr-gaz-item-label__body {
  background-color: #281b35;
}
.peb-fr-gaz-item-label--g .peb-fr-gaz-item-label__body::after {
  background-color: #281b35;
}

.peb-fr-gaz-item-selector {
  height: 4em;
  position: relative;
}

@media (max-width: 767px) {
  :root {
    --menu-height: 80px;
    --section-spacer: 60px;
    --block-spacer: 30px;
    --paragraph-spacer: 16px;
    --form-spacer: 32px;
    --form-subtitle-spacer: 22px;
    --section-padding-x: 16px;
  }
}
@media (min-width: 768px) {
  :root {
    --menu-height: 110px;
    --section-spacer: 100px;
    --block-spacer: 50px;
    --paragraph-spacer: 16px;
    --form-spacer: 32px;
    --form-subtitle-spacer: 22px;
    --section-padding-x: 32px;
  }
}
@media print {
  :root {
    --section-spacer: 32px;
    --block-spacer: 24px;
    --paragraph-spacer: 8px;
  }
}

/* ==========================================================================

	.section-list-card-blog-article
		&__body
			&__head
				&__title

========================================================================== */
.section-list-card-blog-article__body {
  padding: var(--spacer-3) var(--section-padding-x) var(--section-spacer) var(--section-padding-x);
}
.section-list-card-blog-article__title {
  text-align: center;
  font-size: var(--font-size-h1);
}
.section-list-card-blog-article__title > * {
  margin-bottom: 0;
}
.section-list-card-blog-article__title > * {
  margin-top: 0;
}
@media (max-width: 767px) {
  .section-list-card-blog-article__title {
    text-align: center;
    font-size: var(--font-size-h1);
  }
}
@media (min-width: 768px) {
  .section-list-card-blog-article__body {
    max-width: 1140px;
    margin-right: auto;
    margin-left: auto;
  }
  .section-list-card-blog-article__title {
    text-align: center;
    font-size: var(--font-size-h1);
  }
}

/* ==========================================================================

	.list-card-blog-article
		&__item


========================================================================== */
.list-card-blog-article {
  list-style-type: none;
  margin: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: auto;
  max-width: var(--max-width-xl);
  gap: var(--section-spacer);
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.list-card-blog-article__item {
  width: 400px;
}
@media (max-width: 767px) {
  .list-card-blog-article__item {
    width: 100%;
  }
}
.list-card-blog-article--horizontal {
  padding-top: var(--spacer-4);
}
@media (min-width: 768px) {
  .list-card-blog-article--horizontal .list-card-blog-article {
    width: 100%;
    margin: auto;
  }
  .list-card-blog-article--horizontal .list-card-blog-article__item {
    width: 100%;
  }
}

/* ==========================================================================

	.card-blog-article
		&__body
			&__main
				&__pict
			&__foot
				&__container-text
					&__title
					&__info
					&__text
					&__tags
				&__container-cta
					&__cta


========================================================================== */
.card-blog-article {
  width: 100%;
  overflow: hidden;
  height: 100%;
}
.card-blog-article__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  height: 100%;
}
.card-blog-article__pict {
  height: 0;
  padding-bottom: 75%;
  position: relative;
}
.card-blog-article__pict img {
  position: absolute;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  padding: 0px;
}
.card-blog-article__foot {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 0px;
  height: 100%;
}
.card-blog-article__container-text {
  height: 100%;
}
.card-blog-article__container-text > * + * {
  padding-top: var(--paragraph-spacer);
}
.card-blog-article__title {
  font-size: x-large;
}
.card-blog-article__info {
  font-size: 14px;
  color: #757575;
}
.card-blog-article__info__item__value {
  font-weight: 600;
}
.card-blog-article__container-cta {
  padding-top: 15px;
}
@media (max-width: 767px) {
  .card-blog-article__title {
    padding-top: var(--paragraph-spacer);
  }
  .card-blog-article__container-cta {
    padding-top: var(--paragraph-spacer);
  }
  .card-blog-article__cta {
    text-align: center;
  }
}
@media (min-width: 768px) {
  .card-blog-article__body {
    gap: 30px;
  }
  .card-blog-article__container-cta {
    padding-bottom: 6px;
  }
}
@media (min-width: 768px) {
  .card-blog-article--horizontal {
    width: 100%;
    margin: auto;
  }
  .card-blog-article--horizontal .card-blog-article__body {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
  .card-blog-article--horizontal .card-blog-article__main {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 33%;
            flex: 0 0 33%;
    min-width: 300px;
  }
  .card-blog-article--horizontal .card-blog-article__pict img {
    border-radius: 0px;
  }
  .card-blog-article--horizontal .card-blog-article__foot {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
  }
}

/* ==========================================================================

.list-card-blog-info
	&__item

========================================================================== */
.list-card-blog-info {
  list-style-type: none;
  padding: 0;
}
@media (min-width: 768px) {
  .list-card-blog-info {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 16px;
  }
}

/* ==========================================================================

.list-card-blog-theme
	&__item

========================================================================== */
.list-card-blog-theme {
  list-style-type: none;
  margin: 0;
  padding: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 15px 20px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  max-width: 100%;
}
@media (max-width: 767px) {
  .list-card-blog-theme {
    padding: 0 var(--section-padding-x);
  }
}
/* ==========================================================================

.section-blog-article
	&__body
		&__head
			&__title
			&__back
		&__main
			&__body
				&__foot
					&__text



========================================================================== */
.section-blog-article {
  max-width: var(--max-width-12);
  margin: auto;
}
.section-blog-article__body {
  margin: 0 auto;
}
.section-blog-article__title {
  text-align: center;
  padding: 0 var(--section-padding-x) var(--block-spacer) var(--section-padding-x);
  padding-bottom: 0;
}
.section-blog-article__title > * {
  margin-bottom: 0;
}
.section-blog-article__title > * {
  margin-top: 0;
}
.section-blog-article__label {
  max-width: var(--max-width-12);
  margin: auto;
  padding-inline: var(--spacer-side-margin);
}
.section-blog-article__back {
  display: block;
  text-align: right;
  font-weight: 400;
  padding: 0 16px;
}
@media (max-width: 767px) {
  .section-blog-article__body {
    padding: var(--spacer-3) 0 var(--section-spacer) 0;
  }
  .section-blog-article__back {
    display: block;
    text-align: left;
    font-weight: 700;
    padding: 15px;
  }
}
@media (min-width: 768px) {
  .section-blog-article {
    padding-inline: var(--spacer-side-margin);
  }
  .section-blog-article__body {
    padding: var(--spacer-2) 0 var(--section-spacer) 0;
  }
}

/* ==========================================================================

.list-blog-article-social
	&__item

========================================================================== */
.list-blog-article-social {
  list-style-type: none;
  margin: 0;
  padding: 15px var(--block-spacer);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding-bottom: 0;
  gap: 5px;
}
/* ==========================================================================

.list-blog-article-label
	&__item

========================================================================== */
.list-blog-article-label {
  list-style-type: none;
  margin: 0;
  padding: var(--spacer-3) var(--section-padding-x);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: var(--section-padding-x);
  border-bottom: var(--color-primary-fixed) 2pt solid;
  margin: 0 0px var(--spacer-4) 0px;
}
@media (max-width: 767px) {
  .list-blog-article-label {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 16px;
    font-size: var(--font-size-text-xs);
    padding-bottom: 40px;
  }
}
.section-blog-article__foot {
  text-align: center;
  border-top: var(--color-primary-fixed) 2pt solid;
  padding-top: var(--block-spacer);
  margin: 0 16px;
}

.icon-color {
  color: var(--color-primary-fixed);
  padding-right: 5px;
}

.share-text {
  text-align: center;
  padding-top: var(--block-spacer);
  margin: 0;
}

/* ==========================================================================

.section-T11-home-intro
	&__body
		&__pict
			&__filter
		&__text
		&__search
	&__arrow


========================================================================== */
.section-T11-home-intro {
  position: relative;
}
.section-T11-home-intro__body {
  display: grid;
  position: relative;
}
.section-T11-home-intro__pict {
  grid-column: 1/2;
}
.section-T11-home-intro__pict img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.section-T11-home-intro__pict video {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.section-T11-home-intro__pict .f-carousel {
  height: 100%;
}
.section-T11-home-intro__pict > * {
  pointer-events: none;
}
.section-T11-home-intro__pict .video-wrapper {
  pointer-events: none;
  height: 100%;
}
.section-T11-home-intro__pict .video-wrapper iframe {
  position: absolute;
  top: 50%;
  left: 50%;
  /* clé du "cover" */
  width: 100vw;
  height: 56.25vw; /* 16/9 */
  min-width: 177.77vh; /* 9/16 */
  min-height: 100vh;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  border: 0;
}
.section-T11-home-intro__filter {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.2)), color-stop(21.12%, rgba(0, 0, 0, 0))), rgba(0, 0, 0, 0.0862745098);
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0) 21.12%), rgba(0, 0, 0, 0.0862745098);
  z-index: 1;
}
.section-T11-home-intro__text {
  position: relative;
  z-index: 1;
  padding-top: 72px;
  text-align: center;
  text-wrap: balance;
  grid-column: 1/2;
  margin-top: auto;
  padding-inline: var(--spacer-side-margin);
  color: #FFF;
  text-align: center;
}
.section-T11-home-intro__text > * {
  text-shadow: 0 0 14px hsla(0, 0%, 0%, 0.05);
  margin-bottom: 0;
}
.section-T11-home-intro__search {
  position: relative;
  z-index: 1;
  grid-column: 1/2;
  margin-bottom: auto;
  padding-inline: var(--spacer-side-margin);
}
.section-T11-home-intro__arrow {
  position: absolute;
  z-index: 2;
  bottom: 16px;
  left: 50%;
  pointer-events: initial;
}
.section-T11-home-intro__arrow a {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  cursor: pointer;
  -webkit-animation: arrow-bounce 2s infinite ease-in-out;
          animation: arrow-bounce 2s infinite ease-in-out;
}
.section-T11-home-intro__arrow svg {
  height: 48px;
  stroke: var(--color-text-accent);
  stroke-width: 4;
  fill: none;
}
@-webkit-keyframes arrow-bounce {
  0%, 20%, 50%, 80%, 100% {
    -webkit-transform: translateX(-50%) translateY(0);
            transform: translateX(-50%) translateY(0);
  }
  40% {
    -webkit-transform: translateX(-50%) translateY(-12px);
            transform: translateX(-50%) translateY(-12px);
  }
  60% {
    -webkit-transform: translateX(-50%) translateY(-6px);
            transform: translateX(-50%) translateY(-6px);
  }
}
@keyframes arrow-bounce {
  0%, 20%, 50%, 80%, 100% {
    -webkit-transform: translateX(-50%) translateY(0);
            transform: translateX(-50%) translateY(0);
  }
  40% {
    -webkit-transform: translateX(-50%) translateY(-12px);
            transform: translateX(-50%) translateY(-12px);
  }
  60% {
    -webkit-transform: translateX(-50%) translateY(-6px);
            transform: translateX(-50%) translateY(-6px);
  }
}
@media (max-width: 767px) {
  .section-T11-home-intro__body {
    grid-template-rows: auto auto;
    grid-template-columns: 1fr;
  }
  .section-T11-home-intro__pict {
    height: 66svh;
    grid-row: 1/2;
    position: relative;
    z-index: 1;
  }
  .section-T11-home-intro__pict img {
    -o-object-fit: cover;
       object-fit: cover;
  }
  .section-T11-home-intro__text {
    position: relative;
    z-index: 2;
    grid-row: 1/2;
    align-self: center;
    margin: auto;
  }
  .section-T11-home-intro__search {
    grid-row: 2/3;
    padding-top: var(--spacer-3);
  }
}
@media (min-width: 768px) {
  .section-T11-home-intro__body {
    grid-template-rows: 1.5fr 1fr;
    grid-template-columns: 1fr;
    min-height: 500px;
    height: 100vh; /* fallback */
    height: 100svh;
    max-height: 900px;
  }
  .section-T11-home-intro__pict {
    grid-row: 1/3;
  }
  .section-T11-home-intro__text {
    grid-row: 1/2;
    padding-bottom: var(--spacer-3);
    max-width: var(--max-width-12);
    margin-inline: auto;
  }
  .section-T11-home-intro__search {
    grid-row: 2/3;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
@media print {
  .section-T11-home-intro__body {
    aspect-ratio: 4/3 !important;
    width: 100% !important;
    height: auto !important;
  }
}

/* ==========================================================================

.search-T11-engine
	&__item

========================================================================== */
.search-T11-engine {
  line-height: 1.125em;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 16px;
}
.search-T11-engine .ss-main .ss-values .ss-single {
  max-width: initial;
}
.search-T11-engine .ss-arrow path {
  stroke: var(--color-text-accent);
  stroke-width: 16;
}
@media (max-width: 767px) {
  .search-T11-engine {
    width: 100%;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .search-T11-engine__item {
    width: 100%;
  }
  .search-T11-engine__item--search {
    text-align: center;
    --btn-picto-font-size: 32px;
  }
  .search-T11-engine__item--price {
    padding-top: 24px;
    padding-inline: 20px;
    padding-bottom: 32px;
  }
}
@media (min-width: 768px) {
  .search-T11-engine {
    background-color: var(--color-white);
    padding: 12px 32px;
    min-height: 72px;
    margin-inline: auto;
    gap: 16px 32px;
  }
  .search-T11-engine label {
    margin-bottom: 0;
  }
  .search-T11-engine .ss-main, .search-T11-engine input {
    border-bottom: none;
  }
  .search-T11-engine input:not(input[type=range]):not(input[type=checkbox]) {
    margin-left: 12px;
  }
  .search-T11-engine__item {
    position: relative;
    width: 160px;
  }
  .search-T11-engine__item--search {
    width: auto;
    --btn-picto-font-size: 28px;
  }
  .search-T11-engine__item--search > * {
    padding-inline: 16px;
  }
  .search-T11-engine__item--search::before {
    display: none;
  }
  .search-T11-engine__item--price {
    width: 320px;
  }
  .search-T11-engine__item--width-auto {
    width: auto;
  }
  .search-T11-engine__item:not(:last-child)::before {
    z-index: 1;
    content: " ";
    position: absolute;
    width: 1px;
    height: 32px;
    top: 50%;
    right: -16px;
    border-right: 1pt var(--color-text) solid;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
}

/* ==========================================================================

.section-T11-text-pict-alternate
	&__body
		&__main
			&__pict
		&__foot
		&__mask

========================================================================== */
.section-T11-text-pict-alternate {
  padding-block: var(--spacer-5);
}
.section-T11-text-pict-alternate__title {
  text-wrap: balance;
}
.section-T11-text-pict-alternate__title > * {
  margin-bottom: 0;
}
.section-T11-text-pict-alternate__main {
  position: relative;
}
.section-T11-text-pict-alternate__pict img {
  width: 100%;
}
.section-T11-text-pict-alternate__pict video {
  width: 100%;
}
.section-T11-text-pict-alternate__text h1:first-child,
.section-T11-text-pict-alternate__text h2:first-child,
.section-T11-text-pict-alternate__text h2:first-child {
  text-wrap: balance;
  margin-bottom: 1em;
}
.section-T11-text-pict-alternate__text .btn:last-child {
  margin-top: 1em;
}
.section-T11-text-pict-alternate__text > *:last-child {
  margin-bottom: 0;
}
.section-T11-text-pict-alternate__cta {
  padding-top: var(--spacer-4);
}
@media (max-width: 767px) {
  .section-T11-text-pict-alternate {
    padding-block: var(--spacer-5);
  }
  .section-T11-text-pict-alternate__title {
    padding-inline: var(--spacer-side-margin);
    padding-bottom: var(--spacer-4);
  }
  .section-T11-text-pict-alternate__main {
    padding-top: var(--spacer-4);
  }
  .section-T11-text-pict-alternate__foot {
    padding-inline: var(--spacer-side-margin);
  }
}
@media (min-width: 768px) {
  .section-T11-text-pict-alternate__body {
    display: grid;
    grid-template-rows: 128px auto;
    grid-template-columns: minmax(var(--grid-side-min), var(--grid-side-flex)) repeat(var(--grid-cols), minmax(0, var(--grid-col-comp))) minmax(var(--grid-side-min), var(--grid-side-flex));
    -webkit-column-gap: var(--grid-gap);
       -moz-column-gap: var(--grid-gap);
            column-gap: var(--grid-gap);
  }
  .section-T11-text-pict-alternate__head {
    grid-row: 1/2;
    grid-column: 9/14;
    margin-top: auto;
  }
  .section-T11-text-pict-alternate__title {
    padding-bottom: var(--spacer-3);
  }
  .section-T11-text-pict-alternate__main {
    position: relative;
    grid-row: 1/3;
    grid-column: 2/8;
  }
  .section-T11-text-pict-alternate__pict img {
    position: absolute;
    -o-object-fit: cover;
       object-fit: cover;
    top: 0;
    left: 0;
    height: 100%;
  }
  .section-T11-text-pict-alternate__pict video {
    position: absolute;
    -o-object-fit: cover;
       object-fit: cover;
    top: 0;
    left: 0;
    height: 100%;
  }
  .section-T11-text-pict-alternate__foot {
    grid-row: 2/3;
    padding-bottom: var(--spacer-5);
    padding-top: var(--spacer-4);
    grid-column: 8/14;
    z-index: 2;
  }
  .section-T11-text-pict-alternate__mask {
    position: relative;
    top: 1px;
    background-color: var(--color-bg);
    grid-row: 2/3;
    grid-column: 7/8;
    z-index: 1;
    left: 1pt;
  }
}
@media (min-width: 768px) {
  .section-T11-text-pict-alternate--reverse .section-T11-text-pict-alternate__head {
    grid-row: 1/2;
    grid-column: 2/7;
    margin-top: auto;
    padding-right: var(--spacer-gutter);
  }
  .section-T11-text-pict-alternate--reverse .section-T11-text-pict-alternate__main {
    position: relative;
    grid-row: 1/3;
    grid-column: -2/-8;
  }
  .section-T11-text-pict-alternate--reverse .section-T11-text-pict-alternate__pict img {
    position: absolute;
    -o-object-fit: cover;
       object-fit: cover;
    top: 0;
    left: 0;
    height: 100%;
  }
  .section-T11-text-pict-alternate--reverse .section-T11-text-pict-alternate__foot {
    grid-row: 2/3;
    padding-bottom: var(--spacer-5);
    padding-top: var(--spacer-4);
    grid-column: 2/8;
  }
  .section-T11-text-pict-alternate--reverse .section-T11-text-pict-alternate__mask {
    background-color: var(--color-bg);
    grid-row: 2/3;
    grid-column: 8/9;
    z-index: 1;
    left: -1pt;
  }
}

/* ==========================================================================

.section-T11-pict
	&__body
		&__main
			&__pict
		&__mask

========================================================================== */
.section-T11-pict {
  padding-block: var(--spacer-5);
}
.section-T11-pict__pict img {
  width: 100%;
}
.section-T11-pict__pict video {
  width: 100%;
}
.section-T11-pict__text h1:first-child,
.section-T11-pict__text h2:first-child,
.section-T11-pict__text h2:first-child {
  text-wrap: balance;
  margin-bottom: 1em;
}
.section-T11-pict__text .btn:last-child {
  margin-top: 1em;
}
.section-T11-pict__text > *:last-child {
  margin-bottom: 0;
}
.section-T11-pict__cta {
  padding-top: var(--spacer-4);
}
@media (max-width: 767px) {
  .section-T11-pict {
    padding-block: var(--spacer-5);
  }
  .section-T11-pict__main {
    padding-top: var(--spacer-4);
  }
}
@media (min-width: 768px) {
  .section-T11-pict__body {
    display: grid;
    grid-template-rows: 128px auto;
    grid-template-columns: minmax(var(--grid-side-min), var(--grid-side-flex)) repeat(var(--grid-cols), minmax(0, var(--grid-col-comp))) minmax(var(--grid-side-min), var(--grid-side-flex));
    -webkit-column-gap: var(--grid-gap);
       -moz-column-gap: var(--grid-gap);
            column-gap: var(--grid-gap);
  }
  .section-T11-pict__main {
    position: relative;
    grid-row: 1/3;
    grid-column: 2/8;
  }
  .section-T11-pict__pict img {
    position: absolute;
    -o-object-fit: cover;
       object-fit: cover;
    top: 0;
    left: 0;
    height: 100%;
  }
  .section-T11-pict__pict video {
    position: absolute;
    -o-object-fit: cover;
       object-fit: cover;
    top: 0;
    left: 0;
    height: 100%;
  }
  .section-T11-pict__mask {
    position: relative;
    top: 1px;
    background-color: var(--color-bg);
    grid-row: 2/3;
    grid-column: 7/8;
    z-index: 1;
  }
}

.video-wrapper {
  position: relative;
  width: 100%;
  padding-top: 56.25%; /* équivaut à 16:9 → 9 / 16 * 100 */
  overflow: hidden;
}
.video-wrapper--fill video,
.video-wrapper--fill iframe {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 120%;
  height: 120%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  pointer-events: none;
}

.video-wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

/* ==========================================================================

.section-T11-content
	&__body
		&__foot
			&__content

========================================================================== */
.section-T11-content {
  padding-block: var(--spacer-5);
}
.section-T11-content__body {
  padding-inline: var(--spacer-side-margin);
}
.section-T11-content__foot {
  max-width: var(--max-width-10);
  margin-inline: auto;
}
.section-T11-content__content h1:first-child,
.section-T11-content__content h2:first-child,
.section-T11-content__content h2:first-child {
  text-wrap: balance;
  margin-bottom: 1em;
}
.section-T11-content__content .btn:last-child {
  margin-top: 1em;
}
.section-T11-content__content > *:last-child {
  margin-bottom: 0;
}
.section-T11-content__content img, .section-T11-content__content video {
  width: 100%;
}
.section-T11-content__content iframe {
  width: 100%;
  aspect-ratio: 16/9;
  display: block;
}
/* ==========================================================================

.section-T11-text-pict-alternate-new
	&__body
		&__head
			&__title
		&__main
			&__pict
		&__foot
			&__text
			&__cta
		&__mask

========================================================================== */
.section-T11-text-pict-alternate-new {
  padding-block: var(--spacer-5);
}
.section-T11-text-pict-alternate-new__title {
  text-wrap: balance;
}
.section-T11-text-pict-alternate-new__title > * {
  margin-bottom: 0;
}
.section-T11-text-pict-alternate-new__pict img {
  width: 100%;
}
.section-T11-text-pict-alternate-new__pict video {
  width: 100%;
}
.section-T11-text-pict-alternate-new__text > *:last-child {
  margin-bottom: 0;
}
.section-T11-text-pict-alternate-new__cta {
  padding-top: var(--spacer-4);
}
@media (max-width: 767px) {
  .section-T11-text-pict-alternate-new {
    padding-block: var(--spacer-5);
  }
  .section-T11-text-pict-alternate-new__title {
    padding-inline: var(--spacer-side-margin);
    padding-bottom: var(--spacer-4);
  }
  .section-T11-text-pict-alternate-new__foot {
    padding-top: var(--spacer-4);
    padding-inline: var(--spacer-side-margin);
  }
}
@media (min-width: 768px) {
  .section-T11-text-pict-alternate-new__body {
    display: grid;
    grid-template-rows: auto auto;
    grid-template-columns: minmax(var(--grid-side-min), var(--grid-side-flex)) repeat(var(--grid-cols), minmax(0, var(--grid-col-comp))) minmax(var(--grid-side-min), var(--grid-side-flex));
    -webkit-column-gap: var(--grid-gap);
       -moz-column-gap: var(--grid-gap);
            column-gap: var(--grid-gap);
  }
  .section-T11-text-pict-alternate-new__head {
    grid-row: 1/2;
    grid-column: 9/14;
    margin-top: auto;
  }
  .section-T11-text-pict-alternate-new__title {
    padding-bottom: var(--spacer-3);
  }
  .section-T11-text-pict-alternate-new__main {
    position: relative;
    grid-row: 1/3;
    grid-column: 2/8;
  }
  .section-T11-text-pict-alternate-new__pict img {
    position: absolute;
    -o-object-fit: cover;
       object-fit: cover;
    top: 0;
    left: 0;
    height: 100%;
  }
  .section-T11-text-pict-alternate-new__pict video {
    position: absolute;
    -o-object-fit: cover;
       object-fit: cover;
    top: 0;
    left: 0;
    height: 100%;
  }
  .section-T11-text-pict-alternate-new__foot {
    grid-row: 2/3;
    padding-bottom: var(--spacer-5);
    padding-top: var(--spacer-4);
    grid-column: 8/14;
  }
  .section-T11-text-pict-alternate-new__mask {
    background-color: var(--color-bg);
    grid-row: 2/3;
    grid-column: 7/8;
    z-index: 1;
  }
}
@media (min-width: 768px) {
  .section-T11-text-pict-alternate-new--reverse .section-T11-text-pict-alternate-new__head {
    grid-row: 1/2;
    grid-column: 2/7;
    margin-top: auto;
    padding-right: var(--spacer-gutter);
  }
  .section-T11-text-pict-alternate-new--reverse .section-T11-text-pict-alternate-new__main {
    position: relative;
    grid-row: 1/3;
    grid-column: -2/-8;
  }
  .section-T11-text-pict-alternate-new--reverse .section-T11-text-pict-alternate-new__pict img {
    position: absolute;
    -o-object-fit: cover;
       object-fit: cover;
    top: 0;
    left: 0;
    height: 100%;
  }
  .section-T11-text-pict-alternate-new--reverse .section-T11-text-pict-alternate-new__foot {
    grid-row: 2/3;
    padding-bottom: var(--spacer-5);
    padding-top: var(--spacer-4);
    grid-column: 2/8;
  }
  .section-T11-text-pict-alternate-new--reverse .section-T11-text-pict-alternate-new__mask {
    background-color: var(--color-bg);
    grid-row: 2/3;
    grid-column: 8/9;
    z-index: 1;
  }
}

/* ==========================================================================

.section-T11-nav-sitemap
	&__body
		&__main
			&__main-cta

========================================================================== */
@media (max-width: 575.98px) {
  .section-T11-nav-sitemap {
    --site-map-column-count:2;
  }
}
@media (min-width: 576px) and (max-width: 767.98px) {
  .section-T11-nav-sitemap {
    --site-map-column-count:2;
  }
}
@media (min-width: 768px) and (max-width: 991.98px) {
  .section-T11-nav-sitemap {
    --site-map-column-count:3;
  }
}
@media (min-width: 992px) and (max-width: 1199.98px) {
  .section-T11-nav-sitemap {
    --site-map-column-count:4;
  }
}
@media (min-width: 1200px) {
  .section-T11-nav-sitemap {
    --site-map-column-count:4;
  }
}
.section-T11-nav-sitemap__body {
  max-width: var(--max-width-12);
  margin-inline: auto;
  padding-inline: var(--spacer-side-margin);
  padding-top: var(--spacer-3);
}
.section-T11-nav-sitemap__main {
  font-size: var(--font-size-text-xs);
  padding-bottom: var(--spacer-4);
}
.section-T11-nav-sitemap__main > ul {
  -webkit-column-gap: 16px;
     -moz-column-gap: 16px;
          column-gap: 16px;
  -webkit-column-count: var(--site-map-column-count);
     -moz-column-count: var(--site-map-column-count);
          column-count: var(--site-map-column-count);
  line-height: 1.125;
  margin-bottom: 0;
  list-style: none;
  padding: 0;
  border-bottom: solid 2px var(--color-text-accent);
  padding-bottom: var(--spacer-3);
}
.section-T11-nav-sitemap__main > ul a {
  text-decoration: none;
}
.section-T11-nav-sitemap__main > ul > li {
  -webkit-column-break-inside: avoid;
     -moz-column-break-inside: avoid;
          break-inside: avoid;
  font-weight: 800;
}
.section-T11-nav-sitemap__main > ul > li > a {
  display: inline-block;
}
.section-T11-nav-sitemap__main > ul > li > ul {
  margin-bottom: 0;
  list-style: none;
  padding-left: 0;
}
.section-T11-nav-sitemap__main > ul > li > ul > li {
  font-weight: 400;
}
.section-T11-nav-sitemap__main > ul > li > ul > li > a {
  display: inline-block;
}
.section-T11-nav-sitemap__main-cta {
  border: solid 1pt var(--color-text-link);
  border-radius: 4px;
}
@media (max-width: 767px) {
  .section-T11-nav-sitemap__main > ul > li > a {
    padding: 16px 0px;
  }
  .section-T11-nav-sitemap__main > ul > li > ul > li > a {
    padding: 12px 0px;
  }
  .section-T11-nav-sitemap__main-cta {
    padding-inline: 12px;
  }
}
@media (min-width: 768px) {
  .section-T11-nav-sitemap__main > ul > li > a {
    padding: 16px 32px;
  }
  .section-T11-nav-sitemap__main > ul > li > ul > li > a {
    padding: 4px 32px;
  }
}
@media print {
  .section-T11-nav-sitemap {
    display: none;
  }
}

/* ==========================================================================

.section-T11-nav-footer
	&__body
		&__head
		&__main
		&__foot

========================================================================== */
.section-T11-nav-footer {
  --color-text-link: var(--color-text);
}
.section-T11-nav-footer a {
  text-decoration: none;
}
.section-T11-nav-footer__body {
  position: relative;
  padding-block: var(--spacer-3);
  padding-inline: var(--estate-list-side-margin);
  max-width: var(--estate-list-max-width);
  margin-inline: auto;
}
.section-T11-nav-footer__body::before {
  z-index: 1;
  content: " ";
  position: absolute;
  bottom: -1px;
  left: var(--spacer-side-margin);
  right: var(--spacer-side-margin);
}
.section-T11-nav-footer__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 16px;
}
.section-T11-nav-footer__main {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 16px;
}
.section-T11-nav-footer__foot {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 16px;
}
.section-T11-nav-footer__foot a.active {
  font-weight: 800;
  color: var(--color-text-dark-fixed) !important;
  pointer-events: none;
}
@media (max-width: 767px) {
  .section-T11-nav-footer__body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 16px;
  }
  .section-T11-nav-footer__head {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .section-T11-nav-footer__main {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .section-T11-nav-footer__foot {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
@media (min-width: 768px) {
  .section-T11-nav-footer__body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
@media print {
  .section-T11-nav-footer {
    display: none;
  }
}

/* ==========================================================================

.section-T11-team
	&__body
		&__head
		&__main

========================================================================== */
.section-T11-team {
  padding-block: var(--spacer-5);
}
.section-T11-team img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 1;
}
.section-T11-team__head {
  text-wrap: balance;
  padding-bottom: var(--spacer-4);
}
.section-T11-team__head > *:last-child {
  margin-bottom: 0;
}
@media (max-width: 767px) {
  .section-T11-team__head {
    padding-inline: var(--spacer-side-margin);
  }
}
@media (min-width: 768px) {
  .section-T11-team__body {
    display: grid;
    grid-template-rows: auto auto;
    grid-template-columns: minmax(var(--grid-side-min), var(--grid-side-flex)) repeat(var(--grid-cols), minmax(0, var(--grid-col-comp))) minmax(var(--grid-side-min), var(--grid-side-flex));
    -webkit-column-gap: var(--grid-gap);
       -moz-column-gap: var(--grid-gap);
            column-gap: var(--grid-gap);
  }
  .section-T11-team__head {
    grid-row: 1/2;
    grid-column: 2/-2;
  }
  .section-T11-team__main {
    grid-row: 2/3;
    grid-column: 2/-2;
  }
}

/* ==========================================================================

.card-T11-team
	&__pict
	&__name
	&__ipi
	&__description
	&__tel
	&__email

========================================================================== */
.card-T11-team {
  --color-text-link: var(--color-text);
  text-align: center;
  position: relative;
}
.card-T11-team a {
  text-decoration: none;
}
.card-T11-team__pict {
  background-color: var(--color-primary-fixed);
  margin-bottom: var(--spacer-3);
}
.card-T11-team__name {
  font-weight: 900;
  padding-bottom: var(--spacer-2);
}
.card-T11-team__ipi {
  font-size: var(--font-size-text-xs);
}
.card-T11-team__tel {
  padding-top: var(--spacer-3);
  font-weight: 600;
}
.card-T11-team__email {
  font-weight: 600;
}
@media (min-width: 768px) {
  .card-T11-team__description {
    font-size: var(--font-size-text-xs);
  }
}

/* ==========================================================================

.section-T11-last-estate
	&__body
		&__head
		&__main
		&__background

========================================================================== */
.section-T11-last-estate__head {
  position: relative;
  z-index: 1;
  padding-top: var(--spacer-5);
  text-wrap: balance;
  padding-bottom: var(--spacer-4);
}
.section-T11-last-estate__head > *:last-child {
  margin-bottom: 0;
}
.section-T11-last-estate__main {
  position: relative;
  z-index: 1;
  padding-bottom: var(--spacer-5);
}
.section-T11-last-estate__background {
  position: relative;
  z-index: 0;
}
@media (max-width: 767px) {
  .section-T11-last-estate__head {
    padding-inline: var(--spacer-side-margin);
  }
}
@media (min-width: 768px) {
  .section-T11-last-estate__body {
    display: grid;
    grid-template-rows: auto auto;
    grid-template-columns: minmax(var(--grid-side-min), var(--grid-side-flex)) repeat(var(--grid-cols), minmax(0, var(--grid-col-comp))) minmax(var(--grid-side-min), var(--grid-side-flex));
    -webkit-column-gap: var(--grid-gap);
       -moz-column-gap: var(--grid-gap);
            column-gap: var(--grid-gap);
  }
  .section-T11-last-estate__head {
    grid-row: 1/2;
    grid-column: 2/-2;
  }
  .section-T11-last-estate__main {
    grid-row: 2/3;
    grid-column: 2/-2;
  }
  .section-T11-last-estate__background {
    display: none;
    grid-row: 1/3;
    grid-column: 2/-2;
    background-color: #F2EEE9;
  }
}

/* ==========================================================================

.section-test-grid-template
	&__body
		&__head
		&__main
		&__background

========================================================================== */
.section-test-grid-template__head {
  position: relative;
  z-index: 1;
  padding-top: var(--spacer-5);
}
.section-test-grid-template__main {
  position: relative;
  z-index: 1;
  padding-bottom: var(--spacer-5);
}
.section-test-grid-template__background {
  position: relative;
  z-index: 0;
}
@media (max-width: 767px) {
  .section-test-grid-template {
    background-color: #F2EEE9;
  }
  .section-test-grid-template__head {
    padding-inline: var(--spacer-side-margin);
  }
}
@media (min-width: 768px) {
  .section-test-grid-template__body {
    display: grid;
    grid-auto-rows: auto; /* chaque ligne s’adapte à sa hauteur */
    grid-template-columns: minmax(var(--grid-side-min), var(--grid-side-flex)) repeat(var(--grid-cols), minmax(0, var(--grid-col-comp))) minmax(var(--grid-side-min), var(--grid-side-flex));
    -webkit-column-gap: var(--grid-gap);
       -moz-column-gap: var(--grid-gap);
            column-gap: var(--grid-gap);
  }
  .section-test-grid-template__head {
    grid-column: 2/-2;
  }
  .section-test-grid-template__main {
    grid-column: 8/-2;
  }
  .section-test-grid-template__background {
    grid-column: 1/-3;
    background-color: #F2EEE9;
  }
}

/* ==========================================================================
.section-T11-footer
	&__body
		&__head
		&__main
		&__foot
========================================================================== */
.section-T11-footer {
  font-size: var(--font-size-text-xs);
  padding-block: var(--spacer-4) var(--spacer-3);
}
.section-T11-footer a {
  text-decoration: none;
}
.section-T11-footer__body {
  padding-inline: var(--estate-list-side-margin);
  max-width: var(--estate-list-max-width);
  margin-inline: auto;
}
.section-T11-footer__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.section-T11-footer__head .footer-address {
  font-weight: 800;
  position: relative;
  list-style: none;
  padding: 0;
}
.section-T11-footer__head .footer-address li {
  position: relative;
  padding-left: 32px;
  padding-bottom: var(--spacer-2);
}
.section-T11-footer__head .footer-address > *:last-child {
  margin-bottom: 0;
}
.section-T11-footer__head .footer-address i {
  color: var(--color-primary-fixed);
  position: absolute;
  margin-left: -32px;
}
.section-T11-footer__head .footer-social {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 8px;
  list-style: none;
  padding: 0;
  margin: 0;
}
.section-T11-footer__head .footer-social li a {
  width: 56px;
  height: 56px;
}
.section-T11-footer__main {
  text-align: center;
  line-height: 1.5;
}
.section-T11-footer__main > *:last-child {
  margin-bottom: 0;
}
.section-T11-footer__foot {
  text-align: center;
  font-size: var(--font-size-text-xxs);
  color: rgba(255, 255, 255, 0.7);
}
.section-T11-footer__foot a {
  color: var(--color-primary-fixed);
}
@media screen and (max-width: 767px) {
  .section-T11-footer__body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: var(--spacer-4);
  }
}
@media print, (min-width: 768px) {
  .section-T11-footer__body {
    display: grid;
    grid-template-columns: 55fr 45fr; /* Deux colonnes égales */
    grid-template-rows: auto auto; /* Deux lignes : contenu + pied */
    -webkit-column-gap: var(--spacer-gutter);
       -moz-column-gap: var(--spacer-gutter);
            column-gap: var(--spacer-gutter);
    row-gap: var(--spacer-gutter);
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: start;
  }
  .section-T11-footer__head {
    grid-column: 1/2;
    grid-row: 1/2;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    text-align: left;
  }
  .section-T11-footer__agency {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0 32px;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .section-T11-footer__main {
    grid-column: 2/3;
    grid-row: 1/2;
    text-align: left;
  }
  .section-T11-footer__foot {
    grid-column: 1/3;
    grid-row: 2/3;
    text-align: center;
    border-top: solid 2px var(--color-text-accent);
    padding-top: var(--spacer-3);
    font-size: var(--font-size-text-xxs);
    color: rgba(255, 255, 255, 0.7);
  }
}

/* ==========================================================================

.form-grid
	&__item

========================================================================== */
:root {
  --form-grid-gap-x: 24px;
  --form-grid-gap-y: 32px;
  --form-grid-cols: 6;
}

.form-grid {
  line-height: 1.25em;
  display: grid;
  row-gap: var(--form-grid-gap-y);
  /* Items */
}
.form-grid label {
  margin-bottom: 0;
  font-size: var(--font-size-text-xs);
}
.form-grid hr {
  border: none;
  border-top: 2px solid var(--color-primary-fixed);
}
.form-grid__item {
  width: 100%;
}
.form-grid__item > *:last-child {
  margin-bottom: 0;
}
.form-grid__item--break {
  grid-column: 1/-1;
}
@media (max-width: 767px) {
  .form-grid {
    grid-template-columns: 1fr;
    -webkit-column-gap: 0;
       -moz-column-gap: 0;
            column-gap: 0;
  }
  .form-grid__item {
    grid-column: 1/-1;
  }
}
@media (min-width: 768px) {
  .form-grid {
    grid-template-columns: repeat(var(--form-grid-cols), 1fr);
    -webkit-column-gap: var(--form-grid-gap-x);
       -moz-column-gap: var(--form-grid-gap-x);
            column-gap: var(--form-grid-gap-x);
  }
  .form-grid__item--full {
    grid-column: 1/-1;
  }
  .form-grid__item--half {
    grid-column: span 3;
  }
  .form-grid__item--third {
    grid-column: span 2;
  }
}

/* ==========================================================================

.section-T11-form
	&__body
		&__head
		&__main
	&__background

========================================================================== */
.section-T11-form__head > * {
  text-align: center;
}
.section-T11-form__head > *:before {
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
.section-T11-form__main button {
  margin: auto;
  border-radius: 100px;
  aspect-ratio: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 16px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.section-T11-form__main button i {
  margin-left: 0;
}
@media (max-width: 767px) {
  .section-T11-form {
    max-width: var(--max-width-4);
    margin: auto;
    padding-block: var(--spacer-5);
    padding-inline: var(--spacer-side-margin);
  }
}
@media (min-width: 768px) {
  .section-T11-form {
    padding-top: var(--spacer-5) !important;
    background-image: url("/templates/T11/images/header-t12-02.jpg");
    background-image: var(--bg-image);
    background-size: cover;
    background-position: top;
    background-attachment: fixed;
    padding-block: var(--spacer-5);
    position: relative;
  }
  .section-T11-form__body {
    max-width: var(--max-width-8);
    margin: auto;
    position: relative;
    z-index: 2;
    display: grid;
    grid-auto-rows: auto; /* chaque ligne s’adapte à sa hauteur */
    grid-template-columns: minmax(var(--grid-side-min), var(--grid-side-flex)) repeat(var(--grid-cols), minmax(0, var(--grid-col-comp))) minmax(var(--grid-side-min), var(--grid-side-flex));
    -webkit-column-gap: var(--grid-gap);
       -moz-column-gap: var(--grid-gap);
            column-gap: var(--grid-gap);
  }
  .section-T11-form__head {
    padding-block: var(--spacer-3);
    padding-inline: var(--spacer-gap);
    background-color: var(--color-bg);
    grid-column: 2/-2;
  }
  .section-T11-form__main {
    padding-bottom: var(--spacer-4);
    padding-inline: var(--spacer-gap);
    background-color: var(--color-bg);
    grid-column: 2/-2;
  }
  .section-T11-form__background {
    position: absolute;
    inset: 0;
  }
}

/* ==========================================================================

.elem-accordion
	&__item
		&__head
		&__body

========================================================================== */
.elem-accordion {
  list-style: none;
  margin-bottom: 0;
  padding-left: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: var(--spacer-paragraph);
}
.elem-accordion > *:last-child {
  padding-bottom: 0;
  border-bottom: none;
}

.elem-accordion__item {
  border-bottom: solid 1pt var(--color-primary-fixed);
  padding-bottom: 20px;
}

.title-accordion {
  padding-bottom: 20px;
}

.elem-accordion__head a {
  text-decoration: none;
  display: block;
  position: relative;
  font-weight: 800;
  color: var(--color-text-dark-fixed) !important;
  padding-right: 24px;
  text-wrap: balance;
}

.elem-accordion__head a::before {
  font-weight: 400;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  font-family: var(--font-family-icon);
  color: var(--color-primary-fixed);
  content: "\f054";
  position: absolute;
  width: 16px;
  height: 32px;
  text-align: center;
  line-height: 32px;
  right: 0;
  color: var(--color-text-accent);
  top: 50%;
  -webkit-transform: translateY(-50%) rotate(0);
          transform: translateY(-50%) rotate(0);
}

.elem-accordion__head a.active::before {
  -webkit-transform: translateY(-50%) rotate(90deg);
          transform: translateY(-50%) rotate(90deg);
}

.elem-accordion__body {
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  display: grid;
  grid-template-rows: 0fr;
}

.elem-accordion__body.active {
  grid-template-rows: 1fr;
}

.elem-accordion__body.active .elem-accordion__text {
  padding: 16px 16px 16px 0;
}

.elem-accordion__text {
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  overflow: hidden;
  padding: 0px 16px 0px 0;
}

.elem-accordion__text > *:last-child {
  margin-bottom: 0;
}

.elem-accordion--no-padding-x .elem-accordion__text {
  padding-left: 0;
  padding-right: 0;
}

/* ==========================================================================

.elem-simple-accordion
	&__item
		&__body
			&__text
		&__foot

========================================================================== */
.elem-simple-accordion {
  margin-bottom: 0;
  padding-left: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.elem-simple-accordion > *:last-child {
  padding-bottom: 0;
  border-bottom: none;
}
.elem-simple-accordion__body {
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  display: grid;
  grid-template-rows: 0fr;
}
.elem-simple-accordion__body.active {
  grid-template-rows: 1fr;
}
.elem-simple-accordion__body.active .elem-simple-accordion__text {
  padding: 16px 16px 16px 0;
}
.elem-simple-accordion__text {
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  overflow: hidden;
  padding: 0px 16px 0px 0;
}
.elem-simple-accordion__text > *:first-child {
  margin-top: 0;
}
.elem-simple-accordion__text > *:last-child {
  margin-bottom: 0;
}
.elem-simple-accordion__foot a:not(.active) span:nth-child(2) {
  display: none;
}
.elem-simple-accordion__foot a.active span:nth-child(1) {
  display: none;
}

.btn-accent {
  /* Couleur par défaut (claire) */
  background-color: var(--color-primary-fixed);
  /* On prépare le “volet” foncé à gauche (0%) */
  background-image: -webkit-gradient(linear, left top, right top, from(var(--color-primary-dark-fixed)), color-stop(50%, var(--color-primary-dark-fixed)), color-stop(50%, var(--color-primary-fixed)), to(var(--color-primary-fixed)));
  background-image: linear-gradient(to right, var(--color-primary-dark-fixed) 0%, var(--color-primary-dark-fixed) 50%, var(--color-primary-fixed) 50%, var(--color-primary-fixed) 100%);
  background-size: 0% 100%; /* invisible au repos */
  background-repeat: no-repeat;
  background-position: left center;
  -webkit-transition: background-size 0.4s ease;
  transition: background-size 0.4s ease;
}

/* Survol : le “volet foncé” recouvre le bouton */
.btn-accent:hover {
  background-size: 200% 100%; /* double largeur = expansion complète */
}

.card-T10-testimonial__body {
  margin: 0 auto;
  max-width: 600px;
  overflow: hidden;
}
.card-T10-testimonial__text {
  position: relative;
  font-weight: 400;
  text-align: center;
  font-size: var(--font-size-lead);
  padding-bottom: var(--spacer-3);
}
.card-T10-testimonial__text:before {
  position: absolute;
  top: -0.25em;
  font-size: 4em;
  color: var(--color-primary-fixed);
  content: "“ ";
  font-weight: 800;
}
.card-T10-testimonial__text:after {
  position: absolute;
  bottom: -0.75em;
  font-size: 4em;
  color: var(--color-primary-fixed);
  content: " ”";
  font-weight: 800;
}
.card-T10-testimonial__author {
  font-weight: 800;
  text-align: center;
  padding-bottom: var(--spacer-3);
}
@media (max-width: 767px) {
  .card-T10-testimonial__text {
    padding: 32px 64px 0px 64px;
  }
  .card-T10-testimonial__text:before {
    left: var(--spacer-side-margin);
  }
  .card-T10-testimonial__text:after {
    right: var(--spacer-side-margin);
  }
}
@media (min-width: 768px) {
  .card-T10-testimonial__text {
    padding: 32px 64px 0px 32px;
  }
  .card-T10-testimonial__text:before {
    left: 0;
  }
  .card-T10-testimonial__text:after {
    right: 0;
  }
}

/* ==========================================================================
   ANIMATIONS (fade-in)
   Utilise : <div data-animate="fade-in-up"></div>
   ========================================================================== */
[data-animate] {
  opacity: 0;
  -webkit-transition: opacity 0.6s ease, -webkit-transform 0.6s ease;
  transition: opacity 0.6s ease, -webkit-transform 0.6s ease;
  transition: opacity 0.6s ease, transform 0.6s ease;
  transition: opacity 0.6s ease, transform 0.6s ease, -webkit-transform 0.6s ease;
  will-change: opacity, transform;
}

[data-animate].is-visible {
  opacity: 1;
  -webkit-transform: none;
          transform: none;
}

/* Variantes directionnelles */
[data-animate=fade-in-left] {
  -webkit-transform: translateX(-24px);
          transform: translateX(-24px);
}

[data-animate=fade-in-right] {
  -webkit-transform: translateX(24px);
          transform: translateX(24px);
}

[data-animate=fade-in-up] {
  -webkit-transform: translateY(24px);
          transform: translateY(24px);
}

[data-animate=fade-in-scale] {
  -webkit-transform: scale(0.8);
          transform: scale(0.8);
}

/* État visible */
[data-animate=fade-in-up].is-visible,
[data-animate=fade-in-left].is-visible,
[data-animate=fade-in-right].is-visible,
[data-animate=fade-in-scale].is-visible {
  -webkit-transform: none;
          transform: none;
}

/* Accessibilité : réduire ou désactiver les animations si demandé par l’utilisateur */
@media (prefers-reduced-motion: reduce) {
  [data-animate] {
    -webkit-transition: none !important;
    transition: none !important;
    opacity: 1 !important;
    -webkit-transform: none !important;
            transform: none !important;
  }
}
/* Accessibilité : réduire ou désactiver les animations si demandé par l’utilisateur */
@media (prefers-reduced-motion: reduce) {
  [data-animate] {
    -webkit-transition: none !important;
    transition: none !important;
    opacity: 1 !important;
    -webkit-transform: none !important;
            transform: none !important;
  }
}
section {
  overflow: hidden;
}

/* ==========================================================================

.section-T11-pict-pict
	&__body
		&__pict1
		&__pict2

========================================================================== */
.section-T11-pict-pict {
  padding-block: var(--spacer-5);
}
.section-T11-pict-pict__pict1 img {
  width: 100%;
}
.section-T11-pict-pict__pict1 video {
  width: 100%;
}
.section-T11-pict-pict__pict2 img {
  width: 100%;
}
.section-T11-pict-pict__pict2 video {
  width: 100%;
}
@media (max-width: 767px) {
  .section-T11-pict-pict__body {
    padding-inline: var(--spacer-side-margin);
  }
  .section-T11-pict-pict__pict2 {
    padding-top: var(--spacer-3);
  }
}
@media (min-width: 768px) {
  .section-T11-pict-pict__body {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: minmax(var(--grid-side-min), var(--grid-side-flex)) repeat(var(--grid-cols), minmax(0, var(--grid-col-comp))) minmax(var(--grid-side-min), var(--grid-side-flex));
    -webkit-column-gap: var(--grid-gap);
       -moz-column-gap: var(--grid-gap);
            column-gap: var(--grid-gap);
  }
  .section-T11-pict-pict__pict1 {
    grid-column: 2/8;
    padding-right: 16px;
  }
  .section-T11-pict-pict__pict2 {
    grid-column: 8/14;
    padding-left: 16px;
  }
}

/* ==========================================================================

.section-T11-pict-pict
	&__body
		&__main
			&__pict
		&__foot
		&__mask

========================================================================== */
.section-T11-pict-pict-trash {
  padding-block: var(--spacer-5);
}
.section-T11-pict-pict-trash__title {
  text-wrap: balance;
}
.section-T11-pict-pict-trash__title > * {
  margin-bottom: 0;
}
.section-T11-pict-pict-trash__main {
  position: relative;
}
.section-T11-pict-pict-trash__pict img {
  width: 100%;
}
.section-T11-pict-pict-trash__pict video {
  width: 100%;
}
.section-T11-pict-pict-trash__text h1:first-child,
.section-T11-pict-pict-trash__text h2:first-child,
.section-T11-pict-pict-trash__text h2:first-child {
  text-wrap: balance;
  margin-bottom: 1em;
}
.section-T11-pict-pict-trash__text .btn:last-child {
  margin-top: 1em;
}
.section-T11-pict-pict-trash__text > *:last-child {
  margin-bottom: 0;
}
.section-T11-pict-pict-trash__cta {
  padding-top: var(--spacer-4);
}
@media (max-width: 767px) {
  .section-T11-pict-pict-trash {
    padding-block: var(--spacer-5);
  }
  .section-T11-pict-pict-trash__title {
    padding-inline: var(--spacer-side-margin);
    padding-bottom: var(--spacer-4);
  }
  .section-T11-pict-pict-trash__main {
    padding-top: var(--spacer-4);
  }
  .section-T11-pict-pict-trash__foot {
    padding-top: var(--spacer-4);
    padding-inline: var(--spacer-side-margin);
  }
}
@media (min-width: 768px) {
  .section-T11-pict-pict-trash__body {
    display: grid;
    grid-template-rows: 128px auto;
    grid-template-columns: minmax(var(--grid-side-min), var(--grid-side-flex)) repeat(var(--grid-cols), minmax(0, var(--grid-col-comp))) minmax(var(--grid-side-min), var(--grid-side-flex));
    -webkit-column-gap: var(--grid-gap);
       -moz-column-gap: var(--grid-gap);
            column-gap: var(--grid-gap);
  }
  .section-T11-pict-pict-trash__head {
    grid-row: 1/2;
    grid-column: 9/14;
    margin-top: auto;
  }
  .section-T11-pict-pict-trash__title {
    padding-bottom: var(--spacer-3);
  }
  .section-T11-pict-pict-trash__main {
    position: relative;
    grid-row: 1/3;
    grid-column: 2/8;
  }
  .section-T11-pict-pict-trash__pict img {
    position: absolute;
    -o-object-fit: cover;
       object-fit: cover;
    top: 0;
    left: 0;
    height: 100%;
  }
  .section-T11-pict-pict-trash__pict video {
    position: absolute;
    -o-object-fit: cover;
       object-fit: cover;
    top: 0;
    left: 0;
    height: 100%;
  }
  .section-T11-pict-pict-trash__foot {
    grid-row: 2/3;
    padding-bottom: var(--spacer-5);
    padding-top: var(--spacer-4);
    grid-column: 8/14;
  }
  .section-T11-pict-pict-trash__mask {
    position: relative;
    top: 1px;
    background-color: var(--color-bg);
    grid-row: 2/3;
    grid-column: 7/8;
    z-index: 1;
  }
}
@media (min-width: 768px) {
  .section-T11-pict-pict-trash--reverse .section-T11-pict-pict-trash__head {
    grid-row: 1/2;
    grid-column: 2/7;
    margin-top: auto;
    padding-right: var(--spacer-gutter);
  }
  .section-T11-pict-pict-trash--reverse .section-T11-pict-pict-trash__main {
    position: relative;
    grid-row: 1/3;
    grid-column: -2/-8;
  }
  .section-T11-pict-pict-trash--reverse .section-T11-pict-pict-trash__pict img {
    position: absolute;
    -o-object-fit: cover;
       object-fit: cover;
    top: 0;
    left: 0;
    height: 100%;
  }
  .section-T11-pict-pict-trash--reverse .section-T11-pict-pict-trash__foot {
    grid-row: 2/3;
    padding-bottom: var(--spacer-5);
    padding-top: var(--spacer-4);
    grid-column: 2/8;
  }
  .section-T11-pict-pict-trash--reverse .section-T11-pict-pict-trash__mask {
    background-color: var(--color-bg);
    grid-row: 2/3;
    grid-column: 8/9;
    z-index: 1;
  }
}

.form-checkbox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
}
.form-checkbox input {
  accent-color: var(--color-primary-fixed);
}

.element-range-slider {
  position: relative;
}
.element-range-slider .price-label {
  background: var(--color-text-dark-fixed);
  color: #fff;
  padding: 4px 8px;
  border-radius: 4px;
  white-space: nowrap;
  line-height: 12px;
}
.element-range-slider__slider {
  margin-top: 24px;
}
@media (max-width: 767px) {
  .element-range-slider .price-label {
    font-size: 16px;
  }
  .element-range-slider .price-label[data-js-slider-label-min],
  .element-range-slider .price-label[data-js-slider-label-max] {
    position: absolute;
    top: -48px;
  }
}
@media (min-width: 768px) {
  .element-range-slider .price-label {
    font-size: 12px;
  }
  .element-range-slider .price-label[data-js-slider-label-min],
  .element-range-slider .price-label[data-js-slider-label-max] {
    position: absolute;
    top: -30px;
  }
}
.element-range-slider .price-label[data-js-slider-label-min] {
  left: 0;
}
.element-range-slider .price-label[data-js-slider-label-max] {
  right: 0;
}

.section-widget-search-engine {
  padding: 0 24px;
  max-width: 1154px;
  margin: auto;
}

/* ==========================================================================

.w-module-list-card-estate
	&__body
		&__head
			&__cta-primary
			&__cta-secondary
		&__main
			&__pub
		&__foot

Utilisation avec la carte
.w-module-list-card-estate
	&__body
		&__head
			&__cta-primary
			&__cta-secondary
		&__map
			&__map-info
		&__foot

========================================================================== */
.w-module-list-card-estate__body {
  max-width: var(--spacer-max-width-body);
  margin: auto;
  padding-right: var(--spacer-gap-main);
  padding-left: var(--spacer-gap-main);
}
.w-module-list-card-estate__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.w-module-list-card-estate__head > * {
  margin-bottom: 0;
}
.w-module-list-card-estate__cta-primary > *:not(:last-child) {
  position: relative;
}
.w-module-list-card-estate__cta-primary > *:not(:last-child)::before {
  z-index: 1;
  content: " ";
  position: absolute;
  height: 24px;
  right: -6px;
  border-right: solid 1px var(--color-blue-light);
}
.w-module-list-card-estate__main {
  display: grid;
  row-gap: var(--estate-list-row-gap);
  -webkit-column-gap: var(--estate-list-column-gap);
     -moz-column-gap: var(--estate-list-column-gap);
          column-gap: var(--estate-list-column-gap);
}
.w-module-list-card-estate__map-info {
  max-width: 930px;
  margin: auto;
  padding-bottom: var(--spacer-paragraph);
}
.w-module-list-card-estate__pub {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.w-module-list-card-estate__foot {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media (max-width: 767px) {
  .w-module-list-card-estate {
    padding-top: var(--spacer-paragraph);
  }
  .w-module-list-card-estate__body {
    gap: var(--spacer-paragraph) !important;
  }
  .w-module-list-card-estate__head {
    font-size: var(--font-size-text-xs);
    padding-bottom: var(--spacer-5);
  }
  .w-module-list-card-estate__foot {
    padding-top: var(--spacer-paragraph);
  }
}
@media (min-width: 768px) {
  .w-module-list-card-estate__body {
    padding-top: var(--spacer-5);
  }
  .w-module-list-card-estate__head {
    padding-bottom: var(--spacer-block);
    text-align: center;
  }
  .w-module-list-card-estate__map-info {
    padding-bottom: var(--spacer-paragraph);
    padding-right: var(--spacer-gap-main);
    padding-left: var(--spacer-gap-main);
  }
  .w-module-list-card-estate__foot {
    padding-top: var(--spacer-block);
  }
}
@media (max-width: 575.98px) {
  .w-module-list-card-estate__main {
    grid-template-columns: 100%;
  }
}
@media (min-width: 576px) and (max-width: 767.98px) {
  .w-module-list-card-estate__main {
    grid-template-columns: 100%;
  }
}
@media (min-width: 768px) and (max-width: 991.98px) {
  .w-module-list-card-estate__pub {
    grid-column: span 2;
  }
  .w-module-list-card-estate__main {
    grid-template-columns: repeat(2, calc((100% - 1 * var(--estate-list-column-gap)) / 2));
  }
}
@media (min-width: 992px) and (max-width: 1199.98px) {
  .w-module-list-card-estate__pub {
    grid-column: span 3;
  }
  .w-module-list-card-estate__main {
    grid-template-columns: repeat(3, calc((100% - 2 * var(--estate-list-column-gap)) / 3));
  }
}
@media (min-width: 1200px) {
  .w-module-list-card-estate__pub {
    grid-column: span 3;
  }
  .w-module-list-card-estate__main {
    grid-template-columns: repeat(3, calc((100% - 2 * var(--estate-list-column-gap)) / 3));
  }
}

/* ==========================================================================
.element-pagination
    &__prev
    &__next
========================================================================== */
.element-pagination {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: var(--spacer-gap, 16px);
  /* Previous + Next arrows */
  /* Hide elements with `.desktop` on mobile */
}
.element-pagination a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-width: 40px;
  height: 40px;
  padding: 0 12px;
  font-size: var(--font-size-text);
  font-weight: 600;
  line-height: 1;
  color: var(--color-text);
  text-decoration: none;
  border-radius: var(--radius-corner);
  -webkit-transition: color var(--ss-animation-timing, 0.25s), background-color var(--ss-animation-timing, 0.25s), border-color var(--ss-animation-timing, 0.25s);
  transition: color var(--ss-animation-timing, 0.25s), background-color var(--ss-animation-timing, 0.25s), border-color var(--ss-animation-timing, 0.25s);
}
.element-pagination a:hover {
  color: var(--color-text-dark-fixed) !important;
  background-color: var(--color-primary-fixed);
  border-color: var(--color-primary-fixed);
}
.element-pagination a.active {
  color: var(--color-text-dark-fixed);
  background-color: var(--color-primary-fixed);
  border-color: var(--color-primary-fixed);
  pointer-events: none;
}
.element-pagination a.disabled {
  opacity: 0.4;
  pointer-events: none;
}
.element-pagination__prev, .element-pagination__next {
  width: 40px;
  height: 40px;
  padding: 0 !important;
  background-size: 14px;
  background-position: center;
  background-repeat: no-repeat;
}
.element-pagination__prev {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' stroke='%231D1D1B' fill='none' viewBox='0 0 24 24'%3E%3Cpath d='M15 6l-6 6 6 6' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.element-pagination__next {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' stroke='%231D1D1B' fill='none' viewBox='0 0 24 24'%3E%3Cpath d='M9 6l6 6-6 6' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
@media (max-width: 767px) {
  .element-pagination .desktop {
    display: none;
  }
}

.spacer-menu {
  height: var(--nav-height);
}
@media print {
  .spacer-menu {
    display: none;
  }
}

/* ==========================================================================

.section-search-T11-engine
	&__body
		&__main

========================================================================== */
.section-search-T11-engine__body {
  padding-inline: var(--spacer-side-margin);
}
.section-search-T11-engine__main {
  border-bottom: solid var(--color-line-accent);
  max-width: var(--max-width-12);
}
@media (max-width: 767px) {
  .section-search-T11-engine__main {
    padding-bottom: 32px;
  }
}
@media (min-width: 768px) {
  .section-search-T11-engine__body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .section-search-T11-engine__main {
    padding-bottom: 16px;
  }
}

/*	==========================================================================
	==========================================================================
	==========================================================================
	map-section
		map-section__map / map-section__map--mini-contact  / map-section__map--square

	==========================================================================
	==========================================================================
	==========================================================================
*/
.map-section__temp {
  height: 600px;
}

.map-section__map iframe {
  z-index: 1;
}

.map-section__map {
  position: relative;
  height: 0;
  padding-bottom: 30%;
  margin: auto;
  border-top: 1px solid var(--color-text-accent);
  border-bottom: 1px solid var(--color-text-accent);
}

.map-section__map--mini-contact {
  padding-bottom: 75%;
}

.map-section__map--square {
  padding-bottom: 100%;
}

@media (max-width: 767px) {
  .map-section__map {
    height: 400px;
    padding-bottom: 0;
    border-radius: 0px;
    border: 0px solid var(--color-text-accent);
    border-top: 1px solid var(--color-text-accent);
    border-bottom: 1px solid var(--color-text-accent);
  }
  .map-section__map--mini-contact {
    height: 0;
    padding-bottom: 75%;
  }
  .map-section__map--square {
    height: 0;
    padding-bottom: 100%;
  }
}
@media (min-width: 768px) and (max-width: 1199px) {
  .map-section__map {
    height: 400px;
    padding-bottom: 0;
  }
  .map-section__map--mini-contact {
    height: 0;
    padding-bottom: 75%;
  }
  .map-section__map--square {
    height: 0;
    padding-bottom: 100%;
  }
}
@media print {
  .map-section {
    display: none;
  }
}
.map-io-box__header .bg-primary {
  color: #000000;
  background-color: red !important;
}

.leaflet-popup-content-wrapper {
  background-color: rgba(255, 255, 255, 0.8);
  backdrop-filter: blur(3px);
  width: 190px;
  padding: 10px;
  /*	position: relative; */
  /* margin-left: 10px; */
  /* margin-right: 10px; */
  /*	border: 1px dotted red;*/
  border-radius: 4px;
  -webkit-box-shadow: 0px 3px 15px 3px rgba(0, 0, 0, 0.1);
  box-shadow: 0px 3px 15px 3px rgba(0, 0, 0, 0.1);
  margin-bottom: 1.5rem;
}

.leaflet-popup-content-wrapper:before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  bottom: -14px;
  width: 0;
  height: 0;
  border-left: 14px solid transparent;
  border-right: 14px solid transparent;
  border-top: 14px solid rgba(255, 255, 255, 0.8);
  backdrop-filter: blur(3px);
  clear: both;
}

.leaflet-container {
  z-index: 1;
}

.message-box {
  background-color: hsl(0, 0%, 92%);
}
.message-box + .message-box {
  margin-top: initial;
}
.message-box__container {
  max-width: 1140px;
}
.message-box__container {
  width: 100%;
  margin-right: auto;
  margin-left: auto;
}
.message-box__row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.message-box__col {
  -ms-flex-preferred-size: 0;
      flex-basis: 0;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  max-width: 100%;
  padding-top: 16px;
  padding-bottom: 16px;
  line-height: 1.2em;
  -ms-flex-item-align: center;
      align-self: center;
}
.message-box__col > *:last-child {
  margin-bottom: 0;
}
.message-box__col img {
  max-width: 100%;
}
.message-box__col-picto {
  -ms-flex-item-align: start;
      align-self: flex-start;
}
.message-box__col-picto > i {
  font-size: 32px;
}
@media (max-width: 767px) {
  .message-box__col-picto {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%;
    text-align: center;
    padding-bottom: 0;
  }
}
@media (min-width: 768px) {
  .message-box__col-picto {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    width: 48px;
  }
}
@media (max-width: 767px) {
  .message-box__col {
    padding-inline: var(--spacer-side-margin);
  }
}
@media (min-width: 768px) {
  .message-box {
    max-width: var(--max-width-12);
    padding-inline: var(--spacer-side-margin);
    margin: auto;
    margin-top: -72px;
    z-index: 11;
    position: relative;
  }
  .message-box__col-picto {
    padding-right: 32px;
  }
}
.message-box---primary {
  background-color: var(--color-primary-fixed);
}
.message-box---red {
  background-color: #dc3545;
}
.message-box---orange {
  background-color: #ffc107;
}
.message-box---green {
  background-color: #28a745;
}
.message-box---primary, .message-box---red, .message-box---orange, .message-box---green {
  color: #ffffff;
}
.message-box---primary i, .message-box---red i, .message-box---orange i, .message-box---green i {
  color: white !important;
}
.message-box---primary a, .message-box---red a, .message-box---orange a, .message-box---green a {
  color: white !important;
  text-decoration: underline;
}
.message-box + .no-margin-top-before-menu {
  margin-top: inherit;
}

.dropdown-item.active {
  background-color: var(--color-primary);
}

/* ==========================================================================

.section-T11-contact-form
	&__body
		&__col-adress
			&__sticky
		&__col-form

========================================================================== */
.section-T11-contact-form {
  overflow: visible;
  padding-bottom: var(--spacer-5);
}
.section-T11-contact-form__body {
  padding-inline: var(--spacer-side-margin);
  margin-inline: auto;
  max-width: var(--spacer-max-width-body);
}
.section-T11-contact-form__sticky {
  clip-path: polygon(100% 0%, 0% 0%, 0% 100%, calc(100% - 24px) 100%, calc(100% - 24px) 50%, 100% 50%);
  background-color: var(--color-bg);
  padding: 32px 56px 32px 32px;
}
.section-T11-contact-form__sticky table {
  margin-bottom: var(--spacer-paragraph);
}
.section-T11-contact-form__sticky .elem-accordion {
  margin-bottom: var(--spacer-paragraph);
}
.section-T11-contact-form__sticky h2, .section-T11-contact-form__sticky .h2 {
  margin-block: 1.5em 0.5em;
}
.section-T11-contact-form__sticky h3, .section-T11-contact-form__sticky .h3 {
  margin-block: 1.5em 0.5em;
}
.section-T11-contact-form__sticky > *:first-child {
  margin-top: 0;
}
.section-T11-contact-form__sticky > *:last-child {
  margin-bottom: 0;
}
@media (min-width: 768px) {
  .section-T11-contact-form__body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 32px;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .section-T11-contact-form__col-adress {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: 360px;
  }
  .section-T11-contact-form__sticky {
    position: sticky;
    top: 16px;
  }
  .section-T11-contact-form__col-form {
    max-width: 768px;
  }
}

/* ==========================================================================
.elem-collapsable
	&__body
========================================================================== */
.elem-collapsable {
  display: grid;
  grid-template-rows: 0fr;
  -webkit-transition: grid-template-rows 220ms ease;
  transition: grid-template-rows 220ms ease;
  transition: grid-template-rows 220ms ease, -ms-grid-rows 220ms ease;
}
.elem-collapsable__body {
  overflow: hidden;
  min-height: 0;
}
.elem-collapsable.is-open {
  grid-template-rows: 1fr;
}
.elem-collapsable.is-closed {
  grid-template-rows: 0fr;
}
.btn-form-post {
  border-radius: 100px;
  aspect-ratio: 1;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 16px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

/* ==========================================================================

.section-T11-realisation-alternate
	&__body
		&__main
			&__pict
		&__foot
		&__mask

========================================================================== */
.section-T11-realisation-alternate__title {
  text-wrap: balance;
}
.section-T11-realisation-alternate__title > * {
  margin-bottom: 0;
}
.section-T11-realisation-alternate__main {
  position: relative;
}
.section-T11-realisation-alternate__pict img {
  width: 100%;
}
.section-T11-realisation-alternate__pict video {
  width: 100%;
}
.section-T11-realisation-alternate__text h1:first-child,
.section-T11-realisation-alternate__text h2:first-child,
.section-T11-realisation-alternate__text h2:first-child {
  text-wrap: balance;
  margin-bottom: 1em;
}
.section-T11-realisation-alternate__text .btn:last-child {
  margin-top: 1em;
}
.section-T11-realisation-alternate__text > *:last-child {
  margin-bottom: 0;
}
.section-T11-realisation-alternate__cta {
  padding-top: var(--spacer-4);
}
@media (max-width: 767px) {
  .section-T11-realisation-alternate {
    padding-bottom: var(--spacer-5);
  }
  .section-T11-realisation-alternate__body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    position: relative;
  }
  .section-T11-realisation-alternate__title {
    padding-inline: var(--spacer-side-margin);
    padding-bottom: var(--spacer-4);
  }
  .section-T11-realisation-alternate__pict {
    position: relative;
    overflow: hidden;
  }
  .section-T11-realisation-alternate__pict::before {
    z-index: 1;
    content: " ";
    position: absolute;
    bottom: 0;
    left: 0;
    height: 24px;
    width: 66%;
    background-color: white;
  }
  .section-T11-realisation-alternate__foot {
    padding-inline: var(--spacer-side-margin);
  }
}
@media (min-width: 768px) {
  .section-T11-realisation-alternate {
    padding-block: var(--spacer-5);
  }
  .section-T11-realisation-alternate__body {
    display: grid;
    grid-template-rows: 128px auto;
    grid-template-columns: minmax(var(--grid-side-min), var(--grid-side-flex)) repeat(var(--grid-cols), minmax(0, var(--grid-col-comp))) minmax(var(--grid-side-min), var(--grid-side-flex));
    -webkit-column-gap: var(--grid-gap);
       -moz-column-gap: var(--grid-gap);
            column-gap: var(--grid-gap);
  }
  .section-T11-realisation-alternate__head {
    grid-row: 1/2;
    grid-column: 9/14;
    margin-top: auto;
  }
  .section-T11-realisation-alternate__title {
    padding-bottom: var(--spacer-3);
  }
  .section-T11-realisation-alternate__main {
    position: relative;
    grid-row: 1/3;
    grid-column: 1/8;
  }
  .section-T11-realisation-alternate__pict img {
    position: absolute;
    -o-object-fit: cover;
       object-fit: cover;
    top: 0;
    left: 0;
    height: 100%;
  }
  .section-T11-realisation-alternate__pict video {
    position: absolute;
    -o-object-fit: cover;
       object-fit: cover;
    top: 0;
    left: 0;
    height: 100%;
  }
  .section-T11-realisation-alternate__foot {
    grid-row: 2/3;
    padding-bottom: var(--spacer-5);
    padding-top: var(--spacer-4);
    grid-column: 8/14;
  }
  .section-T11-realisation-alternate__mask {
    position: relative;
    top: 1px;
    background-color: var(--color-bg);
    grid-row: 2/3;
    grid-column: 7/8;
    z-index: 1;
  }
}
.section-T11-realisation-alternate--reverse .estate-flag__text {
  left: auto;
  right: 16px;
}
@media (min-width: 768px) {
  .section-T11-realisation-alternate--reverse .section-T11-realisation-alternate__head {
    grid-row: 1/2;
    grid-column: 2/7;
    margin-top: auto;
    padding-right: var(--spacer-gutter);
  }
  .section-T11-realisation-alternate--reverse .section-T11-realisation-alternate__main {
    position: relative;
    grid-row: 1/3;
    grid-column: -1/-8;
  }
  .section-T11-realisation-alternate--reverse .section-T11-realisation-alternate__pict img {
    position: absolute;
    -o-object-fit: cover;
       object-fit: cover;
    top: 0;
    left: 0;
    height: 100%;
  }
  .section-T11-realisation-alternate--reverse .section-T11-realisation-alternate__foot {
    grid-row: 2/3;
    padding-bottom: var(--spacer-5);
    padding-top: var(--spacer-4);
    grid-column: 2/8;
  }
  .section-T11-realisation-alternate--reverse .section-T11-realisation-alternate__mask {
    background-color: var(--color-bg);
    grid-row: 2/3;
    grid-column: 8/9;
    z-index: 1;
  }
}

/* ==========================================================================

.elem-realisation-list-info

========================================================================== */
.elem-realisation-list-info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 8px 16px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.elem-realisation-list-info svg {
  height: 48px;
}
.elem-realisation-list-info i {
  font-size: 24px;
}
/* ==========================================================================

.elem-realisation-list-cta

========================================================================== */
@media (max-width: 767px) {
  .elem-realisation-list-cta {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
  }
  .elem-realisation-list-cta > * {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    min-height: 64px;
  }
  .elem-realisation-list-cta > *:last-child:nth-child(odd) {
    grid-column: span 2;
  }
}
@media (min-width: 768px) {
  .elem-realisation-list-cta {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0px 8px;
  }
}
@media print {
  .elem-realisation-list-cta {
    display: none;
  }
}

.estate-table {
  width: 100%;
}
.estate-table__header {
  background-color: var(--color-text-dark-fixed) !important;
  color: var(--color-white) !important;
}
.estate-table__link-detail {
  position: relative;
  padding-left: 1.25em;
}
.estate-table__link-detail::before {
  font-family: var(--font-family-icon);
  content: "\f055";
  font-weight: 300;
  position: absolute;
  height: 10px;
  width: 10px;
  left: 0;
}
.estate-table tr.sold th, .estate-table tr.sold td {
  color: rgba(0, 0, 0, 0.4);
}
.estate-table tr.sold .estate-table__link-detail::before {
  display: none;
}
@media (max-width: 767px) {
  .estate-table {
    font-size: 14px;
  }
  .estate-table th {
    padding: 0.5rem 0.25rem;
  }
  .estate-table td {
    padding: 0.5rem 0.25rem;
  }
}
@media (min-width: 768px) {
  .estate-table th {
    padding: 0.5rem 1rem;
  }
  .estate-table td {
    padding: 0.5rem 1rem;
  }
}

.estate-table + .estate-table {
  margin-top: var(--spacer-4);
}

.table-striped tbody tr:nth-of-type(odd) {
  background-color: var(--color-grey-ultra-light);
}

.table-responsive {
  display: block;
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.estate-table {
  width: 100%;
}

.estate-flag {
  position: absolute;
  top: 0px;
  margin: auto;
  width: 100%;
}
.estate-flag--estate-detail {
  position: static;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-bottom-left-radius: 2px;
  border-bottom-right-radius: 2px;
}

.estate-flag__text {
  color: #FFFFFF;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 0.25em;
  font-weight: 500;
  -webkit-box-shadow: 0 5px 20px rgba(0, 0, 0, 0.3);
          box-shadow: 0 5px 20px rgba(0, 0, 0, 0.3);
  font-size: 10px;
  top: 16px;
  position: absolute;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  padding: 2px 12px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  left: 16px;
}
.estate-flag__text:not(:first-child):not(.estate-flag__text--estate-detail) {
  border-radius: 2px;
  margin-top: 4px;
}
.estate-flag__text--estate-detail {
  font-size: 14px;
  border-radius: 2px;
  margin: 0 4px;
  padding: 0 32px;
}

.estate-flag__project {
  color: #FFFFFF;
  display: block;
  padding: 0px;
  min-width: 170px;
  text-align: center;
  text-transform: uppercase;
  font-size: 12px;
  font-weight: 700;
  border-radius: 4px 0px 8px 0px;
  letter-spacing: 1px;
}

.estate-flag__text--exclusivity {
  background-color: var(--color-primary-fixed);
  max-width: 100%;
}
.estate-flag__text--exclusivity::before {
  font-family: "Font Awesome 5 Pro";
  content: "\f069";
  margin-right: 0.25em;
  font-size: 0.7em;
  position: relative;
}

.estate-flag__text--color-primary {
  background-color: var(--color-primary-fixed);
}

.estate-flag__text--option {
  background-color: #ffba00;
}

.estate-flag__text--sold {
  background-color: #ff4530;
}

.estate-flag__text--rented {
  background-color: #1abc9c;
}

.estate-flag__text--new {
  background-color: #ff9203;
}

.estate-flag__text--big {
  font-size: 16px !important;
}

@media print {
  .estate-flag__text--exclusivity {
    border: var(--color-primary-fixed) 2px solid;
    color: var(--color-primary-fixed);
  }
  .estate-flag__text--option {
    border: #ffba00 2px solid;
    color: #ffba00;
  }
  .estate-flag__text--sold {
    border: #ff4530 2px solid;
    color: #ff4530;
  }
  .estate-flag__text--rented {
    border: #1abc9c 2px solid;
    color: #1abc9c;
  }
  .estate-flag__text--new {
    border: #ff9203 2px solid;
    color: #ff9203;
  }
}
.noUi-connect {
  background: var(--color-primary-fixed);
}

.noUi-target {
  background: var(--color-grey-medium);
  border-radius: 0px;
  border: none;
  -webkit-box-shadow: none;
          box-shadow: none;
}

.noUi-horizontal .noUi-handle {
  cursor: pointer;
  background: var(--color-primary-fixed);
  border: none;
  border-radius: 100px;
  -webkit-box-shadow: none;
          box-shadow: none;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.noUi-horizontal .noUi-handle:hover {
  background: var(--color-primary-dark-fixed);
}
@media (max-width: 767px) {
  .noUi-horizontal .noUi-handle {
    width: 40px;
    height: 40px;
    right: -20px;
    top: -18px;
  }
}
@media (min-width: 768px) {
  .noUi-horizontal .noUi-handle {
    width: 16px;
    height: 16px;
    right: -8px;
    top: -6px;
  }
}
.noUi-horizontal .noUi-handle::before, .noUi-horizontal .noUi-handle::after {
  display: none;
}

.noUi-horizontal {
  height: 4px;
}

@media (max-width: 767px) {
  .cookies-config__footer .btn-accept, .cookies-config__footer .btn-cancel {
    margin-bottom: 16px;
  }
}
@media print {
  .map-section + .section-T11-last-estate .section-T11-last-estate__head {
    padding-top: 0;
  }
  .section-T11-last-estate.theme-default.similar {
    display: none;
  }
  .section-T11-home-intro__body {
    aspect-ratio: 16/9 !important;
  }
  .section-T11-home-intro__pict {
    height: auto;
  }
  [data-animate=fade-in-scale],
  [data-animate=fade-in-up],
  [data-animate=fade-in],
  [data-animate=fade-in-left],
  [data-animate=fade-in-right] {
    opacity: 1 !important;
    -webkit-transform: none !important;
            transform: none !important;
  }
  .section-T11-form {
    display: none;
  }
  .section.section-text.theme-light.py-4 {
    margin-bottom: var(--spacer-4);
  }
}
h2#team-header {
  margin-bottom: -60px;
}

/* ==========================================================================

.section-T11-estate-photos
	&__body
		&__back
		&__share
		&__pict
		&__text
			&__peb
		&__media

&--small 

========================================================================== */
.section-T11-estate-photos {
  padding-top: var(--spacer-3);
  padding-bottom: var(--spacer-4);
}
.section-T11-estate-photos__body {
  display: grid;
  gap: 16px;
  max-width: var(--max-width-12);
  margin: auto;
  padding-inline: var(--spacer-side-margin);
}
.section-T11-estate-photos__back {
  align-self: flex-end;
  grid-area: 1/1/2/2;
}
.section-T11-estate-photos__back > .btn {
  padding-left: 0px;
}
.section-T11-estate-photos__share {
  align-self: flex-end;
  grid-area: 1/2/2/3;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 16px;
  font-size: var(--font-size-lead);
}
.section-T11-estate-photos__pict {
  grid-area: 2/1/3/3;
}
.section-T11-estate-photos__text {
  -ms-flex-item-align: start;
      align-self: flex-start;
}
.section-T11-estate-photos__media {
  -ms-flex-item-align: start;
      align-self: flex-start;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 16px;
}
@media (max-width: 767px) {
  .section-T11-estate-photos__body {
    grid-template: auto auto auto auto/auto auto;
  }
  .section-T11-estate-photos__text {
    grid-area: 4/1/5/3;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 16px;
  }
  .section-T11-estate-photos__media {
    grid-area: 3/1/4/3;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    --btn-padding: 20px 28px;
  }
}
@media (min-width: 768px) {
  .section-T11-estate-photos__body {
    grid-template: auto auto auto/1fr auto;
  }
  .section-T11-estate-photos__text {
    grid-area: 3/1/4/2;
  }
  .section-T11-estate-photos__media {
    grid-area: 3/2/4/3;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
}
@media print {
  .section-T11-estate-photos__back {
    display: none;
  }
  .section-T11-estate-photos__share {
    display: none;
  }
  .section-T11-estate-photos__media {
    display: none;
  }
}
.section-T11-estate-photos--small .section-T11-estate-photos__body {
  grid-template: auto/1fr;
}

/* ==========================================================================

.elem-estate-h1
	&__category
	&__town
	&__price
	&__price-detail-fr

========================================================================== */
.elem-estate-h1 {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-bottom: 0;
}
.elem-estate-h1__category {
  font-weight: 900;
}
.elem-estate-h1__category:after {
  padding-inline: 0.5em;
  content: "—";
  color: var(--color-primary-fixed);
  font-weight: 400;
}
.elem-estate-h1__price {
  font-weight: 900;
}
.elem-estate-h1__town {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 100%;
          flex: 1 1 100%;
  font-weight: 400;
  display: block;
}
@media (max-width: 767px) {
  .elem-estate-h1 {
    font-size: var(--font-size-h3);
  }
  .elem-estate-h1__town {
    font-size: var(--font-size-lead);
  }
}
@media (min-width: 768px) {
  .elem-estate-h1 {
    font-size: var(--font-size-h2);
  }
  .elem-estate-h1__town {
    font-size: var(--font-size-h3);
  }
}
.elem-estate-h1--fr {
  line-height: 1;
}
.elem-estate-h1--fr .elem-estate-h1__category {
  display: block;
}
.elem-estate-h1--fr .elem-estate-h1__category:after {
  display: none;
}
.elem-estate-h1--fr .elem-estate-h1__price {
  display: block;
  font-size: var(--font-size-h3);
  margin-top: var(--spacer-2);
}
.elem-estate-h1--fr .elem-estate-h1__town {
  display: block;
  margin-bottom: var(--spacer-2);
}
.elem-estate-h1--fr .elem-estate-h1__price-detail-fr {
  font-weight: 400;
  font-size: var(--font-size-lead);
  padding-bottom: var(--spacer-5);
}
.elem-estate-h1--fr .elem-estate-h1__ttc {
  white-space: nowrap;
}
.elem-estate-h1--fr .elem-estate-h1__honoraires {
  font-size: var(--font-size-text-xs);
  padding-block: var(--spacer-1) var(--spacer-2);
  display: block;
}

.grid-estate-pict {
  display: grid;
  gap: 16px;
  height: 100%;
}
.grid-estate-pict img {
  width: 100%;
  aspect-ratio: 4/3;
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
  border-radius: var(--radius-corner);
}
.grid-estate-pict__visit360 {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  left: 32px;
  position: absolute;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.grid-estate-pict .item-0 {
  position: relative;
}
.grid-estate-pict .item-2, .grid-estate-pict .item-4 {
  position: relative;
}
.grid-estate-pict .item-2 > a > span, .grid-estate-pict .item-4 > a > span {
  pointer-events: none;
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 2;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  color: var(--color-white);
  font-weight: 600;
}
.grid-estate-pict .item-2 > a > span > span, .grid-estate-pict .item-4 > a > span > span {
  padding-right: var(--spacer-1);
}
.grid-estate-pict .item-2::before, .grid-estate-pict .item-4::before {
  pointer-events: none;
  z-index: 1;
  content: " ";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: var(--color-orange);
  opacity: 0.5;
  border-radius: var(--radius-corner);
}
.grid-estate-pict .item-hidden {
  display: none;
}
@media screen and (max-width: 575.98px) {
  .grid-estate-pict {
    grid-template: auto auto/repeat(4, 1fr);
    /* full width */
  }
  .grid-estate-pict .item-0 {
    grid-area: 1/1/2/5;
  }
  .grid-estate-pict .item-1 {
    grid-area: 2/1/3/2;
  }
  .grid-estate-pict .item-2 {
    grid-area: 2/2/3/3;
  }
  .grid-estate-pict .item-2 span {
    display: none;
  }
  .grid-estate-pict .item-3 {
    grid-area: 2/3/3/4;
  }
  .grid-estate-pict .item-4 {
    grid-area: 2/4/3/5;
  }
  .grid-estate-pict .item-4::after {
    z-index: 1;
    content: " ";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: rgba(0, 0, 0, 0.2);
    border-radius: var(--radius-corner);
    pointer-events: none;
  }
}
@media screen and (min-width: 576px) and (max-width: 767.98px) {
  .grid-estate-pict {
    grid-template: auto auto/repeat(4, 1fr);
    /* full width */
  }
  .grid-estate-pict .item-0 {
    grid-area: 1/1/2/5;
  }
  .grid-estate-pict .item-1 {
    grid-area: 2/1/3/2;
  }
  .grid-estate-pict .item-2 {
    grid-area: 2/2/3/3;
  }
  .grid-estate-pict .item-2 span {
    display: none;
  }
  .grid-estate-pict .item-3 {
    grid-area: 2/3/3/4;
  }
  .grid-estate-pict .item-4 {
    grid-area: 2/4/3/5;
  }
  .grid-estate-pict .item-4::after {
    z-index: 1;
    content: " ";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: rgba(0, 0, 0, 0.2);
    border-radius: var(--radius-corner);
    pointer-events: none;
  }
}
@media screen and (min-width: 768px) and (max-width: 1199.98px) {
  .grid-estate-pict {
    grid-template: 1fr 1fr/2fr 1fr;
    /* occupe 2 lignes × 2 colonnes */
  }
  .grid-estate-pict .item-0 {
    grid-area: 1/1/3/2;
  }
  .grid-estate-pict .item-1 {
    grid-area: 1/2/2/3;
  }
  .grid-estate-pict .item-2 {
    grid-area: 2/2/3/3;
  }
  .grid-estate-pict .item-2::after {
    z-index: 1;
    content: " ";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: rgba(0, 0, 0, 0.2);
    border-radius: var(--radius-corner);
    pointer-events: none;
  }
  .grid-estate-pict .item-3 {
    display: none;
  }
  .grid-estate-pict .item-4 {
    display: none;
  }
}
@media print, screen and (min-width: 1200px) {
  .grid-estate-pict {
    grid-template: repeat(2, 1fr)/repeat(4, 1fr);
    /* occupe 2 lignes × 2 colonnes */
  }
  .grid-estate-pict .item-0 {
    grid-area: 1/1/3/3;
  }
  .grid-estate-pict .item-1 {
    grid-area: 1/3/2/4;
  }
  .grid-estate-pict .item-2 {
    grid-area: 1/4/2/5;
  }
  .grid-estate-pict .item-2 span {
    display: none;
  }
  .grid-estate-pict .item-3 {
    grid-area: 2/3/3/4;
  }
  .grid-estate-pict .item-4 {
    grid-area: 2/4/3/5;
  }
  .grid-estate-pict .item-4::after {
    z-index: 1;
    content: " ";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: rgba(0, 0, 0, 0.2);
    border-radius: var(--radius-corner);
    pointer-events: none;
  }
}
@media print {
  .grid-estate-pict .item-4::after {
    display: none;
  }
  .grid-estate-pict .item-4 > a > span {
    display: none;
  }
}

/* ==========================================================================

.card-facts
	&__pict
	&__label
	&__value

.elem-list-card-gfacts

========================================================================== */
.elem-list-estate-facts {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 16px 32px;
  border-radius: 16px;
  background-color: #F8F6F3;
  font-size: 20px;
}
@media (max-width: 767px) {
  .elem-list-estate-facts {
    gap: 16px 48px;
  }
}
@media (min-width: 768px) {
  .elem-list-estate-facts {
    gap: 48px 36px;
  }
}

.card-facts {
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.card-facts__pict {
  font-weight: 400;
  color: var(--color-text-accent);
}
.card-facts__label {
  font-size: var(--font-size-text-xs);
  display: none;
}
.card-facts__value {
  font-weight: 400;
  font-family: var(--font-family-title);
}
.card-facts--360 {
  background-color: var(--color-text-accent);
  width: 44px;
  height: 44px;
  border-radius: 100px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media (max-width: 767px) {
  .card-facts {
    gap: 2px;
  }
  .card-facts__label {
    display: none;
  }
}
@media (min-width: 768px) {
  .card-facts {
    gap: 8px;
  }
}

/* ==========================================================================

.section-T11-estate-content
	&__body
		&__col-text
			&__point-interest
				&__point-interest-map
				&__point-interest-text
		&__col-cta
			&__avatar-desktop
			&__sticky
			&__mobile
				&__avatar-mobile {  }
				&__mobile-text
				&__mobile-cta

========================================================================== */
body.mobile-menu-is-active .section-T11-estate-content__mobile {
  display: none !important;
}

.section-T11-estate-content {
  overflow: visible;
  padding-bottom: var(--spacer-5);
}
.section-T11-estate-content__body {
  padding-left: var(--spacer-side-margin);
  padding-right: var(--spacer-side-margin);
  max-width: var(--spacer-max-width-body);
  margin: auto;
}
.section-T11-estate-content__col-text > *:first-child {
  margin-top: 0;
}
.section-T11-estate-content__col-text table {
  margin-bottom: var(--spacer-paragraph);
}
.section-T11-estate-content__col-text .elem-accordion {
  margin-bottom: var(--spacer-paragraph);
}
.section-T11-estate-content__col-text h2, .section-T11-estate-content__col-text .h2 {
  margin-block: 1.5em 0.5em;
}
.section-T11-estate-content__col-text h3, .section-T11-estate-content__col-text .h3 {
  margin-block: 1.5em 0.5em;
}
.section-T11-estate-content__col-text > *:last-child {
  margin-bottom: 0;
}
.section-T11-estate-content__point-interest-text {
  font-size: var(--font-size-text-xs);
}
.section-T11-estate-content__point-interest-text .elem-accordion__text ul {
  padding-left: 16px;
}
.section-T11-estate-content__point-interest-text .elem-accordion__text li {
  line-height: 1.25em;
}
.section-T11-estate-content__point-interest-text .elem-accordion__text li + li {
  margin-top: 16px;
}
.section-T11-estate-content__card_intro {
  font-size: 12px;
  color: var(--color-text-accent);
  letter-spacing: 0.125em;
}
.section-T11-estate-content__card_name {
  font-family: var(--font-family-title);
  font-size: 24px;
}
.section-T11-estate-content__desktop-banner {
  color: var(--color-white);
  font-weight: 600;
  text-align: center;
  margin-right: -16px;
  position: relative;
  margin-top: -24px;
  padding-bottom: 12px;
  padding-top: 4px;
  font-size: 18px;
}
.section-T11-estate-content__desktop-banner::before {
  z-index: -1;
  content: " ";
  position: absolute;
  top: -8px;
  bottom: 0;
  left: -32px;
  right: -32px;
  background-color: var(--color-blue);
}
@media screen and (max-width: 767px) {
  .section-T11-estate-content__point-interest-map iframe {
    height: 50vh;
  }
  .section-T11-estate-content__col-cta {
    will-change: initial !important;
  }
  .section-T11-estate-content__avatar-desktop {
    display: none;
  }
  .section-T11-estate-content__desktop {
    display: none;
  }
  .section-T11-estate-content__mobile {
    clip-path: polygon(0% 0%, 33% 0%, 33% 16px, 100% 16px, 100% 100%, 0% 100%);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 16px;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 8px var(--spacer-side-margin);
    position: fixed;
    z-index: 999;
    bottom: 0;
    left: 0;
    right: 0;
  }
  .section-T11-estate-content__avatar-mobile {
    background-color: var(--color-primary-fixed);
  }
  .section-T11-estate-content__avatar-mobile img {
    height: 80px;
    width: 80px;
    aspect-ratio: 1;
  }
  .section-T11-estate-content__mobile-text {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    font-size: 14px;
    line-height: 1.25em;
    padding-top: 16px;
  }
  .section-T11-estate-content__mobile-cta {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 16px;
    padding-top: 16px;
  }
}
@media screen and (min-width: 768px) {
  .section-T11-estate-content__body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 32px;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .section-T11-estate-content__col-text {
    max-width: 768px;
  }
  .section-T11-estate-content__col-cta {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: 360px;
  }
  .section-T11-estate-content__sticky {
    position: sticky;
    top: 16px;
  }
  .section-T11-estate-content__avatar-desktop {
    background-color: var(--color-primary-fixed);
    text-align: center;
    z-index: 1;
    position: relative;
  }
  .section-T11-estate-content__avatar-desktop img {
    width: 180px;
  }
  .section-T11-estate-content__card {
    clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 24px 100%, 24px 50%, 0% 50%);
    border-radius: var(--radius-corner);
    padding: 32px 32px 32px 56px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 16px;
  }
  .section-T11-estate-content__card .btn {
    width: 100%;
  }
  .section-T11-estate-content__mobile {
    display: none;
  }
}
@media (max-width: 1199.98px) {
  .section-T11-estate-content__point-interest-text {
    padding-top: var(--spacer-paragraph);
  }
}
@media (min-width: 1200px) {
  .section-T11-estate-content__point-interest {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 24px;
  }
  .section-T11-estate-content__point-interest-map {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
  }
  .section-T11-estate-content__point-interest-text {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 300px;
            flex: 0 0 300px;
    max-width: 300px;
  }
}
@media print {
  .section-T11-estate-content__card {
    background-color: #ffffff;
    padding: 16px;
  }
  .section-T11-estate-content__card a[href="#"] {
    display: none;
  }
  .section-T11-estate-content__avatar-desktop {
    margin: auto;
    background-color: #ffffff;
    max-width: 20%;
    padding-bottom: 16px;
  }
  .section-T11-estate-content__avatar-desktop img {
    width: 100%;
  }
  .section-T11-estate-content__card_name {
    padding-bottom: 16px;
  }
  .section-T11-estate-content__mobile {
    display: none;
  }
}
@media print {
  .section-T11-estate-content__desktop {
    position: initial;
    top: initial;
  }
  .section-T11-estate-content__desktop .d-flex.mt-3 {
    display: none;
  }
  .section-T11-estate-content__desktop .elem-card.mt-3 {
    display: none;
  }
  .section-T11-estate-content .elem-simple-accordion__body {
    display: block;
  }
  .section-T11-estate-content .elem-simple-accordion__foot {
    display: none;
  }
}

.elem-table-estate {
  font-size: var(--font-size-text-xs);
  width: 100%;
  border: none !important;
}
@media (max-width: 575.98px) {
  .elem-table-estate tbody {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 0 32px;
  }
  .elem-table-estate tbody > * {
    width: calc((100% - 32px * 0) / 1);
  }
}
@media (min-width: 576px) and (max-width: 991.98px) {
  .elem-table-estate tbody {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 0 32px;
  }
  .elem-table-estate tbody > * {
    width: calc((100% - 32px * 0) / 1);
  }
}
@media (min-width: 992px) {
  .elem-table-estate tbody {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 0 32px;
  }
  .elem-table-estate tbody > * {
    width: calc((100% - 32px * 1) / 2);
  }
}
.elem-table-estate tr {
  border-top: solid 1px hsl(0, 0%, 90%);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  line-height: 1.2em;
  gap: 32px;
}
.elem-table-estate th {
  font-weight: 400 !important;
  padding: 12px 0 16px 0 !important;
}
.elem-table-estate td {
  border-top: none !important;
  padding: 12px 0 16px 0 !important;
  text-align: right;
}
@media print {
  .elem-table-estate {
    font-size: var(--font-size-text);
  }
  .elem-table-estate tbody {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 0 32px;
  }
  .elem-table-estate tbody > * {
    width: calc((100% - 32px * 1) / 2);
  }
}
.elem-table-estate__peb {
  height: 24px;
}

/* ==========================================================================

.elem-price-peb
	&__price
	&__peb

========================================================================== */
.elem-price-peb {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.elem-price-peb__price {
  font-size: var(--font-size-h3);
  font-weight: 400;
  font-family: var(--font-family-title);
}
/* ==========================================================================

.elem-card
	&__head
	&__main
	&__foot

========================================================================== */
.elem-card {
  -webkit-box-shadow: 0 0 15px rgba(0, 0, 0, 0.4);
          box-shadow: 0 0 15px rgba(0, 0, 0, 0.4);
  border-radius: 8px;
  padding: 32px;
}
.elem-card__head > *:last-child {
  margin-bottom: 0;
}
.elem-card__main > *:last-child {
  margin-bottom: 0;
}
.elem-card__foot > *:last-child {
  margin-bottom: 0;
}
/* ==========================================================================

.section-flying-sticky-cta
	&__body
		&__pict
		&__main
			&__close
			&__title
			&__cta
				&__link

========================================================================== */
.section-flying-sticky-cta {
  padding-top: 0;
  padding-bottom: 0;
  position: fixed;
  z-index: 3;
  right: 0;
}
.section-flying-sticky-cta__body {
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  -webkit-transform: translateX(110%);
          transform: translateX(110%);
}
.section-flying-sticky-cta__pict img {
  -webkit-transition: -webkit-transform 0.2s ease-in-out;
  transition: -webkit-transform 0.2s ease-in-out;
  transition: transform 0.2s ease-in-out;
  transition: transform 0.2s ease-in-out, -webkit-transform 0.2s ease-in-out;
  width: 96px;
  -webkit-transform: translate(-50px, 16px) rotate(20deg);
          transform: translate(-50px, 16px) rotate(20deg);
  -webkit-transform-origin: 50% bottom;
          transform-origin: 50% bottom;
}
.section-flying-sticky-cta__main {
  -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
          box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  border-radius: 16px 0 0 16px;
  padding: 8px 24px 16px 20px;
}
.section-flying-sticky-cta__close {
  position: relative;
  left: -12px;
  top: -2px;
  z-index: 1;
}
.section-flying-sticky-cta__title {
  font-size: var(--font-size-h3);
  font-weight: 600;
  padding-bottom: var(--spacer-2);
}
.section-flying-sticky-cta__cta {
  margin-top: var(--spacer-2);
}
.section-flying-sticky-cta__cta i {
  font-size: 1.5em;
}
@media (max-width: 767px) {
  .section-flying-sticky-cta {
    bottom: 100px;
  }
  .section-flying-sticky-cta__cta {
    margin-top: var(--spacer-1);
  }
  .section-flying-sticky-cta__link {
    padding: var(--btn-padding-sm);
    font-weight: var(--btn-font-weight-sm);
    font-size: var(--btn-font-size-sm);
  }
}
@media (min-width: 768px) {
  .section-flying-sticky-cta {
    top: 66%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
}
.section-flying-sticky-cta:not(.active) {
  pointer-events: none;
}
.section-flying-sticky-cta.active .section-flying-sticky-cta__pict img {
  -webkit-transform: translate(-50px, 16px) rotate(-13deg);
          transform: translate(-50px, 16px) rotate(-13deg);
  -webkit-animation: wavingHand 1s 1;
          animation: wavingHand 1s 1; /* L'animation dure 1s et se répète indéfiniment */
}
@media (max-width: 767px) {
  .section-flying-sticky-cta.active .section-flying-sticky-cta__body {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@media (min-width: 768px) {
  .section-flying-sticky-cta.active .section-flying-sticky-cta__body {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@-webkit-keyframes wavingHand {
  0% {
    -webkit-transform: translate(-50px, 16px) rotate(-13deg);
            transform: translate(-50px, 16px) rotate(-13deg);
  }
  25% {
    -webkit-transform: translate(-50px, 16px) rotate(10deg);
            transform: translate(-50px, 16px) rotate(10deg);
  }
  50% {
    -webkit-transform: translate(-50px, 16px) rotate(-13deg);
            transform: translate(-50px, 16px) rotate(-13deg);
  }
  75% {
    -webkit-transform: translate(-50px, 16px) rotate(10deg);
            transform: translate(-50px, 16px) rotate(10deg);
  }
  100% {
    -webkit-transform: translate(-50px, 16px) rotate(-13deg);
            transform: translate(-50px, 16px) rotate(-13deg);
  }
}
@keyframes wavingHand {
  0% {
    -webkit-transform: translate(-50px, 16px) rotate(-13deg);
            transform: translate(-50px, 16px) rotate(-13deg);
  }
  25% {
    -webkit-transform: translate(-50px, 16px) rotate(10deg);
            transform: translate(-50px, 16px) rotate(10deg);
  }
  50% {
    -webkit-transform: translate(-50px, 16px) rotate(-13deg);
            transform: translate(-50px, 16px) rotate(-13deg);
  }
  75% {
    -webkit-transform: translate(-50px, 16px) rotate(10deg);
            transform: translate(-50px, 16px) rotate(10deg);
  }
  100% {
    -webkit-transform: translate(-50px, 16px) rotate(-13deg);
            transform: translate(-50px, 16px) rotate(-13deg);
  }
}

.flying-sticky-cta-target {
  height: 0;
  padding-top: 0;
  padding-bottom: 0;
}

.caracteristique {
  font-size: 16px;
  font-family: var(--font-family-base);
  font-weight: 500;
  color: var(--color-text-accent);
}

/* ==========================================================================

.elem-map
	&__map

========================================================================== */
.elem-map {
  border-radius: 16px;
  overflow: hidden;
}
.elem-map__map {
  width: 100%;
}
@media (max-width: 767px) {
  .elem-map__map {
    aspect-ratio: 1/1;
  }
}
@media (min-width: 768px) {
  .elem-map__map {
    aspect-ratio: 16/9;
  }
}
@media (min-width: 768px) {
  .elem-map--small-height .elem-map__map {
    height: 378px;
  }
}

.section__body {
  max-width: var(--spacer-max-width-body);
  margin: auto;
  padding-right: var(--spacer-side-margin);
  padding-left: var(--spacer-side-margin);
}

.title-underline {
  position: relative;
}
.title-underline::after {
  z-index: 1;
  content: " ";
  position: absolute;
  width: 70px;
  bottom: -1.75em;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  border-top: 1pt var(--color-text-accent) solid;
}

.d-none {
  display: none;
}

/* ==========================================================================

.element-popup-share
	&__body
		&__head
		&__main

========================================================================== */
.element-popup-share__head {
  font-weight: 600;
  padding-bottom: var(--spacer-3);
}
.element-popup-share__main {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: var(--spacer-2);
}
.element-popup-share__main > * {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
/**
 * Note: I have omitted any vendor-prefixes for clarity.
 * Adding them is left as an exercise for the reader.
 */
.headroom {
  will-change: transform;
  -webkit-transition: -webkit-transform 200ms linear;
  transition: -webkit-transform 200ms linear;
  transition: transform 200ms linear;
  transition: transform 200ms linear, -webkit-transform 200ms linear;
}

.headroom--pinned {
  -webkit-transform: translateY(0%) !important;
          transform: translateY(0%) !important;
}

.headroom--pinned:not(.headroom--top), .headroom--bottom {
  --nav-bg-opacity: 1;
}

@media (max-width: 767px) {
  .nav-T11-primary__main-cta > a {
    position: relative;
    padding-top: 20px;
    padding-bottom: 20px;
  }
  .nav-T11-primary__main-cta > a::before {
    z-index: 1;
    content: " ";
    position: absolute;
    inset: 8px 6px;
    border: solid 1pt #1D1D1B;
    border-radius: 4px;
  }
}
@media (min-width: 768px) {
  .nav-T11-primary__main-cta {
    color: var(--color-text-link);
    border: solid 1pt var(--color-white);
    padding: 8px 16px;
    border-radius: 4px;
  }
  .headroom--not-top .nav-T11-primary__main-cta {
    border: solid 1pt #1D1D1B;
  }
}
@media (min-width: 1440px) {
  .nav-T11-primary__main-cta {
    padding: 16px 32px;
  }
}
.headroom--unpinned {
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
}

/* ==========================================================================

.section-T11-nav
	&__body
		&__main
			&__brand
			&__nav-primary
			&__hamburger

========================================================================== */
body {
  position: relative;
}

@media (max-width: 1023.99px) {
  body.mobile-menu-is-active {
    overflow: hidden;
    position: fixed;
    width: 100%;
  }
  body.mobile-menu-is-active .section-T11-nav__nav-primary {
    height: 100%;
  }
}

@media (max-width: 1023.99px) {
  body:not(.mobile-menu-is-active) .section-T11-nav.headroom--top .section-T11-nav__brand {
    --color-bg: transparent;
  }
  body.mobile-menu-is-active .section-T11-nav__main {
    pointer-events: initial !important;
  }
}
@media (min-width: 1024px) {
  .section-T11-nav.headroom--top:not(.section-T11-nav--solid-top) .section-T11-nav__body {
    --color-bg: transparent;
  }
  .section-T11-nav.headroom--top:not(.section-T11-nav--solid-top) .section-T11-nav__body a {
    --color-text-link: white;
  }
  .section-T11-nav.headroom--top.section-T11-nav--solid-top .section-T11-nav__body {
    --color-bg: #ffffff;
  }
  .section-T11-nav.headroom--top.section-T11-nav--solid-top .nav-T11-primary {
    --color-text-link: var(--color-text);
  }
}
.section-T11-nav {
  position: fixed;
  z-index: 15;
  width: 100%;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  background-color: transparent;
}
.section-T11-nav__main {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 100%;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.section-T11-nav__brand {
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
@media (max-width: 1023.99px) {
  .section-T11-nav {
    pointer-events: none;
    height: 100%;
  }
  .section-T11-nav__body {
    height: 100%;
  }
  .section-T11-nav__main {
    pointer-events: none;
    display: grid;
    grid-template: auto 1fr/1fr auto;
    gap: 0px;
    height: 100%;
  }
  .section-T11-nav__brand {
    pointer-events: initial;
    background-color: var(--color-bg);
    grid-row: 1/2;
    grid-column: 1/3;
    padding: 16px var(--spacer-gap-main);
  }
  .section-T11-nav__brand img {
    height: var(--logo-height);
  }
  .section-T11-nav__nav-primary {
    pointer-events: initial;
    background-color: var(--color-bg);
    margin-bottom: auto;
    height: 0%;
    overflow: hidden;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    grid-row: 2/3;
    grid-column: 1/3;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .section-T11-nav__hamburger {
    pointer-events: initial;
    padding: 16px var(--spacer-gap-main);
    grid-row: 1/2;
    grid-column: 2/3;
  }
}
@media (min-width: 1024px) {
  .section-T11-nav__body {
    background-color: var(--color-bg);
    max-width: var(--max-width-12);
    padding-inline: var(--spacer-side-margin);
    margin: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: var(--spacer-block);
  }
  .section-T11-nav__brand {
    padding-top: 20px;
    padding-bottom: 20px;
  }
  .section-T11-nav__brand img {
    height: var(--logo-height);
  }
  .section-T11-nav__nav-primary {
    padding-left: 16px;
  }
  .section-T11-nav__main-cta {
    border: solid 1pt var(--color-text-link);
    padding: 16px 32px;
    border-radius: 4px;
  }
  .section-T11-nav__hamburger {
    display: none;
  }
}
@media print {
  .section-T11-nav {
    position: initial !important;
    -webkit-transform: translateY(0%);
            transform: translateY(0%);
  }
  .section-T11-nav__nav-primary {
    display: none;
  }
  .section-T11-nav__brand-mobile {
    display: none;
  }
  .section-T11-nav__brand-desktop {
    display: block;
  }
  .section-T11-nav__estimation {
    display: none;
  }
  .section-T11-nav__hamburger {
    display: none;
  }
}

/* ==========================================================================

.nav-T11-contact-mobile

========================================================================== */
@media (max-width: 1023.99px) {
  .nav-T11-contact-mobile > * {
    padding-right: var(--spacer-gap-main);
    padding-left: var(--spacer-gap-main);
  }
}
@media (min-width: 1024px) {
  .nav-T11-contact-mobile {
    display: none;
  }
}

/* ==========================================================================

.elem-hamburger
	&__picto
	&__text

========================================================================== */
.elem-hamburger {
  border: none;
  background-color: transparent;
  padding: 0;
  display: block;
  color: var(--color-text);
  text-decoration: none;
  width: var(--elem-hamburger-line-width);
  position: relative;
}
.elem-hamburger:hover {
  color: var(--color-text);
  text-decoration: none;
}
.elem-hamburger__picto-container {
  width: var(--elem-hamburger-line-width);
  height: var(--elem-hamburger-line-height);
  position: relative;
}
.elem-hamburger__picto {
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  position: absolute;
  height: 2px;
  width: var(--elem-hamburger-line-width);
  background-color: var(--color-text);
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  left: 50%;
}
.elem-hamburger__picto::before {
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  content: " ";
  position: absolute;
  height: 2px;
  width: var(--elem-hamburger-line-width);
  right: 0;
  background-color: var(--color-text);
}
.elem-hamburger__picto::after {
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  content: " ";
  position: absolute;
  height: 2px;
  width: var(--elem-hamburger-line-width);
  right: 0;
  background-color: var(--color-text);
}
.elem-hamburger__text {
  font-family: var(--font-content);
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  text-transform: uppercase;
  opacity: 1;
  text-align: center;
  font-size: 10px;
  letter-spacing: 0.1em;
  padding-top: 4px;
}
@media (max-width: 1023.99px) {
  .elem-hamburger {
    --elem-hamburger-line-width: 32px;
    --elem-hamburger-line-height: 22px;
  }
  .elem-hamburger__picto::before {
    top: -8px;
  }
  .elem-hamburger__picto::after {
    top: 8px;
  }
  .elem-hamburger__text {
    display: none;
  }
}
@media (min-width: 1024px) {
  .elem-hamburger {
    --elem-hamburger-line-width: 32px;
    --elem-hamburger-line-height: 28px;
  }
  .elem-hamburger__picto::before {
    top: -10px;
  }
  .elem-hamburger__picto::after {
    top: 10px;
  }
}

.mobile-menu-is-active .elem-hamburger__picto {
  background-color: transparent;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
@media (max-width: 1023.99px) {
  .mobile-menu-is-active .elem-hamburger__picto::before {
    -webkit-transform: translate(0px, 8px) rotate(45deg);
            transform: translate(0px, 8px) rotate(45deg);
  }
  .mobile-menu-is-active .elem-hamburger__picto::after {
    -webkit-transform: translate(0px, -8px) rotate(-45deg);
            transform: translate(0px, -8px) rotate(-45deg);
  }
}
@media (min-width: 1024px) {
  .mobile-menu-is-active .elem-hamburger__picto::before {
    -webkit-transform: translate(0px, 10px) rotate(45deg);
            transform: translate(0px, 10px) rotate(45deg);
  }
  .mobile-menu-is-active .elem-hamburger__picto::after {
    -webkit-transform: translate(0px, -9px) rotate(-45deg);
            transform: translate(0px, -9px) rotate(-45deg);
  }
}
.mobile-menu-is-active .elem-hamburger__text {
  opacity: 0;
}

/* ==========================================================================

.nav-T11-primary

========================================================================== */
.nav-T11-primary {
  --color-text-link: var(--color-text);
  list-style: none;
  margin-bottom: 0;
  padding-left: 0;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  /* ==========================================================================

  level 1

  ========================================================================== */
  /* ==========================================================================

  level 2

  ========================================================================== */
}
.nav-T11-primary > li {
  position: relative;
}
.nav-T11-primary > li.dropdown-toggle {
  position: relative;
}
.nav-T11-primary > li.dropdown-toggle::after {
  font-family: var(--font-family-icon);
  color: var(--color-text-accent);
  content: "\f078";
  position: absolute;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  font-size: 12px;
  right: 0;
  font-weight: 400;
}
.nav-T11-primary > li > a {
  font-weight: 600;
  text-decoration: none;
}
@media (max-width: 1023.99px) {
  .nav-T11-primary {
    overflow: auto;
    font-size: 18px;
  }
  .nav-T11-primary > li.active::before {
    z-index: 1;
    content: " ";
    position: absolute;
    top: calc(50% - 1px);
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    left: 4px;
    border-left: 4pt var(--color-line-accent) solid;
  }
  .nav-T11-primary > li.dropdown-toggle::after {
    pointer-events: none;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    right: calc(var(--spacer-gap-main));
    top: 28px;
    -webkit-transform: translate(0, -50%) rotate(-90deg);
            transform: translate(0, -50%) rotate(-90deg);
  }
  .nav-T11-primary > li > a {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    width: 100%;
    padding-left: var(--spacer-gap-main);
    padding-right: calc(var(--spacer-gap-main) + 32px);
    padding-top: 16px;
    padding-bottom: 16px;
    border-bottom: 1pt var(--color-line-accent) solid;
  }
  .nav-T11-primary .dropdown-toggle > a {
    border-bottom: none;
  }
  .nav-T11-primary .dropdown-toggle > ul {
    border-bottom: 1pt var(--color-line-accent) solid;
  }
  .nav-T11-primary .dropdown-toggle::after {
    display: none;
  }
}
@media (min-width: 1024px) {
  .nav-T11-primary {
    gap: 16px 48px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 14px;
  }
  .nav-T11-primary a {
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }
  .nav-T11-primary > li.active::before {
    z-index: 1;
    content: " ";
    position: absolute;
    width: 100%;
    bottom: 0;
    left: 0;
    border-bottom: 2pt var(--color-line-accent) solid;
  }
  .nav-T11-primary > li.dropdown-toggle {
    padding-right: 22px;
  }
  .nav-T11-primary > li.dropdown-toggle::after {
    top: 50%;
  }
  .nav-T11-primary > li.dropdown-toggle::before {
    z-index: 1;
    content: " ";
    position: absolute;
    inset: -8px -8px;
    background-color: transparent;
  }
  .nav-T11-primary > li > a {
    padding-top: 8px;
    padding-bottom: 8px;
  }
  .nav-T11-primary > li > ul > li > a:not(:hover) {
    color: var(--color-white) !important;
  }
}
.nav-T11-primary > li > ul {
  list-style: none;
  margin-bottom: 0;
  padding-left: 0;
}
.nav-T11-primary > li > ul > li > a {
  display: block;
  text-decoration: none;
  font-weight: 600;
  padding-top: 16px;
  padding-bottom: 16px;
}
@media (max-width: 1023.99px) {
  .nav-T11-primary > li > ul {
    --color-bg: transparent;
    --color-line-light: var(--color-primary-fixed);
  }
  .nav-T11-primary > li > ul > li > a {
    padding-left: 64px !important;
  }
  .nav-T11-primary > li.active::after {
    -webkit-transform: translate(0, -50%) rotate(0deg);
            transform: translate(0, -50%) rotate(0deg);
  }
  .nav-T11-primary > li.active > ul {
    display: block;
  }
  .nav-T11-primary > li > ul > li {
    position: relative;
  }
  .nav-T11-primary > li > ul > li.active::before {
    z-index: 1;
    content: " ";
    position: absolute;
    top: calc(50% - 1px);
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    left: 52px;
    border-left: 4pt var(--color-line-accent) solid;
  }
  .nav-T11-primary > li > ul > li > a {
    padding-left: calc(var(--spacer-gap-main) + 16px);
  }
}
@media (min-width: 1024px) {
  .nav-T11-primary > li > ul {
    position: absolute;
    z-index: 10;
    display: none;
  }
  .nav-T11-primary > li > ul > li {
    position: relative;
  }
  .nav-T11-primary > li > ul > li.active::before {
    z-index: 1;
    content: " ";
    position: absolute;
    top: calc(50% - 1px);
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    left: 6px;
    border-left: 4pt var(--color-line-accent) solid;
  }
  .nav-T11-primary > li > ul > li:not(:last-child) > a {
    border-bottom: 1pt var(--color-line-light) solid;
  }
  .nav-T11-primary > li > ul > li > a {
    padding-left: 16px;
    padding-right: 16px;
  }
  .nav-T11-primary > li.dropdown-toggle:hover > ul {
    display: block;
    width: 240px;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    top: 44px;
    border-radius: 6px;
  }
  .nav-T11-primary > li.dropdown-toggle:hover > ul::before {
    content: " ";
    position: absolute;
    height: 0px;
    width: 0px;
    top: -10px;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-bottom: 10px solid var(--color-bg);
  }
  .nav-T11-primary > li.dropdown-toggle:hover > ul::after {
    z-index: -1;
    content: " ";
    position: absolute;
    top: -20px;
    bottom: -16px;
    left: -16px;
    right: -16px;
    background-color: transparent;
  }
}

.elem-contact ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0px 24px;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  list-style: none;
  padding: 0;
  margin: 0;
}
.elem-contact ul > li > a {
  gap: 8px;
}
.elem-contact ul > li > a span {
  display: inline-block;
  font-size: 12px;
  max-width: 90px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.elem-contact ul > li > a > i {
  font-size: 1.5em;
}
@media (max-width: 340px) {
  .elem-contact ul > li > a span {
    display: inline-block;
    font-size: 10px;
    max-width: 90px;
  }
  .elem-contact ul > li > a > i {
    font-size: 1.25em;
  }
}

/* ==========================================================================

.card-T11-estate
	&__pict
	&__flag
	&__category
	&__peb
	&__town
	&__facts
	&__price

========================================================================== */
.card-T11-estate {
  position: relative;
  text-decoration: none;
  color: initial;
  display: grid;
  grid-template-rows: auto auto auto auto;
  grid-template-columns: auto auto;
}
.card-T11-estate:hover {
  text-decoration: none;
  color: initial;
}
.card-T11-estate__pict {
  grid-row: 1/3;
  grid-column: 1/3;
}
.card-T11-estate__pict img {
  width: 100%;
}
.card-T11-estate__category {
  grid-row: 2/3;
  grid-column: 1/3;
  position: relative;
  z-index: 1;
  align-self: flex-end;
}
.card-T11-estate__category > * {
  background-color: var(--color-bg);
  padding-top: 8px;
  padding-left: 1px;
  padding-right: 16px;
  text-transform: uppercase;
  font-weight: 400;
  font-size: var(--font-size-text-xs);
  letter-spacing: 0.4em;
  max-width: 66%;
  position: relative;
  top: 1px;
  left: -1px;
}
.card-T11-estate__peb {
  grid-row: 1/3;
  grid-column: 1/3;
  position: relative;
}
.card-T11-estate__peb img {
  position: absolute;
  height: 21px;
}
.card-T11-estate__town {
  font-size: var(--font-size-lead);
  grid-row: 4/5;
  font-weight: 900;
  grid-column: 1/3;
}
.card-T11-estate__facts {
  grid-row: 3/4;
  grid-column: 1/2;
  align-self: baseline;
  padding-top: 12px;
  padding-bottom: 8px;
}
.card-T11-estate__facts ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 32px;
}
.card-T11-estate__facts ul li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 16px;
}
.card-T11-estate__facts ul li i {
  color: var(--color-text-accent);
}
.card-T11-estate__price {
  white-space: nowrap;
  font-weight: 700;
  font-size: var(--font-size-lead);
  grid-row: 4/5;
  grid-column: 2/3;
  text-align: right;
  align-self: baseline;
}
.card-T11-estate__background {
  grid-row: 1/2;
  grid-column: 2/3;
  background-color: red;
  z-index: 1;
  display: none;
}
@media (max-width: 767px) {
  .card-T11-estate__category > * {
    font-size: 10px;
    position: absolute;
    top: 8px;
    right: 8px;
  }
  .card-T11-estate__peb img {
    bottom: 8px;
    right: 8px;
  }
}
@media (min-width: 768px) {
  .card-T11-estate__peb img {
    bottom: 40px;
    right: 16px;
  }
}

/* ==========================================================================

.card-estate
	&__pict
	&__flag
	&__category
	&__peb
	&__town
	&__facts
	&__price

========================================================================== */
.card-estate {
  position: relative;
  text-decoration: none;
  color: initial;
  display: grid;
  grid-template-rows: auto auto auto;
  grid-template-columns: auto auto;
}
.card-estate:hover {
  text-decoration: none;
  color: initial;
}
.card-estate__pict {
  grid-row: 1/2;
  grid-column: 1/3;
}
.card-estate__pict img {
  width: 100%;
}
.card-estate__category {
  grid-row: 1/2;
  grid-column: 1/3;
  position: relative;
}
.card-estate__category > * {
  font-size: 14px;
  text-transform: uppercase;
  background-color: #262626;
  color: #ffffff;
  position: absolute;
  top: 16px;
  right: 16px;
  font-weight: 700;
  letter-spacing: 0.2em;
  padding: 8px 32px;
  padding: 0.6em 2.3em;
}
.card-estate__peb {
  grid-row: 1/2;
  grid-column: 1/3;
  position: relative;
}
.card-estate__peb img {
  position: absolute;
}
.card-estate__town {
  font-size: var(--font-size-h3);
  grid-row: 2/3;
  grid-column: 1/3;
}
.card-estate__facts {
  font-size: var(--font-size-h4);
  grid-row: 3/4;
  grid-column: 1/2;
  align-self: baseline;
}
.card-estate__price {
  font-size: var(--font-size-h3);
  font-weight: 700;
  grid-row: 3/4;
  grid-column: 2/3;
  text-align: right;
  align-self: baseline;
}
@media (max-width: 767px) {
  .card-estate__category > * {
    font-size: 10px;
    position: absolute;
    top: 8px;
    right: 8px;
  }
  .card-estate__peb img {
    bottom: 8px;
    right: 8px;
  }
}
@media (min-width: 768px) {
  .card-estate__category > * {
    font-size: 14px;
    position: absolute;
    top: 16px;
    right: 16px;
  }
  .card-estate__peb img {
    bottom: 16px;
    right: 16px;
  }
}

/* ==========================================================================

.card-T11-estate-new
	&__head
		&__pict
		&__flag
		&__peb
	&__main
		&__category
		&__price
		&__price-tax-free
	&__foot
		&__town
		&__facts

========================================================================== */
.card-T11-estate-new {
  text-decoration: none;
  color: initial;
}
.card-T11-estate-new:hover {
  text-decoration: none;
  color: initial;
}
.card-T11-estate-new__head {
  position: relative;
  aspect-ratio: 16/9;
}
.card-T11-estate-new__pict {
  position: relative;
}
.card-T11-estate-new__pict::before {
  z-index: 1;
  content: " ";
  position: absolute;
  bottom: 0;
  left: -1px;
  width: 66%;
  height: 24px;
  background-color: var(--color-bg);
}
.card-T11-estate-new__pict img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 16/9;
}
.card-T11-estate-new__peb img {
  position: absolute;
  height: 21px;
  bottom: 20px;
  right: 16px;
}
.card-T11-estate-new__main {
  font-size: var(--font-size-lead);
  padding-top: var(--spacer-2);
}
.card-T11-estate-new__category {
  font-weight: 900;
  display: inline-block;
}
.card-T11-estate-new__price {
  font-weight: 900;
  display: inline-block;
}
.card-T11-estate-new__price:before {
  content: "—";
  color: var(--color-primary-fixed);
  font-weight: 400;
}
.card-T11-estate-new__price-tax-free {
  font-weight: 600 !important;
  font-size: 14px;
}
.card-T11-estate-new__price-ttc {
  font-weight: 400;
}
.card-T11-estate-new__town {
  padding-top: var(--spacer-1);
}
.card-T11-estate-new__facts {
  padding-top: var(--spacer-2);
  font-size: var(--font-size-text-xs);
}
.card-T11-estate-new__facts ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 32px;
}
.card-T11-estate-new__facts ul li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 16px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.card-T11-estate-new__facts ul li i {
  color: var(--color-text-accent);
}
.card-T11-estate-new__facts ul li svg {
  fill: currentColor;
  height: 14px;
}
/* ==========================================================================
.section-estate-list
	&__body
		&__head
		&__main
			&__list
				&__item
		&__foot
========================================================================== */
.section-estate-list {
  padding-block: var(--spacer-5);
  /* ===== MOBILE ====================================================== */
  /* ===== DESKTOP ===================================================== */
}
.section-estate-list__body {
  margin-inline: var(--estate-list-side-margin);
}
.section-estate-list__head {
  padding-bottom: var(--spacer-4);
  max-width: var(--estate-list-max-width);
  margin-inline: auto;
}
.section-estate-list__head > *:last-child {
  margin-bottom: 0;
}
.section-estate-list__list {
  max-width: var(--estate-list-max-width);
  margin-inline: auto;
  display: grid;
  list-style: none;
  padding: 0;
  row-gap: var(--estate-list-gap-y);
  -webkit-column-gap: var(--estate-list-gap-x);
     -moz-column-gap: var(--estate-list-gap-x);
          column-gap: var(--estate-list-gap-x);
  margin-bottom: 0;
}
.section-estate-list__foot {
  padding-top: var(--spacer-4);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media (max-width: 767px) {
  .section-estate-list__list {
    grid-template-columns: repeat(var(--estate-list-cols), 1fr);
  }
}
@media (min-width: 768px) {
  .section-estate-list__list {
    grid-template-columns: repeat(var(--estate-list-cols), 1fr);
  }
}

:root {
  --logo-height: 44px;
}
.pl-0 {
  padding-left: 0 !important;
}

body {
  --radius-corner: 0px;
  --radius-corner-input: 0px;
  --input-bg: #ffffff;
  --input-height: 40px;
  /* TOP */
  --input-border-top-width: 0;
  --input-border-top-style: none;
  --input-border-top-color: transparent;
  /* BOTTOM */
  --input-border-bottom-width: 2px;
  --input-border-bottom-style: solid;
  --input-border-bottom-color: var(--color-line);
  /* LEFT */
  --input-border-left-width: 0;
  --input-border-left-style: none;
  --input-border-left-color: transparent;
  /* RIGHT */
  --input-border-right-width: 0;
  --input-border-right-style: none;
  --input-border-right-color: transparent;
  /* Slim Select */
  /* Colors */
  --ss-primary-color: var(--color-primary-fixed );
  --ss-bg-color: var(--input-bg);
  --ss-font-color: #4d4d4d;
  --ss-border-color: #dcdee2;
  --ss-border-radius: 4px;
  /* Heights */
  --ss-main-height: var(--input-height);
  --ss-search-height: 40px;
  --ss-option-height: auto;
  --ss-content-height: 300px;
  /* Spacing */
  --ss-spacing-l: 9px;
  --ss-spacing-m: 7px;
  --ss-spacing-s: 5px;
  /* Other Properties */
  --ss-border-radius: 0px;
  --ss-animation-timing: 0.2s;
}

.ss-main {
  border-top: var(--input-border-top-width) var(--input-border-top-style) var(--input-border-top-color);
  border-bottom: var(--input-border-bottom-width) var(--input-border-bottom-style) var(--input-border-bottom-color);
  border-left: var(--input-border-left-width) var(--input-border-left-style) var(--input-border-left-color);
  border-right: var(--input-border-right-width) var(--input-border-right-style) var(--input-border-right-color);
}

/* ==========================================================================

Principes d'organisation BEM et SCSS 
- le code scss est structuré en 3 parties.
	1) code commun au mobile et au desktop
	2) code spécifique au mobile
	3) code spécifique au desktop
- les régles css peuvent  être sur une ligne par sélecteur (limite le nombre de ligne total du fichier) mais si il y a en plus que 6 alors il faut les écrires les unes en dessous des autres.
- respecter l'indentation des sélecteurs qui réflète fidèlement l’imbrication DOM
- les sélecteurs qui ne contiennent pas de règles css doivent être gardés afin de donner une vue complète de l'imbrication DOM et pour pouvoir éventuellement être compélté dans un second temps

========================================================================== */
/* ==========================================================================

Principes d'organisation BEM et SCSS 

- Le code SCSS est structuré en 3 parties distinctes :
	1) code commun au mobile et au desktop
	2) code spécifique au mobile  → @media (max-width: 767px)
	3) code spécifique au desktop → @media (min-width: 768px)

- Les règles CSS peuvent être écrites sur une seule ligne 
  lorsqu’un bloc contient 6 propriétés ou moins.
  Au-delà de 6 propriétés, elles doivent être écrites 
  sur des lignes séparées dans cet ordre :
	1. display / position
	2. box model (margin, padding, width, height, gap, flex…)
	3. font / text
	4. color / background
	5. border / radius
	6. interaction / transform / animation

- Respecter strictement l'indentation des sélecteurs 
  afin de refléter fidèlement l’imbrication du DOM.

- Conserver les sélecteurs vides (&__element { }) 
  pour donner une vue complète de la structure BEM 
  et permettre de les compléter dans un second temps.

- Les commentaires de section doivent suivre cette structure :
	/* ========================================================================== 
	.section-example
		&__body
			&__head
			&__main
			&__foot
	========================================================================== * /

- Les media queries doivent être placées à l’intérieur du bloc parent, 
  en conservant la même indentation :
	.block {
		&__element { ... }

		@media (max-width: 767px) {
			&__element { ... }
		}

		@media (min-width: 768px) {
			&__element { ... }
		}
	}

- Toujours utiliser la convention BEM complète :
	.block
	.block__element
	.block__element--modifier

- Préférer des noms fonctionnels plutôt que visuels :
	--is-active, --has-error, --theme-light (éviter --red, --big…)

- Les variables CSS doivent être utilisées partout pour les valeurs répétées :
	--color-text, --color-primary-fixed, --spacer-4, --radius-corner, --font-size-h2…

- Préfixer les variables locales au composant :
	--footer-gap, --estate-list-cols, --card-estate-spacing…

- Utiliser des unités relatives et adaptatives :
	rem, em, clamp(), min(), max(), var()

- Les thèmes (theme-black, theme-light, theme-dark-grey, etc.)
  sont appliqués au niveau de la section et non localement.
  Éviter les redéfinitions inutiles de couleur si le thème les définit déjà.

- Chaque section suit la structure HTML standard :
	<section class="section-X">
		<div class="section-X__body">
			<div class="section-X__head">...</div>
			<div class="section-X__main">...</div>
			<div class="section-X__foot">...</div>
		</div>
	</section>

- Le __body agit toujours comme le container principal :
	.section-X__body {
		padding-inline: var(--spacer-side-margin);
		max-width: var(--layout-max-width);
		margin-inline: auto;
	}

- Espacements : utiliser des multiples de 8px (ou 2/4px pour les petites valeurs)
  → 2, 4, 8, 16, 24, 32, 48, 64…

- Media queries et variables de layout doivent respecter la logique responsive
  sans duplication inutile entre mobile et desktop.

- Accessibilité :
	• Utiliser aria-label sur les icônes interactives
	• Utiliser aria-hidden="true" sur les icônes décoratives
	• Respecter un contraste minimum de 4.5:1
	• Éviter les tailles fixes, privilégier les unités relatives

- 5 règles d’or :
	1) Toujours 3 blocs SCSS : commun / mobile / desktop
	2) Indentation stricte et sélecteurs conservés
	3) BEM lisible, fonctionnel et complet
	4) Variables CSS systématiques
	5) Thèmes globaux et lisibles (jamais redéfinis localement)

========================================================================== */
:root {
  --estate-list-max-width: 1380px;
  --estate-list-side-margin: var(--spacer-side-margin);
  --estate-list-gap-x: 32px;
  --estate-list-gap-y: 48px;
}
@media (max-width: 767px) {
  :root {
    --estate-list-cols: 1;
  }
}
@media (min-width: 768px) {
  :root {
    --estate-list-cols: 3;
  }
}

:root {
  /* Structure générale */
  --grid-cols: 12; /* nombre de colonnes centrales */
  --grid-gap: 0px; /* espace entre les colonnes */
  --grid-col-max-width: 110px; /* largeur max de chaque colonne */
  /* Marges latérales adaptatives */
  --grid-side-min: var(--spacer-side-margin); /* marge minimale (mobile) */
  --grid-side-flex: 1fr; /* marge flexible (desktop) */
  /* ===== CALCUL AUTOMATIQUE ======================================= */
  /* Compensation de largeur totale quand le gap varie */
  --grid-col-comp: calc(
  	var(--grid-col-max-width) +
  	(var(--grid-gap) / var(--grid-cols))
  );
}/*# sourceMappingURL=site.css.map */


/***** LC *****/
.h2.home-intro__text-color {
    color: #FFF;
}

    .h2.home-intro__text-color::before {
        border-bottom: none;
    }

.infinite-scroll > .jscroll-inner {
    display: contents;
}

.map-external__content.map-details {
    text-align: center;
    padding-bottom: var(--spacer-4);
}

svg.estate-facts__item.estate-facts__item--360 {
    fill: var(--color-primary-fixed);
}

.f-progress {
    display: none !important;
}

/* Price tax free */
.elem-estate-h1__price-tax-free {
    font-weight: 400;
    font-size: var(--font-size-lead);
    padding-bottom: var(--spacer-5);
}

.elem-estate-h1--fr .elem-estate-h1__price {
    margin-bottom: var(--spacer-2);
    margin-top: 0px;
}

/* Tel input */
/* Label above the input */
.form-grid__item label {
    display: block;
    margin-bottom: 0.4rem;
}
/* Prevent intl-tel-input to be inline-block */
.iti {
    display: block !important;
    width: 100%;
}
    /* Full width */
    .iti input {
        width: 100% !important;
    }

.elem-estate-h1__category::after {
    content: none;
}

.elem-estate-h1__category + .elem-estate-h1__price::before {
    padding-inline: 0.5em;
    content: "—";
    color: var(--color-primary-fixed);
    font-weight: 400;
}

.card-T11-estate-new__facts svg#Calque_2 {
    color: var(--color-primary-fixed);
}

.elem-estate-h1--fr .elem-estate-h1__price {
    font-size: inherit;
}

.section-T11-contact-form__body {
    padding-top: 20px;
}

/* Custom tables */
table.customTable {
    margin: 25px auto;
    border-collapse: collapse;
    border-style: hidden;
    width: 100% !important;
}

    table.customTable td {
        padding: 1rem;
        border: 1px solid var(--color-primary, #ED7458);
    }


.section-T11-contact-form__col-adress {
    margin-bottom: 30px;
}

@media (max-width: 767px) {
    .section-T11-estate-content__col-cta {
        margin-top: 20px;
    }

        .section-T11-estate-content__col-cta .section-T11-estate-content__sticky .section-T11-estate-content__card a.btn.btn-primary {
            margin-bottom: 20px;
        }
}

@media (max-width: 767px) {
    ul.list-card-blog-article.list-card-blog-article--horizontal {
        padding-inline-start: unset;
    }
}

/* multi agency */
li.list-multi-agency__item {
    list-style-type: none;
}

    li.list-multi-agency__item + li.list-multi-agency__item {
        padding-top: 20px;
    }

li.section-multi-agency__item {
    list-style-type: none;
}

@media (max-width: 767px) {
    ul.section-multi-agency__list {
        padding-left: 20px;
        padding-right: 20px;
    }
}

.footer__adress-item {
    padding-bottom: 10px;
}

.agency-item__header {
    text-align: center;
}

.agency-item__footer {
    margin-top: 50px;
}

.agency-item__footer-title {
    text-align: center;
}