/* Navigation commune : maquette bureau/mobile du 06/11/2026. */
header.nav { font-family: 'Kumbh Sans', system-ui, sans-serif; position: sticky; top: 0; z-index: 60; background: color-mix(in oklab, var(--theme-page) 88%, transparent); backdrop-filter: blur(14px); border-bottom: 1px solid var(--line); }
header.nav .nav-in { max-width: 1304px; padding: 0 32px; width: 100%; height: 76px; gap: 28px; margin: 0 auto; box-sizing: border-box; }
header.nav .logo img { display: block; width: auto; height: 34px; }
header.nav .nav-links { gap: 4px; margin-left: 0; flex: 1; }
header.nav .nav-links>a, header.nav .mm-top .lk { font-size: 15px; font-weight: 600; padding: 10px 14px; border-radius: 999px; background: transparent; color: var(--theme-texte-principal); }
header.nav .mm-top { padding: 0; background: transparent; gap: 6px; }
header.nav .nav-links>a:hover, header.nav .mm-top .lk:hover { color: var(--theme-texte-principal); background: var(--accent-softer); }
header.nav .nav-cta { gap: 28px; }
header.nav .nav-patient { text-decoration: none; font-size: 15px; font-weight: 600; color: var(--theme-texte-principal); white-space: nowrap; }
header.nav .nav-demarrer { text-decoration: none; display: inline-flex; justify-content: center; align-items: center; gap: 12px; padding: 12px 22px; box-shadow: 0 6px 18px color-mix(in oklab, var(--theme-texte-principal) 22%, transparent); border-radius: 999px; background: var(--theme-fond-inverse); color: var(--theme-texte-inverse); font-size: 15px; font-weight: 700; white-space: nowrap; line-height: normal; }
header.nav .nav-demarrer:hover { background: var(--theme-fond-inverse); color: var(--theme-texte-inverse); transform: translateY(-1px); }
header.nav .nav-demarrer-court { display: none; }
header.nav .burger { width: 44px; height: 44px; padding: 0; border-radius: 14px; background: var(--theme-surface); border: 1px solid var(--line); box-shadow: none; }
header.nav a:focus-visible, header.nav button:focus-visible { outline: 3px solid var(--theme-fond-action); outline-offset: 4px; }
@media(max-width:1080px) {
  header.nav .nav-in { height: 64px; padding: 0 14px 0 20px; gap: 10px; }
  header.nav .logo img { height: 28px; width: auto; }
  header.nav .nav-links, header.nav .nav-patient, header.nav .nav-demarrer-long { display: none; }
  header.nav .nav-cta { gap: 10px; }
  header.nav .nav-demarrer { text-decoration: none; padding: 11px 16px; font-size: 14px; gap: 8px; }
  header.nav .nav-demarrer-court { display: inline; }
}
@media(max-width:360px) { header.nav .nav-in { padding: 0 12px; } header.nav .logo img { height: 24px; } }

header.nav a { text-decoration: none; }
header.nav .mm-top .lk { padding-right: 0; }
header.nav .mm-top .chev { margin-right: 14px; }

