/* --- RESPONSIVE --- */
@media (min-width: 1180px) and (max-width: 1400px) {
  :root {
    --LFwrapper: 1080px;
  }
  html {
    font-size: 14px;
  }
  .bloc9-right-bon {
    right: 25%;
  }
}

@media (min-width: 992px) and (max-width: 1179px) {
  :root {
    --LFwrapper: 900px;
  }
  html {
    font-size: 12px;
  }
  .bloc9-right-bon {
    right: 25%;
  }
}

@media (max-width: 991px){
  .wrapper {
    width: auto;
    padding-left: var(--LF025);
    padding-right: var(--LF025);
  }
  :root {
    --LFcontainer: var(--LF025);
  }

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

  #bloc1 {
    height: 37.6875rem;
    min-height: unset;
  }
  .bloc1-left {
    width: 100%;
  }
  .bloc1-left-texte {
    width: 100%;
    margin-top: 11.4375rem;
    font-size: var(--LF016);
    line-height: 1.6;
  }
  .bloc1-left-texte h1 {
    font-size: var(--LF030);
  }

  .bloc1-right {
    background: transparent;
    position: absolute;
    top: 60%;
    right: 0;
    width: 0;
    padding: 0;
  }
  .bloc1-right-bon {
    font-size: var(--LF026);
    line-height: 1;
  }
  .bloc1-right-bon img {
    margin-top: -10px;
  }
  .bloc1-right > svg,
  .bloc1-right h2,
  .bloc1-right .wpcf7 {
    display: none;
  }

  #bloc2 {
    padding-top: 10rem;
    padding-bottom: var(--LF082);
    font-size: var(--LF014);
  }
  #bloc2 .inner {
    position: unset;
  }
  .bloc2-left {
    order: 2;
    width: 100%;
    margin-top: var(--LF060);
  }
  .bloc2-left-texte {
    margin-bottom: var(--LF038);
  }
  .bloc2-right {
    position: unset;
    order: 1;
    width: 100%;
    padding: var(--LF045) var(--LF030) var(--LF016);
  }
  .bloc2-right h2 {
    margin-top: 0;
  }
  .bloc2-right-photo {
    top: -4.0625rem;
    right: var(--LF031);
    width: 15.6875rem;
    line-height: 1.2;
  }
  .bloc2-right-photo img {
    width: 9rem;
    height: auto;
    margin-bottom: 0;
  }
  .bloc2-right > svg {
    display: none;
  }
  .bloc2-tot {
    order: 3;
    width: 100%;
    margin-top: var(--LF038);
  }

  #bloc3 {
    font-size: var(--LF014);
  }
  #bloc3 h2 {
    margin-bottom: var(--LF060);
  }
  #dotLottie-canvas {
    width: 14.3125rem;
    height: 20.375rem;
  }

  #bloc4 .inner {
    gap: var(--LF040);
  }
  .bloc4-left {
    display: none;
  }
  .bloc4-center {
    width: 100%;
  }
  .bloc4-right {
    width: 100%;
    flex-direction: row;
    justify-content: space-between;
  }
  .bloc4-cta {
    margin-top: var(--LF020);
  }

  #bloc5 {
    margin-top: var(--LF085);
    margin-bottom: var(--LF060);
  }
  .bloc5-reassurances {
    margin-top: var(--LF030);
    gap: var(--LF060);
  }
  .bloc5-reassurance {
    width: 100%;
  }
  .reassurance-titre {
    margin-top: var(--LF020);
    font-size: var(--LF020);
  }
  .reassurance-texte {
    margin-top: var(--LF010);
    font-size: var(--LF014);
    line-height: 1.6;
  }
  .bloc5-photo {
    gap: var(--LF036);
    margin-top: var(--LF060);
  }
  .bloc5-photo-left {
    display: none;
  }
  .bloc5-photo-center {
    width: 65%;
  }
  .bloc5-photo-right {
    width: 100%;
    justify-content: flex-end;
    padding-bottom: 0;
  }
  .bloc5-photo-right-legende svg {
    display: none;
  }
  .bloc5-photo-right-legende p:nth-child(2) {
    font-size: var(--LF026);
  }
  .bloc5-texte {
    margin-top: var(--LF060);
    font-size: var(--LF014);
    line-height: 1.6;
  }

  #bloc6 {
    padding-top: 7.5rem;
    padding-bottom: 7.5rem;
  }
  #bloc6-etapes {
    margin-top: var(--LF030);
    gap: 0;
  }
  .bloc6-etape {
    position: relative;
    width: 100%;
    padding-top: var(--LF094);
  }
  #bloc6-etapes-ctrls {
    margin-top: var(--LF100);
  }

  #bloc7 {
    position: relative;
    padding-top: var(--LF100);
    padding-bottom: var(--LF100);
  }

  .bloc8-bandeau-texte {
    width: 100%;
    margin-top: var(--LF060);
    font-size: var(--LF020);
  }
  .bloc8-bandeau-texte div {
    font-size: var(--LF074);
  }
  .bloc8-bandeau-image {
    width: 100%;
  }

  .bloc8-bandeau:nth-child(2) {
    margin-top: 8.1875rem;
  }
  .bloc8-bandeau:nth-child(2) .bloc8-bandeau-texte,
  .imgabs-1  {
    display: none;
  }
  .bloc8-bandeau:nth-child(2) .bloc8-bandeau-image {
    text-align: right;
  }
  .bloc8-bandeau:nth-child(2) .bloc8-bandeau-image img {
    width: 80%;
    margin-right: -1.5625rem;
  }
  .imgabs-2 {
    top: -4rem;
    left: -1.5625rem;
    width: 24%;
  }

  .bloc8-bandeau:nth-child(3) {
    align-items: center;
    gap: 0;
    margin-top: 0;
  }
  .bloc8-bandeau:nth-child(3) .bloc8-bandeau-texte {
    order: 1;
    width: 100%;
    padding-top: 0;
  }
  .bloc8-bandeau:nth-child(3) .bloc8-bandeau-image {
    width: 100%;
    order: 2;
    margin-top: var(--LF060);
  }
  .bloc8-bandeau:nth-child(4) {
    margin-top: 0;
    padding-bottom: 36.125rem;
  }
  .imgabs-3 {
    bottom: 0;
    left: unset;
    right: -1.5625rem;
    width: calc(100% + var(--LF050));
    height: 32.375rem;
    margin-top: var(--LF060);
    object-fit: cover;
    object-position: 45% top;
  }
  

  #bloc9 {
    padding-top: 14.325rem;
    padding-bottom: var(--LF100);
    text-align: center;
  }
  .bloc9-left {
    position: relative;
    width: 100%;
    margin-top: var(--LF020);
  }
  .bloc9-right-bg {
    position: relative;
    width: 100%;
    top: unset;
    right: unset;
    transform: none;
  }
  .bloc9-right-bon {
    right: 5%;
  }
  .bloc9-surtitre {
    font-size: var(--LF014);
    letter-spacing: var(--LF006);
  }
  #bloc9 h2 {
    margin-top: var(--LF010);
    font-size: var(--LF026);
  }
  .bloc9-texte {
    width: 100%;
    margin-top: var(--LF030);
    font-size: var(--LF014);
  }

  #bloc10 {
    position: relative;
    margin-top: 0;
    margin-bottom: var(--LF080);
    padding-top: 10rem;
  }
  .bloc10-left {
    width: 100%;
    position: absolute;
    top: -4.0625rem;
    right: var(--LF031);
    width: 15.6875rem;
    line-height: 1.2;
  }
  .bloc10-left-photo img {
    width: 9rem;
    height: auto;
    margin-bottom: 0;
  }
  .bloc10-center {
    width: 100%;
    padding: var(--LF045) var(--LF030) var(--LF016);
    background: rgba(255, 255, 255);
  }
  .bloc10-center h2 {
    margin-top: 0;
    margin-bottom: 0;
  }
  .bloc10-center > svg {
    display: none;
  }
  .bloc10-right {
    display: none;
  }

  #pieddepage {
    padding-top: var(--LF060);
    padding-bottom: var(--LF035);
  }
  .pieddepage-logo {
    margin-bottom: var(--LF050);
  }
  .pieddepage-logo svg {
    display: block;
  }
  .pieddepage-texte {
    width: 100%;
    font-size: var(--LF015);
  }

  .pieddepage-contact {
    width: 50%;
    margin-top: var(--LF060);
  }
  .pieddepage-horaires {
    width: 40%;
    margin-top: var(--LF060);
  }
  .pieddepage-liens {
    width: 100%;
    margin-top: var(--LF030);
  }
  .pieddepage-reseaux {
    margin-top: var(--LF060);
  }
}