/* STEVEN ANGOFF — MENU MOBILE FR/EN */
.steven-menu-root { display:none; }
body.steven-menu-lock { overflow:hidden !important; touch-action:none !important; }
@media (max-width:768px) {
.steven-menu-root { display:block; position:fixed; inset:0; width:100%; height:100%; z-index:2147483000; pointer-events:none; -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale; text-rendering:optimizeLegibility; }
.steven-menu-bar { position:fixed; top:0; left:0; width:100vw; height:120px; padding:0 24px; box-sizing:border-box; z-index:99990; pointer-events:none; transform:translate3d(0,0,0); transition:transform .4s cubic-bezier(.16,1,.3,1); will-change:transform; }
.steven-menu-bar::before { content:""; position:absolute; top:0; left:0; width:100%; height:100%; z-index:-1; background:linear-gradient(to bottom,rgba(12,16,24,.95) 30%,rgba(12,16,24,0) 100%); backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px); -webkit-mask-image:linear-gradient(to bottom,black 40%,transparent 100%); mask-image:linear-gradient(to bottom,black 40%,transparent 100%); }
.steven-menu-bar.is-hidden { transform:translate3d(0,-100%,0); }
.steven-menu-bar-content { height:80px; display:flex; align-items:center; justify-content:space-between; pointer-events:auto; }
.steven-menu-brand { font-family:'Clash Display',system-ui,-apple-system,sans-serif; font-size:1.45rem; font-weight:500; color:#fff !important; text-decoration:none !important; letter-spacing:1px; touch-action:manipulation; }
.steven-menu-trigger { width:55px; height:55px; border-radius:50%; background:rgba(255,255,255,.06); border:1px solid rgba(56,85,232,.4); display:flex; flex-direction:column; justify-content:center; align-items:center; gap:5px; cursor:pointer; padding:0; transition:transform .2s ease,border-color .2s ease,background .2s ease; will-change:transform; touch-action:manipulation; -webkit-tap-highlight-color:transparent; }
.steven-menu-trigger:active { transform:scale(.92); background:rgba(56,85,232,.2); }
.steven-menu-line { width:22px; height:2px; background-color:#fff !important; border-radius:2px; transition:transform .3s cubic-bezier(.16,1,.3,1),opacity .2s ease,background-color .3s ease; }
.steven-menu-trigger.is-open .steven-menu-line:nth-child(1) { transform:translateY(7px) rotate(45deg); background-color:#3855e8 !important; }
.steven-menu-trigger.is-open .steven-menu-line:nth-child(2) { opacity:0; }
.steven-menu-trigger.is-open .steven-menu-line:nth-child(3) { transform:translateY(-7px) rotate(-45deg); background-color:#3855e8 !important; }
.steven-menu-drawer { position:fixed; inset:0; width:100vw; height:100vh; height:100dvh; background:radial-gradient(circle at 50% 32%,#080c18 0%,#030406 85%); z-index:99980; padding:110px 24px 40px; box-sizing:border-box; display:flex; flex-direction:column; justify-content:space-between; align-items:center; opacity:0; visibility:hidden; pointer-events:none; transition:opacity .35s cubic-bezier(.16,1,.3,1),visibility .35s ease; contain:layout style; }
.steven-menu-drawer.is-open { opacity:1; visibility:visible; pointer-events:auto; }
.steven-menu-lang-switch { display:inline-flex; align-items:center; background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.12); padding:4px; border-radius:40px; backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px); gap:4px; touch-action:manipulation; }
.steven-menu-lang-btn { padding:8px 22px; border-radius:25px; font-family:'Manrope',system-ui,sans-serif; font-size:.9rem; font-weight:500; color:rgba(255,255,255,.5) !important; text-decoration:none !important; letter-spacing:1px; transition:all .25s cubic-bezier(.16,1,.3,1); -webkit-tap-highlight-color:transparent; }
.steven-menu-lang-btn.is-active { background:#fff !important; color:#030406 !important; font-weight:600; box-shadow:0 4px 20px rgba(255,255,255,.25); }
.steven-menu-nav { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:12px; width:100%; margin:auto 0; }
.steven-menu-link { display:inline-flex; align-items:center; justify-content:center; width:auto; padding:6px 28px; font-family:'Clash Display',system-ui,-apple-system,sans-serif; font-size:clamp(2.2rem,7.5vw,3.1rem); font-weight:400; line-height:1.25; color:rgba(255,255,255,.72) !important; text-decoration:none !important; letter-spacing:2px; border-radius:100px; border:1px solid transparent; box-sizing:border-box; touch-action:manipulation; -webkit-tap-highlight-color:transparent; opacity:0; transform:translate3d(0,18px,0); transition:opacity .35s cubic-bezier(.16,1,.3,1),transform .35s cubic-bezier(.16,1,.3,1),color .25s ease,background-color .25s ease,border-color .25s ease,box-shadow .25s ease; }
.steven-menu-link:active { transform:scale(.97); color:#fff !important; }
.steven-menu-link.is-active { background:#fff !important; color:#030406 !important; font-weight:500; padding:8px 36px; border-color:#fff; box-shadow:0 10px 40px rgba(255,255,255,.35); }
.steven-menu-drawer.is-open .steven-menu-link { opacity:1; transform:translate3d(0,0,0); }
.steven-menu-drawer.is-open .steven-menu-link:nth-child(1) { transition-delay:.06s; }
.steven-menu-drawer.is-open .steven-menu-link:nth-child(2) { transition-delay:.10s; }
.steven-menu-drawer.is-open .steven-menu-link:nth-child(3) { transition-delay:.14s; }
.steven-menu-drawer.is-open .steven-menu-link:nth-child(4) { transition-delay:.18s; }
.steven-menu-drawer.is-open .steven-menu-link:nth-child(5) { transition-delay:.22s; }
.steven-menu-footer { font-family:'Manrope',system-ui,sans-serif; font-size:.85rem; font-weight:400; color:rgba(255,255,255,.35); letter-spacing:2.5px; text-transform:uppercase; text-align:center; }
}

/* Hide the navigation only during the opening rope scene on either homepage.
   The homepage changes data-mode to museum/list when the intro is finished. */
@media (max-width:768px) {
  body:has(#sa-mobile-fr[data-mode="intro"], #sa-mobile-en[data-mode="intro"]) .steven-menu-root {
    visibility:hidden;
    pointer-events:none;
  }
}

/* Social links — same destinations and text separators as Contact FR. */
@media (max-width:768px) {
  .steven-menu-socials {
    display:flex;
    align-items:center;
    justify-content:center;
    flex-wrap:wrap;
    gap:8px 12px;
    max-width:100%;
    font-family:'Manrope',system-ui,sans-serif;
    font-size:clamp(1.05rem,4.5vw,1.25rem);
    font-weight:500;
    line-height:1.4;
    letter-spacing:.2px;
    text-transform:none;
  }
  .steven-menu-socials a {
    color:rgba(255,255,255,.92) !important;
    text-decoration:none !important;
    padding:8px 0;
    -webkit-tap-highlight-color:transparent;
    touch-action:manipulation;
    transition:color .2s ease;
  }
  .steven-menu-socials a:active,
  .steven-menu-socials a:focus-visible { color:#fff !important; }
  .steven-menu-social-separator { color:rgba(255,255,255,.28); }
}
