/* MH Expertise | Harmonisation V1. Scoped theme replacing legacy styles on migrated pages. */
.mh-site {
  --navy:#082638; --navy-deep:#061f31; --blue:#113d58; --gold:#c99a33;
  --ink:#183247; --muted:#50677b; --line:#dce5ec; --paper:#f4f7fa;
  --width:1280px; --gutter:32px;
  margin:0; color:var(--ink); background:var(--paper);
  font:16px/1.75 Arial,Helvetica,sans-serif;
}
.mh-site *, .mh-site *::before, .mh-site *::after { box-sizing:border-box; }
.mh-site img { max-width:100%; height:auto; }
.mh-site svg { flex-shrink:0; }
.mh-site a { color:#125c83; text-underline-offset:3px; }
.mh-site a:hover { color:#082b42; text-decoration-thickness:2px; }
.mh-site :is(a,button,input,select,textarea,summary,[tabindex]):focus-visible { outline:3px solid #b78019; outline-offset:4px; }
.mh-site [hidden] { display:none; }
.mh-site .skip-link { position:absolute; z-index:100; top:0; left:16px; transform:translateY(-150%); background:white; color:var(--navy); padding:12px 18px; }
.mh-site .skip-link:focus { transform:translateY(0); }
.mh-site :is(p,li,td,th) { overflow-wrap:break-word; }
.mh-site :is(h1,h2,h3,h4) { line-height:1.35; }
.mh-site :is(h2,h3,h4) { color:var(--blue); }
.mh-site p { margin:0 0 18px; }
.mh-site ul, .mh-site ol { padding-left:23px; margin:0 0 22px; }
.mh-site li { margin:0 0 7px; }
.mh-site .header { color:#fff; background:var(--navy-deep); border-bottom:1px solid #ffffff24; position:relative; z-index:10; }
.mh-site .header-inner { max-width:var(--width); padding:22px var(--gutter); margin:auto; display:flex; align-items:center; justify-content:space-between; gap:24px; }
.mh-site .brand { display:flex; align-items:center; gap:16px; text-decoration:none; flex:none; color:#fff; }
.mh-site .brand img { width:74px; height:auto; display:block; flex:none; }
.mh-site .brand strong { display:block; font-size:23px; line-height:1.2; }
.mh-site .brand span { display:block; font-size:13px; line-height:1.5; margin-top:6px; color:#d8e4ee; }
.mh-site .header .nav { display:flex; flex-wrap:wrap; align-items:center; justify-content:flex-end; gap:6px 3px; min-width:0; }
.mh-site .header .nav a { padding:8px; color:#edf3f8; border-radius:5px; font-size:13px; font-weight:700; text-decoration:none; white-space:nowrap; transition:background-color .15s,color .15s; }
.mh-site .header .nav a:hover { background:#ffffff16; color:#fff; }
.mh-site .header .nav a.active, .mh-site .header .nav a[aria-current] { background:var(--gold); color:#071f31; }
.mh-site .menu-toggle { display:none; border:1px solid #ffffff65; border-radius:6px; background:transparent; color:#fff; font:700 14px/1.4 Arial,sans-serif; padding:10px 15px; cursor:pointer; }
.mh-site .header-actions { display:flex; align-items:center; gap:16px; flex-wrap:wrap; }
.mh-site .phone-group { display:flex; flex-direction:column; gap:4px; }
.mh-site .phone { color:#fff; font-size:13px; white-space:nowrap; }
/* One grid for the title, header and article; no per-page offset. */
.mh-site .hero { background:linear-gradient(115deg,#082332,#103a54); color:#fff; position:relative; isolation:isolate; }
.mh-site .hero::before { content:""; position:absolute; z-index:0; inset:0; background:url("motif-blanc.png") no-repeat right max(24px,calc((100vw - 1200px)/2)) center / 230px auto; opacity:.26; pointer-events:none; }
.mh-site .hero-inner { max-width:var(--width); margin:auto; padding:48px var(--gutter) 52px; position:relative; z-index:1; }
.mh-site .hero h1 { color:#fff; font-size:clamp(2rem,3.45vw,3.4rem); letter-spacing:-.025em; line-height:1.13; margin:0 0 24px; max-width:990px; overflow-wrap:break-word; }
.mh-site .hero p { color:#dde8f0; margin:0 0 14px; font-size:17px; line-height:1.75; max-width:870px; }
.mh-site .hero .breadcrumb { font-size:13px; color:#d4e3ed; margin-bottom:24px; }
.mh-site .hero .breadcrumb a { text-decoration:none; color:#efc96f; }
.mh-site .hero .breadcrumb a:hover { text-decoration:underline; }
.mh-site .hero .hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:26px; margin-bottom:0; max-width:none; }
/* Buttons never displace surrounding text on hover. */
.mh-site .btn, .mh-site .portal-btn, .mh-site .mh-btn { display:inline-flex; align-items:center; justify-content:center; gap:10px; text-align:center; min-height:48px; max-width:100%; padding:12px 19px; border:1px solid transparent; border-radius:6px; background:var(--gold); color:#102432; font:700 15px/1.4 Arial,sans-serif; text-decoration:none; transition:background-color .15s; }
.mh-site .btn:hover, .mh-site .portal-btn:hover, .mh-site .mh-btn:hover { background:#ddb653; color:#102432; text-decoration:none; }
.mh-site .btn-outline, .mh-site .portal-btn-outline, .mh-site .mh-btn-secondary { background:transparent; color:var(--blue); border-color:#56758b; }
.mh-site .hero .btn-outline, .mh-site .cta .btn-outline { border-color:#b6ccd9; color:#fff; }
.mh-site .hero .btn-outline:hover, .mh-site .cta .btn-outline:hover { background:#ffffff16; }
.mh-site .portal-btn svg { width:22px; height:22px; }
.mh-site .main { max-width:var(--width); margin:auto; padding:48px var(--gutter) 54px; }
.mh-site .layout, .mh-site .faq-layout { display:grid; grid-template-columns:minmax(0,1fr) 294px; gap:42px; align-items:start; }
.mh-site .layout > *, .mh-site .faq-layout > * { min-width:0; }
.mh-site .content-column { min-width:0; }
.mh-site .section-title { color:#10364e; margin:36px 0 20px; font-size:clamp(1.45rem,2vw,1.85rem); line-height:1.3; letter-spacing:-.018em; scroll-margin-top:24px; }
.mh-site .section-title:first-child { margin-top:0; }
.mh-site .section-title::before { content:""; display:block; width:42px; height:3px; background:var(--gold); margin-bottom:14px; }
.mh-site .card, .mh-site .faq-card, .mh-site .article { background:#fff; border:1px solid var(--line); border-radius:12px; padding:28px 32px; margin-bottom:20px; box-shadow:0 4px 18px #0a2d4410; min-width:0; }
.mh-site .article { padding:32px; }
.mh-site .card p:last-child, .mh-site .faq-card p:last-child, .mh-site .article > p:last-child { margin-bottom:0; }
.mh-site .card h2, .mh-site .faq-card h2, .mh-site .article h2 { font-size:25px; margin:32px 0 14px; color:#10364e; }
.mh-site .card h2:first-child, .mh-site .faq-card h2:first-child, .mh-site .article h2:first-child { margin-top:0; }
.mh-site .card h3, .mh-site .faq-card h3, .mh-site .article h3 { font-size:19px; color:#113b54; margin:25px 0 10px; }
.mh-site .card h3:first-child, .mh-site .faq-card h3:first-child, .mh-site .article h3:first-child { margin-top:0; }
.mh-site .card h4, .mh-site .article h4 { font-size:17px; margin:20px 0 10px; }
.mh-site .card .card, .mh-site .article .card { box-shadow:none; padding:22px; background:#f8fafc; }
.mh-site .grid, .mh-site .cards, .mh-site .local-deck { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.mh-site .grid > .card, .mh-site .cards > .card, .mh-site .local-deck > .card { margin-bottom:0; }
.mh-site .local-deck .card { display:flex; flex-direction:column; }
.mh-site .local-deck .card .btn { margin-top:auto; align-self:flex-start; }
.mh-site .local-deck .card h2 { font-size:21px; }
/* Higher-contrast service entrances, matching the approved homepage V3. */
.mh-site .service-deck { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; margin-bottom:34px; }
.mh-site .service-feature { padding:26px; margin:0; border:1px solid #164766; border-top:3px solid var(--gold); background:linear-gradient(125deg,#082a42,#125070); color:#fff; box-shadow:0 7px 18px #082b4224; border-radius:12px; transition:border-color .18s,box-shadow .18s; }
.mh-site .service-feature:hover, .mh-site .service-feature:focus-within { border-color:#e2b750; box-shadow:0 9px 22px #082b4238,0 0 0 1px #e2b750; }
.mh-site .service-feature > svg { display:block; width:36px; height:36px; margin-bottom:19px; color:#f1cd77; }
.mh-site .service-feature h3 { margin:0 0 15px; font-size:22px; }
.mh-site .service-feature h3, .mh-site .service-feature h3 a { color:#fff; }
.mh-site .service-feature a { text-decoration-color:#91b0c5; text-decoration-thickness:1px; }
.mh-site .service-feature a:hover { text-decoration-color:#f1cd77; color:#ffe1a0; }
.mh-site .service-feature p { color:#e3edf4; font-size:15px; }
/* Right column: separate white cards, not a single dark block. */
.mh-site .sidebar { background:#eaf1f6; border:1px solid #d6e4ed; border-radius:14px; padding:20px; align-self:start; min-width:0; }
.mh-site .sidebar-card { background:#fff; padding:19px; border:1px solid var(--line); border-radius:9px; margin-bottom:16px; font-size:14px; box-shadow:none; }
.mh-site .sidebar-card:last-child { margin-bottom:0; }
.mh-site .sidebar-card h2, .mh-site .sidebar-card h3, .mh-site .sidebar > h2 { margin:0 0 13px; font-size:18px; line-height:1.4; color:#17394f; }
.mh-site .sidebar-card p { margin-bottom:15px; }
.mh-site .sidebar-card p:last-child { margin-bottom:0; }
.mh-site .sidebar-card ul { padding-left:18px; }
.mh-site .sidebar-nav ul { list-style:none; margin:0; padding:0; }
.mh-site .sidebar-nav li { margin:0; }
.mh-site .sidebar-nav { display:flex; flex-direction:column; gap:2px; }
.mh-site .sidebar-nav a { display:block; color:#304f65; text-decoration:none; padding:7px 0 7px 11px; border-left:2px solid transparent; line-height:1.55; transition:color .15s,background-color .15s,border-color .15s; overflow-wrap:anywhere; }
.mh-site .sidebar-nav a:hover, .mh-site .sidebar-nav a:focus-visible { color:#0b425f; background:#f1f6fa; border-left-color:var(--gold); }
.mh-site .sidebar-nav a.active, .mh-site .sidebar-nav a[aria-current="page"] { color:#0b425f; background:#f1f6fa; border-left-color:var(--gold); font-weight:700; }
.mh-site .sidebar-card a[href^="mailto:"] { overflow-wrap:anywhere; }
.mh-site .sidebar-card .btn, .mh-site .sidebar-card .portal-btn { width:100%; padding-left:12px; padding-right:12px; font-size:14px; }
.mh-site .cta { background:linear-gradient(115deg,#082638,#12435e); color:#fff; border:1px solid #294c64; border-radius:13px; padding:32px; margin:34px 0 0; display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:22px; }
.mh-site .cta > div { flex:1 1 320px; min-width:0; }
.mh-site .cta > h2, .mh-site .cta > p { flex-basis:100%; }
.mh-site .cta h2 { color:#fff; font-size:27px; line-height:1.25; margin:0 0 12px; }
.mh-site .cta p { color:#e0ebf3; margin:0; }
.mh-site .cta a:not(.btn) { color:#fff; }
.mh-site .cta .btn { flex:none; }
.mh-site > .cta { max-width:calc(var(--width) - 2 * var(--gutter)); margin:0 auto 48px; }
/* Existing long-form content and technical tables remain readable. */
.mh-site .table-scroll { max-width:100%; overflow-x:auto; margin:24px 0; border:1px solid var(--line); border-radius:8px; }
.mh-site table { width:100%; border-collapse:collapse; text-align:left; font-size:14px; line-height:1.6; }
.mh-site th { padding:14px; background:#143d55; color:white; vertical-align:top; }
.mh-site td { padding:14px; border-top:1px solid var(--line); vertical-align:top; }
.mh-site td + td, .mh-site th + th { border-left:1px solid var(--line); }
.mh-site tbody tr:nth-child(even) { background:#f5f8fb; }
.mh-site blockquote { margin:24px 0; padding:18px 22px; background:#f0f5f8; border-left:3px solid var(--gold); border-radius:0 7px 7px 0; }
.mh-site .info-box, .mh-site .mh-note, .mh-site .portal-note, .mh-site .mh-expert-note { padding:20px 23px; margin:24px 0; border-left:3px solid var(--gold); border-radius:0 8px 8px 0; background:#f0f5f8; color:var(--ink); }
.mh-site .mh-red { border-left-color:#bd4146; background:#fff3f2; }
.mh-site .mh-yellow { border-left-color:#b48b30; background:#fff8e8; }
.mh-site .mh-green { border-left-color:#257d62; background:#edf8f3; }
.mh-site .mh-blue { border-left-color:#397394; background:#edf4fa; }
.mh-site .mh-note p:last-child, .mh-site .info-box p:last-child { margin-bottom:0; }
.mh-site .portal-note { display:flex; align-items:flex-start; gap:16px; }
.mh-site .portal-note-icon svg { width:28px; height:28px; }
.mh-site .portal-note h3 { margin-top:0; }
.mh-site .portal-actions { display:flex; flex-wrap:wrap; gap:12px; }
.mh-site details { border:1px solid var(--line); border-radius:8px; padding:16px 18px; margin:13px 0; background:#fff; }
.mh-site summary { cursor:pointer; color:var(--blue); font-weight:700; line-height:1.6; }
.mh-site details[open] > summary { margin-bottom:13px; }
.mh-site details > p:last-child { margin-bottom:0; }
.mh-site .guide-header { padding-bottom:18px; margin-bottom:24px; border-bottom:1px solid var(--line); }
.mh-site .guide-toc { background:#f0f5f8; padding:22px; border-radius:10px; margin:24px 0; }
.mh-site .guide-toc ul { margin-bottom:0; }
.mh-site .eeat-block { border-top:3px solid var(--gold); }
.mh-site .section { margin:0 0 34px; }
.mh-site .main .container { max-width:100%; margin:0; padding:0; }
.mh-site .article .container { max-width:100%; margin:0; padding:0; }
/* Index pages and interactive search tools. IDs and scripts stay in place. */
.mh-site .blog-tools { margin-bottom:28px; }
.mh-site .blog-search, .mh-site input, .mh-site select, .mh-site textarea { width:100%; padding:14px 16px; background:#fff; color:var(--ink); border:1px solid #9db2c1; border-radius:8px; font:inherit; }
.mh-site .blog-filters { display:flex; gap:8px; flex-wrap:wrap; margin:16px 0 25px; }
.mh-site .blog-filter { padding:9px 13px; border:1px solid #bfd0dd; background:#fff; color:#17394f; border-radius:6px; font:700 13px/1.5 Arial,sans-serif; cursor:pointer; }
.mh-site .blog-filter:hover { background:#eaf1f6; }
.mh-site .blog-filter.active { background:var(--navy); color:white; border-color:var(--navy); }
.mh-site .blog-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.mh-site .blog-card { padding:26px; display:flex; flex-direction:column; align-items:flex-start; background:white; border:1px solid var(--line); border-radius:12px; box-shadow:0 4px 18px #0a2d4410; min-width:0; }
.mh-site .blog-card h2 { color:var(--blue); font-size:21px; margin:14px 0; }
.mh-site .blog-card .btn { margin-top:auto; }
.mh-site .blog-card p { font-size:15px; }
.mh-site .blog-tag { font-size:12px; font-weight:700; color:#285775; background:#eef5f9; padding:3px 9px; border-radius:4px; }
.mh-site .booking-note { padding:18px 20px; background:#fff8e8; border:1px solid #ead9b3; border-radius:9px; margin:24px 0; }
.mh-site .booking-frame { display:block; width:100%; min-height:900px; border:1px solid var(--line); border-radius:10px; background:#fff; }
/* Legacy pages: same design without discarding their alternate content blocks. */
.mh-site .mh-hero-premium { color:var(--ink); background:#fff; border:1px solid var(--line); border-radius:12px; padding:32px; margin-bottom:28px; }
.mh-site .mh-hero-grid { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(0,1fr); gap:30px; align-items:center; }
.mh-site .mh-hero-media img { border-radius:10px; display:block; }
.mh-site .mh-hero-actions { display:flex; gap:12px; flex-wrap:wrap; margin:20px 0; }
.mh-site .mh-breadcrumb { font-size:13px; }
.mh-site .mh-eyebrow, .mh-site .mh-section-label, .mh-site .mh-note-label { color:#306480; font-size:13px; text-transform:uppercase; letter-spacing:.07em; font-weight:700; }
.mh-site .mh-executive-summary, .mh-site .mh-content-block, .mh-site .mh-faq { padding:30px 32px; background:#fff; border:1px solid var(--line); border-radius:12px; margin-bottom:28px; }
/* Footer typography/links only: contact details and destinations are not rewritten. */
.mh-site .footer, .mh-site .site-footer { color:#dce8f0; background:var(--navy-deep); margin:0; position:relative; overflow:hidden; isolation:isolate; }
.mh-site .footer::after, .mh-site .site-footer::after { content:""; position:absolute; z-index:2; pointer-events:none; right:70px; bottom:-10px; top:auto; transform:none; width:235px; height:252px; background:url("motif-footer-blanc.png") no-repeat center / contain; opacity:.10; }
.mh-site .footer-inner, .mh-site .site-footer-grid, .mh-site .copyright, .mh-site .site-footer-bottom, .mh-site .site-footer-nav, .mh-site .footer > .container { position:relative; z-index:3; }
.mh-site .footer-inner, .mh-site .site-footer-grid { max-width:var(--width); padding:42px var(--gutter); margin:auto; display:grid; grid-template-columns:1.2fr 1fr 1fr 1.25fr; gap:32px; }
.mh-site .site-footer-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.mh-site .footer h3, .mh-site .footer h4, .mh-site .site-footer h3, .mh-site .site-footer h4 { font-size:16px; margin:0 0 16px; color:#fff; }
.mh-site .footer p, .mh-site .site-footer p { font-size:13px; line-height:1.9; margin:0 0 12px; }
.mh-site .footer a, .mh-site .site-footer a { color:#dce8f0; text-decoration:none; overflow-wrap:anywhere; }
.mh-site .footer a:hover, .mh-site .site-footer a:hover { color:#f1cd77; text-decoration:underline; }
.mh-site .copyright, .mh-site .site-footer-bottom { max-width:var(--width); margin:auto; border-top:1px solid #ffffff22; padding:20px var(--gutter); font-size:12px; }
.mh-site .site-footer-nav { display:flex; flex-wrap:wrap; gap:16px; max-width:var(--width); margin:auto; padding:30px var(--gutter) 0; font-size:14px; }
.mh-site .footer > .container { max-width:var(--width); margin:auto; padding:24px var(--gutter); }
@media (max-width:1120px) {
 .mh-site .header-inner { flex-wrap:wrap; }
 .mh-site .header .nav { flex-basis:100%; justify-content:flex-start; }
 .mh-site .layout, .mh-site .faq-layout { grid-template-columns:minmax(0,1fr) 270px; gap:28px; }
 .mh-site .card, .mh-site .article, .mh-site .faq-card { padding:24px; }
 .mh-site .sidebar { padding:16px; }
 .mh-site .footer-inner { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .mh-site .service-deck { grid-template-columns:1fr; }
}
@media (max-width:900px) {
 .mh-site .layout, .mh-site .faq-layout { grid-template-columns:1fr; gap:32px; }
 .mh-site .service-deck { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .mh-site .mh-hero-grid { grid-template-columns:1fr; }
}
@media (max-width:800px) {
 .mh-site { --gutter:22px; }
 .mh-site .header-inner { padding-top:18px; padding-bottom:18px; }
 .mh-site .brand img { width:57px; }
 .mh-site .brand strong { font-size:21px; }
 .mh-site .brand span { font-size:12px; }
 .mh-site.nav-ready .menu-toggle { display:inline-block; }
 .mh-site.nav-ready .header .nav:not(.menu-open) { display:none; }
 .mh-site .header .nav { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
 .mh-site .hero-inner { padding-top:32px; padding-bottom:36px; }
 .mh-site .hero h1 { font-size:clamp(2rem,6vw,2.65rem); }
 .mh-site .hero p { font-size:16px; }
 .mh-site .hero::before { background-size:160px auto; opacity:.10; }
 .mh-site .main { padding-top:36px; padding-bottom:36px; }
 .mh-site .table-scroll table { min-width:540px; }
 .mh-site .blog-grid, .mh-site .local-deck { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:600px) {
 .mh-site .footer::after, .mh-site .site-footer::after { width:155px; height:166px; right:8px; bottom:-30px; background-size:contain; opacity:.08; }
 .mh-site .blog-grid, .mh-site .local-deck, .mh-site .grid, .mh-site .cards, .mh-site .service-deck { grid-template-columns:1fr; }
 .mh-site .site-footer-grid { grid-template-columns:1fr; }
 .mh-site .service-feature { padding:24px; }
}
@media (max-width:480px) {
 .mh-site { --gutter:20px; font-size:15px; }
 .mh-site .brand { gap:11px; }
 .mh-site .brand img { width:46px; }
 .mh-site .brand strong { font-size:19px; }
 .mh-site .brand span { font-size:11px; }
 .mh-site .header-inner { gap:14px; }
 .mh-site .hero .hero-actions { display:grid; grid-template-columns:1fr; }
 .mh-site .card, .mh-site .article, .mh-site .faq-card { padding:22px 20px; }
 .mh-site .section-title { font-size:24px; }
 .mh-site .article h2, .mh-site .card h2 { font-size:23px; }
 .mh-site .card h3 { font-size:18px; }
 .mh-site .cta { padding:26px 22px; }
 .mh-site .cta h2 { font-size:25px; }
 .mh-site .cta > div { flex-basis:100%; }
 .mh-site .cta .btn { width:100%; }
 .mh-site .footer-inner { grid-template-columns:1fr; gap:25px; }
 .mh-site .booking-frame { min-height:1000px; }
 .mh-site .mh-hero-premium, .mh-site .mh-executive-summary, .mh-site .mh-content-block, .mh-site .mh-faq { padding:22px 20px; }
}
@media (prefers-reduced-motion:reduce) { .mh-site *, .mh-site *::before, .mh-site *::after { transition:none !important; } }
@media print {
 .mh-site .header, .mh-site .sidebar, .mh-site .hero-actions, .mh-site .cta, .mh-site .footer, .mh-site .site-footer { display:none; }
 .mh-site, .mh-site .hero { background:#fff; color:#000; }
 .mh-site .hero h1, .mh-site .hero p { color:#000; }
 .mh-site .hero::before { display:none; }
 .mh-site .layout, .mh-site .faq-layout { display:block; }
 .mh-site .card, .mh-site .article { box-shadow:none; }
 .mh-site .table-scroll { overflow:visible; }
 .mh-site .service-feature, .mh-site .service-feature h3, .mh-site .service-feature a, .mh-site .service-feature p { background:#fff; color:#000; }
}

/* V37 - liens rapides du footer sur lignes distinctes */
.mh-site .footer-inner > div:nth-child(2) p a {
  display:block;
  padding:2px 0;
}
.mh-site .footer-inner > div:nth-child(2) p br {
  display:none;
}


/* V38 - colonne laterale harmonisee, sobre et plus accrocheuse */
.mh-site .sidebar {
  background:#edf4f8;
  border-color:#d6e3ec;
  border-radius:16px;
  padding:18px;
}
.mh-site .sidebar-card {
  background:#fff;
  border:1px solid #dbe5ec;
  border-radius:12px;
  padding:21px 20px;
  margin-bottom:18px;
  box-shadow:0 5px 16px rgba(8,43,66,.07);
}
.mh-site .sidebar-card h2,
.mh-site .sidebar-card h3,
.mh-site .sidebar > h2 {
  color:#0b324b;
  font-size:20px;
  font-weight:800;
  line-height:1.3;
  margin:0 0 18px;
  letter-spacing:-.012em;
}
.mh-site .sidebar-card h2::after,
.mh-site .sidebar-card h3::after,
.mh-site .sidebar > h2::after {
  content:"";
  display:block;
  width:42px;
  height:3px;
  margin-top:10px;
  background:var(--gold);
  border-radius:99px;
}
.mh-site .sidebar > h2 {
  margin:22px 2px 14px;
  font-size:22px;
}
.mh-site .sidebar > h2:first-child { margin-top:2px; }

/* Sommaire : seul bloc avec un bandeau marine. */
.mh-site .sidebar-card.page-contents {
  padding:0 20px 10px;
  overflow:hidden;
}
.mh-site .sidebar-card.page-contents > h2,
.mh-site .sidebar-card.page-contents > h3 {
  margin:0 -20px 10px;
  padding:16px 20px;
  background:linear-gradient(115deg,#082638,#123f5a);
  color:#fff;
  font-size:20px;
  letter-spacing:.015em;
}
.mh-site .sidebar-card.page-contents > h2::after,
.mh-site .sidebar-card.page-contents > h3::after { display:none; }
.mh-site .page-contents nav { display:flex; flex-direction:column; }
.mh-site .page-contents nav a,
.mh-site .sidebar-nav a {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  min-height:43px;
  padding:9px 2px;
  border:0;
  border-bottom:1px solid #e4ebf0;
  background:transparent;
  color:#274b63;
  text-decoration:none;
  line-height:1.45;
  transition:color .15s ease,background-color .15s ease,padding-left .15s ease;
  overflow-wrap:anywhere;
}
.mh-site .page-contents nav a::after,
.mh-site .sidebar-nav a::after {
  content:"›";
  flex:none;
  color:#315c78;
  font-size:22px;
  font-weight:400;
  line-height:1;
  transform:translateY(-1px);
  transition:color .15s ease,transform .15s ease;
}
.mh-site .page-contents nav a:last-child,
.mh-site .sidebar-nav a:last-child { border-bottom:0; }
.mh-site .page-contents nav a:hover,
.mh-site .page-contents nav a:focus-visible,
.mh-site .sidebar-nav a:hover,
.mh-site .sidebar-nav a:focus-visible {
  color:#082f49;
  background:#f7fafc;
  padding-left:6px;
}
.mh-site .page-contents nav a:hover::after,
.mh-site .page-contents nav a:focus-visible::after,
.mh-site .sidebar-nav a:hover::after,
.mh-site .sidebar-nav a:focus-visible::after {
  color:var(--gold);
  transform:translate(2px,-1px);
}
.mh-site .sidebar-nav a.active,
.mh-site .sidebar-nav a[aria-current="page"] {
  color:#082f49;
  background:#f8f4ea;
  font-weight:700;
  padding-left:6px;
}
.mh-site .sidebar-nav a.active::after,
.mh-site .sidebar-nav a[aria-current="page"]::after { color:var(--gold); }
.mh-site .sidebar-nav { gap:0; }

@media (max-width:900px) {
  .mh-site .sidebar { max-width:100%; }
}
@media (max-width:480px) {
  .mh-site .sidebar { padding:14px; border-radius:14px; }
  .mh-site .sidebar-card { padding:19px 17px; }
  .mh-site .sidebar-card.page-contents { padding:0 17px 8px; }
  .mh-site .sidebar-card.page-contents > h2,
  .mh-site .sidebar-card.page-contents > h3 { margin-left:-17px; margin-right:-17px; padding-left:17px; padding-right:17px; }
  .mh-site .sidebar-card h2,
  .mh-site .sidebar-card h3,
  .mh-site .sidebar > h2 { font-size:19px; }
}
