/*Definizioni Variabili*/
:root {
  /*COLORI*/
  --white: white;
  --black: black;
  --color-blu: #1d294b;
  --color-verdino: #edf8f8;
  --color-azzurro: #b2dedf;
  --color-azzurro-scuro: #30b6ba;
  --color-verde-acqua: #1f777a;
  --color-grigio: #e1e5f0;
}

a {
  color: black;
  font-weight: bold;
  text-decoration: none;
}

a:hover,
a:focus {
  text-decoration: underline !important;
}

a:focus,
button:focus,
img:focus {
  border: #1d294b medium solid !important;
}

/* div#map-home {
  z-index: 2 !important;
}

#map-home:not(.leaflet-container), #map-jfilter:not(.leaflet-container) {
  display: none !important;
} */

h2 {
  font-size: 2.125rem;
}

h3 {
  font-size: 1.625rem;
}

.bg-blu {
  background-color: var(--color-blu);
  border-color: var(--color-blu) !important;
}

/* con gli asset visibili va tolto #mod-custom133 e va tolta anche la sua posizione in backend */
.bg-azzurro {
  background-color: var(--color-azzurro);
  border-color: var(--color-azzurro);
}


#mod-custom133,
#mod-custom153 {
  padding: 1rem !important;
  width: calc(100vw - 8px);
  margin-left: calc(-50vw + 50%);
  background-color: var(--color-azzurro);
  border-color: var(--color-azzurro);
}

.bg-azzurro-scuro {
  background-color: var(--color-azzurro-scuro);
  border-color: var(--color-azzurro-scuro);
}

a.bg-azzurro-scuro:hover {
  background-color: var(--color-azzurro) !important;
}

.text-azzurro-scuro {
  color: var(--color-azzurro-scuro);
}

.bg-grigio {
  background-color: var(--color-grigio);
  border-color: var(--color-grigio);
}

/*HEADER*/
header {
  background-color: var(--white);
  width: 100%;
  position: sticky;
  top: 0;
  z-index: 1000;
  /* Assicurati che l'header sia sopra al resto del contenuto */
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  /* Aggiungi una leggera ombra per separarlo dal contenuto */
}

.logo {
  max-height: 40px;
}

body a {
  text-decoration: none;
}

header .sitename a {
  font-weight: bold;
}

header .sitename .titolo {
  color: var(--black);
}

header .lingua a,
header .home a,
header .search a {
  color: var(--white);
}

.navbar-toggler {
  border: none;
}

.navbar-toggler:focus {
  box-shadow: none;
}

.navbar-toggler sub {
  font-size: 10px;
  bottom: -1.7em;
  font-weight: bold;
}

/*OFFCANVAS*/
#header {
  background-color: var(--color-grigio);
  color: var(--white);
  width: 320px;
  right: 0;
  left: unset;
  transform: translateX(100%);
}

#header:not(.hiding) {
  transform: none;
}

header .btn-toggle {
  color: var(--white) !important;
  background: none;
  border: none;
  padding: 0;
  font-size: 1.5em;
}

.home-link i {
  display: block;
  margin-bottom: 5px;
}

.sub {
  font-size: 0.8rem;
}

/*SIDEBAR*/
.sidebar ul li ul {
  margin-left: 1em;
}

.sidebar ul li a:hover {
  background-color: var(--white);
  color: var(--color-grigio);
  cursor: pointer;
}

.sidebar .btn-toggle {
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
}

.sidebar .btn-toggle i {
  color: var(--white);
}

/* gallery homepage*/
.info-caption {
  position: absolute;
  top: 50%;
  left: 60%;
  transform: translateY(-50%);
}

.ratio-custom {
  --bs-aspect-ratio: 33.974%;
}

/* asset homepage */
.freccia {
  position: relative;
  top: 11px;
  left: 93%;
  width: fit-content;
}

.t-m2 {
  position: relative;
  top: -2.1625rem;
  margin-bottom: -1.2rem;
}

.sfondo-linea #mod-custom133,
.sfondo-linea #mod-custom153 {
  position: relative;
  z-index: 1;
  background: var(--color-azzurro);
}

.sfondo-linea #mod-custom133::before,
.sfondo-linea #mod-custom153::before {
  content: "";
  position: absolute;
  top: -10em;
  bottom: -10em;
  left: 0;
  right: 0;
  background: var(--color-azzurro);
  z-index: -1;
}


