* {
  box-sizing: border-box;
}

body {
  margin: 0;
}

nav {
  position: absolute;
  left: 0;
  right: 0;
  transition: all ease-in-out 200ms;
}

nav:hover {
  background-color: rgba(0, 0, 0, 0.1);
}

.nav-container {
  max-width: 42vw;
  margin: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 7.083vw;
}

.logo {
  background: url(/images/logo.png?v=20240624) no-repeat;
  background-size: contain;
  width: 10.417vw;
  height: 4.306vw;
}

.nav-container ul {
  display: flex;
  list-style: none;
}

.nav-container ul li {
  display: flex;
}

.nav-container ul li + li {
  margin-left: 1.5vw;
}

.nav-container ul li a {
  color: #fff;
  text-decoration: none;
  padding: 0.25vw 1vw;
  display: inline-block;
  font-size: 1.111vw;
}

.nav-container ul li a.active {
  border-bottom: 2px solid #fff;
}

main {
  background: url(/images/banner.png?v=20240624) no-repeat;
  background-size: cover;
  height: 55.5vw;
  width: 100vw;
}

.section1 {
  max-width: 79.583vw;
  margin: 3.5vw auto;
}

.section1 .row {
  display: flex;
  justify-content: center;
}

.section1 .title {
  background: url(/images/section1-title.png) no-repeat;
  background-size: contain;
  width: 46.111vw;
  height: 2.778vw;
  margin: auto;
  margin-bottom: 2.5vw;
}

.section1 .bordered-card {
  width: 17.292vw;
  height: 26.042vw;
  color: #fff;
  background-clip: padding-box; /* !importanté */
  border: solid 5px transparent; /* !importanté */
  border-radius: 16px;
  position: relative;
  box-shadow: 3px 3px 4px 0px rgba(0, 0, 0, 0.25);
}

.section1 .bordered-card::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
  margin: -7px; /* !importanté */
  border-radius: inherit; /* !importanté */
  background: linear-gradient(136.85deg, #ff5c00 2.7%, #ffffff 97.09%);
  box-shadow: -3px -3px 4px 0px rgba(0, 0, 0, 0.25) inset;
}

.section1 .bordered-card + .bordered-card {
  margin-left: 2vw;
}

.section1 .bordered-card:nth-child(1) .card-inner {
  background: url(/images/card1-bg.jpg) no-repeat center;
  background-size: cover;
  width: 16.7vw;
  height: 25.542vw;
  overflow: hidden;
  border-radius: 16px;
}

.section1 .bordered-card:nth-child(2) .card-inner {
  background: url(/images/card2-bg.jpg) no-repeat center;
  background-size: cover;
  width: 16.7vw;
  height: 25.542vw;
  overflow: hidden;
  border-radius: 16px;
}

.section1 .bordered-card:nth-child(3) .card-inner {
  background: url(/images/card3-bg.jpg) no-repeat center;
  background-size: cover;
  width: 16.7vw;
  height: 25.542vw;
  overflow: hidden;
  border-radius: 16px;
}

.section1 .bordered-card:nth-child(4) .card-inner {
  background: url(/images/card4-bg.jpg) no-repeat center;
  background-size: cover;
  width: 16.7vw;
  height: 25.542vw;
  overflow: hidden;
  border-radius: 16px;
}

.section1 .bordered-card .card-inner::after {
  content: "";
  position: absolute;
  background: rgba(0, 0, 0, 0.5);
  inset: 0;
  border-radius: 16px;
  transition: all ease-in-out 200ms;
}

.section1 .bordered-card:hover .card-inner::after {
  content: "";
  position: absolute;
  background: rgba(0, 0, 0, 0.75);
  inset: 0;
  border-radius: 16px;
}

.section1 .bordered-card .icon {
  height: 4.236vw;
}

.section1 .bordered-card .card-content {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  height: 100%;
  margin: 0 2vw;
  margin-top: 3.25vw;
}

.section1 .card-content .header {
  margin: 1vw 0;
  font-size: 1.528vw;
  font-weight: 600;
}

.section1 .card-content .subheader {
  margin-bottom: 1vw;
  font-size: 1.25vw;
  font-weight: 600;
}

.section1 .card-content .content {
  font-size: 1.111vw;
  font-weight: 300;
  text-align: center;
}

