/* ELIOS CARE Theme - Versione Family */

body {
  font-family: "Segoe UI", Tahoma, sans-serif;
  background-color: #f5f5f5;
  color: #333;
  line-height: 1.6;
  margin: 0;
  padding: 0;
}

/* Header top (logo + area riservata + lingue) */
.header-top {
  background-color: #004080;
  color: white;
  height: 80px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 2rem;
}

/* Logo ELIOS CARE */
.elios-logo {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  line-height: 1.1;
}
.elios-logo div {
  display: flex;
  align-items: center;
}
.elios-logo .elios {
  color: #f7941d;
  font-weight: 700;
  font-size: 2rem;
  margin-right: 0.2rem;
}
.elios-logo .care {
  color: #0059a3;
  font-weight: 700;
  font-size: 2rem;
}
.elios-logo .sottotitolo {
  font-size: 1rem;
  color: #ffffff;
  font-weight: 400;
  margin-top: 0.2rem;
  margin-left: 0.05rem;
}



/* Brand: MEDIA FAMILY + lead */
/* Mobile: compatta il testo */
@media (max-width: 576px){
  }
/* Pulsanti area riservata e modulistica */
.header-buttons {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.btn-outline-orange {
  color: #f7941d;
  border: 2px solid #f7941d;
  background-color: white;
  font-weight: 600;
  padding: 0.5rem 1.2rem;
  border-radius: 1.5rem;
  font-size: 1rem;
  display: flex;
  align-items: center;
  gap: 0.4rem;
}
.btn-outline-orange:hover {
  background-color: #fff3e0;
  color: #e68110;
  border-color: #e68110;
}

/* Lingue */
.language-selector {
  background-color: #0059a3;
  border: 1px solid #ffffff;
  border-radius: 1.5rem;
  padding: 0.4rem 0.8rem;
  color: white;
  font-weight: 500;
  display: flex;
  align-items: center;
  gap: 0.4rem;
}

/* Navbar secondaria (menu principale) */
.navbar-second {
  background-color: #212529;
  height: 64px;
  display: flex;
  align-items: center;
  padding: 0 2rem;
}
.navbar-second .nav-link {
  color: #ffffff !important;
  font-weight: 500;
  margin-right: 1.2rem;
  font-size: 1.05rem;
}
.navbar-second .nav-link:hover {
  text-decoration: underline;
  color: #f7941d !important;
}

/* Card e container */
.container {
  max-width: 960px;
  margin: auto;
  padding: 2rem 1rem;
}
.elios-card {
  background-color: #fff;
  border-radius: 1rem;
  box-shadow: 0 4px 12px rgba(0,0,0,0.08);
  padding: 2rem;
  transition: all 0.3s ease;
}
.elios-card:hover {
  box-shadow: 0 6px 20px rgba(0,0,0,0.15);
  transform: translateY(-2px);
}
.elios-card h5 {
  margin-bottom: 0.8rem;
  font-weight: 600;
}

/* Pulsante pieno */
.btn-primary {
  background-color: #f7941d;
  color: white;
  border: none;
  font-weight: 600;
  border-radius: 0.6rem;
  padding: 0.6rem 1.2rem;
}
.btn-primary:hover {
  background-color: #e68110;
  color: white;
}

/* Pulsante contorno */
.btn-outline-primary {
  background-color: #ffffff;
  color: #f7941d;
  border: 2px solid #f7941d;
  font-weight: 600;
  border-radius: 0.6rem;
  padding: 0.6rem 1.2rem;
}
.btn-outline-primary:hover {
  background-color: #fff3e0;
  color: #e68110;
  border-color: #e68110;
}

/* Pulsante chiaro */
.btn-elios-light {
  background-color: #ffffff;
  color: #f7941d;
  font-weight: 600;
  border-radius: 0.75rem;
  padding: 0.6rem 1.2rem;
  border: none;
  box-shadow: 0 3px 8px rgba(0,0,0,0.1);
  transition: all 0.2s ease-in-out;
}
.btn-elios-light i {
  margin-left: 0.4rem;
}
.btn-elios-light:hover {
  background-color: #fff3e5;
  color: #e68110;
  text-decoration: none;
}

/* Chatbot */
.chatbot-btn {
  position: fixed;
  bottom: 20px;
  right: 20px;
  background-color: #f7941d;
  color: #fff;
  border-radius: 50%;
  padding: 0.8rem 1rem;
  font-size: 1.5rem;
  text-decoration: none;
  z-index: 999;
  box-shadow: 0 3px 10px rgba(0,0,0,0.3);
}
.chatbot-btn:hover {
  background-color: #e68110;
}

/* Responsive */
@media (max-width: 768px) {
  .elios-logo .elios,
  .elios-logo .care {
    font-size: 1.4rem;
  }
  .elios-logo .sottotitolo {
    font-size: 0.85rem;
  }
  .navbar-second {
    flex-direction: column;
    height: auto;
    padding: 1rem;
  }
}
/* Submenu a comparsa laterale nei dropdown (es. ABA) */
.dropdown-submenu {
  position: relative;
}

.dropdown-submenu > .dropdown-menu {
  top: 0;
  left: 100%;
  margin-top: -1px;
  border-radius: 0.5rem;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  display: none;
}

.dropdown-submenu:hover > .dropdown-menu {
  display: block;
}

/* Fix apertura submenu ABA a lato */
.dropdown-submenu {
  position: relative;
}

.dropdown-submenu > .dropdown-menu {
  top: 0;
  left: 100%;
  margin-top: 0;
  margin-left: 0.2rem;
  display: none;
  position: absolute;
}

.dropdown-submenu:hover > .dropdown-menu {
  display: block;
}

/* Pulsante giallo grande per comunicazioni e moduli */
.btn-giallo {
  background-color: #f7941d; /* arancione giallo ELIOS */
  color: white;
  font-weight: 700;
  border: none;
  border-radius: 0.6rem;
  padding: 0.75rem 1.5rem;
  font-size: 1.15rem;
  text-align: left;
  box-shadow: 0 4px 8px rgba(247, 148, 29, 0.4);
  transition: background-color 0.3s ease, box-shadow 0.3s ease;
  display: block;
  width: 100%;
}

.btn-giallo:hover, .btn-giallo:focus {
  background-color: #e68110; /* arancione più scuro */
  box-shadow: 0 6px 15px rgba(230, 129, 16, 0.7);
  color: white;
  text-decoration: none;
  outline: none;
  cursor: pointer;
}

/* --- NAVBAR: non andare a capo, tieni tutto su una riga --- */
header .navbar-nav {
  flex-wrap: nowrap;         /* Bootstrap 5 */
  white-space: nowrap;
  gap: .25rem;
  max-width: 100%;
  overflow-x: auto;          /* se non ci sta, scroll orizzontale */
  -webkit-overflow-scrolling: touch;
  scrollbar-width: thin;
}

/* Link più compatti, così ci sta tutto */
header .navbar-nav .nav-link {
  padding: .5rem .6rem;
  line-height: 1.2;
}

/* Tieni la navbar sopra a eventuali barre sovrapposte */
header, header .navbar {
  position: relative;
  z-index: 1100;   /* > di banner/toolbar generici */
}

/* Se hai un banner fisso scuro che passa sopra, abbassa la sua priorità */
.banner-top, .topbar, .site-announcement {
  position: relative;
  z-index: 100;    /* più basso della navbar */
}

/* Per evitare che il CTA giallo intersechi il menu */
.cta-focus, .cta-btn-focus {
  position: relative;
  z-index: 1050;
}

/* Navbar principale */
.main-navbar {
  position: sticky;          /* resta in alto durante lo scroll */
  top: 0;
  z-index: 1200;             /* sopra CTA e banner */
  background-color: #212529; /* scuro come bootstrap bg-dark */
  min-height: 64px;          /* altezza minima in px, non cm */
}

.main-navbar .navbar-nav {
  flex-wrap: nowrap;         /* impedisce l'andare a capo */
  white-space: nowrap;
  gap: .75rem;
  overflow-x: auto;          /* scroll orizzontale se troppe voci */
  -webkit-overflow-scrolling: touch;
  scrollbar-width: thin;
}

.main-navbar .nav-link {
  padding: .5rem .6rem;
  line-height: 1.2;
}

/* CTA giallo */
.cta-focus {
  position: relative;
  z-index: 100;              /* più basso della navbar */
  display: inline-block;
}

/* Header top: mantieni posizione del logo, riduci solo spazio sotto */
.bg-header-top {
  padding-top: 8px;      /* margine sopra */
  padding-bottom: 4px;    /* margine sotto (ridotto) */
}

/* ===== ELIOS HOTFIX LAYOUT ===== */
:root{
  --header-top-h: 56px;  /* ex 2.8cm */
  --navbar-h:    56px;   /* ex 1.8cm */
}

/* Header top (in alto) */
.bg-header-top{
  position: sticky;      /* resta in alto durante lo scroll */
  top: 0;
  z-index: 1040;         /* sopra la navbar */
  min-height: var(--header-top-h) !important;
  height: auto !important;
}

/* Navbar principale */
.navbar{
  position: sticky;      /* sotto l'header top */
  top: var(--header-top-h);
  z-index: 1030;
  min-height: var(--navbar-h);
  height: auto;          /* evita forzature */
}

/* Riserva spazio per header + navbar */
html, body{
  scroll-padding-top: calc(var(--header-top-h) + var(--navbar-h));
}
body{
  padding-top: calc(var(--header-top-h) + var(--navbar-h));
}

/* Multi-level dropdown (submenu) */
.dropdown-submenu{ position: relative; }
.dropdown-submenu > .dropdown-menu{
  top: 0;
  left: 100%;
  margin-left: .1rem;
}

/* Evita testi schiacciati nella top bar */
.bg-header-top .btn,
.bg-header-top .language-selector{ line-height: 1.2; }

/* Spaziature più sicure su schermi piccoli */
@media (max-width: 991.98px){
  :root{ --header-top-h: 64px; --navbar-h: 56px; }
  .bg-header-top{ padding-top: .25rem; padding-bottom: .25rem; }
}
 /* ===== end hotfix ===== */

/* --- FIX header+navbar senza inline cm --- */
:root{
  --header-top-h: 56px;   /* ex 2.8cm */
  --navbar-h:     56px;   /* ex 1.8cm */
}

/* Barra in alto con logo/tasti */
.bg-header-top{
  min-height: var(--header-top-h);
  display: flex;
  align-items: center;
  position: sticky;
  top: 0;
  z-index: 1040;
}

/* Navbar principale sotto l’header */
.navbar{
  min-height: var(--navbar-h);
  position: sticky;
  top: var(--header-top-h);
  z-index: 1030;
}

/* Evita che i contenuti finiscano sotto le barre sticky */
body{
  padding-top: calc(var(--header-top-h) + var(--navbar-h));
}

/* Submenu laterale correttamente posizionato */
.dropdown-submenu{ position: relative; }
.dropdown-submenu > .dropdown-menu{
  top: 0; left: 100%; margin-left: .1rem;
}

/* Responsive: abbassa un filo le altezze su schermi piccoli */
@media (max-width: 991.98px){
  :root{ --header-top-h: 64px; --navbar-h: 56px; }
}

/* HOTFIX FINAL: snellisci header top (safe + chiuso) */
.bg-header-top{
  padding-top: .25rem !important;
  padding-bottom: .25rem !important;
  min-height: var(--header-top-h) !important;
  height: auto !important;
}
.bg-header-top *{
  line-height: 1.15 !important;
}

/* FIX DEFINITIVO header-top: testo logo troppo alto */
.bg-header-top{
  align-items: flex-start !important;
  padding-top: .5rem !important;
  padding-bottom: .5rem !important;
}

/* comprime il testo del logo */
.bg-header-top *{
  line-height: 1.05 !important;
}

/* evita crescita verticale */
.bg-header-top{
  overflow: hidden;
}


/* riduci “altezza testo” del logo e degli elementi */
.bg-header-top *{
  line-height: 1.05 !important;
}

/* comprimi bottoni nella fascia top */
.bg-header-top .btn{
  padding-top: .25rem !important;
  padding-bottom: .25rem !important;
}

/* CTA grande: se sta nella fascia top, riducila */
.bg-header-top .btn.btn-lg{
  padding-top: .35rem !important;
  padding-bottom: .35rem !important;
  font-size: 1rem !important;
}


/* HOME: compatta il blocco CTA subito dopo l'header-top */
.bg-header-top + .text-center.mt-5{
  margin-top: 1rem !important;
  margin-bottom: .5rem !important;
}
.bg-header-top + .text-center .btn.btn-lg{
  padding-top: .5rem !important;
  padding-bottom: .5rem !important;
  font-size: 1rem !important;
}



/* HEADER TOP: compatta logo + bottoni */
.bg-header-top{
  padding-top: .25rem !important;
  padding-bottom: .25rem !important;
  align-items: flex-start !important;
}
.bg-header-top .elios-logo,
.bg-header-top .sottotitolo{
  line-height: 1.05 !important;
}
.bg-header-top .sottotitolo{
  font-size: .85rem !important;
}



/* FIX TOP SPACE: header/navbar NON fixed -> niente padding-top sul body */
body{
  padding-top: 0 !important;
}



/* se il blocco hero usa py-5/my-5 (Bootstrap classiche) */
nav.navbar + .container .py-5,
nav.navbar + .container-fluid .py-5{
  padding-top: 1.25rem !important;
  padding-bottom: 1.25rem !important;
}
nav.navbar + .container .my-5,
nav.navbar + .container-fluid .my-5{
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* headline: riduci margini */
nav.navbar + .container h1.display-5,
nav.navbar + .container-fluid h1.display-5{
  margin-top: 0 !important;
  margin-bottom: .75rem !important; /* sostituisce mb-3 */
}


/* HOME HERO: riduci spazio tra navbar e headline */
nav.navbar + .container,
nav.navbar + .container-fluid{
  padding-top: 1rem !important;
  margin-top: 0 !important;
}
nav.navbar + .container .py-5,
nav.navbar + .container-fluid .py-5{
  padding-top: 1.25rem !important;
  padding-bottom: 1.25rem !important;
}
nav.navbar + .container .my-5,
nav.navbar + .container-fluid .my-5{
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
nav.navbar + .container h1.display-5,
nav.navbar + .container-fluid h1.display-5{
  margin-top: 0 !important;
  margin-bottom: .75rem !important;
}

/* ===== Brand header: MEDIA FAMILY + lead line (readability on light bg) ===== */
/* ======================================================================== */


/* ===== Brand header: MEDIA FAMILY + lead line (on light header bg) ===== */
.bg-header-top .brand-kicker{
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
  font-size: 2rem;              /* grande quanto ELIOS */
  line-height: 1;
  margin-bottom: .15rem;
  color: #0059a3 !important;    /* CARE blue */
}

.bg-header-top .brand-lead{
  font-size: .95rem;
  line-height: 1.25;
  margin-top: .35rem;
  max-width: 520px;
  color: #f7941d !important;    /* ELIOS orange */
  opacity: .95;
}
/* ==================================================================== */


/* ===== Brand: logo piccolo + mark (®) ===== */
.bg-header-top .elios-logo{
  line-height: 1.05;
}

/* dimezza circa ELIOS/CARE rispetto al kicker MEDIA FAMILY */
.bg-header-top .elios-logo .elios,
.bg-header-top .elios-logo .care{
  font-size: 1.25rem !important;   /* era ~2rem */
}

/* marchio "non libero" in stile superscript */
.bg-header-top .brand-mark{
  font-size: .60em;
  vertical-align: super;
  margin-left: .08rem;
  color: #0059a3;                 /* blu CARE */
  font-weight: 700;
  opacity: .95;
}
/* ========================================= */


/* ===== Brand override (final): MEDIA FAMILY top, ELIOS CARE smaller + ® ===== */

/* anti-sorprese: niente scale/transform */
.bg-header-top .elios-logo{
  transform: none !important;
  zoom: 1 !important;
  line-height: 1.05 !important;
}

/* ELIOS/CARE più piccolo (molto evidente) */
.bg-header-top .elios-logo .elios,
.bg-header-top .elios-logo .care{
  font-size: 1.05rem !important;
  line-height: 1.0 !important;
}

/* CARE + ® sulla stessa riga */
.bg-header-top .elios-logo .care-line{
  display: inline-flex !important;
  align-items: flex-start !important;
  gap: .06rem !important;
}

/* ® come superscript "da marchio" */
.bg-header-top .elios-logo .brand-mark{
  font-size: .62em !important;
  line-height: 1 !important;
  vertical-align: super !important;
  margin-left: .08rem !important;
  color: #0059a3 !important;
  font-weight: 800 !important;
  opacity: .95 !important;
}

/* ======================================================================== */


/* ===== Brand hotfix: force smaller logo via inherit (wins over old !important) ===== */
.bg-header-top .elios-logo{
  font-size: 1.05rem !important;
  line-height: 1.05 !important;
}
.bg-header-top .elios-logo .elios,
.bg-header-top .elios-logo .care{
  font-size: inherit !important;
}
/* ============================================================================== */


/* ===== Brand FORCE (spans): make ELIOS/CARE smaller no matter what ===== */
.bg-header-top .elios-logo span.elios,
.bg-header-top .elios-logo span.care,
.bg-header-top .elios-logo .care-line span.care{
  font-size: 1.05rem !important;
  line-height: 1.0 !important;
}
/* keep MEDIA FAMILY big */
.bg-header-top .brand-kicker{
  font-size: 2rem !important;
}
/* ====================================================================== */

/* === NAVBAR READABILITY (AUTO) START === */
/* Migliora contrasto/leggibilità del menu su barra scura */
.navbar.bg-dark .nav-link,
.navbar.bg-dark .navbar-nav .nav-link {
  color: rgba(255,255,255,.92) !important;
  font-weight: 600;
  letter-spacing: .2px;
}

.navbar.bg-dark .nav-link:hover,
.navbar.bg-dark .nav-link:focus,
.navbar.bg-dark .navbar-nav .nav-link:hover,
.navbar.bg-dark .navbar-nav .nav-link:focus {
  color: #ffffff !important;
  text-decoration: none;
}

.navbar.bg-dark .nav-item .dropdown-toggle {
  color: rgba(255,255,255,.92) !important;
}

.navbar.bg-dark .nav-item .dropdown-toggle:hover,
.navbar.bg-dark .nav-item .dropdown-toggle:focus {
  color: #ffffff !important;
}

.navbar.bg-dark .navbar-nav .nav-link.active,
.navbar.bg-dark .navbar-nav .show > .nav-link {
  color: #ffffff !important;
  border-bottom: 2px solid rgba(255,255,255,.55);
}

.navbar.bg-dark .dropdown-menu {
  border-radius: 14px;
}

.navbar.bg-dark .dropdown-item {
  font-weight: 600;
}
/* === NAVBAR READABILITY (AUTO) END === */


/* ================================
   MENU READABILITY FIX
   ================================ */

.navbar-dark {
    background-color: #1f2326; /* nero morbido */
}

.navbar-dark .navbar-nav .nav-link {
    color: #e6e6e6;            /* testo chiaro */
    font-weight: 500;
    letter-spacing: 0.2px;
}

.navbar-dark .navbar-nav .nav-link:hover,
.navbar-dark .navbar-nav .nav-link:focus {
    color: #ffc107;            /* giallo ELIOS */
}

.navbar-dark .navbar-nav .nav-link.active {
    color: #ffc107;
    font-weight: 600;
}

/* Dropdown */
.navbar-dark .dropdown-menu {
    background-color: #ffffff;
    border-radius: 8px;
}

.navbar-dark .dropdown-item {
    color: #212529;
    font-weight: 500;
}

.navbar-dark .dropdown-item:hover {
    background-color: #f5f5f5;
    color: #000000;
}


/* ================================
   MENU READABILITY FIX v2 (robusto)
   ================================ */

/* barra menu (nera) */
nav.navbar{ background-color: transparent !important; }

/* link menu: più chiari e leggibili */
nav.navbar .navbar-nav .nav-link,
nav.navbar .navbar-nav .nav-link:visited {
  color: #e9e9e9 !important;
  font-weight: 600 !important;
  letter-spacing: 0.2px !important;
  opacity: 1 !important;
}

/* hover/focus: evidenza gialla coerente */
nav.navbar .navbar-nav .nav-link:hover,
nav.navbar .navbar-nav .nav-link:focus {
  color: #ffc107 !important;
}

/* dropdown: pulito e leggibile */
nav.navbar .dropdown-menu {
  background: #ffffff !important;
  border-radius: 10px !important;
}

nav.navbar .dropdown-item {
  color: #212529 !important;
  font-weight: 600 !important;
}

nav.navbar .dropdown-item:hover {
  background: #f5f5f5 !important;
  color: #000 !important;
}


/* NAVBAR VISIBILITY FIX (2026-01-05) */

/* Navbar (bg-dark): rendi SEMPRE visibili le voci */
.navbar.navbar-dark.bg-dark .navbar-nav .nav-link {
  color: rgba(255,255,255,.95) !important;
  opacity: 1 !important;
  font-weight: 600;
}
.navbar.navbar-dark.bg-dark .navbar-nav .nav-link:hover,
.navbar.navbar-dark.bg-dark .navbar-nav .nav-link:focus {
  color: #fff !important;
  opacity: 1 !important;
  text-decoration: underline;
}
/* Dropdown toggle caret visibile */
.navbar.navbar-dark.bg-dark .dropdown-toggle::after {
  filter: brightness(250%);
}



/* NAVBAR VARS OVERRIDE (2026-01-05)
   Override robusto: forza i colori via variabili Bootstrap */
.navbar.navbar-dark.bg-dark {
  --bs-navbar-color: rgba(255,255,255,.95) !important;
  --bs-navbar-hover-color: #ffffff !important;
  --bs-navbar-active-color: #ffffff !important;
  --bs-navbar-disabled-color: rgba(255,255,255,.60) !important;
  --bs-navbar-toggler-border-color: rgba(255,255,255,.35) !important;
}

/* Ridondanza: nel caso qualche regola metta opacity/colore */
.navbar.navbar-dark.bg-dark .navbar-nav .nav-link,
.navbar.navbar-dark.bg-dark .navbar-nav .nav-link * {
  opacity: 1 !important;
  color: rgba(255,255,255,.95) !important;
}
.navbar.navbar-dark.bg-dark .navbar-nav .nav-link:hover,
.navbar.navbar-dark.bg-dark .navbar-nav .nav-link:focus {
  color: #fff !important;
}




/* NAVBAR PARENT OPACITY OVERRIDE (2026-01-05)
   Se l'opacità è su UL/LI, i figli non possono correggerla.
   Qui forziamo opacity=1 sui contenitori della navbar. */
.navbar.navbar-dark.bg-dark,
.navbar.navbar-dark.bg-dark .container-fluid,
.navbar.navbar-dark.bg-dark .navbar-collapse,
.navbar.navbar-dark.bg-dark .navbar-nav,
.navbar.navbar-dark.bg-dark .navbar-nav > li,
.navbar.navbar-dark.bg-dark .navbar-nav > .nav-item,
.navbar.navbar-dark.bg-dark .navbar-nav > .nav-item.dropdown {
  opacity: 1 !important;
  filter: none !important;
}

/* Ridondanza: colori coerenti */
.navbar.navbar-dark.bg-dark .navbar-nav .nav-link {
  color: rgba(255,255,255,.95) !important;
}




/* NAVBAR FORCE LINKS (2026-01-05)
   Override ultra-specifico: forza la visibilità dei link nella barra nera */
nav.navbar.navbar-expand-lg.navbar-dark.bg-dark ul.navbar-nav > li > a.nav-link {
  color: #ffffff !important;
  opacity: 1 !important;
  filter: none !important;
  text-shadow: none !important;
}
nav.navbar.navbar-expand-lg.navbar-dark.bg-dark ul.navbar-nav > li > a.nav-link:hover,
nav.navbar.navbar-expand-lg.navbar-dark.bg-dark ul.navbar-nav > li > a.nav-link:focus {
  color: #ffffff !important;
}




/* NAV FINAL VISIBILITY FIX (2026-01-05)
   Obiettivo: barra nera sempre leggibile + dropdown sempre leggibili + caso speciale Supporto Genitoriale */

/* 1) TOP NAV (barra nera): forzo bianco pieno SEMPRE */
nav.navbar.navbar-dark.bg-dark ul.navbar-nav > li > a.nav-link,
nav.navbar.navbar-dark.bg-dark ul.navbar-nav > li > a.nav-link:visited {
  color: #ffffff !important;
  opacity: 1 !important;
  filter: none !important;
  text-shadow: 0 1px 1px rgba(0,0,0,.45) !important;
}
nav.navbar.navbar-dark.bg-dark ul.navbar-nav > li > a.nav-link:hover,
nav.navbar.navbar-dark.bg-dark ul.navbar-nav > li > a.nav-link:focus {
  color: #ffd24d !important; /* giallo più visibile del warning standard */
}

/* 2) DROPDOWN: testo scuro su fondo chiaro, sempre visibile */
nav.navbar .dropdown-menu {
  background: #ffffff !important;
}
nav.navbar .dropdown-menu .dropdown-item,
nav.navbar .dropdown-menu .dropdown-item:visited {
  color: #212529 !important;
  opacity: 1 !important;
}
nav.navbar .dropdown-menu .dropdown-item:hover,
nav.navbar .dropdown-menu .dropdown-item:focus {
  background: #f3f3f3 !important;
  color: #000 !important;
}

/* 3) Caso speciale: Supporto Genitoriale (è dentro dropdown ma deve essere "bottone" evidente) */
nav.navbar .dropdown-menu a.supporto-genitoriale {
  background: #ffc107 !important;
  border-radius: 10px !important;
  color: #212529 !important;
  border: 0 !important;
  display: block !important;
  margin: 6px 8px !important;
  padding: 10px 12px !important;
}
nav.navbar .dropdown-menu a.supporto-genitoriale:hover,
nav.navbar .dropdown-menu a.supporto-genitoriale:focus {
  background: #ffcd39 !important;
  color: #212529 !important;
}


/* ===== STICKY FIX (2026-01-06) =====
   Obiettivo: evitare che l'header top copra i contenuti durante lo scroll.
   Manteniamo sticky SOLO la navbar.
*/
.bg-header-top{
  position: static !important;
  top: auto !important;
}

.navbar{
  position: sticky !important;
  top: 0 !important;
  z-index: 1030 !important;
}

/* il contenuto non deve essere spinto in basso se header-top non è più sticky */
body{
  padding-top: 0 !important;
}

/* ===== KILL STICKY TOP (2026-01-06) =====
   Disattiva qualunque sticky/fixed in alto per evitare overlay sul contenuto.
*/
.bg-header-top,
.navbar,
.main-navbar{
  position: static !important;
  top: auto !important;
}

html, body{
  scroll-padding-top: 0 !important;
}

body{
  padding-top: 0 !important;
}

/* === MF OVERRIDE: kill navbar-second dark (STATICFILES) === */
/* Forza la vecchia barra (navbar-second) a non essere scura */
.navbar-second{
  background: #fff8ea !important;
  border-bottom: 1px solid rgba(0,0,0,.08) !important;
}
.navbar-second .nav-link,
.navbar-second .navbar-brand{
  color: #1f2d3a !important;
  font-weight: 600 !important;
}
.navbar-second .nav-link:hover{
  text-decoration: underline !important;
  text-decoration-thickness: 2px !important;
  text-underline-offset: 4px !important;
}
/* === end MF OVERRIDE (STATICFILES) === */

/* === MF OVERRIDE: force navbar-mf ivory (STATICFILES) === */
/* Forza SEMPRE la navbar MF (anche se qualche regola generica .navbar la rende scura) */
.navbar-mf,
.navbar.navbar-mf,
nav.navbar.navbar-mf{
  background: #fff8ea !important;
  border-bottom: 1px solid rgba(0,0,0,.08) !important;
}

.navbar-mf .navbar-brand,
.navbar-mf .nav-link{
  color: #1f2d3a !important;
}

.navbar-mf .nav-link.active{
  opacity: 1 !important;
}
/* === end MF OVERRIDE navbar-mf (STATICFILES) === */

/* === MF OVERRIDE: beat bg-dark + navbar-dark (STATICFILES) === */
/* Se nel markup resta bg-dark/navbar-dark, questa regola deve vincere COMUNQUE (anche su bootstrap .bg-dark !important) */
nav.navbar.navbar-mf.bg-dark,
nav.navbar.navbar-mf.navbar-dark,
nav.navbar.navbar-mf.navbar-dark.bg-dark,
.navbar-mf.bg-dark,
.navbar-mf.navbar-dark,
.navbar-mf.navbar-dark.bg-dark{
  background-color: #fff8ea !important;
  background: #fff8ea !important;
  border-bottom: 1px solid rgba(0,0,0,.08) !important;
}

nav.navbar.navbar-mf.bg-dark .nav-link,
nav.navbar.navbar-mf.navbar-dark .nav-link,
nav.navbar.navbar-mf.navbar-dark.bg-dark .nav-link,
nav.navbar.navbar-mf.bg-dark .navbar-brand,
nav.navbar.navbar-mf.navbar-dark .navbar-brand{
  color: #1f2d3a !important;
}
/* === end MF OVERRIDE: beat bg-dark + navbar-dark (STATICFILES) === */
