.elementor-kit-6{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){margin-block-end:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS */@import url("https://fonts.googleapis.com/css2?family=Syne:wght@400;500;600;700;800&family=Manrope:wght@300;400;500;600;700&display=swap");

/*
 * Campus Enghien â CSS v4
 * Cible les IDs Elementor rÃ©els (.elementor-element-XXXX)
 * Body class requise : campus-enghien-landing
 */

/* ===== 1. VARIABLES & BASE ===== */
body.campus-enghien-landing  {
  --ce-ink:    #0F0A2E;
  --ce-ink-2:  #1B1446;
  --ce-ink-3:  #2A215F;
  --ce-cream:  #F5F1EA;
  --ce-mag:    #E37BD6;
  --ce-rose:   #FFB3E1;
  --ce-cyan:   #41E0E0;
  --ce-teal:   #2BC1C7;
  --ce-violet: #6C5CE7;
  --ce-line:   rgba(245,241,234,.14);
  background: var(--ce-ink);
  color: var(--ce-cream);
  font-family: 'Manrope', sans-serif;
  -webkit-font-smoothing: antialiased;
  line-height: 1.55;
 }

/* Grain texture on body */
body.campus-enghien-landing::before  {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 9999;
  opacity: .045;
  mix-blend-mode: overlay;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)' opacity='0.9'/></svg>");
 }

/* ===== 2. TYPOGRAPHIE WIDGETS ===== */
body.campus-enghien-landing .ce-eyebrow .elementor-heading-title,
body.campus-enghien-landing .elementor-element.ce-eyebrow .elementor-heading-title  {
  font-family: 'Syne', sans-serif !important;
  font-weight: 600 !important;
  font-size: 11px !important;
  letter-spacing: .24em !important;
  text-transform: uppercase !important;
  color: var(--ce-rose) !important;
  display: block;
  margin-bottom: 18px;
 }

