.elementor-264 .elementor-element.elementor-element-76cde51{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--margin-top:40px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-264 .elementor-element.elementor-element-5891b7b{--display:flex;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:4px 4px;--row-gap:4px;--column-gap:4px;}.elementor-264 .elementor-element.elementor-element-bbdf59c{--display:flex;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-264 .elementor-element.elementor-element-0afaf93{text-align:center;}.elementor-264 .elementor-element.elementor-element-0afaf93 .elementor-heading-title{font-family:"Cartograph", Sans-serif;font-size:16px;font-weight:600;letter-spacing:-0.6px;color:var( --e-global-color-7bc6551 );}.elementor-264 .elementor-element.elementor-element-6a04e90{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 16px) 0px;text-align:center;}.elementor-264 .elementor-element.elementor-element-6a04e90 .elementor-heading-title{font-family:"Google sans flex", Sans-serif;font-size:22px;font-weight:700;line-height:25px;color:var( --e-global-color-primary );}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-264 .elementor-element.elementor-element-f01f0c7{text-align:center;font-family:"Google sans flex", Sans-serif;font-size:15px;font-weight:400;}.elementor-264 .elementor-element.elementor-element-81d028f{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--margin-top:0px;--margin-bottom:120px;--margin-left:0px;--margin-right:0px;}.elementor-264 .elementor-element.elementor-element-d6c8435{--display:flex;--border-radius:30px 30px 30px 30px;box-shadow:0px 0px 12px 0px rgba(68, 68, 68, 0.12);--padding-top:40px;--padding-bottom:40px;--padding-left:50px;--padding-right:50px;}.elementor-264 .elementor-element.elementor-element-d6c8435:not(.elementor-motion-effects-element-type-background), .elementor-264 .elementor-element.elementor-element-d6c8435 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-7bc6551 );}:root{--page-title-display:none;}@media(min-width:768px){.elementor-264 .elementor-element.elementor-element-5891b7b{--width:70%;}.elementor-264 .elementor-element.elementor-element-d6c8435{--width:70%;}}@media(max-width:1024px) and (min-width:768px){.elementor-264 .elementor-element.elementor-element-5891b7b{--width:90%;}.elementor-264 .elementor-element.elementor-element-d6c8435{--width:90%;}}@media(max-width:1366px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );}}@media(max-width:1024px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );}}@media(max-width:767px){.elementor-264 .elementor-element.elementor-element-76cde51{--margin-top:20px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-264 .elementor-element.elementor-element-5891b7b{--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-264 .elementor-element.elementor-element-bbdf59c{--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-264 .elementor-element.elementor-element-0afaf93{text-align:start;}.elementor-264 .elementor-element.elementor-element-6a04e90{text-align:start;}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );}.elementor-264 .elementor-element.elementor-element-f01f0c7{margin:-6px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:start;font-size:14px;}.elementor-264 .elementor-element.elementor-element-f01f0c7 p{margin-block-end:0px;}.elementor-264 .elementor-element.elementor-element-81d028f{--margin-top:0px;--margin-bottom:90px;--margin-left:0px;--margin-right:0px;}.elementor-264 .elementor-element.elementor-element-d6c8435{--padding-top:25px;--padding-bottom:25px;--padding-left:18px;--padding-right:18px;}}/* Start custom CSS for heading, class: .elementor-element-0afaf93 */.elementor-264 .elementor-element.elementor-element-0afaf93 {
  display: inline-block;
    width: 235px;
  height: 30px;
  background-image: url("https://www.keep-qalam-school.fr/wp-content/uploads/2026/07/bulle-vert-1.svg");
  background-repeat: no-repeat;
  background-size: 100% 100%;
  padding: 4px 0px;
}

@media (max-width: 767px) {
  .elementor-264 .elementor-element.elementor-element-0afaf93 {
    background-position: left center;
    background-size: contain;
    padding: 4px 10px;
  }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-752a75c *//* ============================================================
   1. POLICE GLOBALE
   ============================================================ */
.forminator-custom-form,
.forminator-custom-form * {
  font-family: 'Google Sans Flex', sans-serif;
}

/* ============================================================
   2. TITRES DE SECTION (ex: "Informations concernant l'élève")
   ============================================================ */
.forminator-field-html .forminator-merge-tags label {
  font-size: 19px !important;
  color: #0C6C6C;
  padding-bottom: 0px;
  margin-bottom: -19px !important;
}

/* ============================================================
   3. CHAMPS TEXTE (style pilule)
   ============================================================ */
#forminator-module-1462 input.forminator-input {
  border: 1px solid #e3e4e5;
  border-radius: 50px;
  padding: 16px 22px;
  font-size: 16px;
  background-color: transparent;
  height: auto;
}

#forminator-module-1462 .forminator-field-name input[type="text"] {
  border-radius: 50px;
}

