/* Burger mobile unifie (copie accueil - landing-nav.css) : meme mise en page partout */
@media (max-width: 1200px) {
    .menu-toggle { display: block !important; margin-left: auto; }
    .nav-desktop-cta { display: none !important; }
    .nav-links-inline { margin: 0; width: 100%; }

    .nav-menu-wrap {
        position: fixed !important;
        top: 70px;
        left: 0;
        right: 0;
        background: #ffffff !important;
        flex-direction: column;
        padding: 22px 22px 28px;
        box-shadow: 0 18px 40px rgba(0, 0, 0, 0.18) !important;
        transform: translateY(-120%) !important;
        opacity: 0 !important;
        visibility: hidden !important;
        transition: transform 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275), opacity 0.3s ease, visibility 0.3s;
        border-radius: 0 0 22px 22px;
        max-height: calc(100vh - 70px);
        overflow-y: auto;
        z-index: 999;
    }
    .nav-menu-wrap.active {
        transform: translateY(0) !important;
        opacity: 1 !important;
        visibility: visible !important;
    }

    .nav-links {
        position: static !important;
        top: auto !important;
        left: auto !important;
        right: auto !important;
        flex-direction: column !important;
        width: 100%;
        gap: 0 !important;
        align-items: stretch !important;
        background: transparent !important;
        box-shadow: none !important;
        transform: none !important;
        opacity: 1 !important;
        visibility: visible !important;
        padding: 0 !important;
    }
    .nav-links li {
        width: 100%;
        text-align: left;
        padding: 4px 0;
        border-bottom: 1px solid var(--light-gray);
        list-style: none;
    }
    .nav-links li:last-child { border-bottom: none; }
    .nav-links a {
        color: var(--primary) !important;
        display: block;
        padding: 13px 14px;
        border-radius: 10px;
        font-size: 1rem;
    }
    .nav-links a::after { display: none !important; }
    .nav-links a:hover { background: rgba(192, 57, 43, 0.08); color: #c0392b !important; }

    .nav-mobile-cta {
        display: flex !important;
        flex-direction: column;
        gap: 12px;
        margin-top: 20px;
    }
    .nav-mobile-cta .nav-cta-outline,
    .nav-mobile-cta .nav-cta-solid {
        text-align: center;
        padding: 13px 20px;
        font-size: 1rem;
        border-radius: 50px;
    }
    .nav-mobile-cta .nav-cta-outline {
        color: #c0392b !important;
        border: 2px solid #c0392b !important;
        background: transparent;
    }
    .nav-mobile-cta .nav-cta-solid { color: #ffffff !important; }

    /* Logo complet CERISES ACADEMY (cap + texte) aussi sur mobile/tablette */
    .ca-logo { margin-left: 0; font-size: 22px; }
    .ca-logo-cap { font-size: 26px; }
    /* landing.css force flex-wrap:wrap -> le logo trop large fait passer le
       hamburger à la ligne ; on empêche le wrap et on réduit le logo */
    .nav-bar-inner { flex-wrap: nowrap !important; }
}
@media (max-width: 600px) {
    .nav-menu-wrap { top: 66px; }
}

/* Anti-swipe horizontal mobile */
html, body { overflow-x: clip; }
.navbar { max-width: 100vw; }

/* Inscription : fond blanc autour du formulaire (hors contours) */
body.single-memberpressproduct .mp_wrapper{ background:#fff !important; border-radius:18px !important; padding:26px 18px !important; }

/* Icone panier navbar + badge */
.nav-cart{ position:relative; display:inline-flex; align-items:center; color:inherit; text-decoration:none; font-size:1.25rem; padding:6px 8px; }
.nav-cart-count{ display:none; place-items:center; min-width:20px; height:20px; padding:0 5px; border-radius:999px; background:#c0392b; color:#fff; font-size:.7rem; font-weight:700; position:absolute; top:-2px; right:-2px; }
/* Soulignement liens menu au survol (web) */
@media (hover:hover) and (min-width:1201px){
  .navbar .nav-links a{ position:relative; }
  .navbar .nav-links a::after{ content:''; position:absolute; left:0; bottom:-6px; height:2px; width:0; background:#c0392b; transition:width .3s ease; display:block !important; }
  .navbar .nav-links a:hover::after{ width:100% !important; }
}

/* Navbar sombre unifiee (comme accueil) : contraste garanti */
.navbar{ background:linear-gradient(135deg,#1a1a2e 0%,#16213e 50%,#0f3460 100%) !important; }
.navbar.scrolled{ background:linear-gradient(135deg,#1a1a2e 0%,#16213e 50%,#0f3460 100%) !important; box-shadow:0 5px 20px rgba(0,0,0,.25) !important; }
.navbar .nav-links a{ color:rgba(255,255,255,.92) !important; }
.navbar .ca-word-academy{ color:rgba(255,255,255,.85) !important; }
.navbar .nav-cta-outline{ color:#fff !important; border-color:rgba(255,255,255,.6) !important; background:transparent !important; }
.navbar .menu-toggle{ color:#fff !important; }
.navbar .nav-cart{ color:#fff !important; }

/* Bouton panier rouge navbar (desktop) */
.nav-cart-btn{ position:relative !important; }
.nav-cart-btn .nav-cart-count{ display:none; place-items:center; min-width:20px; height:20px; padding:0 5px; border-radius:999px; background:#fff !important; color:#c0392b !important; font-size:.7rem; font-weight:700; position:absolute; top:-6px; right:-6px; }
/* Ancien icone panier (retire si residu) */
a.nav-cart:not(.nav-cart-btn){ color:inherit; }

/* Navbar unifiee : logo cale a gauche, liens blancs une ligne */
.navbar .ca-logo{ margin-left:-26px !important; }
.navbar .nav-links a{ white-space:nowrap !important; color:#fff !important; }

/* UNIFORME : burger identique accueil partout (haute specificite) */
.navbar .ca-logo{ margin-left:-26px !important; }
.navbar #navLinks > li > a{ white-space:nowrap !important; color:#fff !important; }
@media (max-width:1200px){
  body .navbar #navMenuWrap ul.nav-links a{ padding:13px 14px !important; font-size:16px !important; color:#1a1a2e !important; }
  body.post-type-archive-mpcs-course .navbar #navMenuWrap ul.nav-links a{ padding:18px 14px !important; }
}

/* Panneau mobile ouvert : boutons lisibles (prioritaire sur navbar sombre) */
@media (max-width:1200px){
  .navbar .nav-menu-wrap .nav-mobile-cta .nav-cta-outline,
  .navbar .nav-menu-wrap .nav-mobile-cta button.nav-cta-outline{ color:#c0392b !important; border:2px solid #c0392b !important; background:transparent !important; }
  .navbar .nav-menu-wrap .nav-mobile-cta .nav-cta-solid{ color:#fff !important; background:#c0392b !important; border-color:#c0392b !important; }
}

/* Boutique : conteneur toujours pleine largeur centre */
.ca-shop{ width:100% !important; max-width:860px !important; margin-left:auto !important; margin-right:auto !important; box-sizing:border-box !important; display:block !important; }

/* Logo image navbar */
.ca-logo-img{ height:38px; width:auto; display:block; }
@media (max-width:1200px){ .ca-logo-img{ height:32px; } }

/* Pages légales/formulaires : padding mobile raisonnable */
@media (max-width:600px){
  .legal-page{ padding:30px 18px !important; }
}