body.campus-enghien-landing .ce-grad  {
  background: linear-gradient(92deg, var(--ce-rose) 0%, var(--ce-mag) 40%, var(--ce-cyan) 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  display: inline;
 }

/* ===== 3. NAVIGATION ===== */
body.campus-enghien-landing .elementor-element-ce000001  {
  position: sticky !important;
  top: 0;
  z-index: 100 !important;
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  background: linear-gradient(180deg, rgba(15,10,46,.92), rgba(15,10,46,.72)) !important;
  border-bottom: 1px solid var(--ce-line);
 }

/* CTA nav button */
body.campus-enghien-landing .elementor-element-ce000001 .elementor-button  {
  background: var(--ce-cream) !important;
  color: var(--ce-ink) !important;
  transition: transform .2s, box-shadow .2s !important;
 }
body.campus-enghien-landing .elementor-element-ce000001 .elementor-button:hover  {
  transform: translateY(-2px);
  box-shadow: 0 12px 30px -10px rgba(255,179,225,.5);
 }

/* ===== 4. HERO ===== */
body.campus-enghien-landing .elementor-element-ce010001  {
  position: relative;
 }

/* Hero glows */
body.campus-enghien-landing .elementor-element-ce010001::before  {
  content: "";
  position: absolute;
  width: 640px; height: 640px;
  border-radius: 50%;
  background: radial-gradient(closest-side, rgba(227,123,214,.3), transparent 70%);
  filter: blur(30px);
  pointer-events: none;
  top: -120px; left: -200px;
  z-index: 0;
 }
body.campus-enghien-landing .elementor-element-ce010001::after  {
  content: "";
  position: absolute;
  width: 560px; height: 560px;
  border-radius: 50%;
  background: radial-gradient(closest-side, rgba(65,224,224,.24), transparent 70%);
  filter: blur(30px);
  pointer-events: none;
  bottom: -200px; right: -180px;
  z-index: 0;
 }

/* Hero heading */
body.campus-enghien-landing .elementor-element.ce-h1 .elementor-heading-title  {
  font-family: 'Syne', sans-serif !important;
  font-weight: 800 !important;
  font-size: clamp(44px, 6.5vw, 88px) !important;
  line-height: .96 !important;
  letter-spacing: -.025em !important;
  color: var(--ce-cream) !important;
 }

/* Hero badge eyebrow */
body.campus-enghien-landing .elementor-element.ce-hero-badge .elementor-heading-title  {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 8px 14px;
  border: 1px solid var(--ce-line);
  border-radius: 999px;
  font-family: 'Syne', sans-serif !important;
  font-size: 12px !important;
  letter-spacing: .16em !important;
  text-transform: uppercase !important;
  font-weight: 600 !important;
  color: var(--ce-cream) !important;
 }

/* Hero sub */
body.campus-enghien-landing .elementor-element.ce-hero-sub .elementor-widget-container  {
  margin-top: 28px;
  max-width: 540px;
  font-size: 18px;
  color: rgba(245,241,234,.82);
 }

/* ===== 5. FORM CARD ===== */
body.campus-enghien-landing .elementor-element-bx49yhj  {
  background: linear-gradient(160deg, rgba(42,33,95,.65), rgba(27,20,70,.9)) !important;
  border: 1px solid var(--ce-line) !important;
  border-radius: 28px !important;
  position: relative;
  overflow: hidden;
  box-shadow: 0 30px 80px -30px rgba(0,0,0,.7);
 }
body.campus-enghien-landing .elementor-element-bx49yhj::before  {
  content: "";
  position: absolute;
  top: -120px; right: -120px;
  width: 260px; height: 260px;
  border-radius: 50%;
  background: radial-gradient(closest-side, rgba(227,123,214,.45), transparent 70%);
  filter: blur(10px);
  pointer-events: none;
  z-index: 0;
 }
body.campus-enghien-landing .elementor-element-bx49yhj::after  {
  content: "";
  position: absolute;
  bottom: -140px; left: -100px;
  width: 260px; height: 260px;
  border-radius: 50%;
  background: radial-gradient(closest-side, rgba(65,224,224,.35), transparent 70%);
  filter: blur(10px);
  pointer-events: none;
  z-index: 0;
 }
body.campus-enghien-landing .elementor-element-bx49yhj > .e-con-inner  {
  position: relative;
  z-index: 1;
 }

/* Form title */
body.campus-enghien-landing .elementor-element.ce-form-title .elementor-heading-title  {
  font-family: 'Syne', sans-serif !important;
  font-weight: 700 !important;
  font-size: 22px !important;
  color: var(--ce-cream) !important;
  margin-bottom: 4px;
 }
body.campus-enghien-landing .elementor-element.ce-form-note .elementor-widget-container  {
  font-size: 13px;
  opacity: .7;
  margin-bottom: 22px;
 }

/* Elementor form inputs */
body.campus-enghien-landing .elementor-element-bx49yhj input,
body.campus-enghien-landing .elementor-element-bx49yhj select,
body.campus-enghien-landing .elementor-element-bx49yhj textarea  {
  background: rgba(15,10,46,.5) !important;
  border: 1px solid var(--ce-line) !important;
  border-radius: 12px !important;
  color: var(--ce-cream) !important;
  font-family: 'Manrope', sans-serif !important;
  font-size: 14px !important;
  padding: 13px 14px !important;
  transition: border .2s, background .2s !important;
 }
body.campus-enghien-landing .elementor-element-bx49yhj input:focus,
body.campus-enghien-landing .elementor-element-bx49yhj select:focus  {
  border-color: var(--ce-cyan) !important;
  background: rgba(15,10,46,.75) !important;
  outline: none !important;
 }
body.campus-enghien-landing .elementor-element-bx49yhj label  {
  font-size: 12px !important;
  text-transform: uppercase !important;
  letter-spacing: .12em !important;
  opacity: .7 !important;
  font-weight: 600 !important;
  color: var(--ce-cream) !important;
 }
body.campus-enghien-landing .elementor-element-bx49yhj .elementor-button  {
  background: linear-gradient(92deg, var(--ce-mag), var(--ce-violet), var(--ce-cyan)) !important;
  color: var(--ce-ink) !important;
  border-radius: 999px !important;
  font-family: 'Syne', sans-serif !important;
  font-weight: 700 !important;
  width: 100% !important;
  justify-content: center !important;
  border: none !important;
  font-size: 15px !important;
 }

/* ===== 6. HERO BUTTONS ===== */
body.campus-enghien-landing .elementor-element-bo6ne3x .elementor-button  {
  background: linear-gradient(92deg, var(--ce-mag) 0%, var(--ce-violet) 50%, var(--ce-cyan) 100%) !important;
  color: var(--ce-ink) !important;
  letter-spacing: .02em !important;
  transition: transform .2s, box-shadow .2s !important;
  text-decoration: none !important;
 }
body.campus-enghien-landing .elementor-element-bo6ne3x .elementor-button:hover  {
  transform: translateY(-2px) !important;
  box-shadow: 0 18px 50px -12px rgba(108,92,231,.55) !important;
 }

body.campus-enghien-landing .elementor-element-fs0axil .elementor-button  {
  background: transparent !important;
  color: var(--ce-cream) !important;
  letter-spacing: .02em !important;
  transition: background .2s !important;
  text-decoration: none !important;
  border: 1px solid var(--ce-line) !important;
}
body.campus-enghien-landing .elementor-element-fs0axil .elementor-button:hover  {
  background: rgba(245,241,234,.07) !important;
  border: 1px solid var(--ce-line) !important;
}

/* ===== 7. TRUST BAR ===== */
body.campus-enghien-landing .elementor-element-ce020001  {
  border-top: 1px solid var(--ce-line) !important;
  border-bottom: 1px solid var(--ce-line) !important;
  background: rgba(255,255,255,.01) !important;
 }
body.campus-enghien-landing .elementor-element.ce-trust-label .elementor-heading-title  {
  font-size: 12px !important;
  text-transform: uppercase !important;
  letter-spacing: .18em !important;
  opacity: .55 !important;
  font-weight: 600 !important;
  color: var(--ce-cream) !important;
  font-family: 'Syne', sans-serif !important;
 }
/* Trust items â remove badge pill styling, use flat style */
body.campus-enghien-landing .elementor-element.ce-trust-items .elementor-icon-list-items  {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 28px !important;
  align-items: center !important;
 }
body.campus-enghien-landing .elementor-element.ce-trust-items .elementor-icon-list-item  {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  border-radius: 0 !important;
 }
body.campus-enghien-landing .elementor-element.ce-trust-items .elementor-icon-list-item a  {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  font-family: 'Syne', sans-serif !important;
  font-weight: 600 !important;
  font-size: 15px !important;
  color: var(--ce-cream) !important;
  text-decoration: none !important;
 }

/* ===== 8. ATOUTS ===== */
body.campus-enghien-landing .elementor-element-ce030001  {
  position: relative;
 }
/* Glow blobs on atouts */
body.campus-enghien-landing .elementor-element-ce030001::before  {
  content: "";
  position: absolute;
  width: 640px; height: 640px;
  border-radius: 50%;
  background: radial-gradient(closest-side, rgba(227,123,214,.25), transparent 70%);
  filter: blur(30px);
  pointer-events: none;
  top: -80px; left: -240px;
  z-index: 0;
 }
body.campus-enghien-landing .elementor-element-ce030001::after  {
  content: "";
  position: absolute;
  width: 560px; height: 560px;
  border-radius: 50%;
  background: radial-gradient(closest-side, rgba(65,224,224,.22), transparent 70%);
  filter: blur(30px);
  pointer-events: none;
  bottom: -160px; right: -240px;
  z-index: 0;
 }

/* Atout item cards */
body.campus-enghien-landing .elementor-element-31aih0n,
body.campus-enghien-landing .elementor-element-obfgi50,
body.campus-enghien-landing .elementor-element-1b6eulo,
body.campus-enghien-landing .elementor-element-9jjj6l6,
body.campus-enghien-landing .elementor-element-ews8egs  {
  position: relative;
  border: 1px solid var(--ce-line) !important;
  border-radius: 24px !important;
  background: linear-gradient(180deg, rgba(42,33,95,.3), rgba(27,20,70,.2)) !important;
  transition: transform .3s, border-color .3s;
 }
body.campus-enghien-landing .elementor-element-31aih0n:hover,
body.campus-enghien-landing .elementor-element-obfgi50:hover,
body.campus-enghien-landing .elementor-element-1b6eulo:hover,
body.campus-enghien-landing .elementor-element-9jjj6l6:hover,
body.campus-enghien-landing .elementor-element-ews8egs:hover  {
  transform: translateY(-4px);
  border-color: rgba(227,123,214,.3) !important;
 }

/* Atout num (ATOUT 01 / 02 / 03) */
body.campus-enghien-landing .elementor-element.ce-atout-num .elementor-heading-title  {
  font-family: 'Syne', sans-serif !important;
  font-weight: 800 !important;
  font-size: 14px !important;
  letter-spacing: .18em !important;
  background: linear-gradient(92deg, var(--ce-mag), var(--ce-cyan));
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent !important;
  margin-bottom: 18px;
 }
body.campus-enghien-landing .elementor-element.ce-atout-h .elementor-heading-title  {
  font-family: 'Syne', sans-serif !important;
  font-weight: 700 !important;
  font-size: 26px !important;
  letter-spacing: -.01em !important;
  color: var(--ce-cream) !important;
  margin-bottom: 12px;
 }
/* Paris card gradient background */
body.campus-enghien-landing .elementor-element-qb2ms4g  {
  position: relative;
  border-radius: 32px !important;
  overflow: hidden;
  background: linear-gradient(135deg, #1B1446 0%, #2A215F 100%) !important;
  border: 1px solid var(--ce-line) !important;
 }
body.campus-enghien-landing .elementor-element-qb2ms4g::before  {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(600px 300px at 85% 20%, rgba(227,123,214,.25), transparent 60%),
    radial-gradient(500px 280px at 10% 80%, rgba(65,224,224,.22), transparent 60%);
  pointer-events: none;
  z-index: 0;
 }
body.campus-enghien-landing .elementor-element-qb2ms4g > .e-con-inner  {
  position: relative;
  z-index: 1;
 }

/* ===== 10. PARCOURS ===== */
body.campus-enghien-landing .elementor-element-ce050001  {
  position: relative;
 }
body.campus-enghien-landing .elementor-element-ce050001::before  {
  content: "";
  position: absolute;
  width: 640px; height: 640px;
  border-radius: 50%;
  background: radial-gradient(closest-side, rgba(227,123,214,.22), transparent 70%);
  filter: blur(30px);
  pointer-events: none;
  top: -120px; right: -240px;
  z-index: 0;
 }

/* ===== 11. IA SECTION ===== */
body.campus-enghien-landing .elementor-element-ce060001  {
  position: relative;
 }

/* IA card backgrounds */
body.campus-enghien-landing .elementor-element-6rw02h6,
body.campus-enghien-landing .elementor-element-b19xx2i,
body.campus-enghien-landing .elementor-element-kzblpg6,
body.campus-enghien-landing .elementor-element-rt7a9i0  {
  border-radius: 24px !important;
  overflow: hidden;
  background: linear-gradient(180deg, rgba(42,33,95,.5), rgba(15,10,46,.65)) !important;
  border: 1px solid var(--ce-line) !important;
 }

/* IA tag (Parcours 01 / 02 / 03) */
body.campus-enghien-landing .elementor-element.ce-ia-tag .elementor-heading-title  {
  display: inline-flex !important;
  align-items: center !important;
  padding: 6px 12px !important;
  border-radius: 999px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
  background: rgba(65,224,224,.12) !important;
  color: var(--ce-cyan) !important;
  border: 1px solid rgba(65,224,224,.25) !important;
  margin-bottom: 18px;
  font-family: 'Syne', sans-serif !important;
 }

/* IA intro text */
body.campus-enghien-landing .elementor-element.ce-ia-intro .elementor-widget-container  {
  max-width: 520px;
  color: rgba(245,241,234,.78);
  font-size: 16px;
 }

body.campus-enghien-landing .elementor-element-c2mbnab,
body.campus-enghien-landing .elementor-element-yxxlzpz,
body.campus-enghien-landing .elementor-element-emdfkn7  {
  border-radius: 24px !important;
  border: 1px solid var(--ce-line) !important;
  background: rgba(27,20,70,.35) !important;
  position: relative;
  overflow: hidden;
 }

/* Partner top accent lines */
body.campus-enghien-landing .elementor-element-c2mbnab::before  {
  content: "";
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 3px;
  background: linear-gradient(90deg, var(--ce-mag), var(--ce-rose));
 }
body.campus-enghien-landing .elementor-element-yxxlzpz::before  {
  content: "";
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 3px;
  background: linear-gradient(90deg, var(--ce-violet), var(--ce-mag));
 }
body.campus-enghien-landing .elementor-element-emdfkn7::before  {
  content: "";
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 3px;
  background: linear-gradient(90deg, var(--ce-cyan), var(--ce-teal));
 }

/* ===== 13. GAINS ===== */
body.campus-enghien-landing .elementor-element-ce080001  {
  position: relative;
 }

body.campus-enghien-landing .elementor-element-jvvh9jg,
body.campus-enghien-landing .elementor-element-grzaaev,
body.campus-enghien-landing .elementor-element-ym4y7ih  {
  border-radius: 20px !important;
  border: 1px solid var(--ce-line) !important;
  background: rgba(42,33,95,.2) !important;
 }

/* CTA card */
body.campus-enghien-landing .elementor-element-sczgq45  {
  position: relative;
  border-radius: 36px !important;
  overflow: hidden;
  background: linear-gradient(135deg, #1B1446 0%, #120C35 100%) !important;
  border: 1px solid var(--ce-line) !important;
 }
body.campus-enghien-landing .elementor-element-sczgq45::before  {
  content: "";
  position: absolute;
  inset: -1px;
  border-radius: 36px;
  background: linear-gradient(135deg, rgba(227,123,214,.5), transparent 50%, rgba(65,224,224,.5));
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  pointer-events: none;
 }
body.campus-enghien-landing .elementor-element-sczgq45::after  {
  content: "";
  position: absolute;
  top: -80px; right: -80px;
  width: 300px; height: 300px;
  border-radius: 50%;
  background: radial-gradient(closest-side, rgba(227,123,214,.3), transparent 70%);
  filter: blur(20px);
  pointer-events: none;
 }

/* Mini form */
body.campus-enghien-landing .elementor-element-cqhbde1  {
  background: rgba(15,10,46,.5) !important;
  border: 1px solid var(--ce-line) !important;
  border-radius: 24px !important;
 }
body.campus-enghien-landing .elementor-element-cqhbde1 input,
body.campus-enghien-landing .elementor-element-cqhbde1 select  {
  background: rgba(15,10,46,.5) !important;
  border: 1px solid var(--ce-line) !important;
  border-radius: 12px !important;
  color: var(--ce-cream) !important;
  font-family: 'Manrope', sans-serif !important;
  font-size: 14px !important;
  padding: 13px 14px !important;
 }
body.campus-enghien-landing .elementor-element-cqhbde1 .elementor-button  {
  background: linear-gradient(92deg, var(--ce-mag), var(--ce-violet), var(--ce-cyan)) !important;
  color: var(--ce-ink) !important;
  border-radius: 999px !important;
  font-family: 'Syne', sans-serif !important;
  font-weight: 700 !important;
  border: none !important;
 }
body.campus-enghien-landing .elementor-element-h4956oy  {
  background: rgba(27,20,70,.25) !important;
  border: 1px solid var(--ce-line) !important;
  border-radius: 20px !important;
  overflow: hidden;
 }

/* FAQ accordion */
body.campus-enghien-landing .elementor-element-ce100001 .e-n-accordion-item  {
  border-bottom: 1px solid var(--ce-line) !important;
  background: transparent !important;
 }

body.campus-enghien-landing .elementor-element-ce100001 .e-n-accordion-item-title-icon  {
  color: var(--ce-mag) !important;
 }

/* ===== 16. FOOTER ===== */
body.campus-enghien-landing .elementor-element-ce110001  {
  border-top: 1px solid var(--ce-line) !important;
  background: rgba(15,10,46,.6) !important;
 }

/* ===== 17. GLOBAL HEADING COLORS ===== */
body.campus-enghien-landing h1,
body.campus-enghien-landing h2,
body.campus-enghien-landing h3,
body.campus-enghien-landing h4,
body.campus-enghien-landing .elementor-heading-title  {
  color: var(--ce-cream);
 }

/* ===== 18. RESPONSIVE ===== */
@media (max-width: 979px)  {
  body.campus-enghien-landing .elementor-element-ce010001::before,
  body.campus-enghien-landing .elementor-element-ce010001::after {
    opacity: .5;
  }
  
  
 }

@media (max-width: 767px) {
  
  body.campus-enghien-landing .elementor-element.ce-h1 .elementor-heading-title  {
    font-size: clamp(36px, 10vw, 56px) !important;
   }
}

/* CTA section - Démarrer ma candidature (gradient) */
body.campus-enghien-landing .elementor-element-kavbcik .elementor-button  {
  background: linear-gradient(92deg, var(--ce-mag) 0%, var(--ce-violet) 50%, var(--ce-cyan) 100%) !important;
  color: var(--ce-ink) !important;
  letter-spacing: .02em !important;
  transition: transform .2s, box-shadow .2s !important;
 }
body.campus-enghien-landing .elementor-element-kavbcik .elementor-button:hover  {
  transform: translateY(-2px) !important;
  box-shadow: 0 18px 50px -12px rgba(108,92,231,.55) !important;
 }

/* CTA section - Parler à un conseiller (ghost) */
/* Paris section - Planifier une visite (ghost) */
body.campus-enghien-landing .elementor-element-bghi3bb .elementor-button,
body.campus-enghien-landing .elementor-element-u50tn9k .elementor-button  {
  background: transparent !important;
  color: var(--ce-cream) !important;
  letter-spacing: .02em !important;
  transition: background .2s !important;
  text-decoration: none !important;
  border: 1px solid var(--ce-line) !important;
}
body.campus-enghien-landing .elementor-element-bghi3bb .elementor-button:hover,
body.campus-enghien-landing .elementor-element-u50tn9k .elementor-button:hover  {
  background: rgba(245,241,234,.07) !important;
  border: 1px solid var(--ce-line) !important;
}

/* HIGH-SPECIFICITY override for Elementor lazy-load (background-image:none!important)
   Specificity: body(0,0,1) + .campus-enghien-landing(0,1,0) + .id.btn.elementor-widget-button(0,3,0) + .elementor-button(0,1,0) = (0,5,1) > lazyload(0,5,0) */
body.campus-enghien-landing .elementor-element-kavbcik.btn.elementor-widget-button .elementor-button,
body.campus-enghien-landing .elementor-element-bo6ne3x.btn.elementor-widget-button .elementor-button  {
  background-image: linear-gradient(92deg, var(--ce-mag) 0%, var(--ce-violet) 50%, var(--ce-cyan) 100%) !important;
  background-color: transparent !important;
 }

/* Hero meta chips (widget 2w9f1ux) - styled like .chip in mockup */
body.campus-enghien-landing .elementor-element-2w9f1ux .elementor-icon-list-items  {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  align-items: center !important;
  padding: 0 !important;
  margin: 0 !important;
 }
body.campus-enghien-landing .elementor-element-2w9f1ux .elementor-icon-list-item  {
  display: inline-flex !important;
  align-items: center !important;
  padding: 9px 14px !important;
  border-radius: 999px !important;
  background: rgba(245,241,234,.05) !important;
  border: 1px solid rgba(245,241,234,.14) !important;
  list-style: none !important;
 }
body.campus-enghien-landing .elementor-element-2w9f1ux .elementor-icon-list-text  {
  font-family: 'Syne', sans-serif !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  color: var(--ce-cream) !important;
  line-height: 1 !important;
 }
body.campus-enghien-landing .elementor-element-2w9f1ux .elementor-icon-list-icon  {
  display: none !important;
 }

/* ===== Flaticon Uicons – hero chips ===== */
body.campus-enghien-landing .elementor-element-2w9f1ux .elementor-icon-list-items  {
  display: flex !important; flex-wrap: wrap !important; gap: 10px !important; align-items: center !important;
 }
body.campus-enghien-landing .elementor-element-2w9f1ux .elementor-icon-list-item  {
  display: inline-flex !important; align-items: center !important;
  padding: 9px 14px !important; border-radius: 999px !important;
  background: rgba(245,241,234,.05) !important; border: 1px solid rgba(245,241,234,.14) !important;
 }
body.campus-enghien-landing .elementor-element-2w9f1ux .elementor-icon-list-text  {
  font-family: 'Syne', sans-serif !important; font-size: 13px !important;
  font-weight: 500 !important; color: var(--ce-cream) !important; line-height: 1 !important;
  display: inline-flex !important; align-items: center !important; gap: 7px !important;
 }
/* Uicons before each chip text */
body.campus-enghien-landing .elementor-element-2w9f1ux .elementor-icon-list-item:nth-child(1) .elementor-icon-list-text::before  {
  font-family: 'uicons-regular-rounded' !important; font-style: normal !important; font-weight: normal !important;
  content: "\ea1b" !important; font-size: 14px !important; line-height: 1 !important;
  color: var(--ce-cream) !important;
 }
body.campus-enghien-landing .elementor-element-2w9f1ux .elementor-icon-list-item:nth-child(2) .elementor-icon-list-text::before  {
  font-family: 'uicons-regular-rounded' !important; font-style: normal !important; font-weight: normal !important;
  content: "\e9ff" !important; font-size: 14px !important; line-height: 1 !important;
  color: #f472b6 !important;
 }
body.campus-enghien-landing .elementor-element-2w9f1ux .elementor-icon-list-item:nth-child(3) .elementor-icon-list-text::before  {
  font-family: 'uicons-regular-rounded' !important; font-style: normal !important; font-weight: normal !important;
  content: "\f008" !important; font-size: 14px !important; line-height: 1 !important;
  color: var(--ce-cyan) !important;
 }

/* ===== Hero badge picto dot ===== */
body.campus-enghien-landing .elementor-element-pexr4ue .elementor-heading-title  {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
 }
body.campus-enghien-landing .elementor-element-pexr4ue .elementor-heading-title::before  {
  content: '' !important;
  display: block !important;
  width: 10px !important; height: 10px !important;
  border-radius: 50% !important;
  background: radial-gradient(circle at 40% 35%, var(--ce-cyan), var(--ce-teal)) !important;
  box-shadow: 0 0 8px rgba(65,224,224,.6), 0 0 0 2px rgba(65,224,224,.15) !important;
  flex-shrink: 0 !important;
 }

/* ===== PARCOURS — Nested Tabs ===== */
/* Tab pill container */
body.campus-enghien-landing .elementor-element-1e2aa83 .e-n-tabs-heading  {
  display: flex !important; flex-wrap: wrap !important; gap: 8px !important;
  padding: 6px !important; border: 1px solid var(--ce-line) !important;
  border-radius: 999px !important; background: rgba(27,20,70,.4) !important;
  width: fit-content !important; margin-bottom: 36px !important;
 }
/* Tab button */
body.campus-enghien-landing .elementor-element-1e2aa83 .e-n-tab-title  {
  font-family: 'Syne', sans-serif !important; font-weight: 600 !important;
  font-size: 14px !important; padding: 11px 20px !important;
  border-radius: 999px !important; cursor: pointer !important;
  background: transparent !important; color: var(--ce-cream) !important;
  opacity: .65 !important; transition: all .25s !important;
  border: none !important; white-space: nowrap !important;
 }
body.campus-enghien-landing .elementor-element-1e2aa83 .e-n-tab-title:hover  { opacity: 1 !important;  }
/* Active tab */
body.campus-enghien-landing .elementor-element-1e2aa83 .e-n-tab-title[aria-selected="true"],
body.campus-enghien-landing .elementor-element-1e2aa83 .e-n-tab-title.e-active  {
  background: linear-gradient(92deg, var(--ce-mag), var(--ce-violet), var(--ce-cyan)) !important;
  color: var(--ce-ink) !important; opacity: 1 !important;
 }
/* Remove default tab borders/bg */
body.campus-enghien-landing .elementor-element-1e2aa83 .e-n-tabs-content  { border: none !important; background: none !important;  }
body.campus-enghien-landing .elementor-element-1e2aa83 .e-n-tab-content  { padding: 0 !important;  }

/* ===== Panel grid ===== */
.ce-parcours-panel  {
  display: grid; grid-template-columns: 1fr; gap: 28px; padding: 8px 0 20px;
 }
@media (min-width: 980px) { .ce-parcours-panel  { grid-template-columns: .95fr 1.05fr; gap: 48px;  } }

/* Intro */
.ce-parcours-intro h3  {
  font-size: clamp(22px, 2.5vw, 34px); font-family: 'Syne', sans-serif;
  font-weight: 700; letter-spacing: -.015em; margin-bottom: 16px; color: var(--ce-cream);
 }
.ce-parcours-intro > p  {
  color: rgba(245,241,234,.78); font-size: 15px; margin-bottom: 0; max-width: 480px; line-height: 1.65;
 }

/* Skills grid */
.ce-skills { display: grid; grid-template-columns: 1fr; gap: 14px; margin-top: 24px; }
@media (min-width: 768px) {
  .ce-skills { grid-template-columns: 1fr 1fr; }
}
.ce-skill  {
  padding: 16px 18px; border-radius: 16px;
  border: 1px solid var(--ce-line); background: rgba(42,33,95,.25);
 }
.ce-skill-num  {
  font-family: 'Syne', sans-serif; font-weight: 700; font-size: 11px;
  color: var(--ce-rose); letter-spacing: .12em; margin-bottom: 6px;
 }
.ce-skill-txt  { font-size: 13px; color: rgba(245,241,234,.8); line-height: 1.5;  }

/* Timeline */

.ce-step:first-of-type  { border-top: 1px solid var(--ce-line);  }

/* ===== FAQ — Nested Accordion ===== */
body.campus-enghien-landing .elementor-element-e3255c9  {
  max-width: 860px !important; margin: 0 auto !important;
 }
/* Each accordion item */
body.campus-enghien-landing .elementor-element-e3255c9 .e-n-accordion-item  {
  border: none !important; border-bottom: 1px solid var(--ce-line) !important;
  background: transparent !important; border-radius: 0 !important;
 }
body.campus-enghien-landing .elementor-element-e3255c9 .e-n-accordion-item:first-child  {
  border-top: 1px solid var(--ce-line) !important;
 }
/* Question title */
body.campus-enghien-landing .elementor-element-e3255c9 .e-n-accordion-item-title  {
  font-family: 'Syne', sans-serif !important; font-weight: 600 !important;
  font-size: 16px !important; color: var(--ce-cream) !important; background: transparent !important;
  border: none !important; cursor: pointer !important;
  display: flex !important; align-items: center !important;
  justify-content: space-between !important; gap: 20px !important;
  width: 100% !important; text-align: left !important;
 }
body.campus-enghien-landing .elementor-element-e3255c9 .e-n-accordion-item-title:hover  {
  color: var(--ce-cream) !important; opacity: .85 !important;
 }
/* Active title */
body.campus-enghien-landing .elementor-element-e3255c9 .e-n-accordion-item-title[aria-expanded="true"]  {
  color: var(--ce-cyan) !important; opacity: 1 !important;
 }
/* Icon + / x */
body.campus-enghien-landing .elementor-element-e3255c9 .e-n-accordion-item-title-icon  {
  color: rgba(245,241,234,.45) !important; font-size: 18px !important; flex-shrink: 0 !important;
 }
body.campus-enghien-landing .elementor-element-e3255c9 .e-n-accordion-item-title[aria-expanded="true"] .e-n-accordion-item-title-icon  {
  color: var(--ce-cyan) !important;
 }
/* Answer content */
body.campus-enghien-landing .elementor-element-e3255c9 .e-n-accordion-item-content  { background: transparent !important;
 }
body.campus-enghien-landing .elementor-element-e3255c9 .e-n-accordion-item-content p,
body.campus-enghien-landing .elementor-element-e3255c9 .ce-faq-ans  {
  color: rgba(245,241,234,.72) !important; font-size: 15px !important;
  line-height: 1.7 !important; max-width: 720px !important; margin: 0 !important;
 }

/* FAQ answer – remove text-editor default box */
body.campus-enghien-landing .elementor-element-e3255c9 .e-n-accordion-item-content .elementor-widget-text-editor,
body.campus-enghien-landing .elementor-element-e3255c9 .e-n-accordion-item-content .elementor-widget-container  {
  background: transparent !important; border: none !important;
  padding: 0 !important; margin: 0 !important; box-shadow: none !important;
 }
body.campus-enghien-landing .elementor-element-e3255c9 .e-n-accordion-item-content .elementor-text-editor  {
  background: transparent !important; border: none !important; padding: 0 !important;
 }

/* FAQ – remove container box inside accordion items */
body.campus-enghien-landing .elementor-element-e3255c9 .e-n-accordion-item .e-con,
body.campus-enghien-landing .elementor-element-e3255c9 .e-n-accordion-item .e-con.e-child  {
  background: transparent !important; border: none !important;
  box-shadow: none !important; padding: 4px 0 20px !important;
  outline: none !important;
 }
body.campus-enghien-landing .elementor-element-e3255c9 .e-n-accordion-item .e-con .elementor-widget-container  {
  background: transparent !important; border: none !important; padding: 0 !important;
 }
body.campus-enghien-landing .elementor-element-e3255c9 .e-n-accordion-item .e-con p  {
  color: rgba(245,241,234,.72) !important; font-size: 15px !important;
  line-height: 1.7 !important; margin: 0 !important;
 }

/* FAQ accordion — icônes personnalisées */
body.campus-enghien-landing .elementor-element-e3255c9 .e-n-accordion-item-title-icon  {
  width: 40px !important;
  height: 40px !important;
  flex-shrink: 0 !important;
 }
body.campus-enghien-landing .elementor-element-e3255c9 .e-n-accordion-item-title-icon svg  {
  display: none !important;
 }
/* Closed state: outline circle + "+" */
body.campus-enghien-landing .elementor-element-e3255c9 .e-n-accordion-item:not([open]) .e-n-accordion-item-title-icon .e-closed  {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 40px !important;
  height: 40px !important;
  border-radius: 50% !important;
  border: 1.5px solid rgba(245,241,234,0.25) !important;
  background: transparent !important;
 }
body.campus-enghien-landing .elementor-element-e3255c9 .e-n-accordion-item:not([open]) .e-n-accordion-item-title-icon .e-closed::before  {
  content: '+' !important;
  font-size: 22px !important;
  font-weight: 300 !important;
  color: rgba(245,241,234,0.6) !important;
  line-height: 1 !important;
 }
/* Open state: gradient circle + "×" */
body.campus-enghien-landing .elementor-element-e3255c9 .e-n-accordion-item[open] .e-n-accordion-item-title-icon .e-opened  {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 40px !important;
  height: 40px !important;
  border-radius: 50% !important;
  background: linear-gradient(135deg, var(--ce-mag), var(--ce-violet)) !important;
  border: none !important;
 }
body.campus-enghien-landing .elementor-element-e3255c9 .e-n-accordion-item[open] .e-n-accordion-item-title-icon .e-opened::before  {
  content: '×' !important;
  font-size: 26px !important;
  font-weight: 300 !important;
  color: #fff !important;
  line-height: 1 !important;
  margin-top: -2px !important;
 }
/* Timeline parcours — design maquette */
.ce-timeline  {
  padding: 24px 28px;
  border: 1px solid var(--ce-line);
  border-radius: 20px;
  background: rgba(15,10,46,.55);
 }
.ce-tl-head  {
  font-family: 'Syne', sans-serif;
  font-weight: 700;
  font-size: 11px;
  letter-spacing: .18em;
  text-transform: uppercase;
  opacity: .5;
  margin-bottom: 18px;
 }
.ce-step  {
  display: grid;
  grid-template-columns: 92px 1fr auto;
  align-items: start;
  gap: 14px;
  padding: 18px 0;
  border-bottom: 1px dashed var(--ce-line);
 }
.ce-step:last-child  { border-bottom: none !important;  }
.ce-level  {
  white-space: nowrap;
  font-family: 'Syne', sans-serif;
  font-weight: 800;
  font-size: 16px;
  background: linear-gradient(92deg, var(--ce-mag), var(--ce-cyan));
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  padding-top: 2px;
 }
.ce-diplome  {
  font-family: 'Syne', sans-serif;
  font-weight: 700;
  font-size: 16px;
  margin-bottom: 5px;
  color: var(--ce-cream);
 }
.ce-desc  {
  font-size: 13px;
  color: rgba(245,241,234,.68);
  line-height: 1.5;
 }
.ce-status  {
  font-family: 'Syne', sans-serif;
  font-weight: 600;
  font-size: 11px;
  letter-spacing: .10em;
  text-transform: uppercase;
  padding: 6px 11px;
  border-radius: 999px;
  white-space: nowrap;
  align-self: start;
  margin-top: 2px;
 }
.ce-status.ce-open  {
  background: rgba(65,224,224,.18);
  color: var(--ce-cyan);
  border: 1px solid rgba(65,224,224,.35);
 }
.ce-status.ce-soon  {
  background: rgba(227,123,214,.15);
  color: var(--ce-rose);
  border: 1px solid rgba(227,123,214,.30);
 }

/* POURQUOI ENGHIEN — wrappers des atouts : sans bordure, fond transparent */
body.campus-enghien-landing .elementor-element-obfgi50,
body.campus-enghien-landing .elementor-element-31aih0n  {
  border: none !important;
  background: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
 }

/* PARCOURS — wrapper extérieur : sans bordure, fond transparent */
body.campus-enghien-landing .elementor-element-6rw02h6  {
  border: none !important;
  background: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
 }

/* PROJECTION ÉLÈVE — wrapper des 4 cartes gains : sans bordure, fond transparent */
body.campus-enghien-landing .elementor-element-jvvh9jg  {
  border: none !important;
  background: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
 }

/* ============================================================
   FOOTER — redesign maquette
   ============================================================ */

/* --- Liens des icon-lists (couleur crème, hover plein) --- */
body.campus-enghien-landing .elementor-element-ce110001 .elementor-icon-list-item > a  {
  color: rgba(245, 241, 234, 0.78) !important;
  text-decoration: none !important;
  font-size: 14px !important;
  font-family: 'Manrope', sans-serif !important;
  transition: color 0.2s ease !important;
 }
body.campus-enghien-landing .elementor-element-ce110001 .elementor-icon-list-item > a:hover  {
  color: rgba(245, 241, 234, 1) !important;
 }

/* --- Cacher les icônes Elementor dans les listes footer --- */
body.campus-enghien-landing .elementor-element-ce110001 .elementor-icon-list-icon  {
  display: none !important;
 }
body.campus-enghien-landing .elementor-element-ce110001 .elementor-icon-list-items  {
  gap: 10px !important;
 }
body.campus-enghien-landing .elementor-element-ce110001 .elementor-icon-list-text  {
  padding-left: 0 !important;
  font-size: 14px !important;
  color: rgba(245, 241, 234, 0.78) !important;
 }

/* --- Headings de colonne (PARCOURS / LE CAMPUS / CONTACT) --- */
body.campus-enghien-landing .elementor-element-ce110001 .ce-foot-col .elementor-heading-title  {
  font-family: 'Syne', sans-serif !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  color: rgba(245, 241, 234, 0.55) !important;
  margin-bottom: 16px !important;
 }

/* --- Description sous le logo --- */
body.campus-enghien-landing .ce-footer-desc,
body.campus-enghien-landing .ce-footer-desc p  {
  font-size: 13.5px !important;
  color: rgba(245, 241, 234, 0.6) !important;
  line-height: 1.6 !important;
  max-width: 280px;
  margin-top: 16px;
 }

/* --- Barre basse copyright + mentions --- */
body.campus-enghien-landing .ce-foot-copy,
body.campus-enghien-landing .ce-foot-copy p,
body.campus-enghien-landing .ce-foot-legal,
body.campus-enghien-landing .ce-foot-legal p  {
  font-size: 12px !important;
  color: rgba(245, 241, 234, 0.55) !important;
 }
body.campus-enghien-landing .ce-foot-legal a  {
  color: rgba(245, 241, 234, 0.55) !important;
  text-decoration: none !important;
 }
body.campus-enghien-landing .ce-foot-legal a:hover  {
  color: rgba(245, 241, 234, 0.85) !important;
 }

  body.campus-enghien-landing .elementor-element-3rk9gdb {
    justify-content: space-between !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
  }
}

/* FIX OVERFLOW-X — overflow-x:clip ne casse pas position:sticky (contrairement à hidden) */
body.campus-enghien-landing .elementor,
body.campus-enghien-landing main  {
  overflow-x: clip;
 }

/* BOUTONS — flèches SVG couleur = texte */
body.campus-enghien-landing .elementor-button svg  {
  fill: currentColor !important;
 }

/* ===== REVEAL ANIMATIONS (scroll) ===== */
body.campus-enghien-landing .ce-reveal  {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity 0.7s ease, transform 0.7s cubic-bezier(0.2, 0.7, 0.2, 1);
  will-change: opacity, transform;
 }
body.campus-enghien-landing .ce-reveal.ce-in  {
  opacity: 1;
  transform: none;
  will-change: auto;
 }


/* Nested Tabs heading — allow wrap on mobile */
@media (max-width: 767px) {
  body.campus-enghien-landing .elementor-element-1e2aa83 .e-n-tabs-heading { flex-wrap: wrap !important; }
  body.campus-enghien-landing .elementor-element-1e2aa83 .e-n-tab-title { flex: 1 1 auto !important; text-align: center; }
}

/* Mobile responsive fixes for tabs panel content (Parcours) */
@media (max-width: 767px) {
  .ce-parcours-panel, .ce-parcours-panel * { min-width: 0 !important; }
  .ce-skill, .ce-parcours-intro { max-width: 100% !important; overflow-wrap: break-word; }
  .ce-step {
    grid-template-columns: 60px 1fr !important;
    grid-auto-rows: auto !important;
  }
  .ce-step .ce-status {
    grid-column: 1 / -1 !important;
    justify-self: start;
    margin-top: 8px;
  }
  .ce-level { font-size: 14px !important; }
  .ce-timeline { padding: 20px 16px !important; }
}

/* Prevent horizontal scroll from decorative pseudo-elements */
body.campus-enghien-landing { overflow-x: clip; }
html { overflow-x: clip; }/* End custom CSS */