#forminator-module-1462 input.forminator-input:focus,
#forminator-module-1462 .forminator-textarea:focus {
  border-color: #969696;
  outline: none;
  box-shadow: none;
}

/* ============================================================
   4. TEXTAREA
   ============================================================ */
#forminator-module-1462 .forminator-textarea {
  border: 1px solid #e3e4e5;
  border-radius: 20px;
  padding: 16px 22px;
  font-size: 16px;
  background-color: transparent;
}

/* ============================================================
   5. CHAMP DATE - ICÔNE
   ============================================================ */
#forminator-module-1462 .forminator-input-with-icon {
  position: relative;
}

#forminator-module-1462 .forminator-icon-calendar {
  position: absolute;
  left: 18px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 2;
}

/* ============================================================
   6. PLACEHOLDER
   ============================================================ */
.forminator-ui#forminator-module-1462 ::placeholder {
  color: #9C9C9C !important;
  opacity: 1 !important;
}

.forminator-ui#forminator-module-1462 ::-webkit-input-placeholder {
  color: #9C9C9C !important;
}

.forminator-ui#forminator-module-1462 ::-moz-placeholder {
  color: #9C9C9C !important;
  opacity: 1 !important;
}

/* ============================================================
   7. LABEL FLOTTANT
   ============================================================ */
#forminator-module-1462 .floating-label-wrapper {
  position: relative;
}

#forminator-module-1462 .floating-label {
  position: absolute;
  left: 22px;
  top: 50%;
  transform: translateY(-50%);
  color: #999999;
  font-size: 16px;
  pointer-events: none;
  transition: all 0.15s ease;
  padding: 0 4px;
}

#forminator-module-1462 .floating-label-wrapper input:focus + .floating-label,
#forminator-module-1462 .floating-label-wrapper input:not(:placeholder-shown) + .floating-label {
  top: 13px;
  font-size: 11px;
}

#forminator-module-1462 .floating-label-wrapper input.forminator-input {
  padding-top: 23px !important;
  padding-bottom: 10px !important;
}

/* ============================================================
   8. RADIOS - ÉTAT PAR DÉFAUT (non sélectionné)
   ============================================================ */
.forminator-ui#forminator-module-1462.forminator-design--default .forminator-radio .forminator-radio-bullet {
  background-color: #fff !important;
  border: 1px solid #cbcbcb !important;
}

/* ============================================================
   9. RADIOS - CATÉGORIE (radio-2) : Enfant / Adolescent / Adulte
   ============================================================ */
/* Enfant - violet */
.forminator-ui#forminator-module-1462.forminator-design--default #forminator-field-radio-2-label-1 input:checked + .forminator-radio-bullet {
  border-color: #bf9bde !important;
  background-color: #fff !important;
}
.forminator-ui#forminator-module-1462.forminator-design--default #forminator-field-radio-2-label-1 .forminator-radio-bullet:before {
  background-color: #bf9bde !important;
}

/* Adolescent - jaune */
.forminator-ui#forminator-module-1462.forminator-design--default #forminator-field-radio-2-label-2 input:checked + .forminator-radio-bullet {
  border-color: #f0c265 !important;
  background-color: #fff !important;
}
.forminator-ui#forminator-module-1462.forminator-design--default #forminator-field-radio-2-label-2 .forminator-radio-bullet:before {
  background-color: #f0c265 !important;
}

/* Adulte - orange */
.forminator-ui#forminator-module-1462.forminator-design--default #forminator-field-radio-2-label-3 input:checked + .forminator-radio-bullet {
  border-color: #ea9878 !important;
  background-color: #fff !important;
}
.forminator-ui#forminator-module-1462.forminator-design--default #forminator-field-radio-2-label-3 .forminator-radio-bullet:before {
  background-color: #ea9878 !important;
}

