/* ============================================================================
   PANZER BIKE — menu commun (pages Velduro, kit cadre, réalisations, histoire)
   Même en-tête que l'accueil et la page contact. Un seul fichier à modifier.
   ============================================================================ */
.pz-header{ position:fixed; inset:0 0 auto 0; z-index:120; height:var(--header-h,64px); border-bottom:1px solid transparent; transition:background-color 280ms ease, border-color 280ms ease; font-family:'Inter','Helvetica Neue',Arial,sans-serif; }
.pz-header.is-scrolled, .pz-header.is-open, .pz-header.pz-solid{ background:rgba(14,14,14,.94); border-bottom-color:#262626; -webkit-backdrop-filter:blur(8px); backdrop-filter:blur(8px); }
.pz-header *{ box-sizing:border-box; }
.pz-header__inner{ max-width:1280px; margin:0 auto; padding:0 clamp(20px,4vw,48px); height:100%; display:flex; align-items:center; gap:clamp(16px,2.4vw,34px); }
.pz-header .wordmark{ font-family:'Oswald','Arial Narrow',Arial,sans-serif; font-weight:600; font-size:1.35rem; letter-spacing:.12em; text-transform:uppercase; color:#f5f5f5; line-height:1; display:inline-flex; align-items:baseline; gap:.35em; flex-shrink:0; text-decoration:none; }
.pz-header .wordmark__sub{ font-weight:400; color:#c89c8d; letter-spacing:.2em; }
.pz-tag{ font-family:'Oswald','Arial Narrow',Arial,sans-serif; font-size:.7rem; letter-spacing:.26em; text-transform:uppercase; color:#8a8a8a; white-space:nowrap; }
@media (max-width:1500px){ .pz-tag{ display:none; } }

.pz-nav{ display:flex; align-items:center; gap:4px; margin-left:auto; }
.pz-nav__item{ position:relative; }
.pz-nav__item::after{ content:""; position:absolute; left:0; right:0; top:100%; height:14px; }
.pz-nav__link, .pz-nav__btn{ display:inline-flex; align-items:center; gap:8px; padding:10px 14px; font-family:'Oswald','Arial Narrow',Arial,sans-serif; font-weight:500; font-size:.84rem; letter-spacing:.16em; text-transform:uppercase; color:#c8c8c8; border-radius:2px; background:none; border:0; cursor:pointer; text-decoration:none; transition:color 150ms ease; }
.pz-nav__link:hover, .pz-nav__btn:hover, .pz-nav__item.is-open > .pz-nav__btn, .pz-nav__link[aria-current="page"]{ color:#f5f5f5; }
.pz-nav__link[aria-current="page"]{ box-shadow:inset 0 -1px 0 #9d7767; }
.pz-nav__btn::after{ content:""; width:6px; height:6px; border-right:1.5px solid #c89c8d; border-bottom:1.5px solid #c89c8d; transform:translateY(-2px) rotate(45deg); transition:transform 150ms ease; }
.pz-nav__item.is-open > .pz-nav__btn::after{ transform:translateY(1px) rotate(-135deg); }
.pz-nav__menu{ position:absolute; top:calc(100% + 10px); left:0; min-width:260px; background:rgba(16,16,16,.98); border:1px solid #3a3a3a; border-radius:4px; padding:8px; box-shadow:0 20px 50px rgba(0,0,0,.5); opacity:0; transform:translateY(-6px); pointer-events:none; transition:opacity 150ms ease, transform 150ms ease; }
.pz-nav__item.is-open > .pz-nav__menu, .pz-nav__item:focus-within > .pz-nav__menu{ opacity:1; transform:none; pointer-events:auto; }
@media (hover:hover){ .pz-nav__item:hover > .pz-nav__menu{ opacity:1; transform:none; pointer-events:auto; } .pz-nav__item:hover > .pz-nav__btn::after{ transform:translateY(1px) rotate(-135deg); } }
.pz-nav__menu a{ display:block; padding:11px 14px; border-radius:2px; font-size:.95rem; line-height:1.4; color:#c8c8c8; text-decoration:none; transition:background-color 150ms ease, color 150ms ease; }
.pz-nav__menu a small{ display:block; font-size:.78rem; color:#8a8a8a; margin-top:2px; }
.pz-nav__menu a:hover, .pz-nav__menu a[aria-current="page"]{ background:#232323; color:#f5f5f5; }

.pz-header .lang-switcher{ display:inline-flex; flex-shrink:0; gap:2px; padding:4px; background:#232323; border:1px solid #3a3a3a; border-radius:999px; margin:0; }
.pz-header .lang-switcher__btn, .pz-mnav .lang-switcher__btn{ padding:.35rem .7rem; background:transparent; border:none; border-radius:999px; color:#8a8a8a; font-family:'Oswald','Arial Narrow',Arial,sans-serif; font-size:.75rem; font-weight:600; letter-spacing:.15em; line-height:1.2; cursor:pointer; transition:color 150ms ease, background-color 150ms ease; }
.pz-header .lang-switcher__btn:hover, .pz-mnav .lang-switcher__btn:hover{ color:#c89c8d; }
.pz-header .lang-switcher__btn.is-active, .pz-mnav .lang-switcher__btn.is-active{ background:linear-gradient(135deg,#9d7767 0%,#856450 100%); color:#0a0a0a; }
@media (min-width:768px){ .pz-header .lang-switcher__btn{ font-size:.8rem; padding:.4rem .9rem; } }

.pz-cta{ font-family:'Oswald','Arial Narrow',Arial,sans-serif; font-weight:500; font-size:.78rem; letter-spacing:.18em; text-transform:uppercase; background:#9d7767; color:#0a0a0a; border:1px solid #9d7767; border-radius:2px; padding:11px 18px; white-space:nowrap; flex-shrink:0; text-decoration:none; transition:background-color 150ms ease, border-color 150ms ease; }
.pz-cta:hover{ background:#c89c8d; border-color:#c89c8d; color:#0a0a0a; }
.pz-header :focus-visible, .pz-mnav :focus-visible{ outline:2px solid #c89c8d; outline-offset:3px; }

.pz-burger{ display:none; width:44px; height:44px; margin-right:-8px; position:relative; flex-shrink:0; background:none; border:0; cursor:pointer; }
.pz-burger span{ position:absolute; left:11px; right:11px; height:1.5px; background:#f5f5f5; transition:transform 280ms ease, opacity 150ms ease; }
.pz-burger span:nth-child(1){ top:15px; } .pz-burger span:nth-child(2){ top:21.5px; } .pz-burger span:nth-child(3){ top:28px; }
.pz-header.is-open .pz-burger span:nth-child(1){ transform:translateY(6.5px) rotate(45deg); }
.pz-header.is-open .pz-burger span:nth-child(2){ opacity:0; }
.pz-header.is-open .pz-burger span:nth-child(3){ transform:translateY(-6.5px) rotate(-45deg); }

.pz-mnav{ position:fixed; inset:var(--header-h,56px) 0 0 0; z-index:119; background:#0e0e0e; overflow-y:auto; -webkit-overflow-scrolling:touch; display:none; flex-direction:column; padding:8px clamp(20px,4vw,48px) calc(24px + env(safe-area-inset-bottom)); font-family:'Inter','Helvetica Neue',Arial,sans-serif; }
.pz-mnav.is-open{ display:flex; }
.pz-mnav *{ box-sizing:border-box; }
.pz-mnav__group{ border-bottom:1px solid #262626; padding:14px 0; }
.pz-mnav__head{ font-family:'Oswald','Arial Narrow',Arial,sans-serif; font-size:.72rem; letter-spacing:.26em; text-transform:uppercase; color:#c89c8d; margin:0 0 6px; }
.pz-mnav a{ display:block; padding:10px 0; font-family:'Oswald','Arial Narrow',Arial,sans-serif; font-weight:500; font-size:1.35rem; letter-spacing:.02em; color:#f5f5f5; text-decoration:none; }
.pz-mnav a small{ display:block; font-family:'Inter','Helvetica Neue',Arial,sans-serif; font-weight:400; font-size:.85rem; color:#8a8a8a; letter-spacing:0; }
.pz-mnav a[aria-current="page"]{ color:#c89c8d; }
.pz-mnav__single{ padding:6px 0; border-bottom:1px solid #262626; }
.pz-mnav__single a{ padding:14px 0; }
.pz-mnav__foot{ margin-top:auto; padding-top:24px; display:flex; flex-direction:column; gap:18px; }
.pz-mnav__foot .pz-cta{ display:flex; justify-content:center; padding:18px 34px; font-size:1rem; font-weight:500; }
.pz-mnav__contact{ display:flex; flex-wrap:wrap; gap:6px 22px; font-size:.92rem; color:#c8c8c8; }
.pz-mnav__contact a{ display:inline; padding:0; font-family:inherit; font-size:inherit; font-weight:400; color:#c8c8c8; }
.pz-mnav .lang-switcher{ align-self:flex-start; display:inline-flex; gap:2px; padding:4px; background:#232323; border:1px solid #3a3a3a; border-radius:999px; }
body.pz-menu-open{ overflow:hidden; }

@media (max-width:1100px){ .pz-nav__link, .pz-nav__btn{ padding:10px 10px; font-size:.78rem; letter-spacing:.12em; } }
@media (max-width:900px){
  .pz-tag, .pz-nav, .pz-header .lang-switcher{ display:none; }
  .pz-header__inner{ justify-content:space-between; }
  .pz-burger{ display:block; }
  .pz-header .pz-cta{ margin-left:auto; padding:9px 14px; font-size:.72rem; }
  .pz-header.is-open .pz-cta{ opacity:0; pointer-events:none; }
}
@media (max-width:900px){ .pz-header .pz-cta{ flex-shrink:1; min-width:0; overflow:hidden; text-overflow:ellipsis; } .pz-header .wordmark, .pz-burger{ flex-shrink:0; } }
@media (max-width:430px){ .pz-header .wordmark{ font-size:1.15rem; letter-spacing:.1em; } .pz-header .pz-cta{ padding:8px 10px; font-size:.66rem; letter-spacing:.1em; } .pz-header__inner{ gap:10px; } }
@media (prefers-reduced-motion:reduce){ .pz-header *, .pz-mnav *{ transition-duration:.01ms !important; } }
/* Liens légaux ajoutés en bas des pages (impressum, données, CGV…) */
.pz-legal{ display:flex; flex-wrap:wrap; justify-content:center; gap:6px 20px; max-width:1280px; margin:28px auto 0; padding:20px clamp(20px,4vw,48px) 8px; border-top:1px solid #262626; font-family:'Inter','Helvetica Neue',Arial,sans-serif; font-size:.85rem; line-height:1.5; }
.pz-legal a{ color:#8a8a8a; text-decoration:none; transition:color 150ms ease; }
.pz-legal a:hover{ color:#c89c8d; }
body > .pz-legal{ margin:0 auto; padding-bottom:28px; background:#0e0e0e; }
