.elementor-4166 .elementor-element.elementor-element-7991df6{--display:flex;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-4166 .elementor-element.elementor-element-45ff34b > .elementor-widget-container{margin:60px 0px -74px 0px;padding:0px 0px -14px 0px;}.elementor-4166 .elementor-element.elementor-element-770055a{--display:flex;}.elementor-widget-form .elementor-field-group > label, .elementor-widget-form .elementor-field-subgroup label{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group > label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-type-html{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-group .elementor-field{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form .e-form__buttons__wrapper__button-next{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-button[type="submit"]{background-color:var( --e-global-color-accent );}.elementor-widget-form .e-form__buttons__wrapper__button-previous{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-message{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .e-form__indicators__indicator, .elementor-widget-form .e-form__indicators__indicator__label{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form{--e-form-steps-indicator-inactive-primary-color:var( --e-global-color-text );--e-form-steps-indicator-active-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-completed-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-background-color:var( --e-global-color-text );--e-form-steps-indicator-progress-meter-color:var( --e-global-color-text );}.elementor-widget-form .e-form__indicators__indicator__progress__meter{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-4166 .elementor-element.elementor-element-066bb7d .elementor-field-group{padding-right:calc( 10px/2 );padding-left:calc( 10px/2 );margin-bottom:10px;}.elementor-4166 .elementor-element.elementor-element-066bb7d .elementor-form-fields-wrapper{margin-left:calc( -10px/2 );margin-right:calc( -10px/2 );margin-bottom:-10px;}.elementor-4166 .elementor-element.elementor-element-066bb7d .elementor-field-group.recaptcha_v3-bottomleft, .elementor-4166 .elementor-element.elementor-element-066bb7d .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-4166 .elementor-element.elementor-element-066bb7d .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-4166 .elementor-element.elementor-element-066bb7d .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-4166 .elementor-element.elementor-element-066bb7d .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-4166 .elementor-element.elementor-element-066bb7d .elementor-field-type-html{padding-bottom:0px;}.elementor-4166 .elementor-element.elementor-element-066bb7d .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-4166 .elementor-element.elementor-element-066bb7d .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-4166 .elementor-element.elementor-element-066bb7d .e-form__buttons__wrapper__button-next{color:#ffffff;}.elementor-4166 .elementor-element.elementor-element-066bb7d .elementor-button[type="submit"]{color:#ffffff;}.elementor-4166 .elementor-element.elementor-element-066bb7d .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-4166 .elementor-element.elementor-element-066bb7d .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-4166 .elementor-element.elementor-element-066bb7d .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-4166 .elementor-element.elementor-element-066bb7d .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-4166 .elementor-element.elementor-element-066bb7d .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-4166 .elementor-element.elementor-element-066bb7d .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-4166 .elementor-element.elementor-element-066bb7d{--e-form-steps-indicators-spacing:20px;--e-form-steps-indicator-padding:30px;--e-form-steps-indicator-inactive-secondary-color:#ffffff;--e-form-steps-indicator-active-secondary-color:#ffffff;--e-form-steps-indicator-completed-secondary-color:#ffffff;--e-form-steps-divider-width:1px;--e-form-steps-divider-gap:10px;}/* Start custom CSS for html, class: .elementor-element-45ff34b */.order-form {
  max-width: 700px;
  margin: 0 auto;
  padding: 48px 24px;
}

.order-head h1 {
  font-family: 'Oswald', sans-serif;
  font-size: 38px;
  margin-bottom: 12px;
}

.order-head p {
  color: #555;
  margin-bottom: 32px;
  font-size: 16px;
}

.order-form-inner label {
  font-weight: 600;
  margin-top: 16px;
  display: block;
}

.order-form-inner input,
.order-form-inner select,
.order-form-inner textarea {
  width: 100%;
  padding: 12px;
  margin-top: 6px;
  border: 1px solid #ddd;
  border-radius: 8px;
  font-size: 15px;
}

.order-form-inner input:focus,
.order-form-inner select:focus,
.order-form-inner textarea:focus {
  border-color: #111;
  outline: none;
}

.btn-order {
  margin-top: 24px;
  padding: 14px 28px;
  background: #111;
  color: #fff;
  border: none;
  border-radius: 30px;
  font-family: 'Oswald', sans-serif;
  text-transform: uppercase;
  cursor: pointer;
  transition: background .3s ease;
}

.btn-order:hover {
  background: #444;
}/* End custom CSS */
/* Start custom CSS for form, class: .elementor-element-066bb7d *//* =========================================================
   FORM COMMANDE — Elementor Form (.order-form)
   - Grille, champs gris doux, select 1 seule flèche
   - Checkbox RGPD custom noire
   - Bouton pill centré
   ========================================================= */

.elementor-widget-form.order-form{
  --ink: #111;
  --muted: #647085;
  --line: #e9edf2;
  --bg: #fff;
  --bg-soft: #f6f7f8;
  --ring: rgba(17,17,17,.10);
  --brand: #111;
  --radius: 14px;

  max-width: 760px;
  margin: 0 auto;
  padding: clamp(28px, 4vw, 44px) clamp(18px, 3.5vw, 30px);
  background: var(--bg);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  box-shadow: 0 12px 28px rgba(0,0,0,.06);
}

/* Grille : 2 colonnes desktop / 1 colonne mobile */
.elementor-widget-form.order-form .elementor-form{
  display: grid !important;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
}
@media (max-width: 700px){
  .elementor-widget-form.order-form .elementor-form{
    grid-template-columns: 1fr;
  }
}

/* Pleine largeur : donner ces IDs aux champs (Field ID) */
.elementor-widget-form.order-form .elementor-field-group-litho,
.elementor-widget-form.order-form .elementor-field-group-adresse,
.elementor-widget-form.order-form .elementor-field-group-message{
  grid-column: 1 / -1;
}

/* Labels */
.elementor-widget-form.order-form .elementor-field-group > label{
  display:block;
  font-weight:600;
  color: var(--ink);
  font-size: 14px;
  margin: 0 0 6px;
}

/* Champs / Select / Textarea */
.elementor-widget-form.order-form .elementor-field,
.elementor-widget-form.order-form .elementor-select-wrapper select,
.elementor-widget-form.order-form textarea.elementor-field-textual{
  width:100%;
  padding: 12px 14px;
  border:1px solid var(--line);
  border-radius: 10px;
  background: var(--bg-soft);
  color: var(--ink);
  font-size:15px;
  line-height: 1.25;
  transition: border-color .18s ease, box-shadow .18s ease, background-color .18s ease;
}

/* Placeholders */
.elementor-widget-form.order-form .elementor-field::placeholder,
.elementor-widget-form.order-form textarea.elementor-field-textual::placeholder{
  color:#9aa3b2;
  opacity:1;
}

/* Focus states */
.elementor-widget-form.order-form .elementor-field:focus,
.elementor-widget-form.order-form .elementor-select-wrapper select:focus,
.elementor-widget-form.order-form textarea.elementor-field-textual:focus{
  background:#fff;
  border-color: var(--brand);
  outline: none;
  box-shadow: 0 0 0 4px var(--ring);
}

/* =========================
   SELECT — 1 SEULE FLÈCHE
   ========================= */
.elementor-widget-form.order-form .elementor-select-wrapper{
  position: relative;
}
.elementor-widget-form.order-form .elementor-select-wrapper select{
  appearance: none;           /* enlève la flèche native */
  -webkit-appearance: none;   /* Safari */
  -moz-appearance: none;      /* Firefox */
  padding-right: 38px;        /* espace pour la flèche custom */
  background: var(--bg-soft);
  background-image: none !important; /* si Elementor tente d'en mettre une */
}
.elementor-widget-form.order-form .elementor-select-wrapper::after{
  content:"";
  position: absolute;
  right: 14px;
  top: 50%;
  width: 14px; height: 14px;
  transform: translateY(-50%);
  pointer-events: none;
  /* Petite flèche SVG (gris) */
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="%23647085" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"/></svg>');
  background-size: 14px 14px;
  background-repeat: no-repeat;
  background-position: center;
}

/* =========================
   CHECKBOX RGPD — custom
   ========================= */
.elementor-widget-form.order-form .elementor-field-type-acceptance .elementor-field-subgroup{
  display:flex; align-items:center; gap:10px;
}
.elementor-widget-form.order-form .elementor-field-type-acceptance label{
  margin:0;
  font-size:14px;
  color:var(--ink);
  cursor: pointer;
}
.elementor-widget-form.order-form .elementor-field-type-acceptance input[type="checkbox"]{
  appearance: none;
  -webkit-appearance: none;
  width: 20px; height: 20px;
  border-radius: 4px;
  border: 1px solid #cbd5e1;
  background: #fff;
  cursor: pointer;
  position: relative;
  transition: border-color .18s ease, box-shadow .18s ease, background-color .18s ease;
}
.elementor-widget-form.order-form .elementor-field-type-acceptance input[type="checkbox"]:focus{
  box-shadow: 0 0 0 3px var(--ring);
}
.elementor-widget-form.order-form .elementor-field-type-acceptance input[type="checkbox"]:checked{
  background: var(--brand);
  border-color: var(--brand);
}
.elementor-widget-form.order-form .elementor-field-type-acceptance input[type="checkbox"]:checked::after{
  content:"";
  position:absolute;
  inset: 4px 5px 5px 5px; /* dessine la coche */
  border: 2px solid #fff;
  border-top: 0; border-left: 0;
  transform: rotate(45deg);
}

/* =========================
   BOUTON — wrapper centré
   ========================= */
.elementor-widget-form.order-form .elementor-button-wrapper{
  grid-column: 1 / -1;
  display:flex; justify-content:center;
}

/* Bouton pill */
.elementor-widget-form.order-form .elementor-button{
  width:auto !important;
  display:inline-flex; align-items:center; justify-content:center;
  padding:12px 28px;
  border-radius: 999px;
  background: var(--brand) !important;
  color:#fff !important;
  border:2px solid var(--brand) !important;
  font-family:'Oswald', system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
  font-size:14px;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:.06em;
  transition: transform .08s ease, background .2s ease, color .2s ease, box-shadow .2s ease;
  box-shadow: 0 6px 16px rgba(17,17,17,.12);
}
.elementor-widget-form.order-form .elementor-button:hover{
  background:#fff !important;
  color: var(--brand) !important;
  transform: translateY(-1px);
}
.elementor-widget-form.order-form .elementor-button:focus{
  box-shadow: 0 0 0 4px var(--ring);
  outline: none;
}

/* =========================
   ERREURS + MESSAGES
   ========================= */
.elementor-widget-form.order-form .elementor-message{
  margin-top: 12px;
  border-radius: 10px;
  padding: 10px 12px;
  font-size: 14px;
}
.elementor-widget-form.order-form .elementor-message.elementor-message-danger{
  background: #fff1f1; color:#a60000; border:1px solid #ffd2d2;
}
.elementor-widget-form.order-form .elementor-message.elementor-message-success{
  background: #f0fff5; color:#136b2b; border:1px solid #c9f1d8;
}

/* Sur un champ en erreur */
.elementor-widget-form.order-form .elementor-field-group.elementor-field-error .elementor-field,
.elementor-widget-form.order-form .elementor-field-group.elementor-field-error .elementor-select-wrapper select,
.elementor-widget-form.order-form .elementor-field-group.elementor-field-error textarea.elementor-field-textual{
  border-color: #ff6a6a;
  background: #fff8f8;
  box-shadow: 0 0 0 3px rgba(255, 0, 0, .08);
}

/* Textarea confort */
.elementor-widget-form.order-form textarea.elementor-field-textual{
  min-height: 130px;
  resize: vertical;
}

/* Petites finitions */
.elementor-widget-form.order-form .elementor-field-group{ margin-bottom: 2px; }
.elementor-widget-form.order-form .elementor-field-group.elementor-column{ margin-bottom: 0; }

/* Motion-safe */
@media (prefers-reduced-motion: reduce){
  .elementor-widget-form.order-form *,
  .elementor-widget-form.order-form .elementor-button{
    transition: none !important;
  }
}

/* cache un éventuel label de champ si tu en laisses un par erreur */
.elementor .elementor-widget-form.order-form 
  .elementor-field-type-acceptance .elementor-field-label{
  display: none !important;
}

/* aligne la case et le texte sur une seule ligne */
.elementor .elementor-widget-form.order-form 
  .elementor-field-type-acceptance .elementor-field-subgroup,
.elementor .elementor-widget-form.order-form 
  .elementor-field-type-acceptance .elementor-field-option{
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  flex-wrap: nowrap !important;
}

/* === KILL TOUTES LES FLÈCHES "SYSTÈME" D'ELEMENTOR/THEME === */

/* 1) La caret interne d’Elementor */
.elementor .elementor-widget-form.order-form
  .elementor-select-wrapper .select-caret-down-wrapper{
  display:none !important;
}

/* 2) La flèche injectée en ::before (cf. .remove-before vue dans ton inspecteur) */
.elementor .elementor-widget-form.order-form
  .elementor-select-wrapper::before,
.elementor .elementor-widget-form.order-form
  .elementor-select-wrapper.remove-before::before{
  content:none !important;
  display:none !important;
  background:none !important;
  width:0 !important; height:0 !important; border:0 !important;
}

/* 3) Les backgrounds SVG ajoutés par certains thèmes */
.elementor .elementor-widget-form.order-form
  .elementor-select-wrapper select{
  background: none !important;
  background-image: none !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  padding-right: 40px !important;  /* espace pour NOTRE flèche */
}

/* === NOTRE UNIQUE FLÈCHE (propre) === */
.elementor .elementor-widget-form.order-form
  .elementor-select-wrapper{
  position: relative;
}
.elementor .elementor-widget-form.order-form
  .elementor-select-wrapper::after{
  content:"";
  position: absolute;
  right: 14px;
  top: 50%;
  width: 14px;
  height: 14px;
  transform: translateY(-50%);
  pointer-events: none;
  background: center/14px 14px no-repeat
    url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="%23647085" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"/></svg>');
}

/* ===== Spacing fin de formulaire ===== */

/* Espace sous le textarea “Message” */
.elementor .elementor-widget-form.order-form
  .elementor-field-group-message{
  margin-bottom: 14px !important;
}

/* RGPD sur une ligne + padding/marges + léger fond (optionnel) */
.elementor .elementor-widget-form.order-form
  .elementor-field-group.elementor-field-type-acceptance{
  grid-column: 1 / -1;              /* toujours pleine largeur */
  margin: 8px 0 14px !important;    /* espace au-dessus et en dessous */
  padding: 10px 12px;               /* un peu d’air autour du texte */
  background: #f9fafb;              /* <- enlève si tu n’en veux pas */
  border: 1px solid #edf1f5;        /* <- enlève aussi si besoin */
  border-radius: 10px;
}

/* Bouton centré + espace au-dessus */
.elementor .elementor-widget-form.order-form
  .elementor-button-wrapper{
  grid-column: 1 / -1;
  display: flex; justify-content: center;
  margin-top: 12px;                 /* espace avant le bouton */
}

/* (Option) textarea un peu plus haut pour mieux respirer */
.elementor .elementor-widget-form.order-form
  textarea.elementor-field-textual{
  min-height: 140px;
}

/* ===== Fix RGPD non cliquable (chevauchement) ===== */

/* Le groupe RGPD doit être au-dessus de tout ce qui suit */
.elementor .elementor-widget-form.order-form
  .elementor-field-group.elementor-field-type-acceptance{
  position: relative;
  z-index: 3;
}

/* Le bouton ne doit pas passer au-dessus du RGPD */
.elementor .elementor-widget-form.order-form
  .elementor-button-wrapper{
  position: relative;
  z-index: 1;
  margin-top: 18px; /* un peu d'air pour éviter tout recouvrement */
}

/* Assure les clics sur le texte togglent bien la case */
.elementor .elementor-widget-form.order-form
  .elementor-field-type-acceptance .elementor-field-option label{
  cursor: pointer;
  pointer-events: auto;
}

/* Et sur la case aussi (au cas où) */
.elementor .elementor-widget-form.order-form
  .elementor-field-type-acceptance input[type="checkbox"]{
  pointer-events: auto;
}
/* ========= RGPD – rétablit les clics et l'empilement ========= */

/* 0) Donne de l'air sous le textarea pour éviter tout recouvrement physique */
.elementor .elementor-widget-form.order-form
  .elementor-field-group-message{
  margin-bottom: 18px !important;
}

/* 1) Évite qu'un parent coupe la zone cliquable */
.elementor .elementor-widget-form.order-form
  .elementor-field-group{
  position: relative;
  z-index: 1;
  overflow: visible !important;
}

/* 2) Le groupe RGPD doit être au-dessus du bouton & co. */
.elementor .elementor-widget-form.order-form
  .elementor-field-group.elementor-field-type-acceptance{
  z-index: 5 !important;
}

/* 3) Le bouton passe en-dessous + un peu d’espace au-dessus */
.elementor .elementor-widget-form.order-form
  .elementor-button-wrapper{
  position: relative;
  z-index: 2;
  margin-top: 18px !important;
}

/* 4) Restaure les événements souris dans la ligne RGPD */
.elementor .elementor-widget-form.order-form
  .elementor-field-type-acceptance .elementor-field-subgroup,
.elementor .elementor-widget-form.order-form
  .elementor-field-type-acceptance .elementor-field-option,
.elementor .elementor-widget-form.order-form
  .elementor-field-type-acceptance .elementor-field-option label,
.elementor .elementor-widget-form.order-form
  .elementor-field-type-acceptance input[type="checkbox"]{
  pointer-events: auto !important;
}

/* 5) Par sécurité, force le checkbox au-dessus de toute déco */
.elementor .elementor-widget-form.order-form
  .elementor-field-type-acceptance input[type="checkbox"]{
  position: relative;
  z-index: 6;
}

/* (facultatif) aligne bien la ligne */
.elementor .elementor-widget-form.order-form
  .elementor-field-type-acceptance .elementor-field-subgroup,
.elementor .elementor-widget-form.order-form
  .elementor-field-type-acceptance .elementor-field-option{
  display: flex !important;
  align-items: center !important;
  gap: 10px;
  flex-wrap: nowrap;
}

/* FORM SCOPE */
.elementor .elementor-widget-form.order-form{ overflow: visible !important; }

/* 1) Le groupe RGPD doit être AU-DESSUS de tout */
.elementor .elementor-widget-form.order-form 
  .elementor-field-group.elementor-field-type-acceptance{
  position: relative !important;
  z-index: 9999 !important;
  margin: 16px 0 16px !important;
  overflow: visible !important;
}

/* 2) L’input et le label doivent recevoir les clics */
.elementor .elementor-widget-form.order-form 
  .elementor-field-type-acceptance input[type="checkbox"],
.elementor .elementor-widget-form.order-form 
  .elementor-field-type-acceptance .elementor-field-option label{
  position: relative;
  z-index: 10000 !important;
  pointer-events: auto !important;
  cursor: pointer;
}

/* 3) Toute la ligne accepte les clics (sauf liens) */
.elementor .elementor-widget-form.order-form 
  .elementor-field-type-acceptance .elementor-field-subgroup,
.elementor .elementor-widget-form.order-form 
  .elementor-field-type-acceptance .elementor-field-option{
  display: flex !important;
  align-items: center !important;
  gap: 10px;
  pointer-events: auto !important;
}

/* 4) Le bouton ne doit pas recouvrir la ligne RGPD */
.elementor .elementor-widget-form.order-form 
  .elementor-button-wrapper{
  position: relative;
  z-index: 1 !important;
  margin-top: 20px !important;
}

/* 5) Donne un peu d’air sous "Message" */
.elementor .elementor-widget-form.order-form 
  .elementor-field-group-message{
  margin-bottom: 18px !important;
}/* End custom CSS */
/* Start custom CSS *//* Espaces bas message / RGPD / bouton */
.elementor .elementor-widget-form.order-form .elementor-field-group-message{
  margin-bottom: 16px !important;
}

.elementor .elementor-widget-form.order-form .elementor-field-group.elementor-field-type-acceptance{
  position: relative; z-index: 5;
  margin: 8px 0 14px !important;
  display:flex; align-items:center; gap:10px;
}

.elementor .elementor-widget-form.order-form .elementor-button-wrapper{
  position: relative; z-index: 2;
  margin-top: 16px !important;
}

.elementor .elementor-widget-form.order-form
  .elementor-field-type-acceptance .elementor-field-option{
  display:flex !important; align-items:center !important; gap:10px;
}
.elementor .elementor-widget-form.order-form
  .elementor-field-type-acceptance .elementor-field-option label{
  cursor:pointer;
}/* End custom CSS */