/* ═══════════════════════════════════════════════════════════════════════════
   SECTION : Solutions — "Des solutions pour chaque besoin"
   Figma node: 661-5545
   v1.3.0 — elioz-theme
   ═══════════════════════════════════════════════════════════════════════════ */

.elioz-solutions {
  background: #F9DAEA;
  padding: 100px 64px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 64px;
  font-family: var(--font-body, 'Lexend', sans-serif);
}

.elioz-solutions .solutions__header {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 25px;
  text-align: center;
  width: 100%;
  max-width: 1094px;
  color: #1C1468;
}
.elioz-solutions .solutions__h2 {
  font-size: 42px;
  font-weight: 900;
  line-height: 1;
  color: #1C1468;
}
.elioz-solutions .solutions__subtitle {
  font-size: 24px;
  font-weight: 400;
  line-height: 36px;
  color: #1C1468;
}
.elioz-solutions .solutions__subtitle strong {
  font-weight: 700;
}

.elioz-solutions .solutions__cards {
  display: flex;
  gap: 107px;
  align-items: stretch;
  justify-content: center;
  width: 100%;
}

.elioz-solutions .sol-card {
  background: #ffffff;
  border: 1px solid #D3D5E4;
  border-radius: 28px;
  padding: 22px;
  display: flex;
  flex-direction: column;
  gap: 24px;
  width: 551px;
  flex: 0 0 551px;
}

.elioz-solutions .sol-card__image {
  border: 1px solid #DEDDEB;
  border-radius: 20px;
  height: 256px;
  background: #FBFDFE;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}
.elioz-solutions .sol-card__image-placeholder {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 13px;
  font-weight: 500;
  color: #656B9F;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
.elioz-solutions .sol-card__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  border-radius: 20px;
}

.elioz-solutions .sol-card__labels {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.elioz-solutions .sol-card__badge {
  display: inline-flex;
  align-items: center;
  padding: 8px 14px;
  border-radius: 100px;
  align-self: flex-start;
}
.elioz-solutions .sol-card__badge--blue   { background: #1000F0; }
.elioz-solutions .sol-card__badge--purple { background: #5000B3; }
.elioz-solutions .sol-card__badge span {
  font-size: 12px;
  font-weight: 500;
  color: #ffffff;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  white-space: nowrap;
}
.elioz-solutions .sol-card__title {
  font-size: 28px;
  font-weight: 900;
  line-height: 1;
}
.elioz-solutions .sol-card__title--blue   { color: #1000F0; }
.elioz-solutions .sol-card__title--purple { color: #5000B3; }

.elioz-solutions .sol-card__body {
  font-size: 18px;
  font-weight: 400;
  line-height: 30px;
  color: #011679;
}
.elioz-solutions .sol-card__body strong { font-weight: 700; }
.elioz-solutions .sol-card__body ul {
  list-style: none;
  margin-top: 8px;
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.elioz-solutions .sol-card__body ul li::before {
  content: '✓ ';
  font-weight: 400;
}

.elioz-solutions .sol-card__cta {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 12px 18px;
  border-radius: 8px;
  border: none;
  cursor: pointer;
  text-decoration: none;
  width: 100%;
  margin-top: auto;
  transition: opacity 0.2s ease, transform 0.15s ease;
}
.elioz-solutions .sol-card__cta:hover {
  opacity: 0.88;
  transform: translateY(-1px);
  text-decoration: none;
}
.elioz-solutions .sol-card__cta--blue   { background: #0016F6; }
.elioz-solutions .sol-card__cta--purple { background: #5000B3; }

.elioz-solutions .sol-card__cta-label {
  font-size: 20px;
  font-weight: 400;
  line-height: 30px;
  color: #ffffff;
  white-space: nowrap;
  font-family: var(--font-body, 'Lexend', sans-serif);
}

.elioz-solutions .sol-card__cta-logo {
  height: 32px;
  width: auto;
  display: block;
  flex-shrink: 0;
}

.elioz-solutions .sol-card__legal {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.5;
  color: #656B9F;
  text-align: center;
}

@media (max-width: 1280px) {
  .elioz-solutions                   { padding: 80px 40px; }
  .elioz-solutions .solutions__cards { gap: 48px; }
  .elioz-solutions .sol-card         { width: 460px; flex: 0 0 460px; }
}

@media (max-width: 1024px) {
  .elioz-solutions .sol-card             { width: 400px; flex: 0 0 400px; }
  .elioz-solutions .solutions__cards     { gap: 32px; }
  .elioz-solutions .solutions__h2        { font-size: 34px; }
  .elioz-solutions .solutions__subtitle  { font-size: 20px; line-height: 30px; }
}

@media (max-width: 860px) {
  .elioz-solutions { padding: 64px 24px; gap: 48px; }
  .elioz-solutions .solutions__cards {
    flex-direction: column;
    align-items: center;
    gap: 32px;
  }
  .elioz-solutions .sol-card {
    width: 100%;
    flex: none;
    max-width: 560px;
  }
  .elioz-solutions .sol-card__badge span { white-space: normal; }
}

@media (max-width: 540px) {
  .elioz-solutions                      { padding: 48px 16px; }
  .elioz-solutions .solutions__h2       { font-size: 26px; }
  .elioz-solutions .solutions__subtitle { font-size: 17px; line-height: 26px; }
  .elioz-solutions .sol-card            { padding: 16px; }
  .elioz-solutions .sol-card__image     { height: 200px; }
  .elioz-solutions .sol-card__title     { font-size: 22px; }
  .elioz-solutions .sol-card__body      { font-size: 16px; }
  .elioz-solutions .sol-card__cta-label { font-size: 17px; }
}
