/* Iris — formulaire de rendez-vous
   Palette alignée sur la charte Iris (indigo / violet / bleu). */
.iris-rdv-wrap{
  --iris-indigo:#302f80;
  --iris-violet:#503b8f;
  --iris-blue:#46509e;
  --iris-ink:#1d1d1b;
  --iris-ink-soft:#5b5871;
  --iris-paper:#eae9f4;
  --iris-paper-soft:#f4f3fa;
  --iris-line:rgba(29,29,27,0.16);
  max-width:640px;
  margin:0 auto;
  padding:32px;
  background:var(--iris-paper-soft);
  border:1px solid var(--iris-line);
  border-radius:22px;
  font-family:'Hanken Grotesk',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  box-sizing:border-box;
}
.iris-rdv-wrap *{ box-sizing:border-box; }

.iris-rdv-title{
  margin:0 0 20px;
  font-size:22px;
  font-weight:800;
  color:var(--iris-ink);
  letter-spacing:-0.01em;
}

.iris-rdv-row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
  margin-bottom:16px;
}
@media (max-width:520px){
  .iris-rdv-row{ grid-template-columns:1fr; }
}

.iris-rdv-field{ margin-bottom:16px; }
.iris-rdv-row .iris-rdv-field{ margin-bottom:0; }

.iris-rdv-field label{
  display:block;
  font-size:13px;
  font-weight:700;
  color:var(--iris-ink);
  margin-bottom:7px;
}

.iris-rdv-field input,
.iris-rdv-field select,
.iris-rdv-field textarea{
  width:100%;
  padding:12px 14px;
  font-size:15px;
  font-family:inherit;
  color:var(--iris-ink);
  background:#fff;
  border:1px solid var(--iris-line);
  border-radius:12px;
  outline:none;
  transition:border-color .15s ease, box-shadow .15s ease;
}
.iris-rdv-field input:focus,
.iris-rdv-field select:focus,
.iris-rdv-field textarea:focus{
  border-color:var(--iris-violet);
  box-shadow:0 0 0 3px rgba(80,59,143,0.15);
}
.iris-rdv-field textarea{ resize:vertical; }

/* Honeypot: visually hidden, still reachable by simple bots */
.iris-rdv-hp{
  position:absolute !important;
  width:1px; height:1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
}

.iris-rdv-btn{
  display:inline-flex;
  align-items:center;
  gap:10px;
  width:100%;
  justify-content:center;
  background:var(--iris-ink);
  color:var(--iris-paper);
  font-family:inherit;
  font-weight:700;
  font-size:15.5px;
  border:1px solid var(--iris-ink);
  border-radius:999px;
  padding:15px 24px;
  cursor:pointer;
  transition:background-color .15s ease, opacity .15s ease;
}
.iris-rdv-btn:hover{ background:var(--iris-indigo); border-color:var(--iris-indigo); }
.iris-rdv-btn:disabled{ opacity:.6; cursor:default; }
.iris-rdv-arrow{ transition:transform .15s ease; }
.iris-rdv-btn:hover .iris-rdv-arrow{ transform:translate(2px,-2px); }

.iris-rdv-btn.is-loading .iris-rdv-btn-label::after{
  content:"…";
}

.iris-rdv-note{
  margin:12px 0 0;
  font-size:12.5px;
  color:var(--iris-ink-soft);
  text-align:center;
}

.iris-rdv-success,
.iris-rdv-error{
  margin-top:16px;
  padding:16px 18px;
  border-radius:14px;
  font-size:14.5px;
  line-height:1.5;
}
.iris-rdv-success{
  background:#e8f3e9;
  color:#1e4620;
  border:1px solid #bfe0c2;
}
.iris-rdv-error{
  background:#fbe9e7;
  color:#7a1d12;
  border:1px solid #f3c2ba;
}