/* caso 3 elementi: sopra lg solo top, sotto lg top + bottom */
.sfondo-linea .are-3 #mod-custom133::before,
.sfondo-linea .are-3 #mod-custom153::before,
.sfondo-linea .are-minus-3 #mod-custom133::before,
.sfondo-linea .are-minus-3 #mod-custom153::before {
  bottom: 0; /* default: solo top */
}

@media (max-width: 991.98px) {
  .sfondo-linea .are-3 #mod-custom133::before,
  .sfondo-linea .are-3 #mod-custom153::before {
    bottom: -10em; /* sotto lg: top + bottom */
  }
}

/* richieste investitori stranieri */
.border-inv:not(:nth-of-type(4)) {
  border-right: solid medium var(--color-azzurro-scuro);
}

.border-inv>div:hover {
  background-color: var(--color-blu);
  color: white;
}

.border-inv a:hover {
  color: white;
}

@media screen and (max-width: 992px) {
  .border-inv:nth-of-type(2) {
    border-right: none !important;
  }

  .border-inv {
    border-bottom: solid medium var(--color-azzurro-scuro);
  }
}

@media screen and (max-width: 767px) {
  .border-inv {
    border-right: none !important;
    border-bottom: solid medium var(--color-azzurro-scuro);
  }
}

/* incentivi */
.ms-m1 {
  margin-left: -1rem;
}

/*FOOTER*/
.footer {
  box-shadow: 0 -4px 6px rgba(0, 0, 0, 0.1);
  /* Ombra sopra il footer */
  background-color: var(--white);
  /* Puoi scegliere il colore di sfondo, se non già presente */
  padding: 20px;
  /* Un po' di spazio sopra e sotto per l'effetto visivo */
}

/*CARAMELLA*/
.floating-container {
  position: fixed;
  top: 80px;
  right: 20px;
  background-color: var(--color-verdino);
  padding: 0.5em;
  border-radius: 50px;
  opacity: 0.9;
  box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.5);
  z-index: 500;
}

.floating-button .circle-button:hover .d-none {
  display: inline-block !important;
  background-color: var(--color-verdino);
  color: var(--black);
  min-width: 150px;
  top: 50%;
  transform: translateY(-50%);
  padding: 10px;
  border-radius: 20px 0 0 20px;
  white-space: nowrap;
  animation: slideIn forwards;
}

.cc-trigger.cc-trigger-icon svg {
  width: 40px !important;
}

.cc-trigger.cc-trigger-icon.cc-trigger-left {
  left: 0px !important;
}

.cc-trigger.cc-trigger-icon.cc-trigger-bottom {
  bottom: 0rem !important;
}

.cc-trigger.cc-trigger-icon.cc-trigger-left {
  left: 0px !important;
}

.cc-trigger.cc-trigger-icon.cc-trigger-bottom {
  bottom: 0rem !important;
}

@media screen and (max-width: 767.5px) {
  .floating-container {
    bottom: 10px;
    left: 50%;
    /* Posiziona al centro orizzontalmente */
    top: unset;
    transform: translateX(-50%);
    /* Corregge il centro esatto */
    display: flex;
    justify-content: space-between;
    /* Spazio tra i bottoni */
    align-items: center;
    width: 90%;
  }

  .bg-foot {
    margin-bottom: 76px;
  }

  .floating-button .circle-button:hover .d-none {
    transform: translate(67%, -160%);
    border-radius: 20px;
  }
}

/* Quando si passa sopra il pulsante, il testo diventa visibile e appare a sinistra */
/* .floating-button .circle-button:hover .d-none {
  display: inline-block !important;
  opacity: 1;
  background-color: var(--color-verdino);
  color: var(--black);
  min-width: 150px;
  left: -176px;
} */

@keyframes slideIn {
  0% {
    left: -170px;
    /* Partenza fuori dalla vista, a destra */
  }

  100% {
    left: -170px;
    /* Arrivo all'interno della vista, da destra verso sinistra */
  }
}

.circle-button {
  width: 44px;
  height: 44px;
  background-color: var(--white);
  color: var(--black);
  border: none;
  border-radius: 50%;
  font-size: 18px;
  font-weight: bold;
  box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.5);
  transition: box-shadow 0.3s ease, transform 0.3s ease;
}

.circle-button:hover {
  background-color: var(--black);
  color: var(--white);
  box-shadow: 0px 6px 12px rgba(0, 0, 0, 0.3);
  transform: translateY(-5px);
}

