/* ===== Barre de navigation — toujours visible (position collante), style « pilule » flottante ===== */
:root{--hh:88px}
.hdr{position:-webkit-sticky;position:sticky;top:0;z-index:50;padding:10px 16px;pointer-events:none}
.hdr-in{pointer-events:auto;max-width:1240px;margin:0 auto;height:68px;padding:0 10px 0 14px;border-radius:999px;display:flex;align-items:center;justify-content:space-between;gap:1rem;
  background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(18px) saturate(1.5);backdrop-filter:blur(18px) saturate(1.5);
  border:1px solid rgba(10,34,51,.07);box-shadow:0 12px 34px -14px rgba(10,34,51,.38);transition:height .3s var(--ease),background .35s,border-color .35s,box-shadow .35s}
.hdr.scrolled .hdr-in{height:60px;background:rgba(255,255,255,.96);box-shadow:0 14px 38px -14px rgba(10,34,51,.5)}
.hdr .brand img{width:58px;height:58px;border:0;background:transparent;border-radius:0;object-fit:contain}
.hdr .brand b{font-size:1.28rem;transition:color .3s}.hdr .brand small{font-size:.62rem;letter-spacing:.26em}

.nav{display:flex;align-items:center;gap:.25rem}
.nav a:not(.btn){position:relative;font-size:.95rem;font-weight:500;color:var(--ink);padding:.6rem 1rem;border-radius:999px;transition:background .25s,color .25s}
.nav a:not(.btn)::after{display:none}
.nav a:not(.btn):hover{background:rgba(23,74,115,.08);color:var(--navy)}
.nav a:not(.btn).on{background:rgba(23,74,115,.1);color:var(--navy);font-weight:600}
.nav a:not(.btn).on::before{content:"";position:absolute;left:50%;bottom:3px;width:5px;height:5px;margin-left:-2.5px;border-radius:50%;background:var(--gold)}
.nav .nav-cta{margin-left:.5rem;padding:.75rem 1.4rem;font-size:.93rem;white-space:nowrap}
.nav-x{display:none}
.burger{display:none;position:relative;width:46px;height:46px;border:0;border-radius:50%;background:rgba(23,74,115,.09);color:var(--navy);cursor:pointer;place-items:center;flex:none;-webkit-tap-highlight-color:transparent}
.burger .ic{width:26px;height:26px}

/* accueil : barre en verre sombre au-dessus de la photo, qui devient blanche au défilement */
.home .hdr{margin-bottom:calc(var(--hh) * -1)}
.home .hero{padding-top:var(--hh)}
.home .hdr:not(.scrolled) .hdr-in{background:rgba(8,28,44,.38);border-color:rgba(255,255,255,.2);box-shadow:0 10px 40px -16px rgba(0,0,0,.5)}
.home .hdr:not(.scrolled) .brand b,.home .hdr:not(.scrolled) .nav a:not(.btn){color:#fff}
.home .hdr:not(.scrolled) .nav a:not(.btn):hover,.home .hdr:not(.scrolled) .nav a:not(.btn).on{background:rgba(255,255,255,.16)}
.home .hdr:not(.scrolled) .brand small{color:#f0cf8c}
.home .hdr:not(.scrolled) .burger{background:rgba(255,255,255,.16);color:#fff}

/* ---------- mobile / tablette : tiroir de navigation ---------- */
@media(max-width:980px){
  :root{--hh:74px}
  .hdr{padding:8px 10px}
  .hdr-in{height:58px;padding:0 6px 0 10px;-webkit-backdrop-filter:none;backdrop-filter:none;background:rgba(255,255,255,.97)} /* pas de flou ici : un filtre casserait le tiroir fixe sur iOS */
  .hdr.scrolled .hdr-in{height:56px}
  .home .hdr:not(.scrolled) .hdr-in{background:rgba(8,28,44,.55)}
  .hdr .brand{gap:.55rem;min-width:0}
  .hdr .brand img{width:46px;height:46px}
  .hdr .brand b{font-size:1.06rem;white-space:nowrap}
  .hdr .brand small{font-size:.54rem;letter-spacing:.2em;white-space:nowrap}
  .burger{display:grid}
  .nav{position:fixed;top:0;right:0;bottom:0;left:auto;z-index:70;width:min(360px,88vw);height:100vh;height:100dvh;overflow-y:auto;-webkit-overflow-scrolling:touch;
    flex-direction:column;align-items:stretch;gap:0;padding:88px 22px max(28px,env(safe-area-inset-bottom));background:var(--cream);box-shadow:-24px 0 60px rgba(0,0,0,.35);border-radius:28px 0 0 28px;
    opacity:0;visibility:hidden;pointer-events:none;transform:scale(.97);transform-origin:right top;transition:opacity .28s,transform .32s var(--ease),visibility 0s .32s}
  .nav.open{opacity:1;visibility:visible;pointer-events:auto;transform:none;transition:opacity .28s,transform .32s var(--ease)}
  .nav a:not(.btn),.home .hdr:not(.scrolled) .nav a:not(.btn){display:flex;align-items:center;justify-content:space-between;width:100%;padding:1.05rem .4rem;font-size:1.18rem;border-radius:0;border-bottom:1px solid var(--line);color:var(--navy);background:none}
  .nav a:not(.btn)::before{display:none}
  .nav a:not(.btn)::after{display:block;content:"›";position:static;width:auto;height:auto;background:none;transform:none;color:var(--gold);font-size:1.5rem;line-height:1}
  .nav a:not(.btn).on{background:none;color:var(--gold)}
  .nav .nav-cta{margin:1.4rem 0 0;justify-content:center;padding:1.05rem;font-size:1.02rem}
  .nav-x{display:grid;place-items:center;position:absolute;top:16px;right:16px;width:46px;height:46px;border:0;border-radius:50%;background:var(--sand);color:var(--navy);font-size:1.9rem;line-height:1;cursor:pointer}
  body.nav-open{overflow:hidden}
  body.nav-open::after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(6,22,34,.6);z-index:49;animation:hdrFade .3s}
  @keyframes hdrFade{from{opacity:0}}
}
