.elementor-161 .elementor-element.elementor-element-85e4161{--spacer-size:20px;}.elementor-161 .elementor-element.elementor-element-d7f8b91{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-161 .elementor-element.elementor-element-f589e5e{--spacer-size:50px;}.elementor-161 .elementor-element.elementor-element-bdb1a71{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-161 .elementor-element.elementor-element-80694a8 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:39px;}.elementor-161 .elementor-element.elementor-element-c8fee58:not(.elementor-motion-effects-element-type-background), .elementor-161 .elementor-element.elementor-element-c8fee58 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-161 .elementor-element.elementor-element-c8fee58{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-161 .elementor-element.elementor-element-c8fee58 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-161 .elementor-element.elementor-element-3f3f2af > .elementor-element-populated{margin:55px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;}.elementor-161 .elementor-element.elementor-element-705cab4{font-family:"Montserrat", Sans-serif;}.elementor-161 .elementor-element.elementor-element-92e57dc{width:var( --container-widget-width, 100% );max-width:100%;--container-widget-width:100%;--container-widget-flex-grow:0;font-family:"Montserrat", Sans-serif;font-weight:normal;}.elementor-161 .elementor-element.elementor-element-92e57dc.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-161 .elementor-element.elementor-element-a74de60{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-161 .elementor-element.elementor-element-f520162{--spacer-size:50px;}.elementor-161 .elementor-element.elementor-element-262ccae5 > .elementor-container > .elementor-column > .elementor-widget-wrap{align-content:center;align-items:center;}.elementor-161 .elementor-element.elementor-element-4af6c78c > .elementor-widget-wrap > .elementor-widget:not(.elementor-widget__width-auto):not(.elementor-widget__width-initial):not(:last-child):not(.elementor-absolute){--kit-widget-spacing:0px;}.elementor-161 .elementor-element.elementor-element-30ac9004{text-align:left;}.elementor-161 .elementor-element.elementor-element-30ac9004 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:28px;font-weight:700;color:#262626;}.elementor-161 .elementor-element.elementor-element-5f1ddc12{--spacer-size:20px;}.elementor-161 .elementor-element.elementor-element-7db1f9b3 > .elementor-container > .elementor-column > .elementor-widget-wrap{align-content:center;align-items:center;}.elementor-161 .elementor-element.elementor-element-4058bd04 > .elementor-widget-wrap > .elementor-widget:not(.elementor-widget__width-auto):not(.elementor-widget__width-initial):not(:last-child):not(.elementor-absolute){--kit-widget-spacing:0px;}.elementor-161 .elementor-element.elementor-element-1412d284{color:#221f1f;}.elementor-161 .elementor-element.elementor-element-1aa32065{color:#080808;}.elementor-161 .elementor-element.elementor-element-2a0f85d > .elementor-widget-wrap > .elementor-widget:not(.elementor-widget__width-auto):not(.elementor-widget__width-initial):not(:last-child):not(.elementor-absolute){--kit-widget-spacing:-40px;}.elementor-161 .elementor-element.elementor-element-54745c2f{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:center;color:#080808;}.elementor-161 .elementor-element.elementor-element-2220a689{--spacer-size:50px;}body.elementor-page-161:not(.elementor-motion-effects-element-type-background), body.elementor-page-161 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}@media(max-width:1024px){.elementor-161 .elementor-element.elementor-element-85e4161{--spacer-size:0px;}.elementor-161 .elementor-element.elementor-element-2220a689{--spacer-size:25px;}}@media(max-width:767px){.elementor-161 .elementor-element.elementor-element-30ac9004{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}}@media(min-width:768px){.elementor-161 .elementor-element.elementor-element-3f3f2af{width:48%;}.elementor-161 .elementor-element.elementor-element-7215265{width:52%;}}/* Start custom CSS for text-editor, class: .elementor-element-705cab4 *//* ====== Style unifié "Mecabook" pour le formulaire de contact ====== */
:root{
  --brand-orange:#ff7a00;
  --border:#edf1f7;
  --ink:#111827;
  --muted:#6b7280;
}

/* Carte du formulaire (colonne droite) */
.contact-form > .elementor-widget-wrap{
  background:#fff;
  border:1px solid var(--border);
  border-radius:16px;
  box-shadow:0 8px 24px rgba(16,24,40,.06), 0 2px 6px rgba(16,24,40,.04);
  padding:20px;
}
@media (min-width:768px){
  .contact-form > .elementor-widget-wrap{ padding:28px; }
}

/* Reset marges CF7 + espacement compact */
.contact-form .wpcf7,
.contact-form .wpcf7-form{ margin:0 !important; }
.contact-form .wpcf7-form p{ margin:10px 0 !important; }

/* Nom + Prénom côte à côte sur desktop */
@media (min-width:768px){
  .contact-form .wpcf7-form > p:nth-of-type(1),
  .contact-form .wpcf7-form > p:nth-of-type(2){
    display:inline-block; width:calc(50% - 6px); vertical-align:top;
  }
  .contact-form .wpcf7-form > p:nth-of-type(1){ margin-right:12px !important; }
  .contact-form .wpcf7-form > p:nth-of-type(n+3){ width:100%; display:block; }
}

/* Champs */
.contact-form input[type="text"],
.contact-form input[type="email"],
.contact-form input[type="tel"],
.contact-form input[type="url"],
.contact-form input[type="number"],
.contact-form input[type="password"],
.contact-form textarea,
.contact-form select{
  width:100%;
  height:48px;
  background:#fff;
  border:1px solid var(--border);
  border-radius:10px;
  padding:0 16px;
  font-size:16px;
  color:var(--ink);
  outline:none;
  transition:border-color .15s ease, box-shadow .15s ease;
  box-sizing:border-box;
}
.contact-form textarea{
  height:140px;
  padding:12px 16px;
  resize:vertical;
}
.contact-form ::placeholder{ color:#9aa3af; }

/* Focus orange */
.contact-form input:focus,
.contact-form textarea:focus,
.contact-form select:focus{
  border-color:var(--brand-orange);
  box-shadow:0 0 0 3px rgba(255,122,0,.16);
}

/* Bouton "Envoyer" : contour → plein au survol */
.contact-form .wpcf7-submit,
.contact-form input[type="submit"],
.contact-form button[type="submit"]{
  display:inline-flex; align-items:center; justify-content:center;
  gap:.5rem;
  height:56px; padding:0 24px;
  border:2px solid var(--brand-orange);
  background:#fff; color:var(--brand-orange);
  border-radius:12px;
  font-weight:700;
  transition:background .15s ease, color .15s ease, box-shadow .15s ease, transform .03s ease;
  margin-left:auto; /* aligne à droite */
}
.contact-form .wpcf7-submit:hover,
.contact-form input[type="submit"]:hover,
.contact-form button[type="submit"]:hover{
  background:var(--brand-orange); color:#fff;
  box-shadow:0 10px 16px rgba(255,122,0,.15);
}
.contact-form .wpcf7-submit:active{ transform:translateY(1px); }

/* Messages CF7 */
.contact-form .wpcf7-not-valid-tip{ color:#ef4444; margin-top:6px; }
.contact-form .wpcf7-response-output{
  margin-top:12px; padding:10px 12px;
  border-radius:10px; border:1px solid var(--brand-orange);
  background:rgba(255,122,0,.06); color:#7a2e00; font-size:14px;
}

/* Option : supprimer tout padding de la colonne si tu veux un bloc plus tendu */
.contact-form .elementor-widget{ margin:0 !important; }/* End custom CSS */
/* Start custom CSS *//* ---- Couleur de marque (même que le formulaire) ---- */
:root{ --brand-orange:#ff7a00; }

/* ============ LISTES D'OFFRES / CARTES / WIDGETS ============ */
/* Boutons "Browse Job", "Apply", etc. (outline par défaut) */
.apus-jobs .btn,
.widget-apus-jobs .btn,
.job-list .btn,
.job-item .btn,
.job-listing .btn,
.job-apply .btn,
.job-apply a.btn,
.jobs-list .btn,
.jobs-grid .btn,
.job-detail .btn,
.job-metas .btn,
.apus-loadmore-btn .btn,
.view-more .btn,
.view-more a,
.pagination-loadmore .btn,
.pagination-loadmore a,
.job-pagination .btn,
.job-pagination a,
.job-list .job-apply a,
.job-list .job-apply .btn,
.job-item .job-apply a,
.job-item .job-apply .btn,
.job-listing .job-apply a,
.job-listing .job-apply .btn,
/* variantes bootstrap que le thème utilise en vert */
.btn-outline-success, .btn-success,
.btn-outline-primary, .btn-primary,
.btn-outline-theme, .btn-theme {
  background:#fff !important;
  background-image:none !important;
  color:var(--brand-orange) !important;
  border:2px solid var(--brand-orange) !important;
  border-radius:12px !important;
  padding:12px 24px !important;
  font-weight:700 !important;
  box-shadow:none !important;
  transition:background .15s ease, color .15s ease,
             box-shadow .15s ease, transform .03s ease !important;
}

/* Hover = plein orange */
.apus-jobs .btn:hover,
.widget-apus-jobs .btn:hover,
.job-list .btn:hover,
.job-item .btn:hover,
.job-listing .btn:hover,
.job-apply .btn:hover,
.job-apply a.btn:hover,
.jobs-list .btn:hover,
.jobs-grid .btn:hover,
.job-detail .btn:hover,
.job-metas .btn:hover,
.apus-loadmore-btn .btn:hover,
.view-more .btn:hover,
.view-more a:hover,
.pagination-loadmore .btn:hover,
.pagination-loadmore a:hover,
.job-pagination .btn:hover,
.job-pagination a:hover,
.btn-outline-success:hover, .btn-success:hover,
.btn-outline-primary:hover, .btn-primary:hover,
.btn-outline-theme:hover, .btn-theme:hover {
  background:var(--brand-orange) !important;
  color:#fff !important;
  box-shadow:0 10px 16px rgba(255,122,0,.15) !important;
}
.apus-jobs .btn:active,
.widget-apus-jobs .btn:active,
.job-list .btn:active,
.job-item .btn:active,
.job-listing .btn:active { transform:translateY(1px) !important; }

/* ============ BOUTON "BROWSE ALL JOBS" / LOAD MORE ============ */
.view-more a, .view-more .btn,
.apus-loadmore-btn a, .apus-loadmore-btn .btn,
.pagination-loadmore a, .pagination-loadmore .btn{
  background:#fff !important;
  color:var(--brand-orange) !important;
  border:2px solid var(--brand-orange) !important;
  border-radius:12px !important;
}
.view-more a:hover, .view-more .btn:hover,
.apus-loadmore-btn a:hover, .apus-loadmore-btn .btn:hover,
.pagination-loadmore a:hover, .pagination-loadmore .btn:hover{
  background:var(--brand-orange) !important;
  color:#fff !important;
}

/* ============ BOUTON "SEARCH" DE LA BARRE DE FILTRES ============ */
.job-search-form .btn,
.widget-job-search .btn,
.job-filters .btn,
.job-board-search-form .btn,
.widget-job-search-form .btn,
.job-search .btn,
.form-search .btn,
button[type="submit"].btn-search,
button.btn-search,
a.btn-search {
  background:#fff !important;
  color:var(--brand-orange) !important;
  border:2px solid var(--brand-orange) !important;
  border-radius:12px !important;
  padding:12px 24px !important;
  font-weight:700 !important;
}
.job-search-form .btn:hover,
.widget-job-search .btn:hover,
.job-filters .btn:hover,
.job-board-search-form .btn:hover,
.widget-job-search-form .btn:hover,
.job-search .btn:hover,
.form-search .btn:hover,
button.btn-search:hover,
a.btn-search:hover{
  background:var(--brand-orange) !important;
  color:#fff !important;
}

/* Neutralise les dégradés/filters forçés par le thème */
.job-apply .btn, .view-more .btn, .btn-search{
  filter:none !important; -webkit-filter:none !important;
}
/* Laisse icônes/texte hériter de la couleur */
.job-apply .btn i, .job-apply .btn span,
.view-more .btn i, .view-more .btn span{ color:inherit !important; }

:root{ --brand-orange:#ff7a00; }

/* Boutons restants "Browse Job" (classe .btn-gradient-theme) */
.job-list a.btn-gradient-theme,
.job-item a.btn-gradient-theme,
.job-listing a.btn-gradient-theme,
.apus-jobs a.btn-gradient-theme,
a.btn-gradient-theme{
  background:#fff !important;
  background-image:none !important;
  color:var(--brand-orange) !important;
  border:2px solid var(--brand-orange) !important;
  border-radius:12px !important;
  padding:10px 18px !important;
  font-weight:700 !important;
  box-shadow:none !important;
  transition:background .15s ease, color .15s ease, box-shadow .15s ease, transform .03s ease !important;
}

/* Neutralise le dégradé ajouté via les pseudo-éléments */
a.btn-gradient-theme::before,
a.btn-gradient-theme::after{
  background:none !important;
  opacity:0 !important;
  box-shadow:none !important;
  content:''; /* garde le pseudo-élément mais vide */
}

/* Hérite correctement la couleur à l’intérieur */
a.btn-gradient-theme .btn,
a.btn-gradient-theme span,
a.btn-gradient-theme i{
  color:inherit !important;
}

/* Hover = plein orange comme le formulaire */
a.btn-gradient-theme:hover{
  background:var(--brand-orange) !important;
  color:#fff !important;
  box-shadow:0 10px 16px rgba(255,122,0,.15) !important;
}
a.btn-gradient-theme:hover .btn,
a.btn-gradient-theme:hover span,
a.btn-gradient-theme:hover i{
  color:#fff !important;
}

/* Petit effet clic */
a.btn-gradient-theme:active{ transform:translateY(1px) !important; }

:root{ --brand-orange:#ff7a00; }

/* Habillage principal sur l'ancre */
a.btn-gradient-theme{
  display:inline-flex !important;
  align-items:center; justify-content:center;
  gap:.5rem;
  background:#fff !important;
  background-image:none !important;
  color:var(--brand-orange) !important;
  border:2px solid var(--brand-orange) !important;
  border-radius:12px !important;
  padding:10px 18px !important;
  font-weight:700 !important;
  box-shadow:none !important;
  transition:background .15s ease,color .15s ease,
             box-shadow .15s ease, transform .03s ease !important;
}

/* Neutralise totalement l'intérieur qui remet le dégradé */
a.btn-gradient-theme span.btn{
  background:transparent !important;
  background-image:none !important;
  border:0 !important;
  box-shadow:none !important;
  color:inherit !important;
  padding:0 !important;
  line-height:inherit !important;
}
a.btn-gradient-theme span.btn::before,
a.btn-gradient-theme span.btn::after,
a.btn-gradient-theme::before,
a.btn-gradient-theme::after{
  background:none !important;
  background-image:none !important;
  box-shadow:none !important;
  color:inherit !important;
  opacity:1 !important;      /* garde le texte visible s'il vient de ::before */
  content:unset;              /* retire les pseudo si le thème les utilise pour l'effet */
}

/* Hover = plein orange comme le formulaire */
a.btn-gradient-theme:hover{
  background:var(--brand-orange) !important;
  color:#fff !important;
  box-shadow:0 10px 16px rgba(255,122,0,.15) !important;
}
a.btn-gradient-theme:hover span.btn,
a.btn-gradient-theme:hover span.btn::before{ color:#fff !important; }

/* Effet clic */
a.btn-gradient-theme:active{ transform:translateY(1px) !important; }



/* ===== SECTION GLOBALE ===== */
.about-c2ld{
  position:relative;
  padding:48px 20px;
  border-radius:24px;
  background:linear-gradient(180deg,#fbfdff 0%, #fff 40%);
  overflow:hidden;
}
@media (min-width:1024px){ .about-c2ld{ padding:72px 32px; } }

/* halo doux à droite (comme l'image 2) */
.about-c2ld::before{
  content:"";
  position:absolute; right:-15%; top:-20%;
  width:60vw; height:60vw; pointer-events:none;
  background:radial-gradient(closest-side, var(--halo) 0%, rgba(234,242,255,0.0) 70%);
  filter:blur(6px);
}

/* Titre principal au centre, XXL */
.about-c2ld .elementor-widget-heading .elementor-heading-title{
  text-align:center;
  font-weight:800;
  color:var(--deep-blue);
  letter-spacing:.5px;
  font-size:clamp(34px,4.5vw,56px);
  margin:0 0 24px;
}

/* Masque la petite ligne de sous-titre importée si présente */
.about-c2ld > .elementor-container > .elementor-column > .elementor-widget-text-editor:first-of-type{
  display:none;
}

/* ===== COLONNE DROITE (grande carte de texte) ===== */
.about-c2ld-right > .elementor-widget-wrap{
  background:rgba(255,255,255,.9);
  backdrop-filter: blur(10px);
  border:1px solid var(--stroke);
  border-radius:20px;
  box-shadow:0 20px 40px rgba(21,62,122,.08);
  padding:28px;
}
@media (min-width:1024px){ .about-c2ld-right > .elementor-widget-wrap{ padding:36px; } }

/* Titre de la carte */
.about-c2ld-right .elementor-widget-heading .elementor-heading-title{
  color:var(--deep-blue);
  font-weight:800;
  font-size:clamp(22px,2.4vw,34px);
  line-height:1.2;
  margin:0 0 12px;
}

/* Paragraphes de la carte */
.about-c2ld-right .elementor-widget-text-editor p{
  color:var(--text);
  font-size:clamp(15px,1.15vw,18px);
  line-height:1.7;
  margin:.5rem 0;
}
.about-c2ld-right .elementor-widget-text-editor p + p{ margin-top:.8rem; }
.about-c2ld-right strong, .about-c2ld-right b{ color:var(--deep-blue); }

/* Lien "Learn more" façon lien discret */
.about-c2ld-right a{
  color:var(--brand-orange); font-weight:700; text-decoration:none;
}
.about-c2ld-right a:hover{ text-decoration:underline; }

/* ===== GRILLE DES 4 FONCTIONNALITÉS (cartes) ===== */
.about-c2ld-features{
  display:grid;
  grid-template-columns:1fr;
  gap:18px;
}
@media (min-width:768px){
  .about-c2ld-features{ grid-template-columns:repeat(2, minmax(0,1fr)); gap:22px; }
}

/* carte : applique aux colonnes internes */
.about-c2ld-features > .elementor-container > .elementor-column > .elementor-widget-wrap,
.about-c2ld-features > .elementor-column > .elementor-widget-wrap{
  background:var(--card);
  border:1px solid var(--stroke);
  border-radius:24px;
  padding:26px 22px;
  box-shadow:0 10px 30px rgba(21,62,122,.06);
  transition:transform .15s ease, box-shadow .15s ease;
}
.about-c2ld-features > .elementor-container > .elementor-column > .elementor-widget-wrap:hover,
.about-c2ld-features > .elementor-column > .elementor-widget-wrap:hover{
  transform:translateY(-4px);
  box-shadow:0 18px 40px rgba(21,62,122,.10);
}

/* icônes (image, svg, font) -> orange */
.about-c2ld-features .elementor-widget-icon .elementor-icon,
.about-c2ld-features .elementor-widget-icon i,
.about-c2ld-features .elementor-widget-icon svg{
  color:var(--brand-orange) !important;
  fill:var(--brand-orange) !important;
  stroke:var(--brand-orange) !important;
}
/* si ce sont des images png/gris : teinte douce */
.about-c2ld-features .elementor-widget-image img{
  filter:grayscale(0) brightness(1) saturate(1.2);
}

/* titre de tuile */
.about-c2ld-features .elementor-widget-heading .elementor-heading-title{
  color:var(--deep-blue);
  font-weight:800;
  font-size:clamp(18px,1.6vw,22px);
  margin:10px 0 8px;
}

/* description sous le titre + petite barre */
.about-c2ld-features .elementor-widget-text-editor p{
  color:var(--muted);
  font-size:clamp(14px,1.05vw,16px);
  line-height:1.7;
  margin:0 0 12px;
}
.about-c2ld-features .elementor-widget-text-editor p:after{
  content:"";
  display:block;
  width:140px; max-width:60%;
  height:2px; background:#e7edf8;
  margin-top:12px; border-radius:2px;
}

/* ===== RÉPONSIVE finesse ===== */
@media (max-width:767px){
  .about-c2ld .elementor-widget-heading .elementor-heading-title{ margin-bottom:18px; }
  .about-c2ld-right{ margin-top:18px; }
}

/* (optionnel) grand slogan final centré si tu ajoutes un texte en bas */
.about-c2ld .about-slogan{
  text-align:center; color:var(--deep-blue); font-weight:800;
  font-size:clamp(20px,2.4vw,30px);
}
.about-c2ld .about-slogan em{ color:var(--brand-orange); font-style:normal; }/* End custom CSS */