/* SentryReply · menu.css — navigation partagée de l'accueil et des pages d'offre
   (/, /services, /launch-kit, /sites, /growth). Chargé après home.css.
   Bureau : pastille de liens + menu déroulant « Services » (bouton disclosure).
   Téléphone (≤ 900 px) : bouton Menu, panneau plein écran, piège de focus.
   Le comportement vit dans js/menu.js ; sans JS, les deux boutons sont masqués
   et le pied de page garde tous les liens.                                   */

html{scroll-padding-top:var(--header-offset,100px)}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

/* ─── pastille bureau ───────────────────────────────────────────────────── */
.nav-links{align-items:center}
.nav-links a[aria-current="page"],.nav-links a.is-section{color:var(--text);background:var(--panel-2)}
.nav-sep{width:1px;height:18px;background:var(--hair-2);margin:0 4px;flex:none}
.nav-dd{position:relative;display:flex;align-items:center}
.nav-dd>a{padding-right:6px!important}
.nav-dd-btn{display:inline-grid;place-items:center;width:28px;height:28px;margin-left:-2px;border-radius:999px;color:var(--text-2);transition:color .2s,background .2s}
.nav-dd-btn:hover,.nav-dd-btn[aria-expanded="true"]{color:var(--text);background:var(--panel-2)}
.nav-dd-btn svg{width:12px;height:12px;transition:transform .3s var(--ease-out)}
.nav-dd-btn[aria-expanded="true"] svg{transform:rotate(180deg)}
html:not(.js) .nav-dd-btn{display:none}
.nav-dd-menu{position:absolute;top:calc(100% + 12px);left:-6px;min-width:250px;list-style:none;display:grid;gap:2px;padding:8px;border-radius:16px;background:rgba(12,14,21,.96);border:1px solid var(--hair-2);box-shadow:0 30px 60px -20px rgba(0,0,0,.9),0 0 60px -30px rgba(75,107,255,.6);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.nav-dd-menu[hidden]{display:none}
.nav-dd-menu a{display:flex!important;align-items:baseline;gap:12px;padding:10px 12px!important;border-radius:10px!important;font-size:.92rem;color:var(--text-2)}
.nav-dd-menu a:hover,.nav-dd-menu a:focus-visible{color:var(--text);background:var(--panel-2)}
.nav-dd-menu a[aria-current="page"]{color:var(--text);background:rgba(75,107,255,.14)}
.nav-dd-menu .mono{font-size:.72rem;color:var(--cobalt-2);letter-spacing:.06em}
.nav-dd-menu .dd-all{margin-top:4px;padding-top:6px;border-top:1px solid var(--hair)}

/* ─── bouton Menu (téléphone) ───────────────────────────────────────────── */
.nav-end{display:flex;align-items:center;gap:8px;flex:none}
.menu-btn{display:none;align-items:center;justify-content:center;gap:9px;height:44px;min-width:44px;padding:0 14px 0 12px;border-radius:999px;font-size:.9rem;font-weight:500;color:var(--text);box-shadow:0 0 0 1px var(--hair-2) inset;background:rgba(255,255,255,.03)}
.menu-btn:hover{background:var(--panel-2)}
.menu-ic{position:relative;width:16px;height:10px}
.menu-ic i{position:absolute;left:0;right:0;height:1.6px;border-radius:2px;background:currentColor;transition:transform .3s var(--ease-out),top .3s var(--ease-out)}
.menu-ic i:nth-child(1){top:0}
.menu-ic i:nth-child(2){top:8.4px}
.menu-btn[aria-expanded="true"] .menu-ic i:nth-child(1){top:4.2px;transform:rotate(45deg)}
.menu-btn[aria-expanded="true"] .menu-ic i:nth-child(2){top:4.2px;transform:rotate(-45deg)}
@media (max-width:900px){.menu-ready .menu-btn{display:inline-flex}}
@media (max-width:520px){
  .menu-lbl{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .menu-btn{padding:0 12px}
  .nav-row{gap:8px}
  .nav-end{gap:6px}
  .nav .brand{gap:6px;font-size:.9rem;flex:none}
  .nav .brand img{width:24px;height:24px;flex:none}
  .nav .btn-sm{max-width:none;padding:10px;font-size:.8rem;white-space:nowrap}
}

/* ─── panneau (téléphone) ───────────────────────────────────────────────── */
.menu{position:fixed;inset:0;z-index:49;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:var(--header-offset,100px) 0 32px;background:radial-gradient(ellipse 90% 50% at 0% 0%,rgba(39,66,217,.35),transparent 70%),rgba(7,8,12,.97);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);opacity:0;transform:translateY(-8px);transition:opacity .28s var(--ease-out),transform .32s var(--ease-out)}
.menu.is-open{opacity:1;transform:none}
.menu[hidden]{display:none}
.menu-inner{display:grid;gap:30px;align-content:start;min-height:100%}
.menu-h{font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:10px}
.menu-offers{list-style:none;display:grid;gap:8px}
.menu-offers a{display:grid;grid-template-columns:34px 1fr;column-gap:10px;row-gap:2px;align-items:baseline;min-height:56px;padding:12px 16px;border-radius:14px;border:1px solid var(--hair);background:var(--panel)}
.menu-offers a:hover,.menu-offers a:focus-visible{border-color:rgba(124,147,255,.45);background:rgba(75,107,255,.08)}
.menu-offers a[aria-current="page"]{border-color:rgba(124,147,255,.5);background:rgba(75,107,255,.14)}
.menu-offers .mono{grid-row:span 2;font-size:.74rem;color:var(--cobalt-2);letter-spacing:.06em}
.menu-offers b{font-size:1.08rem;font-weight:700;letter-spacing:-.015em}
.menu-offers small{grid-column:2;font-family:var(--serif,Georgia,serif);font-style:italic;font-size:1.02rem;line-height:1.3;color:var(--text-2)}
.menu-offers .menu-unsure{border-style:dashed;background:transparent}
.menu-offers a[aria-current="page"] b::after{content:"You are here";margin-left:10px;font-family:var(--mono);font-size:.62rem;font-weight:400;letter-spacing:.08em;text-transform:uppercase;color:var(--cobalt-2);vertical-align:middle}
.menu-anchors{list-style:none;display:flex;flex-wrap:wrap;gap:8px}
.menu-anchors a{display:inline-flex;align-items:center;min-height:44px;padding:8px 14px;border-radius:999px;border:1px solid var(--hair-2);font-size:.92rem;color:var(--text-2)}
.menu-anchors a:hover,.menu-anchors a:focus-visible{color:var(--text);background:var(--panel-2)}
.menu-cta{justify-content:center;width:100%}
html.menu-open{overflow:hidden}
html.menu-open .nav{background:transparent;border-color:transparent;backdrop-filter:none;-webkit-backdrop-filter:none}
@media (min-width:901px){.menu{display:none!important}}

/* /apply (studio.css + dark.css) : l'en-tête garde sa mise en page, seul le bouton s'ajoute */
.nav .menu-btn{min-height:44px}
@media (max-width:900px){
  .menu-ready .nav-back{display:none}
  .nav .brand,.nav .btn-sm{min-height:44px}
  .menu-offers a[aria-current="page"] b::after{display:block;margin:4px 0 0}
}

/* ─── fil d'Ariane et échelon suivant (pages d'offre) ──────────────────── */
.crumbs-lite{display:flex;flex-wrap:wrap;gap:8px;list-style:none;font-family:var(--mono);font-size:.74rem;letter-spacing:.06em;color:var(--muted)}
.crumbs-lite li+li::before{content:"/";margin-right:8px;color:var(--hair-2)}
.crumbs-lite a{color:var(--text-2);text-decoration:underline;text-decoration-color:var(--hair-2);text-underline-offset:3px}
.crumbs-lite a:hover{color:var(--text)}
.rung-nav{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:stretch;padding-bottom:clamp(56px,8vw,96px)}
.rung-nav a{display:grid;gap:4px;padding:18px 20px;border-radius:var(--r);border:1px solid var(--hair);background:var(--panel);font-weight:700;font-size:1.05rem;letter-spacing:-.01em;transition:border-color .3s,background .3s}
.rung-nav a:hover{border-color:rgba(124,147,255,.45);background:rgba(75,107,255,.08)}
.rung-nav .mono{font-size:.68rem;font-weight:400;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.rung-nav .rn-next{text-align:right;border-color:rgba(124,147,255,.3)}
.rung-nav .rn-next .mono{color:var(--cobalt-2)}
.rung-nav .rn-all{align-content:center;text-align:center;font-weight:500;font-size:.92rem;color:var(--text-2)}
.rung-nav .rn-gap{display:block}
.final + .rung-nav{margin-top:calc(var(--section) * -1 + 32px)}
@media (max-width:640px){
  .rung-nav{grid-template-columns:1fr 1fr}
  .rung-nav .rn-all{grid-column:1 / -1;grid-row:2}
  .rung-nav .rn-gap{display:none}
  .rung-nav .rn-prev:has(~ .rn-gap){grid-column:1 / -1}
}

@media (prefers-reduced-motion:reduce){
  .menu{transform:none}
}

/* ─── Simulateur : lien visible dans la barre (ordinateur) et carte en tête du menu mobile (03/10) ─── */
.nav-calc{display:inline-flex;align-items:center;gap:6px;color:#C9D3FF !important;background:rgba(75,107,255,.14);border:1px solid rgba(124,147,255,.35);border-radius:999px}
.nav-calc .mono{color:var(--cobalt,#4B6BFF);font-weight:700}
.nav-calc:hover,.nav-calc[aria-current="page"]{background:rgba(75,107,255,.24);border-color:rgba(124,147,255,.6)}
.menu-calc{display:grid;gap:4px;margin:0 0 18px;padding:16px 18px;border:1px solid rgba(124,147,255,.45);border-radius:18px;background:radial-gradient(140% 160% at 0% 0%,rgba(75,107,255,.28),rgba(7,8,12,0) 65%),rgba(255,255,255,.03);color:#EEF1F6;text-decoration:none;box-shadow:0 16px 40px -24px rgba(75,107,255,.9)}
.menu-calc .mono{font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:#7C93FF}
.menu-calc b{font-size:1.15rem}
.menu-calc small{color:#B9C0CC}
.menu-calc:focus-visible{outline:2px solid #fff;outline-offset:2px}