.section2 {
  height: 51.389vw;
  background: linear-gradient(107.1deg, #f46b4f 6.48%, #d04734 97.43%);
  padding: 4vw 0;
}

.section2 .inner-container {
  max-width: 64.861vw;
  margin: auto;
}

.section2 .row {
  display: flex;
  justify-content: center;
}

.section2 .tab {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  position: relative;
  padding: 0 1.25vw;
  opacity: 0.4;
  cursor: pointer;
}

.section2 .tab.active {
  opacity: 1;
}

.section2 .tab.active::after {
  content: " ";
  position: absolute;
  height: 5px;
  left: 0;
  right: 0;
  bottom: -13px;
  background: linear-gradient(145.3deg, #ffe1db 29.15%, #ff654f 129.93%);
  border-radius: 10px;
}

.section2 .tab + .tab {
  margin-left: 3.5vw;
}

.section2 .tab .icon {
  height: 3.472vw;
}

.section2 .tab .title {
  font-size: 1.528vw;
  font-weight: 600;
  color: #fff;
  margin-top: 0.5vw;
  margin-bottom: 0.25vw;
}

.section2 .tab .subtitle {
  font-size: 1.25vw;
  font-weight: 600;
  color: #fff;
}

.section2 .slider {
  height: 23.889vw;
  min-width: 55.556vw;
  border-radius: 45px;
}

.section2 .slider-container {
  display: flex;
  align-items: center;
  margin-top: 3.5vw;
}

.section2 .slider-container div + div {
  margin-left: 2vw;
}

.section2 .prev-btn {
  background: url(/images/left-arrow.png) no-repeat;
  background-size: contain;
  height: 2.431vw;
  width: 2.431vw;
  cursor: pointer;
  flex-shrink: 0;
}

.section2 .next-btn {
  background: url(/images/right-arrow.png) no-repeat;
  background-size: contain;
  height: 2.431vw;
  width: 2.431vw;
  cursor: pointer;
  flex-shrink: 0;
}

.section2 .hint {
  background: #ffffff1f;
  padding: 1.042vw 2.431vw;
  color: #fff;
  border-radius: 50px;
  text-align: center;
  font-size: 0.972vw;
  font-weight: 300;
  margin-top: 1.5vw;
}

.slider-images {
  display: flex;
  overflow: hidden;
  height: 23.889vw;
  width: 55.556vw;
  position: relative;
}

.slider-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0;
  transition: opacity 0.5s ease;
  position: absolute;
  inset: 0;
}

.slider-image.active {
  opacity: 1;
}

footer {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  height: 16.875vw;
  text-align: center;
  font-size: 0.972vw;
}

.footer-container {
  max-width: 62.639vw;
  margin: auto;
}

.copyright {
  font-weight: 600;
  color: #e65e44;
}

.risk-alert {
  font-weight: 300;
  color: #b0331e;
}

.dummy-div {
  background: linear-gradient(107.1deg, #f46b4f 6.48%, #d04734 97.43%);
  height: 1.111vw;
}

.about main {
  background: url(/images/banner.png?v=20240624) no-repeat;
  background-size: cover;
  height: 55.5vw;
  width: 100vw;
}

.about .about-title {
  background: url(/images/about-title.png) no-repeat;
  background-size: contain;
  width: 21.597vw;
  height: 2.778vw;
  margin: auto;
}

.about-description {
  line-height: 1.978vw;
  margin-top: 1.3vw;
  font-weight: 300;
}

.services .about-description {
  margin-bottom: 3.5vw;
}

.about-description > p + p {
  margin-top: 2vw;
}

.about .about-container {
  max-width: 58.333vw;
  margin: auto;
  font-size: 1.111vw;
  text-align: center;
  margin-top: 4vw;
  margin-bottom: 3vw;
}

.about .title {
  font-weight: 600;
  font-size: 1.25vw;
  color: #9f130e;
  margin-bottom: 0.5vw;
}

.about .description {
  font-weight: 300;
  font-size: 1.111vw;
  line-height: 1.978vw;
}

.about .sections > div + div {
  margin-top: 2.3vw;
}

.about footer {
  background: linear-gradient(107.1deg, #f46b4f 6.48%, #d04734 97.43%);
}

.about footer .copyright {
  color: #fff;
}

.about footer .risk-alert {
  color: #fff;
}

.three-dots {
  background: url(/images/three-dots.png) no-repeat;
  background-size: contain;
  width: 4.063vw;
  height: 0.694vw;
  margin: 2vw auto;
}

.services .services-title {
  background: url(/images/services-title.png) no-repeat;
  background-size: contain;
  width: 21.597vw;
  height: 2.778vw;
  margin: auto;
}

.links,
.links a {
  color: #e65e44;
}

.links.white,
.links.white a {
  color: #fff;
}
