.elementor-11734 .elementor-element.elementor-element-8cabaab{width:100%;max-width:100%;}.elementor-11734 .elementor-element.elementor-element-a0e0897{width:100%;max-width:100%;}.elementor-11734 .elementor-element.elementor-element-561124c{width:100%;max-width:100%;}.elementor-11734 .elementor-element.elementor-element-169665e{width:100%;max-width:100%;}.elementor-11734 .elementor-element.elementor-element-c65fd35{width:100%;max-width:100%;}.elementor-11734 .elementor-element.elementor-element-3008a4a{width:100%;max-width:100%;}.elementor-11734 .elementor-element.elementor-element-547a7d5{width:100%;max-width:100%;}.elementor-11734 .elementor-element.elementor-element-10a5c7e{width:100%;max-width:100%;}.elementor-11734 .elementor-element.elementor-element-79441f6{width:100%;max-width:100%;}.elementor-11734 .elementor-element.elementor-element-c0bdcd3{width:100%;max-width:100%;}.elementor-11734 .elementor-element.elementor-element-d45bca3{width:100%;max-width:100%;}/* Start custom CSS for html, class: .elementor-element-5aea891 *//* ===== variables marque (si pas déjà en place) ===== */
:root{
  --med-navy:#0E2B4C;
  --med-blue:#144C8A;
  --med-turq:#29D3D3;
  --med-turq-600:#18B9B9;
  --med-gray-200:#E9EEF4;
  --med-gray-700:#4A5260;
  --white:#FFFFFF;
}