/* ============================================================
   10. RADIOS - SEXE (radio-1) : Fille/Femme / Garçon/Homme
   ============================================================ */
/* Fille/Femme - orange */
.forminator-ui#forminator-module-1462.forminator-design--default #forminator-field-radio-1-label-1 input:checked + .forminator-radio-bullet {
  border-color: #ea9878 !important;
  background-color: #fff !important;
}
.forminator-ui#forminator-module-1462.forminator-design--default #forminator-field-radio-1-label-1 .forminator-radio-bullet:before {
  background-color: #ea9878 !important;
}

/* Garçon/Homme - jaune */
.forminator-ui#forminator-module-1462.forminator-design--default #forminator-field-radio-1-label-2 input:checked + .forminator-radio-bullet {
  border-color: #f0c265 !important;
  background-color: #fff !important;
}
.forminator-ui#forminator-module-1462.forminator-design--default #forminator-field-radio-1-label-2 .forminator-radio-bullet:before {
  background-color: #f0c265 !important;
}

/* ============================================================
   11. BOUTON D'ENVOI
   ============================================================ */
#forminator-module-1462 .forminator-button-submit {
  border-radius: 50px;
  padding: 11px 39px;
  font-size: 15px !important;
  font-weight: 600;
  background-color: #0C6C6C;
  color: #fff;
}

.forminator-ui#forminator-module-1462.forminator-custom-form[data-design="default"] .forminator-button:hover {
  box-shadow: 0px 0px 12px 0px rgba(68, 68, 68, 0.12) !important;
  -webkit-box-shadow: 0 1px 20px #00000020 !important;
  background-color: #bf9bde;
}

.forminator-ui#forminator-module-1462 .forminator-row-last .forminator-col {
  display: flex;
  justify-content: center;
}

/* ============================================================
   12. ÉTAT "CHAMP REQUIS NON REMPLI"
   ============================================================ */
.forminator-ui#forminator-module-1462.forminator-design--default .forminator-field.forminator-has_error {
  position: relative;
}

#forminator-module-1462 .forminator-field.forminator-has_error input.forminator-input {
  border: 1px solid #d9534f !important;
  background-color: #fdf0f0 !important;
}

.forminator-ui#forminator-module-1462.forminator-design--default .forminator-error-message {
  background-color: transparent !important;
  color: #d9534f !important;
}

.forminator-ui#forminator-module-1462.forminator-design--default .forminator-field.forminator-has_error .forminator-error-message {
  position: absolute;
  right: 22px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 13px !important;
  font-weight: 500;
  margin: 0;
  padding: 0;
  white-space: nowrap;
}

/* ============================================================
   13. ESPACEMENTS ENTRE LES CHAMPS (rows)
   ============================================================ */
.forminator-ui#forminator-module-1462 .forminator-row {
  margin-bottom: 19px !important;
}

.forminator-ui#forminator-module-1462 .forminator-row:has(#radio-2) {
  margin-bottom: 12px !important;
}

.forminator-ui#forminator-module-1462 .forminator-row:has(input[name="phone-1"]) {
  margin-bottom: 32px !important;
}

/* ============================================================
   14. CALENDRIER (datepicker) - CONTENEUR GÉNÉRAL
   ============================================================ */
.ui-datepicker {
  font-family: 'Google Sans Flex', sans-serif !important;
  border: 1px solid #e0e0e0 !important;
  border-radius: 30px !important;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08) !important;
  padding: 12px !important;
  background-color: #ffffff !important;
}

.forminator-custom-form-1462.forminator-calendar--default:before {
  border-color: #bf9bde !important;
  border-radius: 20px !important;
  background-color: #fff !important;
}

/* ============================================================
   15. CALENDRIER - EN-TÊTE (mois/année + flèches)
   ============================================================ */
.ui-datepicker-month,
.ui-datepicker-year {
  font-family: 'Google Sans Flex', sans-serif !important;
  border: 1px solid #fff !important;
  border-radius: 30px !important;
  font-size: 13px !important;
  background-color: #ffffff !important;
  cursor: pointer !important;
}

.ui-datepicker-prev,
.ui-datepicker-next {
  width: 28px !important;
  height: 28px !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  transition: background-color 0.15s ease !important;
  background-color: #fff !important;
  color: #333333 !important;
  font-size: 11px !important;
}

