.forminator-ui.forminator-custom-form{
  --gab-ink:#00465D;
  --gab-sand:#f7fbfc;
  --gab-teal:#19AFCA;
  --gab-mid:#2D7188;
  --gab-amber:#f59e0b;
  --gab-slate:#94a3b8;
  --gab-card:#ffffff;
  --gab-border:rgba(0,70,93,.22);
  --gab-bg:#eef7fa;
  --gab-white:#ffffff;
  --gab-border-strong:rgba(0,70,93,.35);
  --gab-border-soft:rgba(0,70,93,.18);
  --gab-text-muted:rgba(0,70,93,.7);
  --gab-danger:#ff0000;
  --gab-danger-bg:#ffe5ea;
  --gab-shadow:0 14px 32px rgba(15,23,42,.08);
  --gab-radius:18px;
  font-family:inherit;
  color:var(--gab-ink);
  background:var(--gab-card) !important;
  border:1px solid var(--gab-border) !important;
  border-radius:var(--gab-radius) !important;
  padding:26px 24px 30px !important;
  box-shadow:var(--gab-shadow) !important;
}

.forminator-ui.forminator-custom-form .forminator-pagination-steps .forminator-break:before {
  background-color: var(--gab-teal) !important;
}

.forminator-ui.forminator-custom-form .forminator-pagination-steps .forminator-step.forminator-current ~ .forminator-step .forminator-step-dot,
.forminator-ui.forminator-custom-form .forminator-pagination-steps .forminator-break {
  border-color: var(--gab-ink) !important;
  background-color: var(--gab-ink) !important;
}

.forminator-ui.forminator-custom-form .forminator-step .forminator-step-dot {
  border-color: var(--gab-border-strong) !important;
  background-color: var(--gab-teal) !important;
}


.forminator-ui.forminator-custom-form .forminator-current .forminator-step-label {
color: var(--gab-ink) !important;
}

.forminator-ui.forminator-custom-form .forminator-input,
.forminator-ui.forminator-custom-form .select2-selection{
  border-radius: 50px !important;
}

.forminator-ui.forminator-custom-form .forminator-label {
  color: var(--gab-ink) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  margin-bottom: 10px !important;
}

.forminator-ui.forminator-custom-form h3{
  font-weight: 800 !important;
  padding: 15px 10px !important;
  background-color: var(--gab-ink);
  border-radius: 8px !important;
  color: #ffffff !important;
  font-size: 24px !important;
}

.forminator-ui.forminator-custom-form .forminator-checkbox-box,
.forminator-ui.forminator-custom-form .forminator-radio-bullet {
  border: 1px solid var(--gab-border) !important;
  background-color: var(--gab-white) !important;
  border-radius: 999px !important;
  width:20px;
  height:20px;
  flex: 0 0 20px;
}
.forminator-ui.forminator-custom-form .forminator-description {
  font-size: 12px !important;
  font-weight: 400 !important;
  color: var(--gab-text-muted) !important;
  margin-top: 10px !important;
}
.forminator-ui.forminator-custom-form .forminator-checkbox-label,
.forminator-ui.forminator-custom-form .forminator-radio-label {
  font-weight: 500 !important;
  color: var(--gab-ink) !important;
}

.forminator-ui.forminator-custom-form .forminator-row .forminator-label {
position: relative;
padding-left: 24px; 
}

.forminator-ui.forminator-custom-form .forminator-row .forminator-label::before {
content: "";
position: absolute;
left: 0;
top: 0;
bottom: 0;
width: 4px;
border-radius: 999px;
background: var(--gab-teal);
}



.forminator-ui.forminator-custom-form .forminator-error-message {
  background-color: var(--gab-danger-bg) !important;
  border-radius: 5px !important;
  color: var(--gab-danger) !important;
  margin-top: 15px !important;
  padding: 10px 20px !important;
}


.forminator-ui.forminator-custom-form .forminator-button-next,
.forminator-ui.forminator-custom-form .forminator-button-back,
.forminator-ui.forminator-custom-form .forminator-button-submit {
  padding: 10px 14px !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  box-shadow: none !important;
  border-radius: 50px !important;
  border: 1px solid var(--gab-border) !important;
  background-color: var(--gab-white) !important;
  color: var(--gab-ink) !important;
}

.forminator-ui.forminator-custom-form .forminator-button-next,
.forminator-ui.forminator-custom-form .forminator-button-submit{
  background-color: var(--gab-teal) !important;
  border-color: transparent !important;
  color: var(--gab-white) !important;
}

.forminator-ui.forminator-custom-form .forminator-button-next:hover,
.forminator-ui.forminator-custom-form .forminator-button-back:hover,
.forminator-ui.forminator-custom-form .forminator-button-submit:hover {
  transform: translateY(-1px);

}


/* 1. Tous les groupes radio/checkbox en CSS Grid */
.forminator-field-radio .forminator-field,
.forminator-field-checkbox .forminator-field {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr)); /* 4 colonnes desktop */
grid-auto-rows: auto;
column-gap: 32px;
row-gap: 12px;
align-items: baseline !important;
}