/* Panneaux de la maquette, partagés sur toutes les pages. */
header.nav .nav-links>a.on, header.nav .mm-top.on { background: var(--theme-surface-action); }
header.nav .mm-top { border: 0; cursor: pointer; font: inherit; font-size: 15px; font-weight: 600; color: var(--theme-texte-principal); padding: 10px 14px; border-radius: 999px; display: flex; align-items: center; gap: 6px; }
header.nav .mm-top .chev { margin: 0; width: 14px; }
header.nav .mm-top:hover, header.nav .mm-top[aria-expanded="true"] { background: var(--theme-surface-secondaire); }
header.nav .nav-panneau { position: static; }
header.nav .nav-mega { position: absolute; top: 100%; left: 50%; right: auto; transform: translateX(-50%); width: min(1100px, calc(100vw - 48px)); max-width: none; padding: 12px; border: 1px solid var(--theme-bordure); border-radius: 32px; background: var(--theme-surface); color: var(--theme-texte-principal); box-shadow: 0 24px 64px color-mix(in oklab, var(--theme-fond-inverse) 18%, transparent); opacity: 1; visibility: visible; }
header.nav .nav-mega[hidden] { display: none; }
.nav-motifs-contenu { display: grid; grid-template-columns: 1.7fr 1fr; gap: 32px; }
.nav-motifs-contenu>div { padding: 26px 16px 16px 32px; }
.nav-panneau-titre { display: flex; justify-content: space-between; align-items: center; gap: 16px; margin-bottom: 22px; }
.nav-panneau-titre>span, .nav-panneau-label, .nav-conseil>span { text-transform: uppercase; font-size: 13px; font-weight: 750; letter-spacing: .08em; color: var(--theme-texte-secondaire); }
.nav-panneau-titre>a, .nav-lire { font-weight: 700; color: var(--theme-texte-action); font-size: 14px; }
.nav-motifs-liste { display: grid; grid-template-columns: 1fr 1fr; gap: 22px 28px; }
.nav-motifs-liste>a { font-size: 16px; font-weight: 700; color: var(--theme-texte-principal); }
.nav-motifs-chips { display: flex; flex-wrap: wrap; gap: 8px; border-top: 1px solid var(--theme-bordure); padding-top: 18px; margin-top: 26px; }
.nav-motifs-chips>a, .nav-raccourcis>a { background: var(--theme-surface-secondaire); border-radius: 999px; padding: 8px 14px; color: var(--theme-texte-principal); font-size: 14px; font-weight: 600; }
.nav-conseil { display: flex; flex-direction: column; padding: 30px; border-radius: 28px; background: var(--theme-fond-inverse); color: var(--theme-texte-inverse); gap: 20px; }
.nav-conseil>span { color: var(--theme-texte-inverse); opacity: .8; }
.nav-conseil>strong { font-size: 24px; line-height: 1.35; }
.nav-conseil>p { font-size: 15px; line-height: 1.5; color: inherit; opacity: .85; margin: 0 0 20px; }
.nav-conseil>a { margin-top: auto; text-align: center; padding: 16px; border-radius: 999px; background: var(--theme-surface); color: var(--theme-texte-principal); font-weight: 700; }
.nav-fiches-contenu { display: grid; grid-template-columns: 1.1fr 1.05fr .9fr; gap: 24px; }
.nav-vedette { position: relative; display: flex; flex-direction: column; background: var(--theme-surface-secondaire); border-radius: 26px; overflow: hidden; color: var(--theme-texte-principal); }
.nav-vedette>img { width: 100%; height: 210px; object-fit: cover; }
.nav-article-texte { display: flex; flex-direction: column; gap: 7px; }
.nav-vedette .nav-article-texte { padding: 20px; flex: 1; }
.nav-article-texte strong { font-size: 17px; line-height: 1.35; }
.nav-vedette strong { font-size: 19px; }
.nav-rubrique { text-transform: uppercase; color: var(--theme-texte-action); font-size: 12px; font-weight: 750; }
.nav-date { color: var(--theme-texte-secondaire); font-size: 13px; }
.nav-lire { padding-top: 28px; margin-top: auto; }
.nav-derniers { padding: 20px 0 12px; display: flex; flex-direction: column; gap: 22px; }
.nav-derniers .nav-panneau-titre { margin: 0; }
.nav-article { display: flex; align-items: center; gap: 16px; color: var(--theme-texte-principal); }
.nav-article>img { width: 80px; height: 80px; flex: 0 0 80px; border-radius: 16px; object-fit: cover; }
.nav-raccourcis { margin-top: auto; border-top: 1px solid var(--theme-bordure); padding-top: 14px; display: flex; flex-direction: column; align-items: flex-start; gap: 8px; }
.nav-themes { display: flex; flex-direction: column; gap: 13px; border-left: 1px solid var(--theme-bordure); padding: 20px 12px 12px 26px; }
.nav-themes>a { color: var(--theme-texte-principal); font-size: 15px; font-weight: 600; }
header.nav .nav-mega a:hover { text-decoration: underline; text-underline-offset: 4px; }

/* Les dimensions des boutons incluent leur padding dans le panneau mobile. */
header.nav .mnav *, header.nav .mnav *::before, header.nav .mnav *::after { box-sizing: border-box; }
.nav-equipe { display: flex; align-items: center; gap: 14px; margin-bottom: 20px; }
.nav-avatars { display: flex; flex-shrink: 0; padding-left: 8px; }
.nav-avatars img { width: 40px; height: 40px; border-radius: 50%; object-fit: cover; border: 2px solid var(--theme-fond-inverse); margin-left: -8px; }
.nav-equipe p { font-size: 14px; line-height: 1.45; margin: 0; color: inherit; opacity: .85; }

/* Éviter les hauteurs et soulignements hérités des pages éditoriales. */
header.nav .nav-mega { line-height: 1.35; }
header.nav .nav-mega *, header.nav .nav-mega *::before { box-sizing: border-box; }
header.nav .nav-mega .nav-vedette:hover, header.nav .nav-mega .nav-article:hover { text-decoration: none; }
header.nav .nav-mega .nav-vedette:hover .nav-lire, header.nav .nav-mega .nav-article:hover strong { text-decoration: underline; }
.nav-article-texte { min-width: 0; }
.nav-a-la-une { position: absolute; top: 16px; left: 16px; padding: 6px 14px; border-radius: 999px; background: var(--theme-surface); color: var(--theme-texte-principal); font-size: 14px; font-weight: 750; text-transform: uppercase; }
.nav-raccourcis>a { display: inline-flex; align-items: center; gap: 10px; }
.nav-raccourcis .nav-tests { background: var(--theme-surface-action); }
.nav-etoiles { color: var(--star); letter-spacing: 1px; }
.nav-rubrique { color: var(--accent); }
.nav-themes>a:last-child { margin-top: 10px; color: var(--theme-texte-action); font-weight: 700; }
.nav-conseil { position: relative; overflow: hidden; isolation: isolate; }
.nav-conseil::before { content: ''; position: absolute; z-index: -1; width: 240px; height: 240px; border-radius: 50%; top: -100px; right: -80px; background: color-mix(in oklab, var(--theme-texte-inverse) 8%, transparent); }
