@font-face {
  font-family: "urbanist";
  src: url(fonts/4c1ae1074c39cca3b3fd7a788b5afd96.ttf) format("truetype");
  font-weight: 500;
}
@font-face {
  font-family: "urbanist";
  src: url(fonts/9ffbd4b23b829ddd499aaf5eb925a86c.ttf) format("truetype");
  font-weight: 700;
}
@font-face {
  font-family: "urbanist";
  src: url(fonts/ae731014b8aa4267df78b8e854d006ef.ttf) format("truetype");
  font-weight: 800;
}
@font-face {
  font-family: "urbanist";
  src: url(fonts/1ffe51e22e7841c65481a727515e2198.ttf) format("truetype");
  font-weight: 900;
}
@keyframes pulsar {
  0% {
    transform: translate(-50%, -50%) scale(0.95);
    box-shadow: 0 0 0 0 rgba(1, 164, 233, 0.7);
  }
  70% {
    transform: translate(-50%, -50%) scale(1);
    box-shadow: 0 0 0 10px rgba(1, 164, 233, 0);
  }
  100% {
    transform: translate(-50%, -50%) scale(0.95);
    box-shadow: 0 0 0 0 rgba(1, 164, 233, 0);
  }
}
@keyframes scale-in-center {
  0% {
    transform: scale(0);
    opacity: 1;
  }
  100% {
    transform: scale(1);
    opacity: 1;
  }
}
@keyframes zoom-out {
  from {
    transform: scale(1);
  }
  to {
    transform: scale(1.1);
  }
}
.glide {
  position: relative;
  width: 100%;
  box-sizing: border-box;
}
.glide * {
  box-sizing: inherit;
}
.glide__track {
  overflow: hidden;
}
.glide__slides {
  position: relative;
  width: 100%;
  list-style: none;
  backface-visibility: hidden;
  transform-style: preserve-3d;
  touch-action: pan-Y;
  overflow: hidden;
  padding: 0;
  white-space: nowrap;
  display: flex;
  flex-wrap: nowrap;
  will-change: transform;
}
.glide__slides--dragging {
  user-select: none;
}
.glide__slide {
  width: 100%;
  height: 100%;
  flex-shrink: 0;
  white-space: normal;
  user-select: none;
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: transparent;
}
.glide__slide a {
  user-select: none;
  -webkit-user-drag: none;
  -moz-user-select: none;
  -ms-user-select: none;
}
.glide__arrows {
  -webkit-touch-callout: none;
  user-select: none;
}
.glide__bullets {
  -webkit-touch-callout: none;
  user-select: none;
}
.glide--rtl {
  direction: rtl;
}

.glide__arrow {
  position: absolute;
  display: block;
  top: 50%;
  z-index: 2;
  color: white;
  text-transform: uppercase;
  padding: 9px 12px;
  background-color: transparent;
  border: 2px solid rgba(255, 255, 255, 0.5);
  border-radius: 4px;
  box-shadow: 0 0.25em 0.5em 0 rgba(0, 0, 0, 0.1);
  text-shadow: 0 0.25em 0.5em rgba(0, 0, 0, 0.1);
  opacity: 1;
  cursor: pointer;
  transition: opacity 150ms ease, border 300ms ease-in-out;
  transform: translateY(-50%);
  line-height: 1;
}
.glide__arrow:focus {
  outline: none;
}
.glide__arrow:hover {
  border-color: white;
}
.glide__arrow--left {
  left: 2em;
}
.glide__arrow--right {
  right: 2em;
}
.glide__arrow--disabled {
  opacity: 0.33;
}
.glide__bullets {
  position: absolute;
  z-index: 2;
  bottom: 2em;
  left: 50%;
  display: inline-flex;
  list-style: none;
  transform: translateX(-50%);
}
.glide__bullet {
  background-color: rgba(255, 255, 255, 0.5);
  width: 9px;
  height: 9px;
  padding: 0;
  border-radius: 50%;
  border: 2px solid transparent;
  transition: all 300ms ease-in-out;
  cursor: pointer;
  line-height: 0;
  box-shadow: 0 0.25em 0.5em 0 rgba(0, 0, 0, 0.1);
  margin: 0 0.25em;
}
.glide__bullet:focus {
  outline: none;
}
.glide__bullet:hover, .glide__bullet:focus {
  border: 2px solid white;
  background-color: rgba(255, 255, 255, 0.5);
}
.glide__bullet--active {
  background-color: white;
}
.glide--swipeable {
  cursor: grab;
  cursor: -moz-grab;
  cursor: -webkit-grab;
}
.glide--dragging {
  cursor: grabbing;
  cursor: -moz-grabbing;
  cursor: -webkit-grabbing;
}

.glide__arrows {
  display: none;
}
@media screen and (min-width: 769px) {
  .glide__arrows {
    display: block;
  }
}
.glide__arrow {
  border: none;
  box-shadow: none;
}
.glide__arrow svg path {
  stroke: var(--dark-color);
}
.glide__arrow.black svg path {
  stroke: var(--color-dark);
}
.glide__arrow--left-icon, .glide__arrow--right-icon {
  display: block;
}
.glide__arrow--left-icon svg, .glide__arrow--right-icon svg {
  width: 2.5rem;
  height: auto;
  transition: width ease-in-out 0.5s;
}
.glide__arrow--left-icon:hover svg, .glide__arrow--right-icon:hover svg {
  width: 3rem;
}
.glide__arrow--left-icon {
  transform: rotate(90deg);
}
.glide__arrow--right-icon {
  transform: rotate(-90deg);
}

