.nutri-link{background:none;border:0;padding:0;cursor:pointer;text-decoration:underline;font:inherit}
dialog.nutri-dialog{width:min(720px,90vw);max-height:min(80vh,90svh);border:0;border-radius:12px;padding:0;overflow:hidden}
.nutri-dialog::backdrop{background:rgba(0,0,0,.5)}
.nutri-dialog__head{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #eee}
.nutri-dialog__title{margin:0;font-size:1.1rem;line-height:1.3}
.nutri-dialog__close{background:none;border:0;font-size:1.6rem;line-height:1;cursor:pointer}
.nutri-dialog__body{padding:16px 20px;max-height:min(70vh,80svh);overflow:auto}
@media (max-width:576px){dialog.nutri-dialog{width:100vw;max-height:100vh;border-radius:0}}
/* Ne masque QUE la nutriscore d'origine (avec l'attribut hidden) */
.nutriscore[hidden] { display: none !important; }

/* Bonus: pour le fallback <dialog open> sur vieux navigateurs */
dialog[open].nutri-dialog { display: block; }

.nutri-trigger-wrapper #open-nutri{font-weight: 800; color:#666;}
.content_info {   margin-bottom: 10px !important;}
.pos_title { padding-top: 51px; }
.menu-title { font-weight: 600; font-size: 20px; }
/* Megamenu : titre et liens sous .menu-title en noir (le theme met #7d7d7d) */
.menu-title, .menu-title a, .menu-title ~ p, .menu-title ~ a, .menu-title ~ * a { color: #000 !important; }
/* Popup age (psagechecker) : hauteur auto au lieu de la hauteur fixe du BO, centre, scroll si ecran trop petit */
#psagechecker_block #psagechecker-lightbox.lightbox {
    height: auto !important;
    max-height: 90vh;
    max-width: 92vw;
    top: 50%;
    transform: translate(-50%, -50%);
    display: flex;
    flex-direction: column;
}
#psagechecker_block #psagechecker-lightbox .lightbox-content {
    max-height: 90vh;
    overflow-y: auto;
    padding: 30px 20px;
}
#psagechecker_block #psagechecker-lightbox .lightbox-content > div { height: auto !important; }
@media (max-width: 576px) {
    #psagechecker_block #psagechecker-lightbox .lightbox-content { padding: 20px 15px; }
    #psagechecker_block #psagechecker-lightbox .logo_age_verify img { max-width: 120px; height: auto; }
    #psagechecker_block #psagechecker-lightbox .age_verify h1 { font-size: 20px !important; line-height: 1.2; }
    #psagechecker_block #psagechecker-lightbox .custom_msg_age_verify p { font-size: 13px; line-height: 1.5; }
    #psagechecker_block #psagechecker-lightbox .age_verify_input { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: center; gap: 8px; }
    #psagechecker_block #psagechecker-lightbox .age_verify_input input { flex: 1 1 0; min-width: 0; width: auto !important; max-width: 90px; margin: 0 !important; }
    #psagechecker_block #psagechecker-lightbox .age_verify_input br { display: none; }
    #psagechecker_block #psagechecker-lightbox .age_verify_input button { flex: 0 0 100%; margin-top: 12px; }
}
/* Selecteur de langue (module fcboutique) : juste a gauche de la recherche */
.col-top #_desktop_language_selector { float: right; margin: 4px 28px 0 0; }
/* Vitrine EN : pas de remises quantite */
body.lang-en .product-discounts { display: none !important; }