/* ==========================================================================
   Page « Carte cadeau »
   ========================================================================== */

.contact {
  display: grid;
  grid-template-columns: .85fr 1.15fr;
  gap: 70px;
  align-items: start;
}
.contact__texte .titre-sous { line-height: 1.3; }
.contact__bio { margin-top: 28px; font-size: 15px; line-height: 1.32; color: var(--gris-texte); }
.contact__logo { width: 220px; margin-top: 60px; }

.contact__form { padding-top: 6px; }
.titre-sous--petit { font-size: 16px; margin-bottom: 24px; }
.champ--groupe { margin-bottom: 30px; }
.contact__submit { text-align: right; margin-top: 30px; }

@media (max-width: 860px) {
  .contact { grid-template-columns: 1fr; gap: 40px; }
  .contact__logo { margin-top: 34px; }
  .contact__submit { text-align: center; }
}

/* ---------- Montant libre (min. 20 €) ---------- */
.champ--montant .champ__label {
  display: block;
  font-family: var(--font-titre);
  font-size: 12px;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--brun);
  margin-bottom: 10px;
}
.champ-euro { position: relative; }
/* main.css ne cible pas input[type=number] : on reprend le même gabarit */
.champ-euro input {
  width: 100%;
  border: 1px solid var(--brun);
  background: var(--blanc);
  padding: 14px 42px 14px 16px;
  font: inherit;
  color: var(--brun);
  border-radius: 0;
}
/* masque les flèches natives du champ nombre */
.champ-euro input::-webkit-outer-spin-button,
.champ-euro input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.champ-euro input[type="number"] { -moz-appearance: textfield; appearance: textfield; }
.champ-euro__symbole {
  position: absolute;
  right: 16px; top: 50%;
  transform: translateY(-50%);
  color: var(--brun);
  font-size: 17px;
  pointer-events: none;
}
