/* Navigation partagée + pages secondaires */
.wrap{max-width:1200px;margin:0 auto;padding:0 24px}
.page{font-family:system-ui,-apple-system,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;color:#0B2D45;background:#F2F4F3;line-height:1.55}
.topbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 32px;padding:24px 0;position:relative;z-index:20}
.logo{display:inline-block;line-height:0}
.logo img{display:block;height:44px;width:auto}
.nav{display:flex;flex-wrap:wrap;align-items:center;gap:12px 28px;font-size:16px}
.nav a.nl,.nav button.nl{color:#D5DFE3;text-decoration:none;background:none;border:0;padding:0;font:inherit;cursor:pointer}
.nav a.nl:hover,.nav button.nl:hover{color:#fff}
.nav a.nl[aria-current="page"]{color:#F5A300}
.nav a.cta{display:inline-block;padding:10px 20px;background:#F5A300;color:#0B2D45;text-decoration:none;font-weight:500;border-radius:4px}
.nav a.cta:hover{color:#0B2D45;background:#FFB81F}
.dd{position:relative}
.dd button.nl::after{content:"";display:inline-block;margin-left:8px;width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-3px) rotate(45deg);transition:transform .15s}
.dd button[aria-expanded="true"]::after{transform:translateY(1px) rotate(-135deg)}
.dd-menu{display:none;position:absolute;top:calc(100% + 14px);left:-16px;min-width:340px;max-width:calc(100vw - 48px);background:#fff;border:1px solid #D0D9D7;border-radius:6px;box-shadow:0 12px 32px rgba(8,37,58,.28);padding:8px;margin:0;list-style:none;z-index:30}
.dd-menu.open{display:block}
.dd-menu a{display:block;padding:12px 14px;border-radius:4px;color:#0B2D45;text-decoration:none;font-size:16px;line-height:1.35}
.dd-menu a:hover,.dd-menu a:focus-visible{background:#F2F4F3;color:#0B2D45}
.dd-menu a[aria-current="page"]{background:#E1E8E6;font-weight:600}
@media (max-width:640px){.dd-menu{position:static;margin-top:10px;min-width:0;width:100%}.dd{width:100%}}
.eyebrow{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px;letter-spacing:.12em;color:#F5A300;text-transform:uppercase}
.eyebrow.dk{color:#1D5B87}
.phero{background:#0B2D45;color:#F2F4F3}
.phero .intro{padding:40px 0 88px;max-width:820px;display:flex;flex-direction:column;gap:22px}
.phero h1{margin:0;font-size:clamp(30px,4vw,50px);line-height:1.08;font-weight:600;letter-spacing:-.02em}
.phero p{margin:0;font-size:19px;color:#B9C8CE}
.crumb{font-size:14px;color:#8FA3AB}
.crumb a{color:#B9C8CE}
.sec{padding:80px 0}
.sec.alt{background:#E1E8E6}
.sec.dark{background:#113A56;color:#F2F4F3}
.sec h2{margin:0 0 24px;font-size:clamp(26px,3vw,36px);line-height:1.15;font-weight:600;letter-spacing:-.015em}
.sec .txt{max-width:760px;display:flex;flex-direction:column;gap:16px;font-size:18px;color:#2C434F}
.sec.dark .txt{color:#D5DFE3}
.sec p{margin:0}
.cols{display:flex;flex-wrap:wrap;gap:20px}
.card{flex:1 1 300px;min-width:0;background:#fff;border:1px solid #D0D9D7;border-radius:6px;padding:28px;display:flex;flex-direction:column;gap:12px}
.card h3{margin:0;font-size:20px;font-weight:600}
.card p{color:#3F5159}
.card ul{margin:0;padding-left:20px;color:#3F5159;display:flex;flex-direction:column;gap:6px}
.ticks{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:12px}
.ticks li{position:relative;padding-left:30px}
.ticks li::before{content:"";position:absolute;left:0;top:.55em;width:14px;height:3px;background:#F5A300;border-radius:2px}
.dev{background:#fff;border:1px solid #D0D9D7;border-radius:6px;padding:32px;display:flex;flex-wrap:wrap;gap:24px 40px}
.dev+.dev{margin-top:20px}
.dev .head{flex:1 1 280px;min-width:0;display:flex;flex-direction:column;gap:8px}
.dev .head h3{margin:0;font-size:24px;font-weight:600}
.dev .maker{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px;color:#1D5B87}
.dev .body{flex:2 1 420px;min-width:0;display:flex;flex-direction:column;gap:16px;color:#2C434F}
.dev h4{margin:0 0 6px;font-size:15px;letter-spacing:.04em;text-transform:uppercase;color:#1D5B87}
.dev ul{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:6px}
.note{font-size:14px;color:#5A6B73}
.sec.dark .note{color:#8FA3AB}
.cta-band{background:#0B2D45;color:#F2F4F3;padding:72px 0}
.cta-band .in{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px}
.cta-band h2{margin:0;font-size:clamp(24px,2.8vw,34px);font-weight:600;max-width:640px;line-height:1.2}
.btn{display:inline-block;padding:14px 24px;background:#F5A300;color:#0B2D45;text-decoration:none;font-weight:500;border-radius:4px}
.btn:hover{background:#FFB81F;color:#0B2D45}
.others{display:flex;flex-wrap:wrap;gap:10px}
.others a{padding:10px 16px;border:1px solid #B5C3C8;border-radius:999px;color:#0B2D45;text-decoration:none;font-size:15px;background:#fff}
.others a:hover{border-color:#0B2D45}
.pfoot{background:#08253A;color:#8FA3AB}
.pfoot .in{padding:28px 0;display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px 24px;font-size:14px}
.person{flex:1 1 440px;min-width:0;background:#fff;border:1px solid #D0D9D7;border-radius:6px;padding:32px;display:flex;flex-direction:column;gap:18px}
.person .top{display:flex;align-items:center;gap:20px}
.avatar{flex:0 0 104px;width:104px;height:104px;border-radius:50%;background:#0B2D45;color:#F5A300;display:flex;align-items:center;justify-content:center;font-family:'Montserrat',system-ui,sans-serif;font-weight:600;font-size:30px;overflow:hidden}
.avatar img{width:100%;height:100%;object-fit:cover}
.person h3{margin:0;font-size:24px;font-weight:600}
.person .role{color:#1D5B87;font-size:16px}
.person p{color:#3F5159}

.person .top{align-items:flex-start;gap:24px}
.person .portrait{flex:0 0 38%;width:38%;max-width:200px;height:auto;aspect-ratio:318/410;object-fit:cover;border-radius:6px}
.person .bar{width:48px;height:3px;border:0;background:#1D5B87;margin:12px 0}
.facts{list-style:none;margin:6px 0 0;padding:18px 0 0;border-top:1px solid #D0D9D7;display:flex;flex-direction:column;gap:14px}
.facts li{display:flex;gap:14px;align-items:flex-start;color:#3F5159;font-size:15px}
.facts strong{color:#0B2D45}
.facts .ic{flex:0 0 40px;height:40px;border-radius:50%;background:#E3EEF7;display:flex;align-items:center;justify-content:center}
@media(max-width:560px){.person .top{flex-direction:column}.person .portrait{width:60%;flex-basis:auto}}
.lang{display:inline-flex;gap:2px;margin-left:12px;font-size:13px;letter-spacing:.04em}
.lang a{color:#B9C8CE;text-decoration:none;padding:4px 7px;border-radius:3px}
.lang a:hover{color:#fff}
.lang a[aria-current="true"]{color:#0B2D45;background:#F5A300;font-weight:600}
@media(max-width:640px){.lang{margin:8px 0 0}}

/* ===== Responsive : mobile, tablette, PC ===== */
img,video{max-width:100%}
h1,h2,h3,h4,p,li{overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}
a[href^="mailto:"],a[href^="tel:"]{overflow-wrap:anywhere}
.burger{display:none;flex-direction:column;justify-content:center;gap:5px;width:46px;height:46px;padding:0 11px;background:transparent;border:1px solid #2A5470;border-radius:6px;cursor:pointer}
.burger span{display:block;height:2px;background:#F2F4F3;border-radius:2px;transition:transform .2s,opacity .2s}
.burger[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
@media(max-width:1000px){
 .topbar{flex-wrap:wrap;padding:16px 0;gap:12px}
 .burger{display:flex}
 .nav{display:none;order:3;flex:1 0 100%;width:100%;flex-direction:column;align-items:stretch;gap:0;padding:6px 0 10px;border-top:1px solid #2A5470;font-size:17px}
 .nav.open{display:flex}
 .nav a.nl,.nav button.nl{display:flex;align-items:center;justify-content:space-between;min-height:48px;padding:0 4px;border-bottom:1px solid rgba(185,200,206,.18);width:100%;text-align:left}
 .nav a.cta{margin-top:14px;text-align:center;min-height:48px;display:flex;align-items:center;justify-content:center}
 .dd{width:100%}
 .dd-menu{position:static;margin:6px 0 4px;min-width:0;width:100%;max-width:none;box-shadow:none}
 .dd-menu a{padding:14px}
 .lang{margin:16px 0 0;justify-content:center;font-size:15px}
 .lang a{padding:10px 16px}
}
@media(max-width:768px){
 .sec{padding:52px 0}
 .phero .intro{padding:28px 0 52px;gap:18px}
 .phero p{font-size:17px}
 .sec .txt{font-size:17px}
 .cta-band{padding:48px 0}
 .dev,.card,.person{padding:22px}
 .dev{gap:18px}
 section[style*="padding: 96px 24px"]{padding:56px 20px!important}
 div[style*="padding: 56px 0 96px"]{padding:28px 0 56px!important;gap:32px!important}
 .others a{padding:12px 16px}
 .pfoot .in{padding:22px 0}
}
@media(max-width:480px){
 .wrap{padding:0 18px}
 .logo img{height:38px}
 .sec h2{font-size:25px}
 section[style*="padding: 96px 24px"]{padding:44px 18px!important}
 .btn,.cta-band .btn{display:block;text-align:center;width:100%}
 .facts li{font-size:15px}
}
@media(min-width:769px) and (max-width:1000px){
 .cols .card{flex-basis:calc(50% - 10px)}
}

/* Pages juridiques */
.legal{max-width:780px;color:#2C434F;font-size:17px}
.legal h2{font-size:21px;margin:36px 0 10px;line-height:1.3}
.legal h2:first-child,.legal .legal-note+h2{margin-top:0}
.legal p{margin:0 0 12px}
.legal-note{padding:12px 16px;background:#E1E8E6;border-left:3px solid #F5A300;border-radius:4px;font-size:15px;margin-bottom:28px!important}
