/* Static overrides to emulate Joomla modules in JSN Epic PRO */
.simpo-hero{position:relative;overflow:hidden;height:250px;border-radius:6px}
.simpo-hero .simpo-slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;animation:simpoFade 32s infinite}
.simpo-hero .simpo-slide:nth-child(1){animation-delay:0s}
.simpo-hero .simpo-slide:nth-child(2){animation-delay:4s}
.simpo-hero .simpo-slide:nth-child(3){animation-delay:8s}
.simpo-hero .simpo-slide:nth-child(4){animation-delay:12s}
.simpo-hero .simpo-slide:nth-child(5){animation-delay:16s}
.simpo-hero .simpo-slide:nth-child(6){animation-delay:20s}
.simpo-hero .simpo-slide:nth-child(7){animation-delay:24s}
.simpo-hero .simpo-slide:nth-child(8){animation-delay:28s}
@keyframes simpoFade{0%{opacity:0} 6%{opacity:1} 22%{opacity:1} 28%{opacity:0} 100%{opacity:0}}
.visually-hidden{position:absolute!important;height:1px;width:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}
.simpo-search input{max-width:260px}

/* Fallback: force main menu horizontal + dropdowns (works even if template menu css is missing) */
#jsn-pos-mainmenu > ul.nav.menu.nav-pills{
  display:flex;
  flex-wrap:wrap;
  padding:0;
  margin:0;
  list-style:none;
}
#jsn-pos-mainmenu > ul.nav.menu.nav-pills > li{
  position:relative;
  margin:0;
}
#jsn-pos-mainmenu > ul.nav.menu.nav-pills > li > a{
  display:block;
  padding:12px 14px;
  text-decoration:none;
}
#jsn-pos-mainmenu ul.nav-child{
  display:none;
  position:absolute;
  left:0;
  top:100%;
  min-width:220px;
  margin:0;
  padding:6px 0;
  list-style:none;
  z-index:9999;
}
#jsn-pos-mainmenu li:hover > ul.nav-child{display:block;}
#jsn-pos-mainmenu ul.nav-child li{position:relative;}
#jsn-pos-mainmenu ul.nav-child li a{
  display:block;
  padding:8px 14px;
  text-decoration:none;
  white-space:nowrap;
}
#jsn-pos-mainmenu ul.nav-child ul.nav-child{
  left:100%;
  top:0;
}

/* ==========================================================
   FIX dropdown trasparenti: forza sfondo pieno come barra menu
   ========================================================== */

/* Dropdown Joomla (nav-child) */
#jsn-pos-mainmenu ul.nav-child,
#jsn-pos-mainmenu ul.nav-child li,
#jsn-pos-mainmenu ul.nav-child li > a {
  background: #284d73 !important;
  background-image: none !important;
}

/* Hover dropdown */
#jsn-pos-mainmenu ul.nav-child li > a:hover,
#jsn-pos-mainmenu ul.nav-child li > a:focus {
  background: #1f3d59 !important;
  background-image: none !important;
}

/* Megamenu Epic (se presente) */
#jsn-menu .jsn-megamenu ul,
#jsn-menu .jsn-megamenu li,
#jsn-menu .jsn-megamenu a {
  background: #284d73 !important;
  background-image: none !important;
}
#jsn-menu .jsn-megamenu a:hover,
#jsn-menu .jsn-megamenu a:focus {
  background: #1f3d59 !important;
  background-image: none !important;
}

/* Evita trasparenze dovute a overlay */
#jsn-pos-mainmenu ul.nav-child {
  opacity: 1 !important;
}
/* =========================================================
   FORCE dropdown backgrounds (match main menu bar - dark gray)
   ========================================================= */

/* Base dropdown containers */
#jsn-menu #jsn-pos-mainmenu ul.nav.menu.nav-pills > li > ul.nav-child,
#jsn-menu #jsn-pos-mainmenu ul.nav.menu.nav-pills > li > ul.nav-child li,
#jsn-menu #jsn-pos-mainmenu ul.nav.menu.nav-pills > li > ul.nav-child li > a,
#jsn-menu #jsn-pos-mainmenu ul.nav.menu.nav-pills > li > ul.nav-child li > span,
#jsn-menu #jsn-pos-mainmenu ul.nav.menu.nav-pills > li > ul.nav-child li > strong {
  background-color: #3b3b3b !important;
  background-image: none !important;
  filter: none !important;
  opacity: 1 !important;
}