.ui-datepicker-prev:hover,
.ui-datepicker-next:hover {
  background-color: #f0f0f0 !important;
}

.ui-datepicker-prev .ui-icon:before {
  content: "‹" !important;
  font-size: 20px !important;
  color: #333333 !important;
}

.ui-datepicker-next .ui-icon:before {
  content: "›" !important;
  font-size: 20px !important;
  color: #333333 !important;
}

/* ============================================================
   16. CALENDRIER - TABLEAU DES JOURS
   ============================================================ */
.ui-datepicker-calendar th {
  font-family: 'Google Sans Flex', sans-serif !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  color: #969696 !important;
  padding: 8px 4px !important;
  text-transform: uppercase !important;
  background-color: #fff;
}

.ui-datepicker-calendar td {
  padding: 1px !important;
  text-align: center !important;
  background-color: transparent !important;
}

.ui-datepicker-calendar tr {
  background-color: transparent !important;
}

.ui-datepicker-calendar td a {
  font-family: 'Google Sans Flex', sans-serif !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 32px !important;
  height: 32px !important;
  border-radius: 50% !important;
  font-size: 14px !important;
  color: #333333 !important;
  border: none !important;
  text-decoration: none !important;
  background-color: transparent !important;
  transition: background-color 0.15s ease !important;
}

.ui-datepicker-calendar td span {
  background-color: transparent !important;
}

.ui-datepicker-calendar td a:hover,
.ui-datepicker-calendar td a:focus,
.ui-datepicker-calendar td a:active {
  background-color: #0C6c6c !important;
  color: #fff !important;
  outline: none !important;
  box-shadow: none !important;
  border: none !important;
}

.ui-datepicker-calendar td a.ui-state-active {
  background-color: #0c6c6c !important;
  color: #ffffff !important;
  font-weight: 600 !important;
}

.ui-datepicker-calendar td.ui-datepicker-today a {
  border: none !important;
}

.ui-datepicker-calendar td.ui-datepicker-unselectable,
.ui-datepicker-calendar td.ui-state-disabled,
.ui-datepicker-calendar td.ui-datepicker-unselectable span,
.ui-datepicker-calendar td.ui-state-disabled span {
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
}

/* ============================================================
   17. MESSAGE D'ERREUR SUR RADIOS - MOBILE UNIQUEMENT
   ============================================================ */
@media (max-width: 767px) {
  #forminator-module-1462 [role="radiogroup"].forminator-has_error .forminator-error-message {
    position: static !important;
    display: block !important;
    transform: none !important;
    margin-top: 8px !important;
    text-align: left !important;
  }
}

/* ============================================================
   18. SÉPARATEUR ENTRE LES DEUX LIGNES DE RADIOS
   ============================================================ */
.forminator-ui#forminator-module-1462 .forminator-row:has(#radio-1) {
  padding-top: 2px;
}

.forminator-ui#forminator-module-1462 #radio-1 [role="radiogroup"] {
  display: inline-block;
  border-top: 1px solid #e0e0e0;
  padding-top: 2px;
}

/* ============================================================
   19. COULEUR DE CONTOUR AU FOCUS - PAR CHAMP
   ============================================================ */

/* Prénom - jaune */
#forminator-module-1462 input[name="name-2"]:focus {
  border-color: #f0c265 !important;
}

/* Nom - orange */
#forminator-module-1462 input[name="name-1"]:focus {
  border-color: #ea9878 !important;
}

/* Date de naissance - violet */
#forminator-module-1462 input[name="date-1"]:focus {
  border-color: #bf9bde !important;
}

/* Classe en septembre 2026 (text-1) - jaune */
#forminator-module-1462 input[name="text-1"]:focus {
  border-color: #f0c265 !important;
}

/* Email - orange */
#forminator-module-1462 input[name="email-1"]:focus {
  border-color: #ea9878 !important;
}

/* Confirmez votre email - violet */
#forminator-module-1462 input[name="confirm_email-1"]:focus {
  border-color: #bf9bde !important;
}

/* Numéro de téléphone - jaune */
#forminator-module-1462 input[name="phone-1"]:focus {
  border-color: #f0c265 !important;
}

/* Niveau de l'élève (textarea) - orange */
#forminator-module-1462 textarea[name="textarea-1"]:focus {
  border-color: #ea9878 !important;
}

/* ============================================================
   20. EMAIL INVALIDE
   ============================================================ */

