*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
:root{--blue:#143D6B;--blue-mid:#1D5C9A;--blue-light:#EAF2FA;--blue-border:#B5D4F4;--warm:#F4F2EC;--white:#FFFFFF;--text-dark:#1A1A18;--text-mid:#3A3A38;--text-soft:#5F5E5A;--text-muted:#888780;--border:#E2E0D8;--green:#0F6E56;--green-light:#E1F5EE;--font-serif:'Lora',Georgia,serif;--font-sans:'Inter',system-ui,sans-serif;--nav-h:130px;--radius:10px;--radius-lg:16px;--max-w:1180px;}
html{scroll-behavior:smooth;}
body{font-family:var(--font-sans);color:var(--text-dark);background:var(--white);line-height:1.6;-webkit-font-smoothing:antialiased;}
.nav{position:fixed;top:0;left:0;right:0;z-index:100;height:var(--nav-h);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,4vw,60px);transition:background .35s,box-shadow .35s;}
.nav.transparent{background:transparent;}
.nav.scrolled{background:rgba(255,255,255,.96);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 1px 0 var(--border),0 4px 24px rgba(20,61,107,.06);}
.nav-logo{text-decoration:none;}
.nav-logo-img{height:110px;width:auto;display:block;object-fit:contain;transition:opacity .2s;image-rendering:-webkit-optimize-contrast;}
.nav-logo-img:hover{opacity:.8;}
.nav-links{display:flex;gap:28px;list-style:none;align-items:center;}
.nav-links>li{display:flex;align-items:center;}
.nav-links a{font-size:13px;color:var(--text-mid);text-decoration:none;transition:color .2s;}
.nav-links a:hover,.nav-links a.active{color:var(--blue);}
.nav.transparent .nav-links a{color:var(--blue);}
.nav-cta{font-size:13px;font-weight:500;padding:9px 20px;border-radius:8px;background:var(--blue);color:var(--white);text-decoration:none;transition:opacity .2s,transform .2s;}
.nav-cta:hover{opacity:.88;transform:translateY(-1px);}
.nav-menu-btn{display:none;background:none;border:none;cursor:pointer;padding:4px;}
.nav-menu-btn span{display:block;width:22px;height:1.5px;background:var(--blue);margin:5px 0;border-radius:2px;}
.hero-page{min-height:55vh;background:linear-gradient(155deg,#EAF2FA 0%,#F4F2EC 55%,#EDF5F0 100%);display:flex;align-items:center;padding:calc(var(--nav-h) + 50px) clamp(20px,5vw,80px) 60px;}
.hero-eyebrow{font-size:11px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--green);background:var(--green-light);padding:5px 12px;border-radius:20px;display:inline-flex;align-items:center;gap:7px;margin-bottom:20px;}
.hero-eyebrow::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--green);}
.hero-h1{font-family:var(--font-serif);font-size:clamp(32px,5vw,52px);font-weight:400;color:var(--blue);line-height:1.15;margin-bottom:16px;}
.hero-sub{font-size:clamp(14px,1.6vw,17px);color:var(--text-soft);line-height:1.8;max-width:680px;}
.section{padding:clamp(56px,7vw,90px) clamp(20px,5vw,80px);}
.inner{max-width:var(--max-w);margin:0 auto;}
.section-eyebrow{font-size:11px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--blue-mid);margin-bottom:10px;}
.section-title{font-family:var(--font-serif);font-size:clamp(22px,3vw,34px);font-weight:400;color:var(--blue);line-height:1.3;margin-bottom:16px;}
.section-sub{font-size:15px;color:var(--text-soft);line-height:1.8;max-width:640px;}
.two-col{display:grid;grid-template-columns:1.5fr 1fr;gap:56px;align-items:start;margin-top:36px;}
.prose p{font-size:15px;color:var(--text-mid);line-height:1.85;margin-bottom:16px;}
.prose h3{font-family:var(--font-serif);font-size:19px;color:var(--blue);margin:28px 0 10px;font-weight:400;}
.prose ul{margin:10px 0 16px 20px;}
.prose ul li{font-size:15px;color:var(--text-mid);line-height:1.7;margin-bottom:6px;}
.card-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:28px;}
.card-item{background:var(--white);border-radius:var(--radius);padding:22px;border:.5px solid var(--border);text-decoration:none;color:inherit;display:block;transition:border-color .2s,box-shadow .2s,transform .2s;}
.card-item:hover{border-color:var(--blue);box-shadow:0 4px 20px rgba(20,61,107,.1);transform:translateY(-2px);}
.card-item-title{font-size:14px;font-weight:500;color:var(--blue);margin-bottom:5px;}
.card-item-text{font-size:13px;color:var(--text-soft);line-height:1.6;}
.highlight-box{background:var(--blue);border-radius:var(--radius-lg);padding:28px 32px;color:var(--white);}
.highlight-box h3{font-family:var(--font-serif);font-size:20px;font-weight:400;margin-bottom:14px;}
.highlight-box p{font-size:13px;color:rgba(255,255,255,.82);line-height:1.75;margin-bottom:0;}
.highlight-box p+p{margin-top:12px;}
.info-box{background:var(--blue-light);border:.5px solid var(--blue-border);border-radius:var(--radius);padding:18px 22px;margin-top:16px;}
.info-box p{font-size:13px;color:var(--blue);line-height:1.7;margin:0;}
.quote-block{border-left:3px solid var(--blue);padding:16px 20px;background:var(--blue-light);border-radius:0 var(--radius) var(--radius) 0;margin:24px 0;}
.quote-block p{font-family:var(--font-serif);font-size:16px;font-style:italic;color:var(--blue);line-height:1.65;margin:0;}
.section-warm{background:var(--warm);}
.persona-box{background:var(--warm);border-radius:var(--radius-lg);padding:28px 32px;border:.5px solid var(--border);margin-bottom:32px;}
.persona-box p{font-size:15px;color:var(--text-mid);line-height:1.8;margin:0;}
.persona-box p+p{margin-top:10px;}
.refs{margin-top:40px;padding-top:20px;border-top:.5px solid var(--border);}
.refs p{font-size:11px;color:var(--text-muted);font-weight:500;letter-spacing:.06em;text-transform:uppercase;margin-bottom:8px;}
.refs ol{list-style:decimal;padding-left:18px;}
.refs ol li{font-size:12px;color:var(--text-muted);line-height:1.65;margin-bottom:4px;}
.sup-ref{color:var(--blue-mid);font-size:11px;text-decoration:none;}
.footer{background:var(--warm);border-top:.5px solid var(--border);padding:36px clamp(20px,5vw,80px);}
.footer-inner{max-width:var(--max-w);margin:0 auto;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;}
.footer-links{display:flex;gap:20px;}
.footer-links a{font-size:12px;color:var(--text-muted);text-decoration:none;}
.footer-links a:hover{color:var(--blue);}
.footer-copy{font-size:11px;color:var(--text-muted);}
.fade-in{opacity:0;transform:translateY(18px);transition:opacity .6s,transform .6s;}
.fade-in.visible{opacity:1;transform:translateY(0);}
.fade-in-delay-1{transition-delay:.1s;}
.fade-in-delay-2{transition-delay:.2s;}
@media(max-width:900px){.two-col{grid-template-columns:1fr;}.card-grid{grid-template-columns:1fr;}.nav-links{display:none;}.nav-menu-btn{display:block;}.nav{height:auto !important;overflow:visible;}}
/* ── MOBILE MENU ─────────────────────────────────────────────────────── */
.mobile-menu{display:none;position:fixed;top:var(--nav-h);left:0;right:0;bottom:0;background:#fff;z-index:999;overflow-y:auto;padding:0 0 40px 0;}
.mobile-menu.open{display:block;}
.mobile-section{padding:20px 28px 0;}
.mobile-section-title{font-size:11px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);margin-bottom:10px;padding-bottom:6px;border-bottom:.5px solid var(--border);}
.mobile-links{display:flex;flex-direction:column;gap:0;}
.mobile-links a{font-size:15px;color:var(--text-mid);text-decoration:none;padding:11px 0;border-bottom:.5px solid var(--border);display:block;transition:color .15s;}
.mobile-links a:hover{color:var(--blue);}
.mobile-links a:last-child{border-bottom:none;}
.mobile-direct{padding:20px 28px 0;}
.mobile-direct a{display:block;font-size:15px;color:var(--text-mid);text-decoration:none;padding:11px 0;border-bottom:.5px solid var(--border);}
.mobile-rdv{margin:24px 28px 0;display:block;text-align:center;padding:14px;background:var(--blue);color:#fff;border-radius:var(--radius);font-size:14px;font-weight:500;text-decoration:none;}

.nav-cta-link{font-size:13px;font-weight:500;padding:9px 18px;border-radius:8px;background:var(--blue);color:#fff !important;text-decoration:none;white-space:nowrap;transition:opacity .2s;flex-shrink:0;}
.nav-cta-link:hover{opacity:.88;}

.mobile-menu{display:none;position:fixed;top:var(--nav-h);left:0;right:0;bottom:0;background:#fff;z-index:999;overflow-y:auto;padding:0 0 40px 0;}
.mobile-menu.open{display:block;}
.mobile-section{padding:20px 28px 0;}
.mobile-section-title{font-size:11px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);margin-bottom:10px;padding-bottom:6px;border-bottom:.5px solid var(--border);}
.mobile-links{display:flex;flex-direction:column;}
.mobile-links a{font-size:15px;color:var(--text-mid);text-decoration:none;padding:11px 0;border-bottom:.5px solid var(--border);display:block;}
.mobile-links a:last-child{border-bottom:none;}
.mobile-direct{padding:20px 28px 0;}
.mobile-direct a{display:block;font-size:15px;color:var(--text-mid);text-decoration:none;padding:11px 0;border-bottom:.5px solid var(--border);}
.mobile-rdv{margin:24px 28px 0;display:block;text-align:center;padding:14px;background:var(--blue);color:#fff !important;border-radius:var(--radius);font-size:14px;font-weight:500;text-decoration:none;}
@media(max-width:960px){.nav-links{display:none;}.nav-menu-btn{display:block !important;}}/* ── MOBILE RDV SOUS LOGO ────────────────────────────────────────────── */
.nav-rdv-mobile{display:none;}
@media(max-width:960px){
  .nav{flex-wrap:wrap;height:auto !important;padding:8px 16px;overflow:visible;}
  .nav-logo{width:100%;margin-bottom:6px;}
  .nav-logo-img{height:68px !important;}
  .nav-rdv-mobile{
    display:block;
    width:100%;
    text-align:center;
    background:var(--blue);
    color:#fff !important;
    font-size:13px;
    font-weight:500;
    padding:8px 16px;
    border-radius:7px;
    text-decoration:none;
    margin-bottom:2px;
  }
  .nav-menu-btn{position:absolute;top:14px;right:16px;}
  .nav-cta-link{display:none;}
}


/* ── DROPDOWN HOVER FIX ─────────────────────────────────────────────── */
.nav-item{position:relative;}
.nav-item > a{display:flex;align-items:center;gap:4px;cursor:pointer;}
/* Pont invisible entre le lien et le dropdown pour éviter que le hover ne se ferme */
.nav-item::after{
  content:'';
  position:absolute;
  top:100%;
  left:0;
  right:0;
  height:12px;
  display:none;
}
.nav-item:hover::after{display:block;}
.nav-dropdown{
  display:none;
  position:absolute;
  top:calc(100% + 12px);
  left:50%;
  transform:translateX(-50%);
  background:rgba(240,244,248,0.88);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  border:.5px solid rgba(20,61,107,.12);
  border-radius:var(--radius);
  box-shadow:0 8px 32px rgba(20,61,107,.12);
  min-width:210px;
  z-index:500;
  padding:6px 0 8px 0;
}
.nav-dropdown a{
  display:block;
  padding:9px 20px;
  white-space:nowrap;
  color:var(--text-mid);
  text-decoration:none;
  font-size:13px;
  line-height:1.3;
}
.nav-dropdown a:hover{color:var(--blue);background:rgba(20,61,107,.06);}
.nav-item:hover .nav-dropdown{display:block;}

/* ── LANGUAGE SWITCHER ──────────────────────────────────────────────── */
.lang-switcher{display:flex;align-items:center;gap:0;font-size:12px;font-weight:500;letter-spacing:.04em;margin-right:16px;flex-shrink:0;}
.lang-switcher a{color:var(--text-muted);text-decoration:none;padding:6px 8px;transition:color .15s;}
.lang-switcher a:hover{color:var(--blue);}
.lang-switcher a.active{color:var(--blue);font-weight:600;}
.lang-switcher .lang-sep{color:var(--text-muted);font-size:11px;padding:0 1px;}
@media(max-width:960px){.lang-switcher{display:none;}}