.circle-button a {
  color: inherit;
}

.circle-button a:hover {
  color: white;
}

.circle-button .moduletable a {
  padding: 0;
}

.circle-button sub {
  display: none !important;
}

.circle-button i {
  margin: 0;
}

ul.mod-languages__list.lang-inline li {
  margin-left: auto;
  margin-right: auto;
}

/*MAPPA*/
.leaflet-top.leaflet-left,
.leaflet-bottom.leaflet-right {
  display: none;
}

/*
[id^="openstreetmap"] {
  max-width: 100vw !important;
}*/

/*ARTICOLI*/
.page-header {
  background-color: var(--color-verdino);
  padding: 1.5em;
  padding-bottom: 3em;
  border-radius: 0 0 50px 50px;
}

.com-content-article .page-header h1 {
  font-weight: bold;
  margin: 0;
  padding: 0 0.2rem;
}

.com-content-article .page-header dd {
  font-style: italic;
  padding: 0 0.2rem;
}

.com-content-article .campi .indirizzo {
  color: var(--black);
  padding-bottom: 30px;
}

.com-content-article .campi .cerchio {
  text-align: center;
  font-weight: bold;
  width: 150px;
  height: 150px;
  border-radius: 50%;
  background-color: var(--color-azzurro);
  box-shadow: 0px 6px 12px rgba(0, 0, 0, 0.3);
  transform: translateY(-5px);
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.com-content-article .campi .cerchio .icona {
  font-size: 60px;
  line-height: 1;
}

.com-content-article .campi .cerchio .titolo {
  font-weight: normal;
}

.com-content-article .campi .gallery .carousel-inner {
  border-radius: 20px;
  box-shadow: 0px 6px 12px rgba(0, 0, 0, 0.3);
}

.com-content-article .campi .gallery img {
  width: 100%;
  height: auto;
  max-height: 500px;
  object-fit: cover;
}

.com-content-article .campi .descrizione {
  background-color: var(--color-azzurro);
  color: var(--black);
}

dt,
dd {
  word-break: break-word;
}

.border-bottom-mobile {
  border-bottom: solid 15px white !important;
}

.com-content-article .campi .caratteristiche {
  background-color: var(--color-azzurro-scuro);
  color: var(--black);
}

.com-content-article .campi .accesso {
  background-color: var(--color-verdino);
  color: var(--black);
}

.com-content-article .campi .accesso .container {
  background-color: var(--color-verdino);
  color: var(--black);
}

.com-content-article .campi .proprieta {
  /* background-color: var(--color-grigio); */
  color: var(--black);
}

.com-content-article .campi .custom-contatta {
  position: absolute;
  width: 100%;
  background-color: var(--color-azzurro-scuro);
  left: 0;
  padding: 15px 15px 15px 30px;
  text-align: center;
}

.com-content-article .campi .custom-contatta::after {
  /* content: ""; 
  position: absolute;
  top: 50%;
  right: -14px;
  transform: translateY(-50%);
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  border-left: 15px solid var(--color-azzurro-scuro);*/
}

.com-content-article .campi .fieldbody {
  padding: 0 30px;
}

.com-content-article .campi figure img {
  width: 100%;
}

@media (max-width: 767.5px) {
  .com-content-article .campi .col-md-6 {
    padding: 0;
  }

  .com-content-article .campi .accesso {
    background-color: var(--white);
  }

  .com-content-article .campi .custom-contatta {
    position: relative;
    width: 100%;
  }

  .com-content-article .campi .custom-contatta::after {
    left: 50%;
    bottom: -21px;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-top: 15px solid var(--color-azzurro-scuro);
    border-bottom: none;
    top: unset;
    right: unset;
  }

  div.com-content-article__body.fieldbody {
    border-right: none !important;
    border-left: none !important;
  }
}

/*ISTITUZIONI*/
.isti .card {
  position: relative;
  height: 350px;
  border-radius: 20px;
}

.isti .card .card-img {
  position: absolute;
  top: 25px;
  left: -37.5px;
  width: 75px;
  background-color: var(--color-azzurro);
  border-radius: 20px;
  padding: 0.2em;
}

.isti .card .card-img img {
  width: 50px;
  height: 50px;
  object-fit: contain;
  border-radius: 50%;
}

.isti .card .card-body {
  margin: 30px;
}

.isti .card .card-body .card-title a {
  color: var(--black);
}

/*FILTRI*/
.ricercaasset {
  background-color: var(--color-verdino);
  border-radius: 0 0 50px 50px;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08);
  /* Ombra più delicata e seria */
}