.slider-header-detail-controls {
  position: absolute;
  right: 1rem;
  bottom: 1rem;
  z-index: 1;
  display: flex;
  gap: 1rem;
}
.slider-header-detail-control {
  background-color: var(--color-secondary);
  color: white;
  border: none;
  border-radius: var(--radius-small);
  padding: 0.5rem 1rem;
  font-size: 1.5rem;
  font-weight: bold;
  cursor: pointer;
}
.slider-header-detail.disabled .slider-header-slide {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.slider-header-detail.disabled .slider-header-slide-wrapper {
  height: 50rem;
}
.slider-header-detail.disabled .glide__slides {
  display: flex;
  transform: none !important;
  width: 100% !important;
  max-width: 100%;
  margin: auto;
  gap: 1rem;
}
.slider-header-detail.disabled .glide__slide {
  width: auto !important;
  flex: 1 0 0;
}
.slider-header-detail-slide-wrapper {
  display: flex;
  justify-content: center;
}
.slider-header-detail .glide__arrows {
  display: block;
}
.slider-header-detail .glide__arrow--right {
  right: 0;
}
.slider-header-detail .glide__arrow--left {
  left: 0;
}

.title-section {
  max-width: 80rem;
  text-align: center;
  margin: 2.6rem auto;
}
.title-highlighted {
  color: var(--color-secondary);
}

.highlighted-text {
  --background-color:var(--dark-color);
  --font-color: var(--color-light);
  --cta-background-color: var(--color-light);
  --cta-font-color: var(--dark-color);
  --cta-hover-background-color: var(--color-light);
  --cta-hover-font-color: var(--dark-color);
  border-radius: var(--radius-medium);
  width: var(--standard-width);
  max-width: calc(100% - 2rem);
  margin: auto;
  background-color: var(--background-color);
  color: var(--font-color);
  padding: 5rem 3rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 1.5rem;
}
.highlighted-text.gray {
  --background-color:var(--dark-color);
  --font-color: var(--color-light);
  --cta-background-color: var(--color-light);
  --cta-hover-background-color: var(--color-light);
  --cta-hover-font-color: var(--dark-color);
}
.highlighted-text-title {
  font-size: 2.4rem;
  line-height: 1;
  font-weight: 900;
  text-align: center;
}
.highlighted-text-title:after {
  content: "";
  border-bottom: 1px solid var(--font-color);
  width: 50%;
  height: 0.1rem;
  display: block;
  margin: 1.5rem auto 0.5rem;
}
.highlighted-text-title p {
  line-height: 1.5;
  margin: 0;
}
.highlighted-text-content {
  font-size: 1.7rem;
  line-height: 1.5;
  text-align: center;
}
.highlighted-text-cta {
  color: var(--dark-color);
  background-color: var(--color-light);
  transition: all ease-in-out 0.5s;
}
.highlighted-text-cta:hover {
  color: var(--dark-color);
  background-color: var(--color-light);
}

.reinsurances {
  width: 106rem;
  max-width: calc(100% - 2rem);
  margin: auto;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
@media screen and (min-width: 969px) {
  .reinsurances {
    flex-direction: row;
    justify-content: space-between;
    gap: 4.7rem;
  }
}

.reinsurance {
  --background-color: var(--color-light);
  --font-color: var(--color-dark);
  text-decoration: none;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 1rem;
  padding: 2rem;
  background-color: var(--background-color);
  color: var(--font-color);
}
@media screen and (min-width: 969px) {
  .reinsurance {
    gap: 3rem;
    padding: 5rem 2rem;
  }
}
.reinsurance-picto {
  height: 10rem;
}
.reinsurance-picto svg path {
  stroke: var(--font-color);
}
.reinsurance-title {
  font-size: 1.7rem;
  line-height: 1.2;
  font-weight: 900;
  text-transform: uppercase;
  color: var(--enhance-color);
}
@media screen and (min-width: 969px) {
  .reinsurance-title {
    font-size: 2rem;
  }
}
.reinsurance-text {
  display: none;
}
@media screen and (min-width: 969px) {
  .reinsurance-text {
    display: block;
    text-align: center;
    font-size: 1.7rem;
    line-height: 1.4;
  }
}
.reinsurance-cta {
  text-transform: uppercase;
  font-weight: bold;
}
.reinsurance-cta-wrapper {
  display: none;
}
@media screen and (min-width: 969px) {
  .reinsurance-cta-wrapper {
    display: flex;
  }
}

.construction .breadcrumb {
  color: var(--dark-color);
}
.construction .breadcrumb-wrapper {
  top: 0;
  background-color: var(--input-border-color);
}
.construction .breadcrumb-wrapper a {
  color: var(--dark-color);
  opacity: 0.5;
}
.construction .breadcrumb_last {
  color: var(--dark-color);
}

.autocomplete {
  min-width: 100%;
}
.autocomplete-results-wrapper {
  min-width: 100%;
}

.single .glide__arrow--right {
  transform: rotate(-90deg);
}
.single .glide__arrow--left {
  transform: rotate(90deg);
}

.glide__bullets {
  bottom: 0em;
}
.glide__bullet {
  background-color: #32333554;
  width: 15px;
  height: 15px;
}
.glide__bullet--active {
  background-color: var(--dark-color);
}

.actuality-list .actuality-thumb .thumb-picture {
  height: 313px;
}
.actuality-list .actuality-thumb-link {
  display: flex;
  align-items: center;
}

.advice-list .advice-thumb .thumb-picture {
  height: 313px;
}
.advice-list .advice-thumb-link {
  display: flex;
  align-items: center;
}

.realizations-list .realization-thumb .thumb-picture {
  height: 313px;
}

.main {
  padding: 0;
}

body.full-map {
  max-height: fit-content;
}

html {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

*, *:before, *:after {
  box-sizing: border-box;
}

h1 {
  font-size: 4.8rem;
  text-align: center;
  font-weight: 900;
}

h2 {
  font-weight: 900;
}

.breadcrumb {
  padding: 0 3rem;
}
.breadcrumb-wrapper {
  width: 100%;
  margin: 0 0 1rem;
}

body.full-map [data-trigger=map] {
  top: 6rem;
  background: white;
}

.flexible-image-single, .flexible-block img, .detail-content img {
  border-radius: var(--radius-medium);
}

.calendar-time:hover, .calendar-time.active {
  background-color: var(--enhance-color);
}

.model-thumb, .thumb, .program-thumb {
  width: auto;
}

.free-study-cta:hover {
  background-color: var(--enhance-color);
}

@media screen and (max-width: 768px) {
  .masonry-item {
    width: 100%;
  }
}

[class^=cta-],
[class*=" cta-"] {
  border: none;
  cursor: pointer;
  padding: 0.5rem 1.5rem;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1.6rem;
  transition: background-color ease-in-out 0.5s;
  border-radius: var(--radius-small);
  line-height: 2;
  font-weight: 900;
  font-family: var(--font-urbanist);
  text-transform: uppercase;
}
[class^=cta-][href],
[class*=" cta-"][href] {
  text-decoration: none;
}

.cta-with-icon {
  gap: 1rem;
  padding: 0.5rem 1rem;
}
.cta-with-icon .icon {
  display: flex;
}
.cta-with-icon .label {
  display: none;
}
@media screen and (min-width: 969px) {
  .cta-with-icon .label {
    display: flex;
    margin-block-end: -0.3rem;
  }
}
.cta-white {
  background-color: var(--color-light);
  color: var(--dark-color);
}
.cta-white:hover {
  background-color: var(--enhance-color);
  color: var(--color-light);
}
.cta-pink {
  background-color: var(--enhance-color);
  color: var(--color-light);
}
.cta-pink .label {
  color: var(--color-light);
  text-decoration: none;
}
.cta-pink:hover {
  background: var(--dark-color);
  color: var(--color-light);
}
.cta-dark {
  background-color: var(--dark-color);
  color: var(--color-light);
}
.cta-dark:hover {
  background-color: var(--enhance-color);
  color: var(--color-light);
}

.header {
  width: 100%;
  padding: 1rem;
  height: var(--header-height);
  margin: auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  position: sticky;
  top: 0;
  z-index: 999;
  background-color: var(--color-light);
  box-shadow: 0 1rem 2rem rgba(0, 0, 0, 0.1);
}
@media screen and (min-width: 1109px) {
  .header {
    padding: 1rem 3rem;
  }
}
@media screen and (min-width: 769px) {
  .header {
    max-width: 100%;
  }
}
.header-top {
  display: none;
}
@media screen and (min-width: 969px) {
  .header-top {
    position: absolute;
    inset: 0 0 auto;
    width: 100%;
    margin: auto;
    padding: 0.5rem 1rem;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 1rem;
    z-index: 1;
  }
}
@media screen and (min-width: 1109px) {
  .header-top {
    padding: 0.5rem 10rem;
  }
}
.header-top-item {
  color: var(--color-dark);
  text-decoration: none;
  font-size: 1.2rem;
  text-transform: uppercase;
}
.header-top-item:hover {
  color: var(--color-secondary);
  text-decoration: none;
}
.header-logo {
  position: absolute;
  display: flex;
  justify-content: center;
  align-items: center;
  inset: 0;
}
.header-logo svg {
  max-width: 7rem;
}
@media screen and (min-width: 969px) {
  .header-logo svg {
    max-width: 10.2rem;
  }
}
@media screen and (max-width: 488px) {
  .header-logo a {
    width: 50%;
  }
}
.header-logo a .logo-header {
  width: 100%;
}
.header-menu {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.5rem;
  background: transparent;
  border: none;
  padding: 0;
  cursor: pointer;
  position: relative;
  z-index: 1;
}
.header-menu-label {
  font-family: var(--font-default);
  text-transform: uppercase;
  font-size: 1.6rem;
  color: var(--dark-color);
}
.header-cta:before {
  content: none;
}
@media screen and (min-width: 769px) {
  .header-cta {
    height: auto;
    width: auto;
    margin: 0;
  }
}
.header-ctas {
  display: flex;
  align-content: center;
  gap: 1rem;
  position: relative;
  z-index: 1;
}
.header-ctas [class^=cta-],
.header-ctas [class*=" cta-"] {
  font-size: 1.6rem;
  font-weight: 600;
}

.burger-menu {
  font-size: 1.6rem;
  text-transform: uppercase;
  margin: 0;
  padding: 0;
  list-style: none;
}
.burger-menu-wrapper {
  position: fixed;
  left: -100vw;
  top: 0;
  bottom: 0;
  background-color: var(--color-light);
  z-index: 999;
  min-width: 20vw;
  max-width: 100vw;
  padding: 3rem;
  filter: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.25));
  transition: left 1s ease-in-out;
}
.burger-menu-wrapper.open {
  left: 0;
}
@media screen and (max-width: 969px) {
  .burger-menu-wrapper {
    width: 100%;
  }
}
.burger-menu-title {
  margin-bottom: 5rem;
  font-size: 1.6rem;
  text-transform: uppercase;
  display: flex;
  align-items: center;
  gap: 1.2rem;
  cursor: pointer;
  transition: color ease-in-out;
}
.burger-menu-title-icon {
  display: flex;
  justify-content: center;
  align-items: center;
}
.burger-menu-title-label {
  display: flex;
  margin-block-end: -0.4rem;
}
.burger-menu-title:hover {
  color: black;
  font-weight: bold;
}
.burger-menu-item {
  padding: 1.2rem 0;
  cursor: pointer;
  display: flex;
  flex-direction: column;
}
.burger-menu-item.is-active, .burger-menu-item:hover {
  color: black;
  font-weight: 900;
}
.burger-menu-item:not(:last-child) {
  border-bottom: 0.5px solid rgba(0, 0, 0, 0.24);
}
.burger-menu-item-link {
  color: var(--dark-color);
  text-decoration: none;
}
.burger-menu-item-link:hover {
  text-decoration: none;
  color: black;
}
.burger-menu-item-link-arrow {
  float: right;
  transform: rotate(-90deg);
  transition: transform ease-in-out 0.5s;
  cursor: pointer;
  margin-left: 1rem;
}
.burger-menu-item-link-arrow.open {
  transform: rotate(0deg);
}
.burger-menu-item-link-arrow:hover svg path {
  stroke: var(--color-primary);
  transition: stroke ease-in-out 0.5s;
}
.burger-menu-item.parent:hover .burger-menu-item-link-arrow {
  transform: rotate(0deg);
}
.burger-menu-item.parent:hover .burger-menu-item-children-wrapper {
  max-height: 1000px;
  transition: max-height 1s ease-in-out;
}
.burger-menu-item-children-link {
  line-height: 1.8;
  text-transform: none;
  color: var(--dark-color);
  text-decoration: none;
  display: flex;
  font-weight: normal;
  transition: color ease-in-out 0.2s;
}
.burger-menu-item-children-link:hover {
  color: var(--enhance-color);
  font-weight: 700;
}
.burger-menu-item-children-link:first-child {
  margin-top: 0.5rem;
}
.burger-menu-item-children-wrapper {
  list-style: none;
  margin: 0;
  padding: 0;
  overflow: hidden;
  max-height: 0;
  transition: max-height 0.5s cubic-bezier(0, 1, 0, 1);
}
.burger-menu-item-children-wrapper.open {
  max-height: 1000px;
  transition: max-height 1s ease-in-out;
}

.footer-main {
  justify-content: space-between;
  padding: 0;
  align-items: center;
}
.footer-main-section-wrapper {
  gap: 1rem;
  display: flex;
  flex-direction: column;
}
.footer-main-section-wrapper .cta {
  max-width: 20rem;
}
.footer-main-section-wrapper .cta:hover {
  background-color: var(--color-light);
  color: var(--dark-color);
}
.footer-main-section:not(.social) p, .footer-main-section:not(.social) a {
  color: var(--color-light);
}
@media screen and (min-width: 768px) {
  .footer-main-section:not(.social) p, .footer-main-section:not(.social) a {
    font-size: 1.7rem;
  }
}
.footer-main-section:not(.social) p strong, .footer-main-section:not(.social) a strong {
  color: var(--enhance-color);
}
.footer-main-section.social {
  gap: 2rem;
}
.footer-main-section .social-icon {
  color: var(--dark-color) !important;
  background: var(--color-light);
  border-radius: 100%;
  width: 35px;
  height: 35px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0;
}
.footer-main-section .social-icon:hover {
  background: var(--enhance-color);
  color: var(--color-light);
}
.footer-main-section-title {
  font-size: 1.7rem;
  margin-bottom: 1rem;
}
.footer-main .logo-footer {
  width: 20%;
  margin: 0 4rem;
}
@media screen and (max-width: 1545px) {
  .footer-main .logo-footer {
    margin: 0 0 0 4rem;
  }
}
.footer-sub {
  justify-content: space-between;
  padding: 1rem;
  width: 100%;
}
.footer-sub-item {
  font-style: italic;
}
.footer-sub-item:not(:first-child):before {
  content: none;
}
.footer-sub-item .PrivacyPolicy, .footer-sub-item .Cookie {
  color: var(--color-light);
  font-style: normal;
  margin: 0.5rem;
}
.footer-top {
  flex-direction: column;
  justify-content: center;
  flex-wrap: nowrap;
}
.footer-top-title {
  color: var(--color-light);
  font-size: 2.4rem;
  text-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
  text-align: center;
  padding: 0 2rem;
}
@media screen and (min-width: 768px) {
  .footer-top-title {
    font-size: 4rem;
  }
}
@media screen and (min-width: 768px) {
  .footer-top-item {
    flex-basis: 19%;
  }
}
@media screen and (max-width: 767px) {
  .footer-top-item {
    flex-basis: 15%;
  }
}
.footer-top-item-link:after {
  content: none;
}
.footer-top-picture-wrapper:after {
  background-color: rgba(0, 0, 0, 0.25);
}

.footer-main.mobile .footer-main-row {
  display: flex;
  align-items: center;
  width: 100%;
  justify-content: space-between;
}
@media screen and (max-width: 969px) {
  .footer-main.mobile .footer-main-row {
    justify-content: space-evenly;
  }
}
@media screen and (max-width: 600px) {
  .footer-main.mobile .footer-main-row {
    flex-direction: column;
  }
}
@media screen and (max-width: 969px) {
  .footer-main.mobile .footer-main-row .logo-footer {
    width: 35%;
  }
}
@media screen and (max-width: 600px) {
  .footer-main.mobile .footer-main-row .logo-footer {
    margin: 0;
  }
}
.footer-main.mobile .footer-main-section {
  width: calc(100% - 0rem);
  max-width: 43rem;
}
@media screen and (min-width: 601px) {
  .footer-main.mobile .footer-main-section {
    align-items: flex-start;
  }
}
@media screen and (max-width: 600px) {
  .footer-main.mobile .footer-main-section {
    margin: 0 auto;
    text-align: center;
    align-content: center;
    width: 100%;
  }
}
.footer-main.mobile .footer-main-section-wrapper.ctas {
  flex-direction: row;
  margin: 0 auto;
}
.footer-main.mobile .footer-main-section.social {
  justify-content: flex-start;
}
@media screen and (max-width: 600px) {
  .footer-main.mobile .footer-main-section.social {
    justify-content: center;
  }
}

.home-slider {
  position: relative;
}
.home-slider-slide {
  position: relative;
}
.home-slider-slide-infos {
  position: absolute;
  left: 50%;
  bottom: 1rem;
  width: 70rem;
  max-width: calc(100% - 2rem);
  transform: translateX(-50%);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
}
@media screen and (min-width: 969px) {
  .home-slider-slide-infos {
    border-bottom: 1px solid var(--color-light);
    padding-bottom: 2.3rem;
    flex-direction: row;
    gap: 2rem;
    bottom: 7.5rem;
  }
}
@media screen and (max-width: 968px) {
  .home-slider-slide-infos .cta-white {
    margin: 0;
  }
}
.home-slider-slide-picture {
  width: 100vw;
  height: calc(100vh - var(--header-height));
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}
@media screen and (max-width: 969px) {
  .home-slider-slide-picture {
    height: calc(100vh - 40rem);
  }
}
.home-slider-slide-picture:before {
  display: none;
  content: "";
  background: rgba(0, 0, 0, 0.25);
  position: absolute;
  width: 100%;
  height: 100%;
}
.home-slider-slide-title {
  display: flex;
  flex-direction: column;
  color: var(--color-light);
  font-size: 2.4rem;
  line-height: 1.5;
  font-weight: 900;
  text-align: center;
  text-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
}
@media screen and (min-width: 969px) {
  .home-slider-slide-title {
    font-size: 2.4rem;
    text-align: left;
    line-height: 0.5;
  }
}
.home-slider-slide-title p:first-child {
  margin: 0;
}
@media screen and (min-width: 969px) {
  .home-slider-slide-title p:first-child {
    font-size: 4.8rem;
    margin: 1rem 0;
  }
}
.home-slider-slide-title p {
  margin: 0;
}
@media screen and (min-width: 969px) {
  .home-slider-slide-title p {
    margin: 2.5rem 0;
  }
}
.home-slider-slide-description {
  font-size: 1.8rem;
  font-weight: normal;
}
@media screen and (min-width: 969px) {
  .home-slider-slide-description {
    font-size: 1.8rem;
  }
}
.home-slider .glide__slides {
  margin: 0;
}
.home-slider .glide__arrow {
  background-color: #ffffff91;
  width: 40px;
  display: flex;
}
@media screen and (min-width: 769px) {
  .home-slider .glide__arrow svg {
    width: 2.5rem;
  }
}
.home-search-engine {
  position: relative;
  max-width: calc(100% - 2rem);
  width: var(--standard-width);
  min-height: 9.3rem;
  margin: auto;
  background-color: var(--color-light);
  display: flex;
  justify-content: space-around;
  align-items: center;
  flex-wrap: wrap;
  gap: 1rem;
  padding: 2rem;
}
@media screen and (min-width: 969px) {
  .home-search-engine {
    box-shadow: 0px 8px 24px -4px rgba(28, 50, 79, 0.19), 0px 2px 6px -1px rgba(28, 55, 90, 0.12);
    border-radius: var(--radius-medium);
    margin: -5rem auto 0;
  }
}
.home-search-engine-field {
  display: flex;
  flex-direction: column;
  flex: 1 0 auto;
  gap: 1rem;
}
.home-search-engine-field-label {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.2;
  color: var(--color-dark);
  text-transform: uppercase;
}
.home-search-engine-field.offer-type, .home-search-engine-field.location, .home-search-engine-field.submit-wrapper {
  width: 100%;
  position: relative;
}
@media screen and (min-width: 969px) {
  .home-search-engine-field.offer-type, .home-search-engine-field.location, .home-search-engine-field.submit-wrapper {
    width: auto;
  }
}
.home-search-engine-field-input {
  border: 1px solid var(--input-border-color);
  border-radius: var(--radius-small);
  width: auto;
  padding: 0.8rem 1.3rem;
  height: 4rem;
  background-color: var(--color-light);
}
.home-search-engine-field-input.submit {
  border: 1px solid transparent;
  height: 4rem;
  background: var(--enhance-color);
}
.home-reinsurance-container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  max-width: 104rem;
  width: calc(100% - 2rem);
  margin: 10rem auto;
  text-align: center;
  gap: 3rem;
}
.home-reinsurance-container-item p {
  font-size: 1.8rem;
  font-weight: 900;
  text-transform: uppercase;
}
@media screen and (max-width: 969px) {
  .home-reinsurance-container {
    display: none;
  }
}
.home-model-catalog {
  width: var(--standard-width);
  max-width: calc(100% - 2rem);
  margin: 6rem auto 3rem;
}
.home-model-catalog .highlighted {
  color: var(--enhance-color);
}
.home-model-catalog-description {
  max-width: 80rem;
  margin: auto auto 2.6rem;
  text-align: center;
  color: var(--grey-color);
  line-height: 2.3rem;
}
.home-model-catalog-items {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 1.3rem;
  margin: 2rem auto;
}
@media screen and (min-width: 969px) {
  .home-model-catalog-items {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 6.5rem;
    align-items: center;
  }
}
.home-model-catalog-item {
  position: relative;
  width: 100%;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
@media screen and (min-width: 969px) {
  .home-model-catalog-item {
    max-width: calc(33% - 4rem);
  }
}
.home-model-catalog-item-picture {
  border-radius: var(--radius-medium);
  width: 100%;
  aspect-ratio: 4/3;
  height: 100%;
  object-fit: cover;
}
@media screen and (min-width: 969px) {
  .home-model-catalog-item-picture {
    aspect-ratio: 3/4;
  }
}
.home-model-catalog-item-cta {
  position: absolute;
  inset: auto 0 2rem;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 2rem;
}
.home-model-catalog-item-cta .cta-pink {
  transform: translateY(0);
}
.home-model-catalog-item-cta .cta-pink:hover {
  background: var(--color-light);
  color: var(--dark-color);
  transform: translateY(-1rem);
  transition: 0.25s ease-in-out;
  box-shadow: 0 0.5rem 1rem 0rem #0000004d;
}
.home-realizations {
  width: var(--standard-width);
  max-width: calc(100% - 2rem);
  margin: 5rem auto;
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
@media screen and (max-width: 969px) {
  .home-realizations {
    gap: 0;
    margin-top: 9rem;
  }
}
.home-realizations::before {
  content: "";
  width: 50%;
  height: 0.1rem;
  background-color: var(--color-border);
  margin: auto;
}
.home-realizations-description {
  max-width: 80rem;
  margin: auto auto 2.6rem;
  text-align: center;
  color: var(--color-dark);
}
.home-realizations-items {
  max-width: 100%;
}
@media screen and (min-width: 969px) {
  .home-realizations-items {
    display: flex;
    gap: 2rem;
  }
}
.home-realizations-infos .highlighted-text {
  background: none;
}
@media screen and (min-width: 969px) {
  .home-realizations-infos .highlighted-text {
    height: 100%;
  }
}
@media screen and (min-width: 969px) {
  .home-realizations-infos .highlighted-text.for-mobile {
    display: none;
  }
}
.home-realizations-infos .highlighted-text-wrapper {
  margin: auto -1rem;
}
@media screen and (min-width: 969px) {
  .home-realizations-infos .highlighted-text-wrapper {
    margin: 0 auto;
    height: 100%;
  }
}
.home-realizations-infos .highlighted-text-title {
  color: var(--dark-color);
  margin: 0;
}
.home-realizations-infos .highlighted-text-title p {
  margin: 0;
}
.home-realizations-infos .highlighted-text-content {
  color: var(--grey-color);
}
.home-realizations-infos .highlighted-text-content p {
  margin: 0;
}
.home-realizations-slider {
  width: 106rem;
  max-width: calc(100% - 2rem);
  margin: 0 auto;
}
@media screen and (min-width: 969px) {
  .home-realizations-slider {
    display: none;
  }
}
.home-realizations-slider-slide img {
  width: 100%;
  height: 330px;
  object-fit: cover;
  border-radius: var(--radius-medium);
}
.home-realizations-slider .glide__arrows {
  display: block;
}
.home-realizations-slider .glide__bullets {
  padding: 2rem 0;
  position: relative;
}
.home-realizations-masonry {
  display: none;
}
@media screen and (min-width: 969px) {
  .home-realizations-masonry {
    display: block;
    column-count: 3;
    width: 160rem;
    max-width: calc(100% - 2rem);
    margin: auto;
  }
  .home-realizations-masonry .home-realizations-item {
    display: inline-block;
    width: 100%;
    margin-bottom: 2rem;
  }
  .home-realizations-masonry .home-realizations-item img {
    width: 336px;
    height: 283px;
    object-fit: cover;
    border-radius: var(--radius-medium);
  }
  .home-realizations-masonry .home-realizations-infos {
    display: inline-block;
    width: 100%;
    margin-bottom: 2rem;
  }
}
.home-realizations .highlighted-text-cta {
  width: max-content;
  margin: 0 auto;
}
.home-free-study-block {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 3rem 7rem;
  position: relative;
}
@media screen and (min-width: 969px) {
  .home-free-study-block {
    max-width: var(--standard-width);
    align-items: flex-start;
  }
}
.home-free-study-block-picture {
  object-fit: cover;
  width: 24%;
  margin-right: 12rem;
}
@media screen and (max-width: 1150px) {
  .home-free-study-block-picture {
    width: 32%;
    margin-right: 8rem;
  }
}
@media screen and (max-width: 968px) {
  .home-free-study-block-picture {
    display: none;
  }
}
.home-free-study-block-wrapper {
  background-color: var(--dark-color);
  display: flex;
  flex-direction: row;
  min-height: 25.8rem;
  position: relative;
  justify-content: center;
  align-items: center;
}
@media screen and (min-width: 769px) {
  .home-free-study-block-wrapper {
    min-height: 22.2rem;
  }
}
.home-free-study-block-title {
  color: var(--color-light);
  font-size: 2.4rem;
  text-align: left;
  position: relative;
}
@media screen and (max-width: 969px) {
  .home-free-study-block-title {
    text-align: center;
  }
}
.home-free-study-block-title:after {
  content: "";
  position: absolute;
  top: 5.5rem;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 1px;
  background: rgba(255, 255, 255, 0.6);
}
@media screen and (max-width: 572px) {
  .home-free-study-block-title:after {
    top: 9rem;
  }
}
.home-free-study-block-title span,
.home-free-study-block-title b,
.home-free-study-block-title strong,
.home-free-study-block-title i,
.home-free-study-block-title em {
  color: var(--color-dark);
}
.home-free-study-block-text {
  color: var(--color-light);
  font-size: 1.6rem;
  text-align: center;
  line-height: 1.8;
}
@media screen and (min-width: 969px) {
  .home-free-study-block-text {
    text-align: left;
  }
}
.home-adverts {
  width: 106rem;
  max-width: calc(100% - 2rem);
  margin: 3rem auto;
  display: flex;
  flex-direction: column;
  gap: 3rem;
}
@media screen and (min-width: 969px) {
  .home-adverts {
    margin: 10rem auto;
  }
}
.home-adverts-title {
  text-align: center;
  font-size: 2rem;
  line-height: 1.2;
  color: var(--dark-color);
}
@media screen and (min-width: 969px) {
  .home-adverts-title {
    font-size: 2.4rem;
  }
}
@media screen and (min-width: 969px) {
  .home-adverts-text {
    font-size: 1.7rem;
  }
}
.home-adverts-text.desktop {
  text-align: center;
  font-size: 1.6rem;
  font-weight: normal;
  line-height: 1.5;
  color: var(--color-light);
  width: 31.1rem;
  height: 40.6rem;
  background: var(--dark-color);
  border-radius: var(--radius-medium);
  padding: 5rem;
}
@media screen and (max-width: 968px) {
  .home-adverts-text.desktop {
    display: none;
  }
}
.home-adverts-text.mobile {
  background: none;
  color: var(--grey-color);
  margin: 0 auto;
  text-align: center;
  max-width: 80rem;
}
@media screen and (min-width: 969px) {
  .home-adverts-text.mobile {
    display: none;
  }
}
.home-adverts-items {
  display: flex;
  flex-direction: column;
  gap: 6.8rem;
}
@media screen and (min-width: 969px) {
  .home-adverts-items {
    flex-direction: row;
    justify-content: space-between;
    gap: 1.8rem;
  }
}
.home-adverts-item {
  display: flex;
  position: relative;
}
@media screen and (max-width: 969px) {
  .home-adverts-item {
    aspect-ratio: 4/3;
  }
}
.home-adverts-item-picture {
  object-fit: cover;
  max-width: 100%;
  max-height: 100%;
  aspect-ratio: 4/3;
  border-radius: var(--radius-medium);
}
@media screen and (min-width: 969px) {
  .home-adverts-item-picture {
    aspect-ratio: 3/4;
  }
}
.home-adverts-item-cta-wrapper {
  position: absolute;
  inset: auto 0 -5rem;
  display: flex;
  justify-content: center;
  padding: 2rem;
  text-align: center;
}
.home-adverts-item-cta-wrapper .cta-pink {
  transform: translateY(0);
}
.home-adverts-item-cta-wrapper .cta-pink:hover {
  background: var(--color-light);
  color: var(--dark-color);
  transform: translateY(-1rem);
  transition: 0.25s ease-in-out;
  box-shadow: 0 0.5rem 1rem 0rem #0000004d;
}
.home .reinsurances-wrapper {
  padding: 5rem 0;
  margin: 5rem auto;
  position: relative;
}
.home .reinsurances-wrapper::before {
  content: "";
  position: absolute;
  inset: 0 1rem auto 1rem;
  height: 0.1rem;
  background-color: var(--color-border);
}
@media screen and (min-width: 769px) {
  .home .reinsurances-wrapper::before {
    inset: 0 auto auto 50%;
    width: 74rem;
    transform: translateX(-50%);
  }
}
.home-advices-wrapper {
  padding-top: 5rem;
  position: relative;
}
@media screen and (max-width: 969px) {
  .home-advices-wrapper {
    flex-direction: column-reverse;
  }
}
.home-advices-wrapper::before {
  content: "";
  width: 35%;
  height: 0.1rem;
  background-color: var(--color-border);
  margin: 0 auto;
  position: absolute;
  right: 0;
  left: 0;
}
@media screen and (max-width: 969px) {
  .home-advices-wrapper::before {
    width: 50%;
    top: 5rem;
  }
}
.home-advices-content {
  align-items: flex-end;
  text-align: right;
  margin-top: 9.5rem !important;
}
@media screen and (max-width: 969px) {
  .home-advices-content {
    margin-top: 4.5rem !important;
  }
}
.home-advices-content-slider {
  margin-top: 7rem;
}
@media screen and (max-width: 969px) {
  .home-advices-content-slider {
    margin-top: 0rem;
  }
}
.home-actualities {
  margin: 0 0 0 3rem;
}
@media screen and (max-width: 969px) {
  .home-actualities {
    margin: 0;
  }
}
.home-actualities-wrapper {
  padding: 5rem 0;
}
@media screen and (max-width: 969px) {
  .home-actualities-wrapper {
    flex-direction: column;
  }
}
.home-advices, .home-actualities {
  max-width: calc(100% - 3rem);
}
@media screen and (max-width: 969px) {
  .home-advices, .home-actualities {
    max-width: calc(100% - 0rem);
  }
}
.home-advices-wrapper, .home-actualities-wrapper {
  display: flex;
  gap: 2rem;
}
.home-advices-content, .home-actualities-content {
  background: var(--dark-color);
  border-radius: var(--radius-medium);
  color: var(--color-light);
  padding: 2rem;
  display: flex;
  flex-direction: column;
  gap: 3rem;
  justify-content: center;
  margin: 2.5rem 0 3.5rem;
  width: 30%;
}
@media screen and (max-width: 969px) {
  .home-advices-content, .home-actualities-content {
    margin: 0 auto;
    background: none;
    color: var(--dark-color);
    align-items: center;
    text-align: center;
    width: 100%;
  }
}
.home-advices-content-title, .home-actualities-content-title {
  margin: 0;
}
.home-advices-content-title .highlighted, .home-actualities-content-title .highlighted {
  color: var(--enhance-color);
}
.home-advices-content-description, .home-actualities-content-description {
  line-height: 2.5rem;
}
.home-advices-content .cta, .home-actualities-content .cta {
  width: fit-content;
}
@media screen and (max-width: 969px) {
  .home-advices-content .cta, .home-actualities-content .cta {
    background-color: var(--enhance-color);
    color: var(--color-light);
  }
}
.home-advices-content-slider, .home-actualities-content-slider {
  width: 70%;
}
@media screen and (max-width: 969px) {
  .home-advices-content-slider, .home-actualities-content-slider {
    width: 100%;
  }
}
.home-advices-content-slider .advice-thumb, .home-advices-content-slider .actuality-thumb, .home-actualities-content-slider .advice-thumb, .home-actualities-content-slider .actuality-thumb {
  width: 100%;
  border-radius: var(--radius-medium);
  box-shadow: 0px 8px 24px -4px rgba(28, 50, 79, 0.19), 0px 2px 6px -1px rgba(28, 55, 90, 0.12);
  cursor: pointer;
}
.home-advices-content-slider .advice-thumb-infos, .home-advices-content-slider .actuality-thumb-infos, .home-actualities-content-slider .advice-thumb-infos, .home-actualities-content-slider .actuality-thumb-infos {
  align-items: flex-start;
  flex-direction: column;
  justify-content: flex-start;
  gap: 1rem;
  padding: 1.5rem;
}
.home-advices-content-slider .advice-thumb-infos .thumb-title, .home-advices-content-slider .actuality-thumb-infos .thumb-title, .home-actualities-content-slider .advice-thumb-infos .thumb-title, .home-actualities-content-slider .actuality-thumb-infos .thumb-title {
  padding: 0;
  font-style: normal;
  font-weight: 900;
}
.home-advices-content-slider .advice-thumb-infos .thumb-picture, .home-advices-content-slider .actuality-thumb-infos .thumb-picture, .home-actualities-content-slider .advice-thumb-infos .thumb-picture, .home-actualities-content-slider .actuality-thumb-infos .thumb-picture {
  height: 189px;
}
.home-advices-content-slider .advice-thumb-category, .home-advices-content-slider .advice-thumb-date, .home-advices-content-slider .actuality-thumb-category, .home-advices-content-slider .actuality-thumb-date, .home-actualities-content-slider .advice-thumb-category, .home-actualities-content-slider .advice-thumb-date, .home-actualities-content-slider .actuality-thumb-category, .home-actualities-content-slider .actuality-thumb-date {
  font-style: italic;
}
.home-advices-content-slider .advice-thumb-link, .home-advices-content-slider .actuality-thumb-link, .home-actualities-content-slider .advice-thumb-link, .home-actualities-content-slider .actuality-thumb-link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  border-top: 1px solid #DEDEDE;
  padding-top: 1rem;
}
.home-advices-content-slider .advice-thumb-link .see-more, .home-advices-content-slider .actuality-thumb-link .see-more, .home-actualities-content-slider .advice-thumb-link .see-more, .home-actualities-content-slider .actuality-thumb-link .see-more {
  text-transform: uppercase;
  font-weight: 800;
  color: var(--enhance-color);
  font-size: 1.4rem;
}
.home-advices-content-slider .advice-thumb .thumb-picture, .home-advices-content-slider .actuality-thumb .thumb-picture, .home-actualities-content-slider .advice-thumb .thumb-picture, .home-actualities-content-slider .actuality-thumb .thumb-picture {
  height: 189px;
}
.home-advices-content-slider .glide__track, .home-actualities-content-slider .glide__track {
  position: relative;
}
.home-advices-content-slider .glide__arrow, .home-actualities-content-slider .glide__arrow {
  background-color: #ffffff91;
  width: 40px;
  display: flex;
}
.home-advices-content-slider .glide__arrow svg path, .home-actualities-content-slider .glide__arrow svg path {
  stroke: var(--dark-color);
}
.home-advices-content-slider .glide__arrow--left-icon svg, .home-advices-content-slider .glide__arrow--right-icon svg, .home-actualities-content-slider .glide__arrow--left-icon svg, .home-actualities-content-slider .glide__arrow--right-icon svg {
  width: 2rem;
}
.home-advices-content-slider .glide__bullets, .home-actualities-content-slider .glide__bullets {
  position: relative;
  bottom: auto;
  padding: 2rem 0;
}
@media screen and (min-width: 969px) {
  .home-advices-content-slider .glide__bullets, .home-actualities-content-slider .glide__bullets {
    display: none;
  }
}
.home .picture-text-block {
  margin: 5rem auto;
}

@media screen and (min-width: 1024px) {
  .contact-wrapper {
    width: 80%;
  }
}
.contact-picture-image {
  border-radius: var(--radius-medium);
}

.list-content.seo {
  padding: 0 2rem;
  margin: 0 auto;
}
.list-title {
  font-size: 3.6rem;
  font-weight: normal;
}

.model-list .list-result-wrapper, .offers-list .list-result-wrapper, .agencies-list .list-result-wrapper {
  margin: 0;
}
@media screen and (min-width: 769px) {
  .model-list .list-result-wrapper, .offers-list .list-result-wrapper, .agencies-list .list-result-wrapper {
    margin: -1rem -2rem 5rem;
  }
}

.thumb-picture picture, .model-thumb-picture picture {
  width: 100%;
}

@media screen and (min-width: 769px) {
  .offer-detail-agency-wrapper {
    margin: 0;
  }
}
@media screen and (min-width: 769px) {
  .offer-detail-agency-content {
    max-width: 100%;
  }
}

.ofrealizationfer-detail-cta-bottom {
  display: flex;
  justify-content: center;
}

.detail-content h2:not(.flexible-title), .landing-page-text h2:not(.flexible-title) {
  font-size: 2.4rem;
  color: var(--dark-color);
  font-weight: 900;
}

.detail-title {
  font-size: 4.8rem;
  text-align: center;
  font-weight: 900;
}

@media screen and (min-width: 769px) {
  .offer-detail-section, .model-detail-section, .realization-detail-constructeur-section, .agency-detail-section, .constructor-detail-section, .realization-detail-constructeur .realization-detail-section {
    margin: 0;
  }
}

.thumb-testimony {
  box-shadow: 9px 112px 31px 0px rgba(0, 0, 0, 0), 6px 71px 29px 0px rgba(0, 0, 0, 0.01), 3px 40px 24px 0px rgba(0, 0, 0, 0.05), 1px 18px 18px 0px rgba(0, 0, 0, 0.09), 0px 4px 10px 0px rgba(0, 0, 0, 0.1);
  background: var(--light-grey-color);
  border-radius: var(--border-radius-hard);
}
.thumb-testimony:hover {
  box-shadow: 0 0 0 0 transparent;
  transition: 0.25s ease-in-out;
}
.thumb-testimony:before, .thumb-testimony:after {
  content: none;
}
.thumb-testimony-author {
  font-size: 2rem;
  font-weight: 900;
}
.thumb-testimony-title {
  margin: 2rem 0;
  font-size: 1.6rem;
  font-weight: normal;
}
.thumb-testimony-excerpt {
  margin: 1rem 0;
}
.thumb-testimony-more {
  color: var(--enhance-color);
}

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