  /* ===== PAGE INSCRIPTION CAUX TT ===== */

  .inscription-page {
    max-width: 900px;
    margin: 0 auto 40px;
  }

  .inscription-header {
    margin-bottom: 16px;
  }

  .inscription-header h1 {
    margin-top: 0;
    font-size: 1.85rem;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--accent-light);
  }

  .inscription-intro {
    font-size: 0.95rem;
    color: var(--text-soft);
    margin-bottom: 14px;
  }

  .inscription-intro strong {
    color: var(--accent-light);
  }

  .inscription-highlight {
    margin-bottom: 18px;
    padding: 10px 14px;
    border-radius: 12px;
    background: rgba(5, 20, 32, 0.95);
    border: 1px solid rgba(79,216,255,0.45);
    font-size: 0.9rem;
    color: var(--text-soft);
  }

  .inscription-highlight span {
    color: var(--accent-light);
    font-weight: 600;
  }

  /* === CARTE HELLOASSO ORANGE (LICENCE + TARIFS) === */

  .inscription-helloasso-card {
    margin: 12px 0 0;
    padding: 12px 14px 14px;
    border-radius: 14px;
    background:
      radial-gradient(circle at top left, rgba(255, 180, 90, 0.18), transparent 60%),
      radial-gradient(circle at bottom right, rgba(255, 130, 70, 0.14), transparent 60%),
      rgba(25, 12, 4, 0.96);
    border: 1px solid rgba(255, 190, 120, 0.8);
    box-shadow:
      0 0 8px rgba(255, 190, 120, 0.6),
      0 14px 32px rgba(0, 0, 0, 0.95);
    color: #ffe9c9;
    position: relative;
    overflow: hidden;
  }

  .inscription-helloasso-card::before {
    content: "";
    position: absolute;
    inset: -1px;
    border-radius: inherit;
    border: 1px solid rgba(255, 210, 150, 0.3);
    box-shadow: 0 0 14px rgba(255, 190, 120, 0.5);
    pointer-events: none;
    opacity: 0.7;
  }

  .inscription-helloasso-title {
    margin: 0 0 6px;
    font-size: 0.98rem;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    color: #ffd89a;
  }

  .inscription-helloasso-text {
    font-size: 0.9rem;
    margin: 0 0 8px;
    color: #ffe9c9;
  }

  .inscription-helloasso-text strong {
    color: #fff4d0;
  }

  .inscription-helloasso-list {
    margin: 0 0 10px 1.1rem;
    padding: 0;
    font-size: 0.86rem;
    color: #ffe3ba;
  }

  .inscription-helloasso-list li {
    margin-bottom: 2px;
  }

  .inscription-helloasso-bottom {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
    justify-content: flex-start;
  }

  .inscription-helloasso-note {
    font-size: 0.8rem;
    color: rgba(255, 232, 200, 0.9);
  }

  /* Bouton HelloAsso orange (principal) */
  .helloasso-btn.helloasso-btn-orange {
    display: inline-block;
    padding: 9px 18px;
    border-radius: 999px;
    background: radial-gradient(circle at top,
      rgba(255, 205, 130, 0.4),
      rgba(55, 25, 0, 0.98)
    );
    color: #fff1d3;
    border: 1px solid rgba(255, 210, 150, 0.95);
    box-shadow:
      0 0 4px rgba(255, 215, 160, 0.85),
      0 0 12px rgba(255, 170, 90, 0.65);
    text-shadow: 0 0 4px rgba(0,0,0,0.9);
    font-weight: 600;
    font-size: 0.92rem;
    text-decoration: none;
  }

  .helloasso-btn.helloasso-btn-orange:hover {
    transform: translateY(-1px);
    background: radial-gradient(circle at top,
      rgba(255, 220, 160, 0.56),
      rgba(60, 28, 2, 1)
    );
    box-shadow:
      0 0 6px rgba(255, 230, 180, 1),
      0 0 16px rgba(255, 185, 110, 0.9);
    text-decoration: none;
  }

  .helloasso-btn.helloasso-btn-orange:active {
    transform: translateY(1px);
    box-shadow:
      0 0 3px rgba(255, 210, 150, 0.8),
      0 0 10px rgba(255, 160, 80, 0.7),
      inset 0 0 8px rgba(0,0,0,0.9);
  }

  /* Bouton secondaire : voir les tarifs */
  .helloasso-btn-secondary {
    display: inline-block;
    padding: 8px 14px;
    border-radius: 999px;
    border: 1px solid rgba(255, 210, 150, 0.7);
    background: rgba(40, 20, 4, 0.6);
    color: #ffe7c4;
    font-size: 0.86rem;
    text-decoration: none;
  }

  .helloasso-btn-secondary:hover {
    background: rgba(55, 28, 6, 0.9);
    box-shadow:
      0 0 4px rgba(255, 210, 150, 0.6),
      0 0 10px rgba(255, 170, 90, 0.5);
    text-decoration: none;
  }

  @media (max-width: 600px) {
    .inscription-helloasso-bottom {
      flex-direction: column;
      align-items: flex-start;
    }
  }

  .inscription-messages {
    margin-bottom: 14px;
  }

  .inscription-message-success,
  .inscription-message-error {
    border-radius: 12px;
    padding: 10px 12px;
    font-size: 0.9rem;
    margin-bottom: 8px;
  }

  .inscription-message-success {
    background: rgba(8, 50, 24, 0.96);
    border: 1px solid rgba(120, 255, 190, 0.7);
    color: #dfffea;
  }

  .inscription-message-error {
    background: rgba(40, 10, 10, 0.96);
    border: 1px solid rgba(255, 140, 140, 0.7);
    color: #ffe7e7;
  }

  .inscription-form {
    margin-top: 6px;
  }

  .inscription-grid {
    display: grid;
    grid-template-columns: 1.3fr 1.1fr;
    gap: 18px;
  }

  @media (max-width: 800px) {
    .inscription-grid {
      grid-template-columns: 1fr;
    }
  }

  .inscription-fieldset {
    border: 1px solid rgba(79,216,255,0.35);
    border-radius: 14px;
    padding: 12px 14px 10px;
    margin: 0 0 10px;
    background:
      radial-gradient(circle at top left, rgba(79,216,255,0.16), transparent 60%),
      rgba(7, 12, 20, 0.97);
  }

  .inscription-fieldset legend {
    padding: 0 6px;
    font-size: 0.95rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--accent-light);
  }

  .inscription-fields {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px 14px;
    margin-top: 8px;
  }

  .inscription-fields--full {
    grid-template-columns: 1fr;
  }

  @media (max-width: 600px) {
    .inscription-fields {
      grid-template-columns: 1fr;
    }
  }

  .inscription-field {
    display: flex;
    flex-direction: column;
    gap: 4px;
    font-size: 0.9rem;
  }

  .inscription-label {
    font-size: 0.84rem;
    color: var(--text-soft);
    text-transform: uppercase;
    letter-spacing: 0.08em;
  }

  .inscription-label span.required {
    color: #ff8b8b;
    margin-left: 2px;
  }

  .inscription-input,
  .inscription-select,
  .inscription-textarea {
    border-radius: 10px;
    border: 1px solid rgba(79,216,255,0.4);
    background: rgba(5, 10, 18, 0.96);
    color: var(--text-main);
    padding: 6px 8px;
    font-size: 0.9rem;
    box-shadow:
      0 0 5px rgba(79,216,255,0.25),
      0 10px 18px rgba(0,0,0,0.85);
  }

  .inscription-input:focus,
  .inscription-select:focus,
  .inscription-textarea:focus {
    outline: none;
    border-color: rgba(150,235,255,0.95);
    box-shadow:
      0 0 8px rgba(150,235,255,0.9),
      0 14px 26px rgba(0,0,0,1);
  }

  .inscription-textarea {
    min-height: 110px;
    resize: vertical;
  }

  .inscription-radio-group,
  .inscription-checkbox-group {
    display: flex;
    flex-direction: column;
    gap: 4px;
    font-size: 0.86rem;
    color: var(--text-soft);
  }

  .inscription-radio-option,
  .inscription-checkbox-option {
    display: flex;
    align-items: center;
    gap: 6px;
  }

  .inscription-radio-option input,
  .inscription-checkbox-option input {
    accent-color: var(--accent);
  }

  .inscription-footer {
    margin-top: 12px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    font-size: 0.8rem;
    color: var(--text-soft);
  }

  .inscription-footer .rgpd {
    font-size: 0.8rem;
  }

  .inscription-submit {
    margin-top: 8px;
  }

  .inscription-submit button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.45rem;
    padding: 0.6rem 1.4rem;
    border-radius: 999px;
    border: 1px solid rgba(150,235,255,0.9);
    background: radial-gradient(circle at top, rgba(150,235,255,0.2), rgba(3,8,15,1));
    color: #e9fbff;
    font-size: 0.95rem;
    font-weight: 600;
    cursor: pointer;
    box-shadow:
      0 0 8px rgba(79,216,255,0.7),
      0 12px 26px rgba(0,0,0,0.95);
    text-transform: uppercase;
    letter-spacing: 0.08em;
  }

  .inscription-submit button:hover {
    transform: translateY(-1px);
    box-shadow:
      0 0 10px rgba(160,240,255,1),
      0 18px 36px rgba(0,0,0,1);
  }

  .inscription-submit button:active {
    transform: translateY(1px);
    box-shadow:
      0 0 6px rgba(120,220,255,0.8),
      0 10px 18px rgba(0,0,0,0.9),
      inset 0 0 10px rgba(0,0,0,0.8);
  }

  .inscription-submit button span.icon {
    font-size: 1rem;
  }

/* Ajout (portage, hors thème d'origine) : mise en évidence des champs en erreur
   après une validation serveur échouée — réutilise la couleur déjà utilisée par
   .inscription-label span.required (#ff8b8b) plutôt que d'introduire une nouvelle teinte. */
.inscription-field-erreur .inscription-input,
.inscription-field-erreur .inscription-select,
fieldset.inscription-field-erreur {
  border-color: #ff8b8b;
}
.inscription-checkbox-group.inscription-field-erreur {
  outline: 1px solid #ff8b8b;
  border-radius: 8px;
  padding: 4px;
}