#forminator-module-1462 input.custom-invalid {
  border-color: #d9534f !important;
  background-color: #fdf0f0 !important;
}

#forminator-module-1462 .custom-email-error {
  display: block;
  color: #d9534f;
  font-size: 13px;
  margin-top: 4px;
}

/* ============================================================
   20. CHECKBOX - COULEUR + ESPACEMENT
   ============================================================ */

/* Contour de la case (état par défaut) */
.forminator-ui#forminator-module-1462.forminator-design--default .forminator-checkbox .forminator-checkbox-box {
  border: 1px solid #e3E4E5 !important;
  background-color: #fff !important;
}

/* Contour au focus/coché : fond reste blanc */
.forminator-ui#forminator-module-1462.forminator-design--default .forminator-checkbox input:checked + .forminator-checkbox-box {
  border-color: #e3e4e5 !important;
  background-color: #fff !important;
}

/* Couleur de la coche elle-même */
.forminator-ui#forminator-module-1462.forminator-design--default .forminator-checkbox input:checked + .forminator-checkbox-box:after,
.forminator-ui#forminator-module-1462.forminator-design--default .forminator-checkbox input:checked + .forminator-checkbox-box:before {
  border-color: #0c6c6c !important;
  color: #0c6c6c !important;
}

/* Réduction de l'espace entre les choix */
.forminator-ui#forminator-module-1462.forminator-custom-form[data-design="default"] .forminator-checkbox:not(.forminator-checkbox-inline) {
  margin: 11px 0 !important;
}


.forminator-ui.forminator-custom-form[data-design=default] .forminator-textarea {
    margin-bottom: 18px !important;
}

.forminator-ui#forminator-module-1462 [data-field="html-3"] {
  margin-bottom: 0px !important;
}

/* ============================================================
   21. FORMULAIRE ENVOYE
   ============================================================ */
.forminator-ui#forminator-module-1462.forminator-design--default .forminator-response-message.forminator-success {
  background-color: #f5eefb !important;
  box-shadow: inset 2px 0 0 0 #bf9bde !important;
  -moz-box-shadow: inset 2px 0 0 0 #bf9bde !important;
  -webkit-box-shadow: inset 2px 0 0 0 #bf9bde !important;
}

/* Taille textes mobile */
@media (max-width: 767px) {
  #forminator-module-1462 ::placeholder {
    font-size: 13px !important;
  }
  #forminator-module-1462 ::-webkit-input-placeholder {
    font-size: 13px !important;
  }
  #forminator-module-1462 ::-moz-placeholder {
    font-size: 13px !important;
  }
}

@media (max-width: 767px) {
  .forminator-ui#forminator-module-1462 .forminator-radio-label {
    font-size: 13px !important;
  }
}

@media (max-width: 767px) {
  .forminator-field-html .forminator-merge-tags label {
    font-size: 18px !important;
  }
}

@media (max-width: 767px) {
  #forminator-module-1462 .select2-selection__rendered {
    font-size: 13px !important;
  }
}
@media (max-width: 767px) {
  .select2-results__option {
    font-size: 13px !important;
  }
}
@media (max-width: 767px) {
  .select2-results__option {
    padding: 0 16px !important;
  }
}
@media (max-width: 767px) {
  .forminator-ui#forminator-module-1462 .forminator-checkbox-label {
    font-size: 13px !important;
  }
}

@media (max-width: 767px) {
  #forminator-module-1462 .floating-label {
    font-size: 13px !important;
  }
}/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Cartograph';
	font-style: italic;
	font-weight: 600;
	font-display: auto;
	src: url('https://www.keep-qalam-school.fr/wp-content/uploads/2026/06/cartograph-demibold-italic.ttf') format('truetype');
}
/* End Custom Fonts CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Google sans flex';
	font-style: normal;
	font-weight: normal;
	font-display: auto;
	src: url('https://www.keep-qalam-school.fr/wp-content/uploads/2026/06/GoogleSansRounded-Regular.ttf') format('truetype');
}
@font-face {
	font-family: 'Google sans flex';
	font-style: normal;
	font-weight: 700;
	font-display: auto;
	src: url('https://www.keep-qalam-school.fr/wp-content/uploads/2026/06/GoogleSansRounded-Bold.ttf') format('truetype');
}
/* End Custom Fonts CSS */