/* 2. Label + description + erreur : pleine largeur */
.forminator-field-radio .forminator-label,
.forminator-field-checkbox .forminator-label,
.forminator-field-radio .forminator-description,
.forminator-field-checkbox .forminator-description,
.forminator-field-radio .forminator-error-message,
.forminator-field-checkbox .forminator-error-message {
grid-column: 1 / -1;  /* occupe toutes les colonnes */
}

/* 3. Chaque option (radio/checkbox) = une cellule de la grille */
.forminator-field-radio .forminator-radio-inline,
.forminator-field-checkbox .forminator-checkbox-inline {
display: flex;
align-items: center;
}

.forminator-checkbox .forminator-checkbox-box, .forminator-checkbox .forminator-checkbox-box {
  align-self: start !important;
}

/* un peu d’espace entre la pastille et le texte */
.forminator-radio-bullet,
.forminator-checkbox-box {
margin-right: 8px;
}


@media (max-width: 900px) {
.forminator-field-radio .forminator-field,
.forminator-field-checkbox .forminator-field {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
}

@media (max-width: 600px) {
.forminator-field-radio .forminator-field,
.forminator-field-checkbox .forminator-field {
  grid-template-columns: 1fr;
}
}

.forminator-ui.forminator-custom-form .forminator-radio .forminator-radio-bullet:before {
  background-color: var(--gab-teal) !important;
}
.forminator-ui.forminator-custom-form[data-design=default] select.forminator-select2+.forminator-select .selection span[role=combobox].select2-selection--multiple,
.forminator-ui.forminator-custom-form[data-design=default] select.forminator-select2+.forminator-select .selection span[role=combobox].select2-selection--single {
  background-color: var(--gab-white) !important;
}
.forminator-ui.forminator-custom-form[data-design=default] .forminator-checkbox .forminator-checkbox-box~span {
  color: var(--gab-ink) !important;
}

/* Alert-style intro block at top of pages */
.forminator-ui.forminator-custom-form .forminator-html{
  background: var(--gab-bg) !important;
  border: 1px solid var(--gab-border-soft) !important;
  border-radius: 12px !important;
  padding: 14px 16px !important;
  color: var(--gab-ink) !important;
  font-weight: 700 !important;
  font-size: 13px !important;
}

.forminator-ui.forminator-custom-form .form-info {
  background-color: var(--gab-bg);
  padding: 19px 23px !important;
  margin-left: 15px !important;
  margin-right: 15px !important;
  border-radius: 5px !important;
}

.forminator-ui.forminator-custom-form .form-info ul {
  margin-bottom: 0 !important;
}

.forminator-ui.forminator-custom-form .form-info li::marker{
  display: none !important;
  content: "" !important;
}

.forminator-ui.forminator-custom-form .form-info li::before{
  font-size: 16px !important;
  font-weight: 800 !important;
  margin-right: 8px !important;
  width: 20px !important;
  display: inline-block !important;
  text-align: center !important;
  vertical-align: middle !important;
  color: var(--gab-amber) !important;
  font-family: "dashicons" !important;
  content: "\f14c" !important;

}

/* Pagination display (capsule bar with labels inside) */
.forminator-ui.forminator-custom-form .forminator-pagination{
  margin-bottom: 18px !important;
}
.forminator-ui.forminator-custom-form .forminator-pagination-steps{
  display: grid !important;
  grid-auto-flow: column;
  grid-auto-columns: minmax(0, 1fr);
  gap: 6px;
  padding: 10px 12px !important;
  background: var(--gab-card) !important;
  border: 1px solid var(--gab-border) !important;
  border-radius: 14px !important;
}
.forminator-ui.forminator-custom-form .forminator-pagination-steps .forminator-step{
  padding: 6px 8px !important;
  border-radius: 10px !important;
  background: transparent !important;
}
.forminator-ui.forminator-custom-form .forminator-pagination-steps .forminator-step.forminator-current{
  background: rgba(25,175,202,.12) !important;
}
.forminator-ui.forminator-custom-form .forminator-pagination-steps .forminator-step-dot{
  display: none !important;
}
.forminator-ui.forminator-custom-form .forminator-pagination-steps .forminator-step-label{
  font-size: 10px !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  color: rgba(0,70,93,.7) !important;
}
.forminator-ui.forminator-custom-form .forminator-pagination-steps .forminator-step.forminator-current .forminator-step-label{
  color: var(--gab-ink) !important;
  font-weight: 800 !important;
}
@media (max-width: 900px){
  .forminator-ui.forminator-custom-form .forminator-pagination-steps{
    grid-auto-flow: row;
  }
}

.forminator-ui.forminator-custom-form .forminator-save-draft-link {
  padding: 10px 14px !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  box-shadow: none !important;
  border-radius: 50px !important;
  border: 1px solid var(--gab-border) !important;
  background-color: var(--gab-white) !important;
  color: var(--gab-ink) !important;
}
forminator-design--default .forminator-response-message.forminator-success {
  background-color: var(--gab-bg);
}