.jfilters-filter-dropdown__item a[aria-selected] {
  color: black;
}

div[id^="jfilters-filter-dropdown-"]:focus,
.jfilters-filter-range-sliders__knob:focus {
  border: thin solid black;
}

.ricercaasset .jfilters-filter-container {
  border: 0;
}

.jfilters-filter-header {
  font-size: 15px;
  font-weight: bold;
  height: 36px;
}

.jfilters-filter-header__toggle-icon {
  display: none;
}

.jfilters-filter-dropdown-toggle__icon {
  line-height: normal;
}

.jfilters-select {
  background-color: var(--white);
  box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.2);
  /* Ombra */
}

.jfilters-list {
  min-height: unset;
}

.icon-xxs {
  width: 10px;
  height: 10px;
}

.result__item .card {
  background-color: var(--color-grigio);
}

.ricercaasset .dropdown-menu {
  /*transform: translate3d(-5px, 28px, 0px) !important;
  background-color: transparent;
  border: 0; */
  padding: 0;
  min-width: unset;
  width: calc(100% + 10px);
  margin: -5px !important;
  margin-top: 1px !important
}

.ricercaasset .dropdown-menu ul {
  background-color: var(--white);
  border: 1px solid var(--black);
  overflow: hidden;
}

.ricercaasset .dropdown-menu ul a {
  padding: 0.2em 0.5em !important;
  overflow: hidden;
  text-overflow: ellipsis;
}

.com-finder__results .image-result .image-result-img {
  aspect-ratio: 16/9;
  object-fit: cover;
  width: 100%;
}

.result__item .card .result__title-text {
  color: var(--black);
}

/*PERCORSO*/
.breadcrumbs {
  background-color: var(--color-verdino);
}

/*FOOTER*/
.footerbicolor {
  background: var(--color-blu);
  border-top: 10px solid var(--color-azzurro-scuro);
}

@media screen and (min-width: 992px) {
  .footerbicolor {
    background: linear-gradient(90deg, var(--white) 50%, var(--color-blu) 50%);
  }

  .footerbicolor .bg-primario {
    background: linear-gradient(90deg, var(--white) 33%, var(--color-blu) 33%);
  }
}

@media screen and (min-width: 576px) {
  .border-bottom-mobile {
    border-bottom: none !important;
  }

}

.social-icon {
  display: inline-block;
  width: 40px;
  /* Dimensione del pallino */
  height: 40px;
  /* Dimensione del pallino */
  border-radius: 50%;
  /* Rende il pallino rotondo */
  background-color: white;
  /* Colore di sfondo bianco */
  display: flex;
  justify-content: center;
  /* Centra l'icona orizzontalmente */
  align-items: center;
  /* Centra l'icona verticalmente */
  border: 2px solid black;
  /* Aggiungi bordo nero */
  margin: 10px;
  /* Distanza tra i pallini */
  text-decoration: none !important;
}

.social-icon span {
  color: black;
  /* Colore dell'icona nera */
  font-size: 20px;
  /* Dimensione dell'icona */
}


/* FORM ASSET */
.myprivacypolicy .control-group {
  display: flex;
  ;
}

.myprivacypolicy .control-group .control-label {
  order: 2;
}

.mycaptcha .control-label {
  margin-bottom: .5rem;
  margin-top: 1rem;
}

.my-form input,
.my-form textarea,
.my-form select,
.my-form .radio {
  box-shadow: var(--bs-box-shadow) !important;
}

.mycaptcha .controls>div>* {
  flex-shrink: 0;
  max-width: 100%;
  margin-top: var(--bs-gutter-y);
  justify-content: left;
  flex: 0 0 auto;
  width: 50%;
}

.cawrap {
  flex: 0 0 auto;
  width: 100% !important;
  /* questo è il col-12 del captcha*/
}

.cawrap input {
  margin-top: 0.2rem !important;
}

.refresh_interface>img.refreshbtn {
  display: block !important;
  position: relative;
  top: 0.5rem;
}

.orizzontale div.form-control {
  display: flex;
  flex-direction: row;
  justify-content: space-evenly;
}

@media (min-width: 576px) {
  .modal-dialog {
    max-width: 75%;
  }
}
