  /* ================= Section Hero ================= */
  .hero {
    position: relative;
    width: 100%;
    max-width: 100vw;
    min-height: 560px;
    background: url('/img/contact/doucy-couple-banc-rencontre.webp') center center/cover no-repeat;
    color: var(--color-bg);
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
  }
  .hero-bg {
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;

  }
  .hero-img {
    display: none;

  }
  .hero-overlay {
    position: relative;
    z-index: 2;
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
    padding: 3rem 2rem 3rem;
    border-radius: 32px;
    display: flex;
    flex-direction: column;
    align-items: center;

  }
  .hero-overlay::before {
    content: '';
    position: absolute;
    inset: 0;
    border-radius: 32px;
    background: var(--color-text);
    opacity: 0.5;
    z-index: 0;
    pointer-events: none;
  }
  .hero-overlay > * {
    position: relative;
    z-index: 1;
    opacity: 1;
  }

  .herobadge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.5rem 1.5rem;
    background-color: var(--color-primary);
    color: var(--color-bg);
    font-size: 16px;
    font-weight: 500;
    line-height: 24px;
    border-radius: 16px;
    box-shadow: 0 1px 2px rgba(105, 81, 255, 0.05);

  }
  .hero h1 {
    font-family: 'Sora', sans-serif;
    font-size: 40px;
      font-weight: 800;
      line-height: 45px;
      margin-bottom: 0.5rem;
      color: var(--color-bg);
    }
  .hero p {
    font-size: 20px;
    font-weight: 600;
      margin-top: 0.2rem;
      margin-bottom: 2rem;
      color: var(--color-bg);
  }
  .hero-actions {
    display: flex;
    gap: 2rem;
  }


  .hero-bg-effect {
    display: inline-block;
    position: relative;
    color: var(--color-bg);
    z-index: 0;
    padding-left: 0.25em;
    padding-right: 0.25em;
  }

  .hero-bg-effect::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -6px;
    width: 100%;
    height: 1.3em;
    background: var(--color-primary);
    border-radius: 16px;
    transform: rotate(-1deg);
    z-index: -1;
  }

  /* ============== Responsive ============== */

  @media (max-width: 900px) {
    .hero {
      min-height: 78vh;
    }
     .herobadge {
     width: 80%;
    }
    .hero-overlay {
      padding: 4rem 1rem;
    }
    .hero h1 {
      font-size: 28px;
      line-height: 32px;
    }
    .hero p {
      font-size: 16px;
      margin-bottom: 1.5rem;
      margin-left: 1rem;
      margin-right: 1rem;
    }
    .hero-actions {
      flex-direction: column;
      gap: 1rem;
    }
      .hero-bg-effect::after {
    bottom: -3px;
    height: 1.3em;

  }
  .hero-overlay {
    position: relative;
    z-index: 2;
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
    padding: 3rem 2rem 3rem;
    border-radius: 0px;
    display: flex;
    flex-direction: column;
    align-items: center;

  }
  .hero-overlay::before {
    content: '';
    position: absolute;
    inset: 0;
    border-radius: 0px;
    background: var(--color-text);
    opacity: 0.5;
    z-index: 0;
    pointer-events: none;
  }
  .hero-overlay > * {
    position: relative;
    z-index: 1;
    opacity: 1;
  }
  }


  /* ================= Section Contact barre ================= */

  .contact-barre {
      width: 100%;
      padding: 4rem 0;
  }


  .contact-barre__badge {
        display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 2px 8px;
  }


  .contact-barre__header {
      display: flex;
      align-items: center;
      justify-content: space-between;
      margin-bottom: 3rem;
      flex-wrap: wrap;
      gap: 1.5rem;
  }

  .contact-barre__badge {
      background: var(--color-primary);
      color: white;
      font-size: 16px;
      font-family: var(--font-title);
      font-weight: 500;
      line-height: 24px;
      padding: 2px 8px;
      border-radius: 36px;
      box-shadow: 0px 1px 2px rgba(105, 81, 255, 0.05);
      order: 1;
  }

  .contact-barre__title {
      color: var(--color-text);
      font-size: 40px;
      font-family: var(--font-title);
      font-weight: 400;
      line-height: 44px;
      word-wrap: break-word;
      order: 2;
      flex: 1;
      min-width: 300px;
  }

  .contact-barre__socials {
      display: flex;
      gap: 1.5rem;
      align-items: center;
      order: 3;
  }

  .contact-barre__socials a {
      color: var(--color-primary);
      font-size: 28px;
      transition: color 0.3s ease, transform 0.2s ease;
      text-decoration: none;
  }

  .contact-barre__socials a:hover {
      color: var(--color-secondary);
      transform: scale(1.1);
  }


  .contact-barre__cards {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
      gap: 26px;
  }

  .contact-barre__card {
      background: white;
      box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.25);
      border-radius: 6px;
      padding: 2rem 2.5rem;
      display: flex;
      flex-direction: column;
      align-items: center;
      text-align: center;
      transition: transform 0.3s ease, box-shadow 0.3s ease;
      min-height: 320px;
  }

  .contact-barre__card:hover {
      transform: translateY(-5px);
      box-shadow: 0px 4px 12px rgba(0, 0, 0, 0.15);
  }


  .contact-barre__icon {
      width: 64px;
      height: 64px;
      display: flex;
      align-items: center;
      justify-content: center;
      margin-bottom: 2rem;
  }

  .contact-barre__icon img {
      max-width: 100%;
      max-height: 100%;
      object-fit: contain;
  }


  .contact-barre__card-title {
      color: var(--color-text);
      font-size: 20px;
      font-family: var(--font-title);
      font-weight: 600;
      line-height: 30px;
      word-wrap: break-word;
      margin-bottom: 1.5rem;
  }


  .contact-barre__card-text {
      color: #404F65;
      font-size: 16px;
      font-family: var(--font-title);
      font-weight: 500;
      line-height: 24px;
      word-wrap: break-word;
  }

  /*----------- Responsive Design ---------------*/


  @media (max-width: 1024px) {
      .contact-barre__title {
          font-size: 32px;
          line-height: 38px;
      }

      .contact-barre__cards {
          grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
          gap: 20px;
      }

      .contact-barre__card {
          padding: 1.5rem 2rem;
          min-height: 280px;
      }

      .contact-barre__socials a {
          font-size: 24px;
      }
  }

  @media (max-width: 768px) {
      .contact-barre {
          padding: 2.5rem 0;
      }

      .contact-barre__header {
          flex-direction: column;
          align-items: flex-start;
          gap: 1rem;
          margin-bottom: 2rem;
      }

      .contact-barre__badge {
          width: auto;
          order: 1;
      }

      .contact-barre__title {
          font-size: 28px;
          line-height: 34px;
          order: 2;
          width: 100%;
      }

      .contact-barre__socials {
          order: 3;
          width: 100%;
          justify-content: flex-start;
          gap: 1.5rem;
      }

      .contact-barre__cards {
          grid-template-columns: 1fr;
          gap: 1.5rem;
      }

      .contact-barre__card {
          padding: 1.5rem;
          min-height: 260px;
      }

      .contact-barre__card-title {
          font-size: 18px;
          line-height: 26px;
      }

      .contact-barre__card-text {
          font-size: 14px;
          line-height: 22px;
      }

      .contact-barre__icon {
          width: 56px;
          height: 56px;
          margin-bottom: 1.5rem;
      }
  }

  @media (max-width: 480px) {
      .contact-barre__title {
          font-size: 24px;
          line-height: 30px;
      }

      .contact-barre__socials {
          gap: 1rem;
      }

      .contact-barre__socials a {
          font-size: 22px;
      }

      .contact-barre__card {
          padding: 1.25rem;
          min-height: auto;
      }
  }




  /* ================= Section Go-here ================= */


  .go-here-arrival-section {
      background: var(--color-primary);
      padding: 4rem;
      overflow: hidden;
  }

  .go-here-arrival-content {
      max-width: var(--container-max-width);
      margin: 0 auto;
      padding: 0 4rem;
  }


  .go-here-badge {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding: 2px 8px;
      background: #CEE0FD;
      border: 1px solid var(--color-primary);
      border-radius: 36px;
      box-shadow: 0px 1px 2px rgba(105, 81, 255, 0.05);
      margin-bottom: 2rem;
  }

  .go-here-badge-text {
      color: #2A3342;
      font-size: 16px;
      font-family: var(--font-title);
      font-weight: 500;
      line-height: 24px;
  }


  .go-here-main-title {
      color: white;
      font-size: 40px;
      font-family: var(--font-title);
      font-weight: 400;
      line-height: 44px;
      margin-bottom: 3rem;
      max-width: 832px;
  }


  .go-here-cards-wrapper {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 1.5rem;
      margin-bottom: 3rem;
  }


  .go-here-card {
      background: white;
      border-radius: 6px;
      box-shadow: 0px 1px 2px rgba(85, 105, 135, 0.10);
      padding: 1.625rem 1.25rem 2rem;
      display: flex;
      gap: 1.25rem;
      min-height: 280px;
  }


  .go-here-card-number {
      flex-shrink: 0;
      width: 55px;
      height: 55px;
      background: var(--color-secondary);
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      padding-top:0.1rem;
      margin-top:0.2rem;
  }

  .go-here-card-number span {
      color: white;
      font-size: 28px;
      font-family: var(--font-title);
      font-weight: 500;
      line-height: 38px;
  }


  .go-here-card-content {
      flex: 1;
      display: flex;
      flex-direction: column;
      gap: 1rem;
  }

  .go-here-card-title {
      color: var(--color-text);
      font-size: 20px;
      font-family: var(--font-title);
      font-weight: 600;
      line-height: 30px;
      margin-bottom: 0;
  }

  .go-here-card-text {
      color: #404F65;
      font-size: 16px;
      font-family: var(--font-title);
      font-weight: 500;
      line-height: 24px;
      margin-right: 2rem;

  }

  .go-here-card-text p {
      margin-bottom: 0.5rem;
      margin-top:0;
  }

  .go-here-card-link {
      color: #404F65;
      font-size: 16px;
      font-family: var(--font-title);
      font-weight: 500;
      line-height: 24px;
      text-decoration: underline;
      display: inline-block;
      margin-top: 0.5rem;
      transition: color 0.3s ease;
  }

  .go-here-card-link:hover {
      color: var(--color-secondary);
  }


  .go-here-map-container {
      width: 100%;
      height: 451px;
      border-radius: 16px;
      overflow: hidden;
      box-shadow: 0px 4px 12px rgba(0, 0, 0, 0.1);
  }

  .go-here-map-iframe {
      width: 100%;
      height: 100%;
      border: none;
      display: block;
  }

  /*----------- Responsive Design ---------------*/
  @media (max-width: 1024px) {
     .go-here-cards-wrapper {
      grid-template-columns: repeat(1, 1fr);
     }

      .go-here-main-title {
          font-size: 32px;
          line-height: 38px;
      }

      .go-here-cards-wrapper {
          gap: 1.25rem;
      }

      .go-here-card {
          min-height: auto;
          padding: 1.25rem 1rem 3rem;
      }
  }

  @media (max-width: 768px) {
      .go-here-arrival-section {
          padding: 3rem 0;
      }

      .go-here-arrival-content {
          padding: 0 1.5rem;
      }

      .go-here-main-title {
          font-size: 28px;
          line-height: 34px;
          margin-bottom: 2rem;
      }

      .go-here-cards-wrapper {
          grid-template-columns: 1fr;
          gap: 1rem;
          margin-bottom: 1.5rem;
      }

      .go-here-card {
          flex-direction: column;
          gap: 1rem;
          padding: 1.5rem 1.5rem 3rem;
      }

      .go-here-card-number {
          width: 50px;
          height: 50px;
      }

      .go-here-card-number span {
          font-size: 26px;
      }

      .go-here-card-title {
          font-size: 18px;
          line-height: 26px;
      }

      .go-here-card-text {
          font-size: 15px;
          line-height: 22px;
      }

      .go-here-map-container {
          height: 350px;
      }
  }




  /* ================= Section Cta contact  ================= */

  .cta-contact {
      background: var(--color-bg);
      border-radius: 6px;
      box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.25);
      padding: 3rem 2rem;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 4rem;
      flex-wrap: wrap;
      margin-right: 2rem;
      margin-left: 2rem;
  }

  .cta-contact__content {
      flex: 1;
      min-width: 280px;
      margin-right: 2rem;
      margin-left: 2rem;
    }

  .cta-contact__title {
      font-family: var(--font-title);
      font-size: 20px;
      font-weight: 600;
      line-height: 38px;
      color: var(--color-text);
      margin-bottom: 1rem;
      word-wrap: break-word;
  }

  .cta-contact__description {
      font-family: 'Sora', sans-serif;
      font-size: 16px;
      font-weight: 500;
      line-height: 24px;
      color: #404F65;
      word-wrap: break-word;
  }

  .cta-contact__action {
      flex-shrink: 0;
  }

  .cta-contact__button {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding: 16px 28px;
      background: var(--color-bg);
      border: 1px solid var(--color-secondary);
      border-radius: 16px;
      color: var(--color-secondary);
      font-family: var(--font-title);
      font-size: 18px;
      font-weight: 600;
      line-height: 28px;
      text-decoration: underline;
      box-shadow: 0px 1px 2px rgba(105, 81, 255, 0.05);
      transition: all 0.3s ease;
      cursor: pointer;
      white-space: nowrap;
      text-decoration: none;
  }

  .cta-contact__button:hover {
      background: var(--color-secondary);
      color: var(--color-bg);
      text-decoration: none;
      transform: translateY(-2px);
      box-shadow: 0px 4px 8px rgba(214, 39, 57, 0.2);
  }

  .cta-contact__button:active {
      transform: translateY(0);
      box-shadow: 0px 1px 2px rgba(105, 81, 255, 0.05);
  }

  /*----------- Responsive Design ---------------*/

  @media screen and (max-width: 1024px) {
      .cta-contact {
          padding: 2.5rem 1.5rem;
      }

      .cta-contact__title {
          font-size: 26px;
          line-height: 34px;
      }

      .cta-contact__description {
            font-size: 16px;
            line-height: 24px;
            word-break: break-word;
            overflow-wrap: anywhere;
            white-space: normal;
            max-width: 100%;
            width: 100%;
            display: block;
            overflow: hidden;
            text-overflow: ellipsis;
            box-sizing: border-box;
            font-size: 16px;
            padding: 14px 24px;
        }

      .cta-contact__button {
          font-size: 16px;
          padding: 14px 24px;
      }
  }


  @media screen and (max-width: 830px) {
      .cta-contact {
          flex-direction: column;
          align-items: flex-start;
          padding: 2rem 0rem 2rem 0rem;
          gap: 1.5rem;
          margin: 2rem 0rem 2rem 0rem;

      }

      .cta-contact__content {
          margin-left: 1rem;
          margin-right: 1rem;
          width: 100%;
      }

      .cta-contact__title {
          font-size: 22px;
          line-height: 30px;
          margin-bottom: 0.75rem;
      }

      .cta-contact__description {
          font-size: 16px;
          line-height: 24px;
          word-break: break-word;
          white-space: normal;
          max-width: 100%;
      }

      .cta-contact__button {
          width: 100%;
          justify-content: center;
          font-size: 16px;
          padding: 12px 20px;
          margin-left: 1rem;
      }
  }






  /* ================= Formulaire ================= */

  .container-form{
    background-color: var(--color-accent);
    padding: 3rem;
    overflow-x: auto;
    box-sizing: border-box;
  }

  .formulaire-wrapper {
      width: 100%;
      max-width: 100vw;
      padding: 3rem;
      overflow-x: auto;
      box-sizing: border-box;
  }


  .formulaire-header {
      margin-bottom: 3rem;
  }

  .formulaire-badge {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding: 0.125rem 0.5rem;
      background: var(--color-primary);
      color: white;
      font-size: 16px;
      font-family: var(--font-text);
      font-weight: 500;
      line-height: 24px;
      border-radius: 36px;
      margin-bottom: 1.5rem;
      margin-top:1.5rem;
      box-shadow: 0px 1px 2px rgba(105, 81, 255, 0.05);
  }

  .formulaire-title {
      color: var(--color-text);
      font-size: 40px;
      font-family: var(--font-title);
      font-weight: 400;
      line-height: 44px;
      max-width: 992px;
  }


  .formulaire-container {
      background: var(--color-primary);
      border-radius: 16px;
      padding: 2.5rem;
      box-shadow: 0px 1px 2px rgba(85, 105, 135, 0.10);
      max-width: 100%;
      width: 100%;
      min-width: 0;
      box-sizing: border-box;
  }


  .formulaire-grid {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 3rem;
  }

  .formulaire-column {
      display: flex;
      flex-direction: column;
      gap: 1.5rem;
  }


  .formulaire-group {
      display: flex;
      flex-direction: column;
      gap: 6px;
  }


  .formulaire-label {
      color: white;
      font-size: 16px;
      font-family: var(--font-text);
      font-weight: 500;
      line-height: 24px;

  }


  .formulaire-input {
      height: 26px;
      padding: 10px 14px;
      background: white;
      border: 1px solid #D5DAE1;
      border-radius: 8px;
      box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.05);
      font-size: 16px;
      font-family: var(--font-text);
      font-weight: 400;
      line-height: 24px;
      outline: none;
      transition: border-color 0.3s ease;
  }

  .formulaire-input:focus {
      border-color: var(--color-secondary);
  }


  .formulaire-textarea {
      height: 230px;
      padding: 10px 14px;
      background: white;
      border: 1px solid #D5DAE1;
      border-radius: 8px;
      box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.05);
      font-size: 16px;
      font-family: var(--font-text);
      font-weight: 400;
      line-height: 24px;
      resize: vertical;
      outline: none;
      transition: border-color 0.3s ease;
  }

  .formulaire-textarea::placeholder {
      color: #D5DAE1;
  }

  .formulaire-textarea:focus {
      border-color: var(--color-secondary);
  }


  .formulaire-submit {
      width: 100%;
      height: 46px;
      padding: 8px 18px;
      background: var(--color-secondary);
      color: white;
      font-size: 18px;
      font-family: var(--font-text);
      font-weight: 500;
      line-height: 28px;
      border: none;
      border-radius: 16px;
      box-shadow: 0px 1px 2px rgba(105, 81, 255, 0.05);
      cursor: pointer;
      transition: all 0.3s ease;
  }

  .formulaire-submit:hover {
      background: #c02030;
      transform: translateY(-2px);
      box-shadow: 0px 4px 8px rgba(214, 39, 57, 0.25);
  }

  .formulaire-submit:active {
      transform: translateY(0);
  }


  .formulaire-recaptcha {
      margin-top: auto;
  }

  .formulaire-recaptcha img {
      width: 100%;
      max-width: 200px;
      height: auto;
      border-radius: 6px;
  }

  /*----------- Responsive Design ---------------*/
  @media (max-width: 1024px) {
      .container-form{
      padding: 0rem;
    }

    .formulaire-wrapper {
      padding: 2rem;
  }
      .formulaire-title {
          font-size: 32px;
          line-height: 38px;
      }

      .formulaire-grid {
          gap: 2rem;
      }

      .formulaire-container {
          padding: 2rem;
      }
  }

  @media (max-width: 768px) {
      .container-form{
      padding: 0rem;
    }
      .formulaire-wrapper {
      padding: 2rem;
  }
      .formulaire-grid {
          grid-template-columns: 1fr;
          gap: 1.5rem;
      }

      .formulaire-title {
          font-size: 28px;
          line-height: 34px;
      }

      .formulaire-container {
          padding: 1.5rem;
      }

      .formulaire-column {
          gap: 1rem;
      }

      .formulaire-recaptcha {
          margin-top: 0;
      }

      .formulaire-recaptcha img {
          max-width: 100%;
      }
  }

  @media (max-width: 480px) {
      .container-form{
      padding:0rem;
    }
      .formulaire-wrapper {
          padding: 0rem;
      }

      .formulaire-title {
          font-size: 24px;
          line-height: 30px;
      }

      .formulaire-badge {
          font-size: 14px;
      }

      .formulaire-label {
          font-size: 14px;
      }

      .formulaire-input,
      .formulaire-textarea {
          font-size: 14px;
      }

      .formulaire-submit {
          font-size: 16px;
          height: 48px;
          padding: 12px 20px;
      }

      .formulaire-container {
          padding: 1rem;
      }
  }



  /* ================= Section contact-stage ================= */

  .contact-stage-wrapper {
              background: var(--color-bg);
              padding: 3rem 0;
          }

          .contact-stage-badge {
              display: inline-flex;
              align-items: center;
              justify-content: center;
              background: var(--color-primary);
              color: white;
              padding: 0.375rem 1rem;
              border-radius: 36px;
              font-family: var(--font-text);
              font-size: 1rem;
              font-weight: 500;
              line-height: 1.5;
              margin-bottom: 2rem;
              box-shadow: 0px 1px 2px rgba(105, 81, 255, 0.05);
          }

          .contact-stage-title {
              font-family: var(--font-title);
              font-size: 2.5rem;
              font-weight: 400;
              line-height: 1.1;
              color: #2A3342;
              margin-bottom: 1.5rem;
          }

          .contact-stage-title-highlight {
              color: var(--color-secondary);
          }

          .contact-stage-intro {
              font-family: var(--font-text);
              font-size: 1.25rem;
              font-weight: 500;
              line-height: 1.5;
              color: #404F65;
              margin-bottom: 3rem;
              max-width: 919px;
          }

          .contact-stage-card {
              background: white;
              border-radius: 16px;
              box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
              padding: 2rem 1rem 2rem 1rem;
              margin-bottom: 3rem;
              display: flex;
              gap: 1.5rem;
              align-items: flex-start;
          }



          .contact-stage-icon {
              flex-shrink: 0;
              width: 55px;
              height: 53px;
              background: var(--color-primary);
              border-radius: 200px;
              display: flex;
              align-items: center;
              justify-content: center;
              color: white;
              font-family: var(--font-text);
              font-size: 1.875rem;
              font-weight: 500;
              margin-top:0.5rem;
          }

          .contact-stage-icons {
              flex-shrink: 0;
              width: 55px;
              height: 53px;
              background: transparent;
              border-radius: 200px;
              display: flex;
              align-items: center;
              justify-content: center;
              color: white;
              font-family: var(--font-text);
              font-size: 1.875rem;
              font-weight: 500;
              margin-top:0.5rem;
          }

          .contact-stage-card-content {
              flex: 1;
          }

          .contact-stage-card-title {
              font-family: var(--font-title);
              font-size: 1.5rem;
              font-weight: 600;
              line-height: 1.33;
              color: var(--color-secondary);
              margin-bottom: 1rem;
          }

          .contact-stage-card-text {
              font-family: var(--font-text);
              font-size: 1rem;
              font-weight: 500;
              line-height: 1.5;
              color: #404F65;
              margin-bottom: 1rem;
          }

          .contact-stage-card-text-muted {
              color: #556987;
          }

          .contact-stage-link {
              color: #404F65;
              text-decoration: underline;
              cursor: pointer;
              display: inline-flex;
              align-items: center;
              gap: 0.25rem;
              margin-top: 0.5rem;
          }

          .contact-stage-link-muted {
              color: #556987;
          }


          .contact-stage-links {
              display: flex;
              flex-direction: column;
              gap: 0.5rem;
          }

          .contact-stage-cta {
              display: inline-flex;
              align-items: center;
              justify-content: center;
              padding: 1rem 1.75rem;
              background: white;
              border: 1px solid var(--color-secondary);
              border-radius: 16px;
              color: var(--color-text);
              font-family: var(--font-text);
              font-size: 1.125rem;
              font-weight: 500;
              line-height: 1.56;
              cursor: pointer;
              text-decoration: none;
              box-shadow: 0px 1px 2px rgba(105, 81, 255, 0.05);
              margin-top: 2rem;
              transition: all 0.3s ease;
          }

          .contact-stage-cta:hover {
              background: var(--color-secondary);
              color: white;
              transform: translateY(-2px);
              box-shadow: 0px 4px 8px rgba(214, 39, 57, 0.2);
          }

          .contact-stage-cta-wrapper {
              text-align: center;
          }

          @media (max-width: 480px) {
              .contact-stage-cta {
                  width: 100%;
                  box-sizing: border-box;
                  padding-left: 1rem;
                  padding-right: 1rem;
                  font-size: 1rem;
              }
          }

          @media (max-width: 768px) {
              .contact-stage-title {
                  font-size: 1.75rem;
              }

              .contact-stage-intro {
                  font-size: 1rem;
              }

              .contact-stage-card {
                  flex-direction: column;
                   padding: 2rem 1rem 2rem 1rem;
              }

              .contact-stage-icon {
                  width: 45px;
                  height: 45px;
                  font-size: 1.5rem;
              }

              .contact-stage-icon-calendar,
              .contact-stage-icon-check {
                  width: 50px;
                  height: 50px;
              }

              .contact-stage-card-title {
                  font-size: 1.25rem;
              }

              .contact-stage-card-text {
                  font-size: 0.9375rem;
              }

              .contact-stage-cta {
                  font-size: 1rem;
                  padding: 0.875rem 1.5rem;
                  width: 100%;
              }

              .contact-stage-badge {
                  font-size: 0.875rem;
              }
          }

          @media (max-width: 480px) {
              .contact-stage-wrapper {
                  padding: 4rem 0;
              }

              .contact-stage-title {
                  font-size: 1.5rem;
              }

              .contact-stage-intro {
                  font-size: 0.9375rem;
              }

              .contact-stage-card {
                  padding: 2rem 1rem 2rem 1rem;
              }

              .contact-stage-card-title {
                  font-size: 1.125rem;
              }
          }



          /* ============================== Section Brands ============================== */


  .brand-partners {
    width: 100%;
    background: var(--color-accent);
    padding: 2rem 0;
    display: flex;
    justify-content: center;
    align-items: center;
    padding-bottom:  3rem;
  }

  .brand-partners__container {
    max-width: var(--container-max-width);
    width: 100%;
    text-align: center;
    padding: 0 var(--container-padding);
  }


  .brand-partners__title {
    display: inline-block;
    background: var(--color-accent);
    color: #556987;
    font-family: var(--font-title), var(--font-text);
    font-size: 16px;
    font-weight: 500;
    line-height: 24px;
    padding: 4px 12px;
    border-radius: 36px;
    outline: 1px solid #556987;
    box-shadow: 0px 1px 2px rgba(105, 81, 255, 0.05);
    margin-bottom: 3rem;
  }


  .brand-partners__logos {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10rem;
    flex-wrap: wrap;
  }

  .brand-partners__logo {
    height: auto;
    max-width: 140px;
    opacity: 0.8;
    transition: opacity 0.3s ease;
  }

  .brand-partners__logo:hover {
    opacity: 1;
  }



  /* ====== Responsive ===== */


  @media (max-width: 768px) {
    .brand-partners__logos {
      gap: 4rem;
    }
  }







