:root {
    --primary: #0A3D62; --secondary: #00D2C7; --accent: #2BE4D0; --dark-bg: #041F2D;
    --light-bg: #F7FBFC; --text-color: #0D2B45; --white: #fff; --gray-light: #EEF8FA; --text-muted: #567791;
    --grad-dark-overlay: linear-gradient(135deg, rgba(4,31,45,0.75), rgba(10,61,98,0.5), rgba(0,210,199,0.05));
    --grad-expert: linear-gradient(135deg, #041F2D, #0A3D62, #0D566E);
    --grad-button: linear-gradient(90deg, var(--secondary), var(--accent));
    --grad-footer: linear-gradient(135deg, #031A26, #052B38, #0A3D62);
    --font-main: 'Inter', sans-serif; --font-heading: 'Plus Jakarta Sans', sans-serif;
    --shadow-sm: 0 4px 6px -1px rgba(10,61,98,0.05); --shadow-md: 0 10px 15px -3px rgba(10,61,98,0.08);
    --shadow-lg: 0 20px 25px -5px rgba(10,61,98,0.1); --shadow-dark: 0 25px 50px -12px rgba(4,31,45,0.4);
    --shadow-glow: 0 0 25px rgba(43,228,208,0.4); --shadow-glow-soft: 0 0 40px rgba(0,210,199,0.15);
    --radius-pill: 100px; --radius-xl: 32px; --radius-lg: 24px; --radius-md: 16px; --radius-sm: 8px;
    --transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}
* { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; font-size:16px; }
body { font-family:var(--font-main); color:var(--text-color); line-height:1.6; background:var(--light-bg); overflow-x:hidden; -webkit-font-smoothing:antialiased; }
a { text-decoration:none; color:inherit; transition:var(--transition); }
ul { list-style:none; }
.container { max-width:1400px; margin:0 auto; padding:0 2rem; }
.section { padding:5rem 0; }
.light-section { background:linear-gradient(180deg,#F8FCFD,#EEF8FA); }
.relative { position:relative; } .z-10 { z-index:10; } .overflow-hidden { overflow:hidden; }
.text-primary { color:var(--primary)!important; } .text-secondary { color:var(--secondary)!important; }
.text-accent { color:var(--accent)!important; } .text-white { color:var(--white)!important; }
.text-center { text-align:center; } .mt-4 { margin-top:1rem; } .mt-6 { margin-top:1.5rem; }
h1,h2,h3,h4,h5,h6 { font-family:var(--font-heading); color:var(--primary); line-height:1.2; font-weight:700; }
.section-title { font-size:clamp(1.8rem,3vw,2.5rem); font-weight:800; letter-spacing:-0.02em; margin-bottom:2rem; }
.section-badge { font-weight:700; font-size:0.85rem; letter-spacing:0.1em; margin-bottom:0.5rem; text-transform:uppercase; }

/* Buttons */
.btn { display:inline-flex; align-items:center; justify-content:center; gap:0.75rem; padding:0.8rem 1.8rem; border-radius:var(--radius-pill); font-family:var(--font-heading); font-weight:600; font-size:0.95rem; cursor:pointer; border:none; transition:var(--transition); }
.btn-sm { padding:0.6rem 1.2rem; font-size:0.85rem; }
.btn-accent { background:var(--grad-button); color:var(--dark-bg); box-shadow:var(--shadow-md); }
.btn-secondary { background:var(--secondary); color:var(--dark-bg); }
.btn-primary { background:var(--primary); color:var(--white); }
.btn-outline-glass { background:rgba(255,255,255,0.05); color:var(--white); border:1px solid rgba(255,255,255,0.2); backdrop-filter:blur(10px); }
.btn-outline-glass:hover { background:rgba(255,255,255,0.15); border-color:rgba(255,255,255,0.4); }
.btn-whatsapp { background:#25D366; color:var(--white); }
.btn-whatsapp:hover { background:#1fb855; transform:translateY(-2px); }
.btn-phone { background:var(--primary); color:var(--white); }
.btn-phone:hover { background:#083252; transform:translateY(-2px); }
.btn-full { width:100%; }
.premium-hover:hover { transform:translateY(-3px); box-shadow:var(--shadow-glow); }

/* Nav */
.navbar { position:fixed; top:0; left:0; width:100%; padding:1rem 0; z-index:1000; border-bottom:1px solid rgba(255,255,255,0.05); background:rgba(4,31,45,0.95); backdrop-filter:blur(10px); }
.nav-container { display:flex; justify-content:space-between; align-items:center; }
.logo { display:flex; align-items:center; gap:0.75rem; }
.logo-text { display:flex; flex-direction:column; line-height:1.2; }
.logo-text strong { font-family:var(--font-heading); font-size:1.2rem; color:var(--white); font-weight:800; }
.logo-text span { font-size:0.6rem; color:var(--white); text-transform:uppercase; letter-spacing:0.5px; opacity:0.7; }
.nav-links { display:flex; gap:2rem; }
.nav-links a { font-size:0.9rem; font-weight:500; color:rgba(255,255,255,0.8); }
.nav-links a:hover { color:var(--accent); }
.mobile-menu-btn { display:none; background:none; border:none; font-size:1.5rem; color:var(--white); cursor:pointer; }

/* Hero */
.hero { position:relative; padding:12rem 0 6rem; min-height:90vh; display:flex; align-items:center; overflow:hidden; background:var(--dark-bg); }
.hero-bg-image { position:absolute; inset:0; background-size:cover; background-position:center center; background-repeat:no-repeat; z-index:1; opacity: 1; }
.hero-overlay { position:absolute; inset:0; background:var(--grad-dark-overlay); z-index:2; }
.hero-container { display:grid; grid-template-columns:1.1fr 0.9fr; gap:2rem; align-items:center; }
.glass-badge { display:inline-flex; background:rgba(0,210,199,0.1); border:1px solid rgba(0,210,199,0.2); color:var(--white); padding:0.4rem 1rem; border-radius:var(--radius-pill); font-size:0.75rem; font-weight:700; letter-spacing:0.05em; margin-bottom:1.5rem; backdrop-filter:blur(10px); }
.hero-subtitle-top { color:var(--accent); font-weight:700; font-size:0.8rem; text-transform:uppercase; letter-spacing:1px; margin-bottom:1rem; }
.hero-title { font-size:clamp(1.6rem,3vw,2.8rem); color:var(--white); margin-bottom:1.5rem; }
.hero-subtitle { font-size:1rem; color:rgba(255,255,255,0.8); margin-bottom:2.5rem; max-width:90%; }
.premium-features { display:flex; gap:1rem; margin-bottom:3rem; flex-wrap:wrap; }
.glass-feature { display:flex; align-items:center; gap:0.8rem; background:rgba(255,255,255,0.03); border:1px solid rgba(255,255,255,0.08); padding:0.8rem 1.2rem; border-radius:var(--radius-sm); backdrop-filter:blur(10px); }
.feature-icon { width:36px; height:36px; background:rgba(0,210,199,0.1); color:var(--secondary); border-radius:50%; display:flex; align-items:center; justify-content:center; }
.glass-feature strong { color:var(--white); display:block; font-size:0.9rem; }
.glass-feature span { color:rgba(255,255,255,0.5); font-size:0.75rem; }
.hero-actions { display:flex; gap:1rem; }

/* Hero Visual */
.premium-visual { position:relative; height:100%; min-height:500px; display:flex; align-items:center; justify-content:center; }
.holographic-rings { position:absolute; top:50%; left:40%; transform:translate(-50%,-50%); width:100%; height:100%; pointer-events:none; z-index:1; }
.ring { position:absolute; border:1px dashed rgba(43,228,208,0.3); border-radius:50%; top:50%; left:50%; transform:translate(-50%,-50%); animation:spin-slow 20s linear infinite; }
.r1 { width:350px; height:350px; } .r2 { width:450px; height:450px; animation-direction:reverse; }
@keyframes spin-slow { 100% { transform:translate(-50%,-50%) rotate(360deg); } }
.glow-pedestal { position:relative; z-index:5; width:320px; height:320px; background:radial-gradient(circle,rgba(0,210,199,0.15) 0%,transparent 70%); display:flex; align-items:center; justify-content:center; border-radius:50%; animation:float-y 6s ease-in-out infinite; }
.floating-knee-3d { width:100%; max-width:250px; filter:drop-shadow(0 20px 30px rgba(0,0,0,0.5)); mix-blend-mode:screen; }
.floating-icons-3d { position:absolute; width:100%; height:100%; top:0; left:0; pointer-events:none; z-index:6; }
.float-icon-3d { position:absolute; width:40px; height:40px; background:rgba(4,31,45,0.6); border:1px solid rgba(43,228,208,0.3); border-radius:50%; display:flex; align-items:center; justify-content:center; color:var(--accent); box-shadow:var(--shadow-glow-soft); backdrop-filter:blur(5px); animation:float-around 8s linear infinite; }
.f-icon-1 { top:20%; left:10%; } .f-icon-2 { bottom:30%; left:20%; animation-delay:-2s; } .f-icon-3 { top:40%; right:30%; animation-delay:-4s; }
@keyframes float-y { 0%,100% { transform:translateY(0); } 50% { transform:translateY(-15px); } }
@keyframes float-around { 0%,100% { transform:translate(0,0); } 50% { transform:translate(15px,-15px); } }
.hero-stats-column { position:absolute; right:0; top:10%; display:flex; flex-direction:column; gap:1rem; z-index:10; }
.stat-card { background:rgba(4,31,45,0.6); border:1px solid rgba(255,255,255,0.1); backdrop-filter:blur(12px); border-radius:var(--radius-md); padding:1rem 1.5rem; display:flex; align-items:center; gap:1rem; box-shadow:var(--shadow-dark); transition:var(--transition); }
.stat-card:hover { transform:scale(1.05); border-color:var(--secondary); }
.stat-icon { width:40px; height:40px; background:rgba(43,228,208,0.1); color:var(--accent); border-radius:8px; display:flex; align-items:center; justify-content:center; font-size:1.2rem; }
.stat-info { display:flex; flex-direction:column; }
.stat-info strong { color:var(--white); font-size:1.1rem; line-height:1.1; }
.stat-info span { color:rgba(255,255,255,0.6); font-size:0.75rem; }

/* === FMC Seminaire Section === */
.fmc-section { background:linear-gradient(135deg, rgba(4,31,45,0.92) 0%, rgba(10,61,98,0.85) 50%, rgba(13,86,110,0.95) 100%), url('assets/background2.webp'); background-size:cover; background-position:center; background-attachment:fixed; position:relative; overflow:hidden; padding:4rem 0; }
.fmc-section::before { content:''; position:absolute; inset:0; background-image:linear-gradient(rgba(255,255,255,0.02) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,0.02) 1px,transparent 1px); background-size:30px 30px; pointer-events:none; }
.fmc-bg-glow { position:absolute; top:-100px; left:20%; width:600px; height:400px; background:radial-gradient(ellipse,rgba(180,140,60,0.12) 0%,transparent 70%); pointer-events:none; }
.fmc-container { display:grid; grid-template-columns:1.4fr 0.8fr 1fr; gap:3rem; align-items:center; position:relative; z-index:2; }

/* Left */
.fmc-tag { display:flex; align-items:center; gap:0.8rem; margin-bottom:1.2rem; }
.fmc-tag span:not(.fmc-line) { color:#C8A84B; font-size:0.75rem; font-weight:800; letter-spacing:0.2em; text-transform:uppercase; white-space:nowrap; }
.fmc-line { flex:1; height:1px; background:linear-gradient(90deg, transparent, #C8A84B, transparent); }
.fmc-title-wrap { display:flex; align-items:center; gap:1rem; margin-bottom:0.6rem; }
.fmc-title { font-size:clamp(2rem,3.5vw,3rem); color:var(--white); font-weight:900; line-height:1.05; text-transform:uppercase; letter-spacing:-0.02em; margin-bottom:0; }
.fmc-mobile-icon { display:none; }
.fmc-subtitle { font-size:1rem; color:#C8A84B; font-weight:700; text-transform:uppercase; letter-spacing:0.15em; margin-bottom:1.5rem; }
.fmc-divider { width:60px; height:3px; background:linear-gradient(90deg,#C8A84B,transparent); border-radius:2px; margin-bottom:1.5rem; }
.fmc-presenter { display:flex; align-items:flex-start; gap:1rem; }
.fmc-avatar { width:56px; height:56px; border-radius:50%; background:linear-gradient(135deg,#C8A84B,#A07830); display:flex; align-items:center; justify-content:center; color:var(--white); font-size:1.4rem; flex-shrink:0; box-shadow:0 0 20px rgba(200,168,75,0.3); }
.fmc-presenter-label { font-size:0.65rem; font-weight:800; letter-spacing:0.15em; color:#C8A84B; text-transform:uppercase; display:block; margin-bottom:0.3rem; }
.fmc-presenter-name { font-size:1.5rem; color:var(--white); font-weight:900; margin:0 0 0.4rem; }
.fmc-presenter-name span { color:#C8A84B; }
.fmc-presenter-desc { font-size:0.8rem; color:rgba(255,255,255,0.65); line-height:1.5; margin:0; }

/* Center Orbit */
.fmc-center { display:flex; align-items:center; justify-content:center; }
.fmc-orbit { position:relative; width:200px; height:200px; }
.fmc-orbit-center { position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:70px; height:70px; background:linear-gradient(135deg,#0A3D62,#0D566E); border:2px solid rgba(200,168,75,0.4); border-radius:50%; display:flex; align-items:center; justify-content:center; color:#C8A84B; font-size:1.5rem; box-shadow:0 0 30px rgba(200,168,75,0.2); z-index:2; }
.fmc-orbit-icon { position:absolute; width:42px; height:42px; background:rgba(4,31,45,0.7); border:1px solid rgba(200,168,75,0.3); border-radius:50%; display:flex; align-items:center; justify-content:center; color:var(--accent); font-size:0.9rem; backdrop-filter:blur(5px); animation:fmc-float 6s ease-in-out infinite; }
.oi-1 { top:0; left:50%; transform:translateX(-50%); animation-delay:0s; }
.oi-2 { top:25%; right:0; animation-delay:-1.2s; }
.oi-3 { bottom:25%; right:0; animation-delay:-2.4s; }
.oi-4 { bottom:0; left:50%; transform:translateX(-50%); animation-delay:-3.6s; }
.oi-5 { top:25%; left:0; animation-delay:-4.8s; }
@keyframes fmc-float { 0%,100%{transform:translateX(-50%) scale(1);}50%{transform:translateX(-50%) scale(1.12);} }
.oi-2,.oi-3,.oi-5 { animation:fmc-float-side 6s ease-in-out infinite; }
@keyframes fmc-float-side { 0%,100%{transform:scale(1);}50%{transform:scale(1.12);} }

/* Right */
.fmc-partner-badge { background:rgba(255,255,255,0.04); border:1px solid rgba(200,168,75,0.2); border-radius:var(--radius-lg); padding:1.5rem; backdrop-filter:blur(10px); margin-bottom:1rem; }
.fmc-partner-label { font-size:0.6rem; font-weight:700; letter-spacing:0.15em; color:rgba(255,255,255,0.5); text-transform:uppercase; display:block; margin-bottom:1rem; }
.fmc-partner-logo { display:flex; align-items:center; gap:1rem; margin-bottom:1rem; }
.fmc-logo-icon { width:50px; height:50px; background:linear-gradient(135deg,#0A3D62,#1a5c8a); border:2px solid rgba(200,168,75,0.4); border-radius:50%; display:flex; align-items:center; justify-content:center; color:#C8A84B; font-size:1.4rem; }
.fmc-logo-text strong { color:var(--white); font-size:1.6rem; font-weight:900; display:block; line-height:1; }
.fmc-logo-text span { color:#C8A84B; font-size:0.75rem; font-weight:700; letter-spacing:0.3em; }
.fmc-location { display:flex; align-items:center; gap:0.5rem; color:rgba(255,255,255,0.6); font-size:0.8rem; }
.fmc-location i { color:#C8A84B; }
.fmc-stat-chips { display:flex; flex-direction:column; gap:0.5rem; }
.fmc-chip { background:rgba(255,255,255,0.05); border:1px solid rgba(43,228,208,0.15); border-radius:var(--radius-pill); padding:0.5rem 1rem; font-size:0.8rem; color:var(--accent); font-weight:600; display:flex; align-items:center; gap:0.5rem; }
.fmc-chip i { color:var(--secondary); }

/* FMC Responsive */
@media(max-width:1024px) { .fmc-container { grid-template-columns:1fr 1fr; } .fmc-center { display:none; } }
@media(max-width:768px) { 
    .fmc-container { grid-template-columns:1fr; gap:2rem; } 
    .fmc-center { display:none; } 
    .fmc-title { font-size:2rem; } 
    .fmc-section { padding:3rem 0; background-attachment:scroll; background-position:left center; } 
    .fmc-stat-chips { display:none; }
    .fmc-mobile-icon { display:flex; width:45px; height:45px; background:linear-gradient(135deg,#0A3D62,#0D566E); border:2px solid rgba(200,168,75,0.4); border-radius:50%; align-items:center; justify-content:center; color:#C8A84B; font-size:1.2rem; box-shadow:0 0 20px rgba(200,168,75,0.2); flex-shrink:0; }
}

/* Objectifs */
.objectifs-section { background:var(--white); padding:5rem 0; }
.objectifs-grid { display:grid; grid-template-columns:repeat(5,1fr); gap:1.5rem; margin-top:2rem; }
.objectif-card { background:var(--light-bg); border:1px solid rgba(10,61,98,0.06); border-radius:var(--radius-md); padding:2rem 1.5rem; text-align:center; transition:var(--transition); }
.objectif-card:hover { transform:translateY(-5px); box-shadow:var(--shadow-md); border-color:rgba(0,210,199,0.2); }
.objectif-icon { width:50px; height:50px; background:rgba(0,210,199,0.1); color:var(--secondary); border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:1.2rem; margin:0 auto 1rem; }
.objectif-card h4 { font-size:0.95rem; margin-bottom:0.5rem; }
.objectif-card p { font-size:0.8rem; color:var(--text-muted); margin:0; }

/* CTA Section */
.cta-section { background:var(--grad-expert); padding:5rem 0; position:relative; overflow:hidden; }
.cta-section::before { content:''; position:absolute; inset:0; background-image:linear-gradient(rgba(255,255,255,0.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,0.03) 1px,transparent 1px); background-size:20px 20px; pointer-events:none; }
.cta-subtitle { color:rgba(255,255,255,0.75); font-size:1.1rem; max-width:700px; margin:0 auto 2rem; }
.audience-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:2rem; }
.audience-card { border-radius:var(--radius-md); padding:2rem; text-align:center; transition:var(--transition); }
.audience-card:hover { transform:translateY(-5px); }
.glass-card-dark { background:rgba(255,255,255,0.05); border:1px solid rgba(255,255,255,0.1); backdrop-filter:blur(10px); }
.glass-card-dark:hover { border-color:var(--secondary); background:rgba(255,255,255,0.08); }
.audience-card .a-icon { color:var(--accent); font-size:2rem; margin-bottom:1rem; }
.audience-card h4 { color:var(--white); font-size:1rem; margin-bottom:0.5rem; }
.audience-card p { color:rgba(255,255,255,0.6); font-size:0.85rem; margin:0; }

/* Grid */
.grid-50-50 { display:grid; grid-template-columns:1fr 1fr; gap:4rem; }
.align-top { align-items:flex-start; }

/* Programme */
.middle-layout { background:radial-gradient(circle at top left,rgba(0,210,199,0.1),transparent 40%),linear-gradient(180deg,#FFF,#F5FAFC); padding:5rem 0; }
.program-col { padding-right:2rem; }
.anatomy-bg-spine { position:absolute; top:0; left:-10%; width:100%; height:100%; background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="100" height="100" viewBox="0 0 100 100"><circle cx="50" cy="50" r="40" stroke="rgba(10,61,98,0.03)" stroke-width="2" fill="none"/></svg>'); background-size:100px; pointer-events:none; z-index:0; }
.program-visual-inline { position:relative; margin:2rem 0; z-index:1; }
.laptop-3d { width:100%; max-width:400px; border-radius:var(--radius-md); box-shadow:var(--shadow-lg); }
.premium-timeline { display:flex; flex-direction:column; gap:1rem; position:relative; z-index:1; }
.timeline-item { background:var(--white); border:1px solid rgba(10,61,98,0.05); padding:1.2rem; border-radius:var(--radius-md); display:flex; gap:1.5rem; align-items:center; box-shadow:var(--shadow-sm); transition:var(--transition); }
.timeline-item:hover { transform:translateX(10px); border-left:4px solid var(--secondary); box-shadow:var(--shadow-md); }
.time-badge { background:var(--gray-light); color:var(--primary); font-weight:800; padding:0.4rem 1rem; border-radius:var(--radius-pill); font-size:0.85rem; min-width:70px; text-align:center; }
.t-content h4 { font-size:1rem; margin-bottom:0.2rem; }
.t-content p { font-size:0.85rem; color:var(--text-muted); margin:0; }

/* Expert - Photo on top, text below */
.expert-col { display:flex; align-items:stretch; }
.expert-dark-card { background:var(--grad-expert); border-radius:var(--radius-xl); color:var(--white); box-shadow:var(--shadow-dark); position:relative; overflow:hidden; width:100%; display:flex; flex-direction:column; }
.expert-dark-card::before { content:''; position:absolute; inset:0; background-image:linear-gradient(rgba(255,255,255,0.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,0.03) 1px,transparent 1px); background-size:20px 20px; pointer-events:none; z-index:0; }
.expert-portrait-top { width:100%; height:600px; overflow:hidden; position:relative; z-index:1; border-bottom:3px solid rgba(43,228,208,0.3); }
.expert-portrait-top img { width:100%; height:100%; object-fit:cover; object-position:center 30%; display:block; }
.portrait-overlay { position:absolute; bottom:0; left:0; width:100%; height:50%; background:linear-gradient(to top,rgba(4,31,45,0.95) 0%,rgba(4,31,45,0.7) 40%,transparent 100%); pointer-events:none; z-index:1; }
.portrait-name-overlay { position:absolute; bottom:1.5rem; left:2.5rem; z-index:2; }
.portrait-name-overlay span { font-size:1rem; letter-spacing:0.15em; font-weight:700; display:inline-block; margin-bottom:0.5rem; }
.portrait-name-overlay h3 { font-size:2.4rem; margin-top:0; color:var(--white); font-weight:800; line-height:1.1; text-shadow: 0 4px 10px rgba(0,0,0,0.5); }
.expert-info-below { padding:2rem 2.5rem 2.5rem; position:relative; z-index:1; flex:1; display:flex; flex-direction:column; }
.expert-subtitle { color:var(--accent); font-size:1.1rem; font-weight:500; margin-bottom:1.5rem; display:flex; align-items:center; gap:0.5rem; }
.expert-features { display:flex; flex-direction:column; gap:1rem; margin-bottom:1.5rem; }
.expert-features li { display:flex; gap:1rem; align-items:flex-start; font-size:1rem; color:rgba(255,255,255,0.85); line-height:1.5; }
.expert-features i { margin-top:0.3rem; font-size:1.1rem; }
.expert-features strong { color:var(--white); font-weight:700; }
.expert-badges-footer { display:flex; gap:0.8rem; flex-wrap:wrap; padding-top:1.2rem; border-top:1px solid rgba(255,255,255,0.1); margin-top:auto; }
.badge-dark { background:rgba(0,0,0,0.3); padding:0.5rem 1rem; border-radius:var(--radius-sm); font-size:0.9rem; color:var(--accent); font-weight:600; }

/* Inscription standalone */
.inscription-section { background:linear-gradient(180deg,#EAF8F7,#F7FBFC); padding:5rem 0; }
.inscription-container { max-width:800px; margin:0 auto; }
.light-blue-card { background:var(--white); border-radius:var(--radius-xl); padding:3rem; box-shadow:var(--shadow-lg); border:1px solid rgba(0,210,199,0.1); position:relative; overflow:hidden; }
.form-bg-glow { position:absolute; top:-50px; right:-50px; width:200px; height:200px; background:radial-gradient(circle,rgba(43,228,208,0.2) 0%,transparent 70%); border-radius:50%; pointer-events:none; }
/* Floating medical icons in form */
.form-float-icons { position:absolute; inset:0; pointer-events:none; z-index:0; }
.fi { position:absolute; color:rgba(10,61,98,0.06); font-size:2.5rem; animation:float-around 10s ease-in-out infinite; }
.fi-1 { top:15%; left:5%; font-size:3rem; animation-delay:0s; }
.fi-2 { top:60%; right:8%; font-size:2rem; animation-delay:-2s; }
.fi-3 { bottom:10%; left:10%; font-size:2.2rem; animation-delay:-4s; }
.fi-4 { top:10%; right:15%; font-size:2rem; animation-delay:-6s; }
.fi-5 { bottom:25%; right:3%; font-size:2.8rem; animation-delay:-3s; }
.form-icon-circle { width:60px; height:60px; background:rgba(0,210,199,0.1); color:var(--secondary); border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:1.5rem; margin:0 auto 1rem; border:2px solid rgba(0,210,199,0.15); }
.form-header { margin-bottom:2rem; position:relative; z-index:2; }
.form-header h3 { font-size:1.5rem; margin-bottom:0.5rem; }
.form-header p { font-size:0.85rem; color:var(--text-muted); }
.form-grid { display:grid; grid-template-columns:1fr 1fr; gap:1rem; position:relative; z-index:2; }
.form-group { margin-bottom:0.5rem; }
.input-with-icon { position:relative; }
.input-with-icon i { position:absolute; left:1rem; top:50%; transform:translateY(-50%); font-size:0.9rem; }
.textarea-icon i { top:1.2rem; transform:none; }
.modern-inputs input,.modern-inputs select,.modern-inputs textarea { width:100%; padding:0.8rem 1rem 0.8rem 2.5rem; border-radius:var(--radius-sm); border:1px solid rgba(10,61,98,0.1); background:var(--light-bg); font-family:var(--font-main); font-size:0.85rem; color:var(--text-color); transition:var(--transition); }
.modern-inputs textarea { resize:vertical; min-height:100px; }
.modern-inputs input:focus,.modern-inputs select:focus,.modern-inputs textarea:focus { outline:none; border-color:var(--secondary); box-shadow:0 0 0 3px rgba(0,210,199,0.1); }
.select-wrapper select { appearance:none; }
.select-arrow { left:auto!important; right:1rem; color:var(--text-muted)!important; pointer-events:none; }
.form-submit-row { margin-top:1.5rem; position:relative; z-index:2; }
.form-buttons-center { display:flex; gap:1rem; justify-content:center; margin-bottom:0.5rem; }
.alt-contact { font-size:0.75rem; color:var(--text-muted); }
.form-status { margin-top:1rem; padding:0.8rem; border-radius:var(--radius-sm); font-size:0.85rem; text-align:center; }

/* FAQ */
.faq-section { padding:5rem 0 6rem; }
.faq-col { padding-right:2rem; }
.premium-light-accordion { display:flex; flex-direction:column; gap:1rem; margin-top:2rem; }
.accordion-item { background:var(--white); border-radius:var(--radius-md); box-shadow:var(--shadow-sm); overflow:hidden; border:1px solid rgba(10,61,98,0.05); }
.accordion-header { padding:1.2rem 1.5rem; display:flex; align-items:center; gap:1rem; cursor:pointer; }
.q-icon { width:30px; height:30px; background:var(--gray-light); border-radius:50%; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.accordion-header h4 { font-size:0.95rem; margin:0; flex:1; }
.toggle-icon { color:var(--text-muted); transition:var(--transition); }
.accordion-item.active .toggle-icon { transform:rotate(180deg); color:var(--primary); }
.accordion-body { max-height:0; overflow:hidden; transition:max-height 0.3s ease; padding:0 1.5rem 0 4.5rem; }
.accordion-item.active .accordion-body { padding-bottom:1.2rem; }
.accordion-body p { font-size:0.85rem; color:var(--text-muted); margin:0; }
.faq-contact-card { background:var(--white); border-radius:var(--radius-md); padding:2rem; box-shadow:var(--shadow-sm); border:1px solid rgba(10,61,98,0.05); margin-top:2rem; }

/* Footer */
.dark-footer { background:var(--grad-footer); color:var(--white); padding:4rem 0 2rem; position:relative; }
.footer-spine-bg { position:absolute; top:0; left:0; width:400px; height:100%; background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="100" height="100" viewBox="0 0 100 100"><circle cx="50" cy="50" r="40" stroke="rgba(255,255,255,0.02)" stroke-width="2" fill="none"/></svg>'); background-size:200px; pointer-events:none; }
.footer-grid-3 { display:grid; grid-template-columns:2fr 1fr 1.5fr; gap:3rem; margin-bottom:3rem; }
.footer-desc { font-size:0.85rem; color:rgba(255,255,255,0.6); max-width:300px; }
.footer-heading { font-size:0.9rem; color:var(--white); margin-bottom:1.5rem; letter-spacing:1px; }
.footer-links-list { display:flex; flex-direction:column; gap:0.8rem; }
.footer-links-list a { font-size:0.85rem; color:rgba(255,255,255,0.6); }
.footer-links-list a:hover { color:var(--accent); padding-left:5px; }
.contact-list li { display:flex; gap:0.8rem; align-items:flex-start; font-size:0.85rem; color:rgba(255,255,255,0.8); }
.footer-bottom { border-top:1px solid rgba(255,255,255,0.1); padding-top:2rem; display:flex; justify-content:space-between; align-items:center; font-size:0.75rem; color:rgba(255,255,255,0.4); }
.footer-bottom-links { display:flex; gap:1.5rem; }
.footer-bottom-links a:hover { color:var(--white); }

/* Responsive */
@media(max-width:1024px) {
    .grid-50-50,.footer-grid-3 { grid-template-columns:1fr; gap:3rem; }
    .hero-container { grid-template-columns:1fr; text-align:center; }
    .hero-subtitle { margin:0 auto 2.5rem; }
    .premium-features,.hero-actions { justify-content:center; }
    .hero-stats-column { position:relative; flex-direction:row; justify-content:center; margin-top:2rem; flex-wrap:wrap; }
    .program-col,.faq-col { padding-right:0; }
    .audience-grid { grid-template-columns:1fr; }
    .objectifs-grid { grid-template-columns:repeat(2,1fr); }
}

@media(max-width:768px) {
    /* === BASE MOBILE === */
    .container { padding:0 1.2rem; }
    .section { padding:2.5rem 0; }
    .section-title { font-size:1.5rem; margin-bottom:1.2rem; }
    .section-badge { font-size:0.75rem; letter-spacing:0.08em; }

    /* === NAVBAR === */
    .logo-text { display:flex; }
    .logo-text strong { font-size:1.05rem; letter-spacing:-0.01em; }
    .logo-text span { display:none; }
    .nav-cta { display:flex; align-items:center; gap:0.5rem; }
    #headerSignupBtn { display:inline-flex; padding:0.45rem 1rem; font-size:0.78rem; white-space:nowrap; }
    .mobile-menu-btn { display:block; margin-left:0.5rem; font-size:1.3rem; }
    .nav-links { position:absolute; top:100%; left:0; width:100%; background:rgba(4,31,45,0.98); backdrop-filter:blur(20px); flex-direction:column; padding:1.5rem 2rem; gap:1.2rem; border-bottom:1px solid rgba(43,228,208,0.15); display:none; z-index:999; }
    .nav-links.active { display:flex; }
    .nav-links a { font-size:1rem; padding:0.3rem 0; border-bottom:1px solid rgba(255,255,255,0.05); }

    /* === HERO === */
    .hero { padding:5.5rem 0 2.5rem; min-height:auto; }
    .hero-bg-image { background-image: url('assets/hero-bg.webp') !important; background-position:left center; background-size:cover; opacity:1; }
    .hero-overlay { background:linear-gradient(to bottom, rgba(4,31,45,0.80) 0%, rgba(4,31,45,0.45) 40%, rgba(4,31,45,0.80) 80%, rgba(4,31,45,0.97) 100%); }
    .glass-badge { font-size:0.68rem; padding:0.4rem 1rem; margin:0 auto 1rem; display:flex; justify-content:center; width:fit-content; }
    .hero-subtitle-top { font-size:0.68rem; letter-spacing:0.08em; margin-bottom:0.75rem; text-align:center; }
    .hero-title { font-size:1.35rem; line-height:1.4; margin-bottom:1rem; text-align:center; padding:0; }
    .hero-subtitle { font-size:0.88rem; text-align:center; margin-bottom:1.5rem; color:rgba(255,255,255,0.85); max-width:100%; }

    /* Hero Features — horizontal row */
    .premium-features { flex-direction:row; flex-wrap:nowrap; gap:0; margin-bottom:2rem; background:rgba(255,255,255,0.05); border:1px solid rgba(255,255,255,0.1); border-radius:var(--radius-md); backdrop-filter:blur(12px); overflow:hidden; }
    .glass-feature { flex:1; flex-direction:column; text-align:center; align-items:center; gap:0.4rem; padding:0.9rem 0.5rem; background:transparent; border:none; border-radius:0; border-right:1px solid rgba(255,255,255,0.08); }
    .glass-feature:last-child { border-right:none; }
    .feature-icon { width:32px; height:32px; font-size:0.85rem; }
    .glass-feature strong { font-size:0.78rem; }
    .glass-feature span { font-size:0.65rem; }

    /* Hero Actions */
    .hero-actions { flex-direction:column; width:100%; gap:0.8rem; align-items:center; }
    .hero-actions .btn { width:100%; max-width:100%; justify-content:center; padding:0.85rem 1.5rem; font-size:0.95rem; }

    /* Hide desktop visuals */
    .floating-icons-3d,.hero-visual,.hero-stats-column { display:none; }

    /* === FMC SECTION (Séminaire) === */
    .fmc-section { padding:2.5rem 0; background-attachment:scroll; }
    .fmc-container { grid-template-columns:1fr !important; gap:1.5rem; }
    .fmc-center { display:none; }
    .fmc-title { font-size:1.6rem; }
    .fmc-title-wrap { flex-direction:row; align-items:center; gap:0.8rem; }
    .fmc-mobile-icon { display:flex; width:42px; height:42px; background:linear-gradient(135deg,#0A3D62,#0D566E); border:2px solid rgba(200,168,75,0.4); border-radius:50%; align-items:center; justify-content:center; color:#C8A84B; font-size:1.1rem; box-shadow:0 0 20px rgba(200,168,75,0.2); flex-shrink:0; }
    .fmc-subtitle { font-size:0.85rem; margin-bottom:1rem; }
    .fmc-presenter { gap:0.8rem; }
    .fmc-avatar { width:46px; height:46px; font-size:1.2rem; }
    .fmc-presenter-name { font-size:1.2rem; }
    .fmc-presenter-desc { font-size:0.75rem; }
    .fmc-partner-badge { padding:1.2rem; }
    .fmc-partner-label { font-size:0.55rem; }
    .fmc-logo-text strong { font-size:1.3rem; }
    .fmc-location { font-size:0.75rem; }
    .fmc-stat-chips { flex-direction:row; flex-wrap:wrap; gap:0.4rem; }
    .fmc-chip { font-size:0.72rem; padding:0.4rem 0.8rem; }

    /* === OBJECTIFS === */
    .objectifs-section { padding:2.5rem 0; }
    .objectifs-grid { grid-template-columns:1fr 1fr; gap:0.8rem; margin-top:1.2rem; }
    .objectif-card { padding:1.2rem 0.8rem; border-radius:var(--radius-sm); }
    .objectif-icon { width:38px; height:38px; font-size:0.95rem; margin-bottom:0.6rem; }
    .objectif-card h4 { font-size:0.82rem; }
    .objectif-card p { font-size:0.72rem; }

    /* === CTA + AUDIENCE === */
    .cta-section { padding:2.5rem 0; }
    .cta-subtitle { font-size:0.9rem; margin-bottom:1.5rem; }
    .audience-grid { grid-template-columns:1fr; gap:0.8rem; }
    .audience-card { padding:1.2rem; border-radius:var(--radius-sm); }
    .audience-card .a-icon { font-size:1.5rem; margin-bottom:0.6rem; }
    .audience-card h4 { font-size:0.95rem; }
    .audience-card p { font-size:0.8rem; }

    /* === PROGRAMME & EXPERT (Side by Side -> Stacked) === */
    .middle-layout { padding:2.5rem 0; }
    .grid-50-50 { grid-template-columns:1fr !important; gap:2rem; }
    .program-col { padding-right:0; }
    .program-visual-inline { margin:1rem 0; }
    .laptop-3d { max-width:100%; border-radius:var(--radius-sm); }
    .premium-timeline { gap:0.8rem; }
    .timeline-item { padding:1rem; gap:1rem; border-radius:var(--radius-sm); }
    .timeline-item:hover { transform:none; border-left:3px solid var(--secondary); }
    .time-badge { font-size:0.75rem; padding:0.3rem 0.7rem; min-width:55px; }
    .t-content h4 { font-size:0.88rem; }
    .t-content p { font-size:0.78rem; }

    /* Expert Card */
    .expert-col { display:block; }
    .expert-dark-card { border-radius:var(--radius-lg); }
    .expert-portrait-top { height:320px; }
    .portrait-name-overlay { left:1.2rem; bottom:1rem; }
    .portrait-name-overlay span { font-size:0.8rem; }
    .portrait-name-overlay h3 { font-size:1.5rem; }
    .expert-info-below { padding:1.5rem 1.2rem; }
    .expert-subtitle { font-size:0.88rem; flex-wrap:wrap; }
    .expert-features { gap:0.8rem; margin-bottom:1.2rem; }
    .expert-features li { font-size:0.85rem; gap:0.7rem; }
    .expert-features i { font-size:0.95rem; }
    .expert-badges-footer { gap:0.5rem; padding-top:1rem; }
    .badge-dark { font-size:0.75rem; padding:0.4rem 0.8rem; }

    /* === INSCRIPTION FORM === */
    .inscription-section { padding:2.5rem 0; }
    .inscription-container { max-width:100%; }
    .light-blue-card { padding:1.5rem 1.2rem; border-radius:var(--radius-lg); }
    .form-header h3 { font-size:1.2rem; }
    .form-header p { font-size:0.8rem; }
    .form-grid { grid-template-columns:1fr; gap:0.8rem; }
    .form-group { margin-bottom:0.3rem; }
    .modern-inputs input,.modern-inputs select,.modern-inputs textarea { padding:0.75rem 1rem 0.75rem 2.3rem; font-size:0.85rem; }
    .form-submit-row { margin-top:1rem; }
    .form-buttons-center { flex-direction:column; width:100%; gap:0.6rem; }
    .form-buttons-center .btn { width:100%; justify-content:center; padding:0.8rem 1rem; }
    .alt-contact { font-size:0.72rem; margin:0.5rem 0; }
    .form-float-icons { display:none; }

    /* === FAQ === */
    .faq-section { padding:2.5rem 0 3rem; }
    .faq-col { padding-right:0; margin-bottom:1rem; }
    .accordion-header { padding:1rem 1.2rem; }
    .accordion-header h4 { font-size:0.88rem; }
    .q-icon { width:28px; height:28px; }
    .accordion-body { padding:0 1.2rem 0 3.5rem; }
    .accordion-body p { font-size:0.82rem; }
    .faq-contact-card { padding:1.5rem 1.2rem; margin-top:1.2rem; }

    /* === FOOTER === */
    .dark-footer { padding:2.5rem 0 1.5rem; }
    .footer-grid-3 { grid-template-columns:1fr; gap:1.5rem; margin-bottom:2rem; }
    .footer-desc { max-width:100%; font-size:0.82rem; }
    .footer-heading { margin-bottom:1rem; font-size:0.85rem; }
    .footer-links-list { gap:0.6rem; }
    .footer-links-list a { font-size:0.82rem; }
    .contact-list li { font-size:0.82rem; }
    .footer-bottom { flex-direction:column; gap:0.8rem; text-align:center; padding-top:1.5rem; }
    .footer-bottom-links { gap:1rem; }
    .footer-spine-bg { display:none; }
}

/* Extra small phones */
@media(max-width:400px) {
    .container { padding:0 1rem; }
    .hero-title { font-size:1.2rem; }
    .hero-subtitle-top { font-size:0.6rem; }
    .glass-feature strong { font-size:0.7rem; }
    .glass-feature span { font-size:0.58rem; }
    .feature-icon { width:28px; height:28px; font-size:0.75rem; }
    .objectifs-grid { grid-template-columns:1fr; }
    .fmc-title { font-size:1.3rem; }
    .fmc-presenter-name { font-size:1.1rem; }
    .expert-portrait-top { height:260px; }
    .portrait-name-overlay h3 { font-size:1.3rem; }
}