/* Nested dropdowns (3rd+ level) */
#jsn-menu #jsn-pos-mainmenu ul.nav.menu.nav-pills ul.nav-child ul.nav-child,
#jsn-menu #jsn-pos-mainmenu ul.nav.menu.nav-pills ul.nav-child ul.nav-child li,
#jsn-menu #jsn-pos-mainmenu ul.nav.menu.nav-pills ul.nav-child ul.nav-child li > a {
  background-color: #3b3b3b !important;
  background-image: none !important;
  opacity: 1 !important;
}

/* Link text + hover */
#jsn-menu #jsn-pos-mainmenu ul.nav.menu.nav-pills ul.nav-child li > a {
  color: #ffffff !important;
  text-decoration: none;
}
#jsn-menu #jsn-pos-mainmenu ul.nav.menu.nav-pills ul.nav-child li > a:hover,
#jsn-menu #jsn-pos-mainmenu ul.nav.menu.nav-pills ul.nav-child li > a:focus {
  background-color: #2f2f2f !important;
  color: #ffffff !important;
}

/* Optional separators */
#jsn-menu #jsn-pos-mainmenu ul.nav.menu.nav-pills ul.nav-child li {
  border-bottom: 1px solid rgba(255,255,255,0.10) !important;
}

/* Epic megamenu fallback selectors (if template applies them) */
#jsn-menu .jsn-megamenu ul,
#jsn-menu .jsn-megamenu li,
#jsn-menu .jsn-megamenu li > a,
#jsn-menu .jsn-megamenu .jsn-submenu {
  background-color: #3b3b3b !important;
  background-image: none !important;
  opacity: 1 !important;
}
#jsn-menu .jsn-megamenu li > a:hover,
#jsn-menu .jsn-megamenu li > a:focus {
  background-color: #2f2f2f !important;
  color: #ffffff !important;
}

/* =========================
   FORM "Richiesta Informazioni"
   ========================= */

.simpo-contact-form {
  max-width: 760px;
  margin: 0 auto;              /* centra il blocco */
  padding: 18px 22px;
  background: #ffffff;
  border: 1px solid rgba(0,0,0,0.12);
  border-radius: 8px;
  box-shadow: 0 6px 18px rgba(0,0,0,0.08);
}

.simpo-contact-form h1 {
  margin: 0 0 14px 0;
  font-size: 26px;
  line-height: 1.2;
  text-align: center;
}

/* Griglia 2 colonne per i campi "corti" */
.simpo-form {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px 16px;
}

/* Ogni riga */
.simpo-form-row {
  margin: 0;
}

/* Messaggio su tutta la larghezza */
.simpo-form-row.simpo-full {
  grid-column: 1 / -1;
}

/* Label */
.simpo-form-row label {
  display: block;
  font-weight: 600;
  margin-bottom: 6px;
  color: #222;
}

/* Input / textarea */
.simpo-form-row input,
.simpo-form-row textarea {
  width: 100%;
  box-sizing: border-box;
  padding: 10px 12px;
  border: 1px solid rgba(0,0,0,0.22);
  border-radius: 6px;
  background: #fff;
  outline: none;
  font-size: 14px;
}

/* Focus */
.simpo-form-row input:focus,
.simpo-form-row textarea:focus {
  border-color: rgba(40,77,115,0.75);
  box-shadow: 0 0 0 3px rgba(40,77,115,0.18);
}

/* Pulsante */
.simpo-form-actions {
  grid-column: 1 / -1;
  text-align: center;
  margin-top: 6px;
}

.simpo-form-actions button {
  display: inline-block;
  padding: 10px 18px;
  border: 0;
  border-radius: 6px;
  background: #284d73;
  color: #fff;
  font-weight: 700;
  cursor: pointer;
}

.simpo-form-actions button:hover {
  background: #1f3d59;
}

/* Errore */
.simpo-form-error {
  grid-column: 1 / -1;
  text-align: center;
  margin: 8px 0 0 0;
  color: #b00020;
  font-weight: 700;
}

/* Mobile: torna 1 colonna */
@media (max-width: 700px) {
  .simpo-form {
    grid-template-columns: 1fr;
  }
}