/* merfori.it — stili di sito (menu, modale, form, accessibilità). Gli stili di pagina sono inline. */
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0}
*,*::before,*::after{box-sizing:border-box}
img,video{max-width:100%}
.mf-skip{position:absolute;left:-9999px;top:8px;z-index:1000;background:#24557F;color:#fff;padding:12px 18px;font:600 15px 'Barlow','Helvetica Neue',sans-serif;text-decoration:none}
.mf-skip:focus{left:8px}
[hidden]{display:none !important}

/* menu a tendina (Soluzioni / Azienda) */
header{position:relative}
.mf-menu{z-index:50}
[data-menu-toggle].is-open{border-bottom-color:currentColor !important}
[data-menu-toggle] span[aria-hidden]{transition:transform .2s ease;display:inline-block}
[data-menu-toggle].is-open span[aria-hidden]{transform:rotate(180deg)}

/* modale scheda prodotto */
.mf-doc{position:fixed;inset:0;z-index:100}
body.mf-noscroll{overflow:hidden}

/* honeypot: fuori schermo, non display:none (alcuni bot lo rilevano) */
.mf-hp{position:absolute !important;left:-10000px !important;top:auto;width:1px;height:1px;overflow:hidden}

/* form */
#mf-form input:focus,#mf-form select:focus,#mf-form textarea:focus{outline:2px solid #8DB6DA;outline-offset:2px}
#mf-form .is-invalid{border-color:#F2B8B5 !important;box-shadow:0 0 0 1px #F2B8B5}
#mf-form button[disabled]{opacity:.6;cursor:progress}

/* selettore lingua */
.mf-lang a:hover{text-decoration:underline !important}

/* pin mappa nascosti dal filtro */
.mf-pin.is-off{display:none}

/* mobile */
@media (max-width:720px){
  header nav[aria-label]{gap:4px 18px !important}
  .mf-menu > div{padding:24px 20px 28px !important}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important}
}

/* menu principale: in EN/FR le voci sono più lunghe, spaziatura ridotta per restare su una riga */
html[lang="en"] header nav[aria-label] , html[lang="fr"] header nav[aria-label]{gap:4px 20px !important;letter-spacing:.08em !important}
html[lang="en"] header nav[aria-label] > a, html[lang="en"] header nav[aria-label] > button,
html[lang="fr"] header nav[aria-label] > a, html[lang="fr"] header nav[aria-label] > button{letter-spacing:.08em !important}
header > div > div:first-child{gap:16px 24px !important}