/* ===== base btn ===== */
.btn{
  display:inline-flex; align-items:center; justify-content:center;
  padding:.72rem 1.1rem; border-radius:999px; font-weight:700; text-decoration:none;
  transition:.2s ease; border:2px solid transparent; line-height:1;
}
.btn--primary{ background:var(--med-turq); color:var(--med-navy) }
.btn--primary:hover{ background:var(--med-turq-600) }
.btn--ghost{ color:var(--med-navy); border-color:var(--med-navy); background:transparent }
.btn--ghost:hover{ background:var(--med-navy); color:#fff }

/* ===== header ===== */
.md-header{
  position:sticky; top:0; z-index:9999;
  background:var(--white);
  box-shadow:0 2px 10px rgba(0,0,0,.04);
}
.md-topbar{ height:6px; background:var(--med-turq) } /* bandeau couleur */

.md-nav{
  display:flex; align-items:center; justify-content:space-between;
  height:72px; gap:20px;
}
.md-brand img{ height:46px; width:auto; display:block }

/* liens desktop */
.md-links{
  display:flex; align-items:center; gap:28px;
}
.md-links a{
  color:var(--med-navy); text-decoration:none; font-weight:700;
}
.md-links a:hover{ color:var(--med-blue) }

/* CTAs (desktop) */
.md-cta{ display:flex; align-items:center; gap:12px }

/* burger toggle */
.md-nav-toggle{ display:none } /* masqué mais présent dans le DOM */
.md-burger{
  display:none; width:36px; height:28px; position:relative; cursor:pointer;
}
.md-burger span{
  position:absolute; left:0; right:0; height:3px; background:var(--med-navy);
  border-radius:2px; transition:.25s;
}
.md-burger span:nth-child(1){ top:4px }
.md-burger span:nth-child(2){ top:12px }
.md-burger span:nth-child(3){ top:20px }

/* ===== MOBILE ===== */
@media (max-width: 992px){

  /* on montre le burger, on cache le nav en dehors de l’écran */
  .md-burger{ display:block }
  .md-links{
    position:fixed; inset: calc(72px + 6px) 0 0 0; /* sous le header + topbar */
    background:#fff; border-top:1px solid var(--med-gray-200);
    display:flex; flex-direction:column; gap:16px;
    padding:18px 20px 24px;
    transform: translateY(-100%); opacity:0; pointer-events:none;
    transition:.25s ease; overflow:auto;
    z-index:9998;
  }

  /* ouverture du menu au check */
  .md-nav-toggle:checked ~ .md-links{
    transform: translateY(0); opacity:1; pointer-events:auto;
  }

  /* X animation */
  .md-nav-toggle:checked + .md-burger span:nth-child(1){ transform:translateY(8px) rotate(45deg) }
  .md-nav-toggle:checked + .md-burger span:nth-child(2){ opacity:0 }
  .md-nav-toggle:checked + .md-burger span:nth-child(3){ transform:translateY(-8px) rotate(-45deg) }

  /* recherche mobile */
  .md-search{ width:100%; order:-1; }
  .md-search input{
    width:100%; padding:.8rem 1rem; border:1.5px solid var(--med-gray-200);
    border-radius:12px; outline:none;
  }
  .md-search input:focus{ border-color:var(--med-turq); box-shadow:0 0 0 3px rgba(41,211,211,.15) }

  /* liens & ctas empilés */
  .md-links a{ font-size:1.05rem; padding:.2rem 0 }
  .md-cta{ flex-direction:column; gap:10px; width:100% }
  .md-cta .btn{ width:100% }
}

/* ===== petits affinages desktop ===== */
@media (min-width: 993px){
  /* meilleur contraste des CTA */
  .md-cta .btn--ghost{ border-color:var(--med-navy) }
  .md-cta .btn--primary{ background:var(--med-turq); color:var(--med-navy) }
  .md-cta .btn--primary:hover{ background:var(--med-turq-600) }
}
/* Right zone (loupe + CTA) */
.md-right{
  display:flex; align-items:center; gap:16px;
}
.md-search-icon{
  font-size:1.2rem; background:none; border:none; cursor:pointer;
  color:var(--med-navy); transition:.2s;
}
.md-search-icon:hover{ color:var(--med-turq) }

/* masquer la recherche input en desktop */
.mobile-only{ display:none }

/* MOBILE */
@media (max-width: 980px){
  .md-right{ display:none } /* cache les CTA + loupe */
  .mobile-only{ display:block; width:100%; order:-1 }
  .mobile-only input{
    width:100%; padding:.8rem 1rem;
    border:1px solid var(--med-gray-200); border-radius:10px;
  }
}

/* ======== STICKY FIX — FORCE FIXED HEADER ========
   Si position:sticky casse à cause d'un parent (overflow/transform),
   on force un header FIXE, stable en haut, sans changer ton HTML.
*/
.md-header{
  position: fixed !important;
  top: 0; left: 0; right: 0;
  width: 100%;
  background: rgba(255,255,255,.96);
  -webkit-backdrop-filter: saturate(140%) blur(6px);
  backdrop-filter: saturate(140%) blur(6px);
  z-index: 9999;
}

/* compenser la hauteur du header pour éviter que le contenu passe dessous */
body{
  --md-header-h: 78px; /* 72px nav + 6px topbar */
  padding-top: var(--md-header-h);
}

/* si la barre d’admin WP est visible, on ajoute l’offset */
.admin-bar body{ padding-top: calc(var(--md-header-h) + 32px); }
@media (max-width: 782px){
  .admin-bar body{ padding-top: calc(var(--md-header-h) + 46px); }
}

/* assure que le menu mobile se place juste sous le header fixe */
@media (max-width: 992px){
  .md-links{ top: var(--md-header-h) !important; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-8cabaab *//* ===========================
   MEDARIS — CSS GLOBAL TOTAL
   =========================== */

/* --- Variables marque --- */
:root{
  --med-navy:#0E2B4C;
  --med-blue:#144C8A;
  --med-turq:#29D3D3;
  --med-turq-600:#18B9B9;
  --med-gray-900:#1B1D24;
  --med-gray-700:#4A5260;
  --med-gray-500:#8A93A3;
  --med-gray-200:#E9EEF4;
  --med-gray-100:#F5F8FB;
  --white:#FFFFFF;
}

/* --- Helpers base --- */
*{box-sizing:border-box}
img{max-width:100%; height:auto; display:block}
.container{max-width:1140px; margin:0 auto; padding:0 20px}
.section{padding: clamp(44px, 7vw, 88px) 0}

.btn{
  display:inline-flex; align-items:center; justify-content:center;
  padding:.72rem 1.1rem; border-radius:999px; font-weight:700; text-decoration:none;
  transition:.2s ease; border:2px solid transparent; line-height:1;
}
.btn--primary{ background:var(--med-turq); color:var(--med-navy) }
.btn--primary:hover{ background:var(--med-turq-600) }
.btn--ghost{ color:var(--med-navy); border-color:var(--med-navy); background:transparent }
.btn--ghost:hover{ background:var(--med-navy); color:#fff }

/* =====================================================
   HEADER (desktop + mobile, menu burger + recherche)
   ===================================================== */
.md-header{
  position:sticky; top:0; z-index:9999; background:#fff;
  box-shadow:0 2px 10px rgba(0,0,0,.04);
}
.md-topbar{ height:6px; background:var(--med-turq) }
.md-nav{
  display:flex; align-items:center; justify-content:space-between;
  height:72px; gap:20px;
}
.md-brand img{ height:46px; width:auto; display:block }

/* Menu central (desktop) */
.md-links{ display:flex; align-items:center; gap:28px }
.md-links a{ color:var(--med-navy); font-weight:700; text-decoration:none }
.md-links a:hover{ color:var(--med-blue) }

/* Zone droite (loupe + CTA desktop) */
.md-right{ display:flex; align-items:center; gap:16px }
.md-search-icon{
  font-size:1.2rem; background:none; border:none; cursor:pointer;
  color:var(--med-navy); transition:.2s;
}
.md-search-icon:hover{ color:var(--med-turq) }

/* Burger */
.md-nav-toggle{ display:none } /* input checkbox pour le hack CSS */
.md-burger{ display:none; width:36px; height:28px; position:relative; cursor:pointer }
.md-burger span{
  position:absolute; left:0; right:0; height:3px; background:var(--med-navy);
  border-radius:2px; transition:.25s;
}
.md-burger span:nth-child(1){ top:4px }
.md-burger span:nth-child(2){ top:12px }
.md-burger span:nth-child(3){ top:20px }

/* Mobile menu (plein écran) */
@media (max-width: 992px){
  .md-burger{ display:block }
  .md-right{ display:none }              /* on cache la zone droite */
  .md-links{
    position:fixed; inset: calc(72px + 6px) 0 0 0; /* sous le header + topbar */
    background:#fff; border-top:1px solid var(--med-gray-200);
    display:flex; flex-direction:column; gap:16px;
    padding:18px 20px 24px;
    transform: translateY(-100%); opacity:0; pointer-events:none;
    transition:.25s ease; overflow:auto; z-index:9998;
  }
  .md-nav-toggle:checked ~ .md-links{
    transform: translateY(0); opacity:1; pointer-events:auto;
  }
  /* animation du burger en X */
  .md-nav-toggle:checked + .md-burger span:nth-child(1){ transform:translateY(8px) rotate(45deg) }
  .md-nav-toggle:checked + .md-burger span:nth-child(2){ opacity:0 }
  .md-nav-toggle:checked + .md-burger span:nth-child(3){ transform:translateY(-8px) rotate(-45deg) }

  /* Recherche visible en mobile si tu l'ajoutes dans le menu */
  .md-search{ width:100%; order:-1 }
  .md-search input{
    width:100%; padding:.8rem 1rem; border:1.5px solid var(--med-gray-200);
    border-radius:12px; outline:none;
  }
  .md-search input:focus{ border-color:var(--med-turq); box-shadow:0 0 0 3px rgba(41,211,211,.15) }
}

/* =====================================================
   HERO — Desktop clean / Mobile avec image de fond
   ===================================================== */
/* Desktop (par défaut) : deux colonnes, fond clair */
.hero-slim{
  --bg1:#f7fbfd; --bg2:#edf5f8;
  background: linear-gradient(135deg, var(--bg1) 0%, var(--bg2) 100%);
  position: relative;
  padding: clamp(36px, 6vw, 84px) 0;
}
.hero-slim__grid{
  display:grid; align-items:center;
  gap: clamp(16px, 4vw, 40px);
  grid-template-columns: minmax(0,1.05fr) minmax(0,.95fr);
}
.hero-slim__copy{ max-width: 520px; order:1 }
.hero-slim__copy h1{
  color: var(--med-navy); font-weight: 800; line-height: 1.15;
  font-size: clamp(1.35rem, 2.2vw, 2.1rem); margin: 0 0 .5rem;
}
.hero-slim__copy .sub{
  color: var(--med-gray-700);
  font-size: clamp(.95rem, 1.1vw, 1rem); margin: 0 0 1rem;
}
.hero-slim__cta{ display:flex; gap:12px; flex-wrap:wrap }
.hero-slim__media{ order:2; justify-self:end }
.hero-slim__media img{
  width:100%; height:auto; object-fit:contain; max-height:520px;
  border-radius:16px; background:#fff; box-shadow:0 14px 36px rgba(14,43,76,.10); padding:4px;
}

/* Mobile : image en FOND + overlay, contenu centré, hauteur ajustée (~680px) */
@media (max-width: 992px){
  .hero-slim__media{ display:none } /* on cache l'image colonne */

  .hero-slim{
    background: url("https://www.avicina.ma/wp-content/uploads/2025/08/gpke.png") center / cover no-repeat;
    min-height: 680px;          /* hauteur équilibrée */
    display: flex; align-items: center; justify-content: center;
    text-align: center; padding: 40px 20px; position: relative;
  }
  .hero-slim::before{
    content:""; position:absolute; inset:0;
    background: linear-gradient(180deg, rgba(0,0,0,.20) 0%, rgba(0,0,0,.55) 100%);
    z-index:0;
  }
  .hero-slim__grid{
    grid-template-columns: 1fr; position:relative; z-index:1;
    width:100%; max-width:640px;
  }
  .hero-slim__copy{ margin-inline:auto }
  .hero-slim__copy h1{ color:#fff; font-size: clamp(1.3rem, 5.5vw, 1.7rem); margin-bottom:.6rem }
  .hero-slim__copy .sub{ color:#EAF6F9; font-size: clamp(.95rem, 3.2vw, 1rem); margin-bottom:1.1rem }
  .hero-slim__cta{ justify-content:center }
  .btn--ghost{ color:#fff; border-color:#fff }
  .btn--ghost:hover{ background:#fff; color:var(--med-navy) }
}

/* ==========================================
   SECTION 3 — Candidats (image gauche)
   ========================================== */
.cand{padding: clamp(44px, 7vw, 88px) 0; background:#fff}
.cand__grid{
  display:grid; align-items:center; gap: clamp(20px, 5vw, 60px);
  grid-template-columns: 1fr 1.1fr; /* image gauche, texte droite */
}
.cand__copy{max-width:560px}
.cand__title{
  color:var(--med-navy); font-weight:800;
  font-size: clamp(1.3rem, 2.2vw, 2rem); line-height:1.2; margin:0 0 .6rem
}
.cand__sub{ color:var(--med-gray-700); font-size: clamp(.9rem,1.05vw,1rem); margin:0 0 1.2rem }
.cand__list{list-style:none; padding:0; margin:0 0 1.3rem; display:grid; gap:.6rem}
.cand__list li{display:flex; align-items:center; gap:.5rem; color:var(--med-gray-700)}
.cand__icon{width:18px; height:18px; color:var(--med-turq); flex:0 0 18px}
.cand__cta{display:flex; gap:12px; flex-wrap:wrap}
.cand__media{justify-self:start}
.cand-card{
  margin:0; border-radius:16px; overflow:hidden; background:#fff;
  box-shadow:0 10px 28px rgba(14,43,76,.12);
}
.cand-card img{ width:100%; height:auto; object-fit:contain }
@media (max-width: 992px){
  .cand__grid{grid-template-columns:1fr; text-align:center}
  .cand__media{order:-1; justify-self:center}
  .cand__copy{margin-inline:auto}
  .cand__cta{justify-content:center}
  .cand-card{max-width:480px; margin:0 auto}
}

/* ==========================================
   SECTION 4 — Employeurs (image droite)
   ========================================== */
.emp{padding: clamp(44px, 7vw, 88px) 0; background: var(--med-gray-100)}
.emp__grid{
  display:grid; align-items:center; gap: clamp(20px, 5vw, 60px);
  grid-template-columns: 1.05fr 0.95fr; /* texte gauche, image droite */
}
.emp__copy{max-width: 560px}
.emp__title{
  color: var(--med-navy); font-weight: 800;
  font-size: clamp(1.3rem, 2.2vw, 2rem); line-height: 1.2; margin: 0 0 .6rem;
}
.emp__sub{ color: var(--med-gray-700); font-size: clamp(.9rem, 1.05vw, 1rem); margin: 0 0 1.2rem }
.emp__list{list-style:none; padding:0; margin:0 0 1.3rem; display:grid; gap:.6rem}
.emp__list li{display:flex; align-items:center; gap:.5rem; color:var(--med-gray-700)}
.emp__icon{width:18px; height:18px; color:var(--med-turq); flex:0 0 18px}
.emp__cta{display:flex; gap:12px; flex-wrap:wrap}
.emp__media{justify-self:end}
.emp-card{
  margin:0; border-radius:16px; overflow:hidden; background:#fff;
  box-shadow: 0 10px 28px rgba(14,43,76,.12);
}
.emp-card img{ width:100%; height:auto; object-fit:cover }
@media (max-width: 992px){
  .emp__grid{grid-template-columns:1fr; text-align:center}
  .emp__media{order:-1; justify-self:center}
  .emp__copy{margin-inline:auto}
  .emp__cta{justify-content:center}
  .emp-card{max-width:560px; margin:0 auto}
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-a0e0897 *//* ===== Section 3: Candidats ===== */
.cand{padding: clamp(44px, 7vw, 88px) 0; background:#fff}
.cand__grid{
  display:grid; align-items:center; gap: clamp(20px, 5vw, 60px);
  grid-template-columns: 1fr 1.1fr; /* image gauche, texte droite */
}

/* Texte */
.cand__copy{max-width:560px}
.cand__title{
  color:var(--med-navy); font-weight:800;
  font-size: clamp(1.3rem, 2.2vw, 2rem); line-height:1.2; margin:0 0 .6rem
}
.cand__sub{
  color:var(--med-gray-700);
  font-size: clamp(.9rem,1.05vw,1rem); margin:0 0 1.2rem
}

.cand__list{list-style:none; padding:0; margin:0 0 1.3rem; display:grid; gap:.6rem}
.cand__list li{display:flex; align-items:center; gap:.5rem; color:var(--med-gray-700)}
.cand__icon{width:18px; height:18px; color:var(--med-turq); flex:0 0 18px}

.cand__cta{display:flex; gap:12px; flex-wrap:wrap}

/* Image */
.cand__media{justify-self:start}
.cand-card{
  margin:0; border-radius:16px; overflow:hidden;
  box-shadow:0 10px 28px rgba(14,43,76,.12);
  background:#fff;
}
.cand-card img{
  display:block; width:100%; height:auto; object-fit:contain;
}

/* Responsive */
@media (max-width: 992px){
  .cand__grid{grid-template-columns:1fr; text-align:center}
  .cand__media{order:-1; justify-self:center}
  .cand__copy{margin-inline:auto}
  .cand__cta{justify-content:center}
  .cand-card{max-width:480px; margin:0 auto}
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-561124c *//* ===== Section 4: Employeurs ===== */
.emp{padding: clamp(44px, 7vw, 88px) 0; background: var(--med-gray-100)}
.emp__grid{
  display:grid; align-items:center; gap: clamp(20px, 5vw, 60px);
  grid-template-columns: 1.05fr 0.95fr; /* texte gauche, image droite */
}

/* Texte */
.emp__copy{max-width: 560px}
.emp__title{
  color: var(--med-navy); font-weight: 800;
  font-size: clamp(1.3rem, 2.2vw, 2rem); line-height: 1.2; margin: 0 0 .6rem;
}
.emp__sub{
  color: var(--med-gray-700);
  font-size: clamp(.9rem, 1.05vw, 1rem); margin: 0 0 1.2rem;
}

.emp__list{list-style:none; padding:0; margin:0 0 1.3rem; display:grid; gap:.6rem}
.emp__list li{display:flex; align-items:center; gap:.5rem; color:var(--med-gray-700)}
.emp__icon{width:18px; height:18px; color:var(--med-turq); flex:0 0 18px}

.emp__cta{display:flex; gap:12px; flex-wrap:wrap}

/* Image */
.emp__media{justify-self:end}
.emp-card{
  margin:0; border-radius:16px; overflow:hidden; background:#fff;
  box-shadow: 0 10px 28px rgba(14,43,76,.12);
}
.emp-card img{
  display:block; width:100%; height:auto; object-fit:cover;
}

/* Responsive (image en premier sur mobile) */
@media (max-width: 992px){
  .emp__grid{grid-template-columns:1fr; text-align:center}
  .emp__media{order:-1; justify-self:center}
  .emp__copy{margin-inline:auto}
  .emp__cta{justify-content:center}
  .emp-card{max-width:560px; margin:0 auto}
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-169665e *//* ===== Section 3 : Fonctionnalités ===== */
.features{
  /* léger dégradé dans ta palette */
  background: linear-gradient(180deg, #ebffff 0%, #eff6ff 100%);
  text-align:center;
}
.features__title{
  color:var(--med-navy); font-weight:800;
  font-size:clamp(1.3rem,2.2vw,2rem); margin:0 0 .4rem;
}
.features__sub{
  color:var(--med-gray-700); font-size:clamp(.95rem,1.1vw,1rem);
  margin:0 0 1.4rem;
}

/* grille des cartes */
.features__grid{
  display:grid; gap:18px;
  grid-template-columns: repeat(4, minmax(0,1fr));
}
@media (max-width: 992px){
  .features__grid{ grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 560px){
  .features__grid{ grid-template-columns: 1fr; }
}

/* carte */
.feat{
  background:#fff; border:1px solid var(--med-gray-200);
  border-radius:14px; padding:22px 18px;
  box-shadow:0 8px 24px rgba(0,0,0,.05);
  display:flex; flex-direction:column; align-items:center; gap:.5rem;
  transition:.2s ease;
}
.feat:hover{
  transform:translateY(-2px);
  box-shadow:0 14px 36px rgba(6,55,109,.10);
  border-color:rgba(6,55,109,.18);
}

/* icône */
.feat__icon{
  width:52px; height:52px; border-radius:14px;
  background: rgba(58,211,212,.15);
  display:grid; place-items:center;
}
.feat__icon svg{ width:26px; height:26px; color:#3ad3d4 }

/* titres & textes */
.feat h3{
  margin:.2rem 0 0; font-weight:800; color:var(--med-navy); font-size:1.03rem;
}
.feat p{
  margin:0; color:var(--med-gray-700); font-size:.95rem;
}

/* CTA sous la grille */
.features__cta{ margin-top:16px; display:flex; gap:12px; justify-content:center; flex-wrap:wrap }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-c65fd35 *//* ===== Section 5: Moteur de recherche ===== */
.search{
  background: var(--med-gray-100);
  text-align: center;
}
.search__wrap{ max-width: 760px; margin-inline:auto }

.search__title{
  color: var(--med-navy); font-weight: 800;
  font-size: clamp(1.3rem, 2.2vw, 2rem);
  margin: 0 0 .5rem;
}
.search__sub{
  color: var(--med-gray-700);
  font-size: clamp(.95rem, 1.1vw, 1rem);
  margin: 0 0 1.5rem;
}

/* Formulaire */
.search__form{
  display: flex; flex-wrap: wrap;
  gap: 12px; background:#fff; padding:18px;
  border-radius:14px; box-shadow:0 8px 24px rgba(0,0,0,.06);
}
.search__form input,
.search__form select{
  flex:1; min-width:160px;
  padding:.9rem 1rem;
  border:1.5px solid var(--med-gray-200);
  border-radius:10px;
  font-size:.95rem;
}
.search__form input:focus,
.search__form select:focus{
  outline:none; border-color:var(--med-turq);
  box-shadow:0 0 0 3px rgba(41,211,211,.15);
}
.search__form button{
  flex:0 0 auto; padding:.9rem 1.5rem;
}

/* Mobile responsive */
@media (max-width: 768px){
  .search__form{ flex-direction:column; }
  .search__form input,
  .search__form select,
  .search__form button{ width:100% }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-3008a4a *//* ===== Section 6: Pourquoi MEDARIS ===== */
.why{ background:#fff; text-align:center }
.why__title{
  color:var(--med-navy); font-weight:800;
  font-size:clamp(1.3rem,2.2vw,2rem); margin:0 0 .3rem;
}
.why__sub{
  color:var(--med-gray-700);
  font-size:clamp(.95rem,1.1vw,1rem);
  margin:0 0 1.4rem;
}

.why__grid{
  display:grid; gap:20px;
  grid-template-columns: repeat(3, minmax(0,1fr));
}
@media (max-width: 992px){
  .why__grid{ grid-template-columns:1fr }
}

.why-card{
  background:#fff; border:1px solid var(--med-gray-200);
  border-radius:14px; padding:22px 20px;
  transition:.2s ease; height:100%;
  display:flex; flex-direction:column; align-items:center; gap:.4rem;
  box-shadow:0 2px 8px rgba(0,0,0,.02);
}
.why-card:hover{
  transform:translateY(-2px);
  box-shadow:0 10px 26px rgba(14,43,76,.10);
  border-color:rgba(20,76,138,.18);
}

.why-card__icon{
  width:48px; height:48px; border-radius:12px;
  background:rgba(41,211,211,.15);
  display:grid; place-items:center; margin-bottom:.4rem;
}
.why-card__icon svg{ width:24px; height:24px; color:var(--med-turq) }

.why-card h3{
  color:var(--med-navy); font-size:1.05rem; margin:.2rem 0 0; font-weight:800;
}
.why-card p{
  color:var(--med-gray-700); font-size:.95rem; margin:.2rem 0 0;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-547a7d5 *//* ===== Section Offres Recruteurs ===== */
.recruiter-plans{
  background:#ebffff;
  text-align:center;
  padding:60px 20px;
}
.plans__title{
  color:var(--med-navy); font-size:clamp(1.5rem,2.5vw,2.2rem); font-weight:800;
  margin-bottom:.5rem;
}
.plans__sub{ color:var(--med-gray-700); margin:0 0 2rem; }

/* grille */
.plans__grid{
  display:grid; gap:22px;
  grid-template-columns: repeat(3,1fr);
}
@media(max-width:992px){ .plans__grid{ grid-template-columns:1fr; } }

/* carte plan */
.plan{
  background:#fff; border:1px solid var(--med-gray-200); border-radius:14px;
  padding:28px 22px; box-shadow:0 6px 20px rgba(0,0,0,.05);
  display:flex; flex-direction:column; gap:16px;
  transition:.25s ease;
}
.plan:hover{ transform:translateY(-3px); box-shadow:0 12px 28px rgba(6,55,109,.15) }
.plan h3{ font-size:1.3rem; font-weight:800; color:var(--med-navy); margin:0 }
.plan .price{ font-size:1.1rem; font-weight:700; color:var(--med-turq) }
.plan ul{ list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:8px }
.plan ul li{ color:var(--med-gray-700); font-size:.95rem }

/* mettre en avant le plan Pro */
.plan.highlight{
  border:2px solid var(--med-turq);
  box-shadow:0 12px 32px rgba(58,211,212,.25);
}
.plan.highlight h3{ color:var(--med-turq) }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-10a5c7e *//* ===== Section 7: Stats / Témoignages ===== */
.stats{ background:var(--med-gray-100); text-align:center }
.stats__title{
  color:var(--med-navy); font-weight:800;
  font-size:clamp(1.3rem,2.2vw,2rem); margin:0 0 .4rem;
}
.stats__sub{
  color:var(--med-gray-700);
  font-size:clamp(.95rem,1.1vw,1rem);
  margin:0 0 1.8rem;
}

.stats__grid{
  display:grid; gap:20px;
  grid-template-columns: repeat(3, minmax(0,1fr));
}
@media (max-width: 768px){
  .stats__grid{ grid-template-columns:1fr }
}

.stat-card{
  background:#fff;
  border-radius:14px;
  padding:28px 20px;
  box-shadow:0 8px 24px rgba(0,0,0,.06);
  display:flex; flex-direction:column; align-items:center; justify-content:center;
}
.stat-card__number{
  font-size:2.2rem; font-weight:800; color:var(--med-turq);
  margin-bottom:.4rem;
}
.stat-card p{
  font-size:1rem; color:var(--med-gray-700); margin:0;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-79441f6 *//* ===== Section 8: Témoignages ===== */
.testimonials{ background:#fff; text-align:center }
.testi__title{
  color:var(--med-navy); font-weight:800;
  font-size:clamp(1.3rem,2.2vw,2rem); margin:0 0 .4rem;
}
.testi__sub{
  color:var(--med-gray-700);
  font-size:clamp(.95rem,1.1vw,1rem);
  margin:0 0 1.8rem;
}

.testi__grid{
  display:grid; gap:20px;
  grid-template-columns: repeat(3, minmax(0,1fr));
}
@media (max-width: 992px){
  .testi__grid{ grid-template-columns:1fr }
}

.testi-card{
  background:#fff;
  border:1px solid var(--med-gray-200);
  border-radius:16px;
  padding:24px 20px;
  box-shadow:0 8px 24px rgba(0,0,0,.06);
  display:flex; flex-direction:column; align-items:center; gap:.6rem;
}
.testi__avatar{
  width:64px; height:64px;
  border-radius:50%; object-fit:cover;
  margin-bottom:.6rem;
}
.testi-card blockquote{
  font-style:italic; color:var(--med-gray-700);
  font-size:.95rem; line-height:1.45;
  margin:0 0 .4rem;
}
.testi__name{ font-weight:700; color:var(--med-navy) }
.testi__role{ font-size:.9rem; color:var(--med-gray-500) }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-c0bdcd3 *//* ===== Section 9: CTA final ===== */
.cta-final{
  background: linear-gradient(135deg, var(--med-navy) 0%, var(--med-blue) 100%);
  text-align:center; color:#fff;
  padding: clamp(60px, 8vw, 120px) 20px;
}
.cta__wrap{ max-width:720px; margin:0 auto }

.cta__title{
  font-size:clamp(1.6rem,2.5vw,2.4rem);
  font-weight:800; margin:0 0 .6rem;
}
.cta__sub{
  font-size:clamp(1rem,1.3vw,1.1rem);
  margin:0 0 1.6rem; color:rgba(255,255,255,.9);
}

.cta__buttons{ display:flex; gap:14px; justify-content:center; flex-wrap:wrap }

/* CTA styles adaptés au fond sombre */
.btn--light{
  background:#fff; color:var(--med-navy);
}
.btn--light:hover{ background:var(--med-turq); color:var(--med-navy) }

.btn--ghost-light{
  border:2px solid #fff; color:#fff; background:transparent;
}
.btn--ghost-light:hover{
  background:#fff; color:var(--med-navy);
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-d45bca3 *//* ===== Footer blanc ===== */
.footer--white{
  background:#fff url("https://www.transparenttextures.com/patterns/paper-fibers.png"); /* exemple texture subtile */
  background-size: auto;
  text-align:center;
  padding:60px 20px 20px;
}

.footer__brand img{
  height:52px; margin:0 auto 1rem;
}
.footer__brand p{
  color:var(--med-gray-700);
  font-size:.95rem; margin:0 0 1.5rem;
}

.footer__nav{
  display:flex; justify-content:center; flex-wrap:wrap; gap:18px;
  margin-bottom:1.5rem;
}
.footer__nav a{
  color:var(--med-navy); font-weight:600; text-decoration:none; font-size:.95rem;
  transition:.2s;
}
.footer__nav a:hover{ color:var(--med-turq) }

.footer__socials{
  display:flex; justify-content:center; gap:16px;
  margin-bottom:1.5rem;
}
.footer__socials a svg{
  width:22px; height:22px; color:var(--med-navy);
  transition:.2s;
}
.footer__socials a:hover svg{ color:var(--med-turq) }

.footer__bottom{
  border-top:1px solid var(--med-gray-200);
  padding-top:15px;
  font-size:.85rem;
  color:var(--med-gray-500);
}
.footer__bottom a{ color:var(--med-blue); text-decoration:none }
.footer__bottom a:hover{ text-decoration:underline }/* End custom CSS */