* {
  box-sizing: border-box;
  padding: 0;
  margin: 0;
  font-family: "Roboto", sans-serif;
}
:root {
  --azzurrino: #3d6c77;
  --verde_acqua: #46babd;
  --viola: #9c60a3;
  --grigino: #788aac;
}
.color-79add2{
  color: #79add2;
}
.containerLupiae {
  max-width: 1200px;
  margin: auto;
}
.py_10 {
  padding-top: 5rem;
  padding-bottom: 5rem;
}
.pb_10 {
  padding-bottom: 5rem;
}
.pt_5 {
  padding-top: 2.5rem;
}
.bg_grey {
  background-color: #f2f2f2;
}
.lupiaeButtonViola {
  text-decoration: none;
  color: white;
  background-color: var(--viola);
  font-size: 1.2rem;
  border: 1px solid white;
  padding: 0.5rem 6rem;
  border-radius: 25px;
}
.lupiaeButtonVerdeAcqua {
  text-decoration: none;
  color: white;
  background-color: var(--verde_acqua);
  font-size: 1.2rem;
  border: 1px solid white;
  padding: 0.5rem 6rem;
  border-radius: 25px;
}
.lupiaeButtonWhite {
  text-decoration: none;
  color: white;
  font-size: 1.5rem;
  border: 1px solid white;
  padding: 0.5rem 6rem;
  border-radius: 25px;
}
.lupiaeButtonFooter {
  text-decoration: none;
  color: white;
  font-size: 1.5rem;
  border: 1px solid white;
  padding: 0.5rem 0rem;
  border-radius: 25px;
  width: 20%;
  text-align: center;
}
.lupiaeButtonFooter:hover{
  color: white;
  font-weight: 600;
}
.navbar-brand img {
  width: 8rem;
}
.navbar-nav .nav-link {
  color: var(--azzurrino);
  font-weight: 500;
  /*padding: 3rem 2rem 0rem 2rem !important;*/
}
.navbar-nav .nav-link:last-of-type {
  padding-right: 0 !important;
}
#sliderApertura .carousel-inner {
  height: 80vh;
  min-height: 41rem;
}
#sliderApertura .carousel-indicators [data-bs-target] {
  background-color: var(--verde_acqua);
  opacity: 1;
  width: 35px;
  height: 5px;
}
#sliderApertura .carousel-indicators .active {
  background-color: #79add2;
}
#sliderApertura .carousel-caption {
  position: absolute;
  right: 15%;
  top: 75%;
  left: 15%;
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
  color: #fff;
  text-align: start;
  transform: translateY(-50%);
  display: flex;
  align-items: end;
}
#sliderApertura .carousel-caption h3 {
  font-size: 3rem;
  font-weight: 200;
  margin-bottom: 3rem;
}
#sliderApertura .carousel-caption h3 b{
  font-weight: 600;
}
#numeri .single {
  text-align: center;
  width: 25%;
}
#numeri .single img {
  height: 10rem;
}
#numeri .single h5 {
  color: #79add2;
  font-weight: 900!important;
  font-size: 3rem;
  margin-top: 1rem;
}
#numeri .single span {
  color: #25394e;
}
#faq{
  background-color: #d0e3ed;
  margin-top: -2px;
}
#faq p {
  //color: white;
  /*padding-left: 1.25rem;
  padding-right: 1.25rem;*/
}
#faq .parcoFaq {
  width: 50%;
  margin: auto;
}
#faq .parcoFaq .single {
  margin: 1rem 0;
  width: 100%;
  border-top: 1px solid #477392;
}
#faq .parcoFaq .single:last-of-type {
  border-bottom: 1px solid #477392;
}
#faq .parcoFaq .single p {
  display: none;
}
#faq .parcoFaq .single p{
  text-align: center;
}
#parco {
  background-color: #477392;
}
#parco p {
  color: white;
  /*padding-left: 1.25rem;
  padding-right: 1.25rem;*/
}
#parco .parcoFaq {
  width: 50%;
  margin: auto;
}
#parco .parcoFaq .single:not(:last-of-type) {
  border-top: 3px solid #79add2;
}
#parco .parcoFaq .single:last-of-type {
  border-top: 3px solid #79add2;
  border-bottom: 3px solid #79add2;
}
.parcoFaq h3 {
  font-size: 2.5rem;
}
.apriFaq {
  /*font-size: 2rem;*/
}
.apriFaq:hover {
  cursor: pointer;
}
#sostenibilita {
  background-color: #f2f2f2;
  color: var(--grigino);
}
#sostenibilita * {
  color: var(--grigino);
}
#sostenibilita .parcoFaq {
  width: 50%;
  margin: auto;
}
#sostenibilita .parcoFaq .single:not(:last-of-type) {
  border-bottom: 1px solid var(--grigino);
}
#sostenibilita .parcoFaq .single p {
  display: none;
  font-size: 1.3rem;
}
#sostenibilita .treColonne {
  column-count: 3;
  column-gap: 3rem;
  font-size: 1.4rem;
  text-align: justify;
  hyphens: auto;
  font-weight: 300;
}
#inter {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  padding: 10rem 0;
  transition: background-image 0.5s ease-in-out;
}
#sliderInter .cardsContainer {
  display: flex;
  //flex-direction: column;
  gap: 3.5%;
}

ul {
  list-style-type: none;
  padding: 0;
  color: #fff;
}
ul li {
  position: relative;
  padding-left: 25px;
}
ul li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 12px;
  transform: translateY(-50%);
  width: 13px;
  height: 13px;
  background-color: #79add2;
}

#ubicazione li{
  padding-top: 1rem;
  padding-bottom: 1rem;
  border-top: 1px solid #fff;
}

#ubicazione li:last-child{
  border-top: 1px solid #fff;
  border-bottom: 1px solid #fff;
}

#ubicazione li::before {
  top: 1.7rem;
}

#sliderInter .cardsContainer .singleCard {
  width: 24%;
}
#sliderInter .cardsContainer .singleCardText {
  width: 100%;
  text-align: center;
  background-color: rgba(0, 0, 0, 0.2);
  border: 1px solid white;
  border-radius: 10px;
  color: white;
  padding: 2rem;
  min-height: 415px;
}
#sliderInter .cardsContainer .singleCardButton {
  display: block;
  width: 100%;
  text-align: center;
  background-color: rgba(0, 0, 0, 0.2);
  border: 1px solid white;
  border-radius: 10px;
  color: white;
  text-decoration: none;
  padding: 0.3rem 0;
  margin-top: 2rem;
  font-size: 1.4rem;
}
#sliderInter .cardsContainer .singleCardText h4 {
  font-weight: 600;
  font-size: 1.5rem;
}
#sliderInter .cardsContainer .singleCardText h4 span {
  font-weight: 200;
}
#sliderInter .cardsContainer .singleCardText h5 {
  border-top: 1px solid white;
  border-bottom: 1px solid white;
  padding: 0.5rem 0;
  margin-top: 2rem;
  font-weight: 200;
}
#sliderInter .cardsContainer .singleCardText .distanze {
  margin-top: 2rem;
}
#sliderInter .cardsContainer .singleCardText .distanze h6 {
  font-weight: 200;
  font-size: 1.2rem;
}
#sliderInter .cardsContainer .singleCardText .distanze h6 span {
  font-weight: 600;
  font-size: 1.6rem;
  padding-left: 1rem;
}
#sliderInter .cardsContainer .singleCardText .distanze hr {
  margin: 0.8rem 0;
  color: inherit;
  background-color: white;
  border: 0;
  opacity: 1;
}
#inter .carousel-indicators {
  bottom: -35%;
}
#inter .carousel-indicators [data-bs-target] {
  background-color: white;
  opacity: 1;
  width: 35px;
  height: 5px;
}
#inter .carousel-indicators .active {
  background-color: var(--verde_acqua);
}
#media {
  background-color: var(--grigino);
  color: white;
}
.video {
  width: 100%;
  height: 350px;
  border-radius: 25px;
}
#chisiamo {
  background-color: #fff;
  color: #25394e;
}
#chisiamo p {
  color: #25394e;
  text-align: center;
  /*font-size: 1.4rem;*/
  padding: 0 11rem;
  font-weight: 300;
}
.loghi_chisiamo {
  display: block;
  width: 18%;
  margin: 0 3rem;
}
.container_chisiamo {
  gap: 0%;
}
.loghi_chisiamo img {
  width: 100%;
}
.single_chisiamo {
  width: 33%;
  text-align: center;
}
.single_chisiamo:not(:last-of-type) {
  border-right: 1px solid var(--grigino);
}
.single_chisiamo h4 {
  font-weight: 600;
  text-align: left;
  padding: 0 2rem;
}
.single_chisiamo a {
  font-weight: 600;
}
#chisiamo hr {
  margin: 0.8rem 0;
  color: inherit;
  background-color: var(--grigino);
  border: 0;
  opacity: 1;
}
#iter h2 {
  color: var(--verde_acqua);
}
.iter_voci a {
  color: var(--grigino);
  text-decoration: none;
  font-size: 2rem;
  width: 33%;
  font-weight: 600;
}
.iter_voci a:not(:last-of-type) {
  border-right: 7px solid var(--verde_acqua);
}
.iter_voci a:nth-of-type(2) {
  width: 39%;
}
#footer {
  /*background-image: url("/wp-content/uploads/2023/06/LMwebsite_elements_fondo_footer-1-e1687342933868.png");*/
  background-color: #418640;
  background-position: top center;
  //padding-top: 5rem;
}
.loghi_footer > img {
  width: 20%;
  margin-right: 3rem;
}
.loghi_footer > div {
  width: 20%;
  margin-left: 3rem;
  display: flex;
  flex-direction: column;
  justify-content: end;
}
.loghi_footer > div h6 {
  text-align: center;
  border-bottom: 1px solid #477392;
  color: #477392;
  font-weight: 100;
  padding-bottom: 0.5rem;
}
.loghi_footer_right {
  display: flex;
  gap: 20%;
}
.loghi_footer_right img {
  width: 40%;
}

@media only screen and (min-width: 1201px) {
  .d-1199-block {
    display: block !important;
  }
}

#faq .parcoFaq {
  width: 70%;
  margin: auto;
}

#footer hr {
  margin: 0.8rem 0;
  color: inherit;
  background-color: white;
  border: 0;
  opacity: 1;
}
@media only screen and (min-width: 768px) {
  .video {
    height: 550px;
  }
}
@media only screen and (min-width: 1024px) {
  #sliderInter .cardsContainer .singleCard {
    width: 23%;
  }
}
@media only screen and (max-width: 1024px) {

  #sliderInter .cardsContainer .singleCard {
    width: 100%;
  }
}
@media only screen and (max-width: 1200px) {
  .navbar-toggler:focus,
  .navbar-toggler:active,
  .navbar-toggler-icon:focus {
    outline: none;
    box-shadow: none;
  }
  .py_10 {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }
  .pb_10 {
    padding-bottom: 2rem;
  }
  .pt_5 {
    padding-top: 1rem;
  }
  .containerLupiae {
    max-width: 90vw;
    margin: auto;
  }
  .navbar-brand img {
    width: 22vw;
  }
  .fa-bars {
    font-size: 8vw;
    color: var(--grigino);
  }
  .navbar-nav .nav-link {
    padding: 2vw !important;
  }
  .carousel-item {
    height: 100% !important;
  }
  .carousel-item img {
    object-fit: cover !important;
    height: 100% !important;
  }
  #sliderApertura .carousel-caption {
    position: absolute;
    right: inherit;
    top: 50%;
    left: 50%;
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
    color: #fff;
    text-align: center;
    transform: translate(-50%, -50%);
    width: 100%;
  }
  .px-11rem{
    padding: 0 11rem;
  }
  .mx-11rem{
    margin: 0 11rem;
  }

  @media (max-width: 425px) {
    .px-11rem {
      padding: 0 1rem;
    }

    .mx-11rem {
      margin: 0 1rem;
    }
  }
  #sliderApertura .carousel-caption h3 {
    //font-size: 8vw;
    //font-weight: 700;
    margin-bottom: 18vw;
  }
  #numeri .single {
    text-align: center;
    width: 100%;
    margin-bottom: 4rem;
    border-right: none !important;
  }
  #parco .parcoFaq {
    width: 100%;
    margin: auto;
  }
  .parcoFaq h3 {
    font-size: 2rem;
  }
  .apriFaq {
    font-size: 1.4rem;
  }
  #sostenibilita .treColonne {
    column-count: 1;
    text-align: left;
  }
  #sostenibilita .parcoFaq {
    width: 100%;
    margin: auto;
  }
  .parcoFaq h3 {
    font-size: 2rem;
  }
  #chisiamo p {
    padding: 0;
  }
  .loghi_chisiamo {
    display: block;
    width: 70%;
    margin: 3rem 0rem;
  }
  .single_chisiamo {
    width: 100%;
    text-align: center;
    border-right: none !important;
    margin-bottom: 3rem;
  }
  .single_chisiamo a {
    margin-top: 0 !important;
  }
  .iter_voci {
    flex-wrap: wrap;
  }
  .iter_voci a {
    color: var(--grigino);
    text-decoration: none;
    font-size: 1.5rem;
    width: 100% !important;
    font-weight: 600;
    border-right: none !important;
    border-bottom: 5px solid var(--verde_acqua);
    text-align: center !important;
    margin-bottom: 2rem;
  }
  .lupiaeButtonFooter {
    width: 100%;
    margin-bottom: 1rem;
  }
  .loghi_footer > img {
    width: 70%;
    margin-right: 0;
  }
  .loghi_footer > div {
    width: 70%;
    margin-left: 0;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    margin-top: 4rem;
  }
  #footer {
    background-size: cover;
  }
  .contatti_footer p {
    width: 100%;
    margin-bottom: 2rem;
    text-align: center;
  }
}

.carousel-item{
  height: 100%;
}
/*----------- menu css -----------*/

#menu-container {
  position: fixed;
  top: 0;
  z-index: 3;
  width: 300px;
  height: 100%;
  background-image: linear-gradient(to bottom, #37597a, #55a1d1);
  transition: right 0.3s ease-in-out;
  padding-top: 20px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
}
.nav-position{
  padding-left: 15vw;
  margin-right: 15vw;
}
@media (max-width: 768px) {
  .nav-position{
    padding-left: 0;
    margin-right: 0;
  }
  #faq .parcoFaq .single {
    width: auto;
  }
}
#menu {
  list-style: none;
  padding: 0;
  margin: 0;
}

#menu li {
  padding: 10px;
  text-align: center;
  color: #fff;
  border-bottom: 1px solid #fff;
}

#menu-toggle {
  position: absolute;
  top: 20%;
  right: 15vw;
  cursor: pointer;
  color: #fff;
  font-size: 24px;
  z-index: 2;
}

/*----------- hide scrollbar -----------*/


.scrollbar-container {
  width: 0!important;
  height: 0!important;
  overflow-y: auto; /* Abilita lo scrolling verticale */
}

body::-webkit-scrollbar {
  display: none;
}


body {
  scrollbar-width: none!important; /* Per Firefox */
  -ms-overflow-style: none!important; /* Per Internet Explorer 10+ */
}

/* ── Map (intervisibilità) ──────────────────────────── */
#map {
  width: 100%;
  height: 50rem;
  background-color: dimgrey;
  border-radius: 25px;
  margin-top: 14rem;
}
#map .singleCardButton {
  display: block;
  width: 100%;
  text-align: center;
  background-color: var(--verde_acqua);
  border: 1px solid white;
  border-radius: 10px;
  color: white;
  text-decoration: none;
  padding: 0.3rem 0;
  margin-top: 2rem;
  font-size: 1.4rem;
}
@media only screen and (max-width: 1200px) {
  #map {
    width: 100%;
    height: 80vh;
  }
}

/* ── Chi Siamo logos ────────────────────────────────── */
.loghi_footer_right .logo {
  width: 40%;
  height: 9rem;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  margin: 0.5rem;
}

/* ── Block editor compatibility ─────────────────────── */
.wp-block-acf-hero-slider,
.wp-block-acf-numeri,
.wp-block-acf-parco,
.wp-block-acf-sostenibilita,
.wp-block-acf-intervisibilita,
.wp-block-acf-faq,
.wp-block-acf-chi-siamo,
.wp-block-acf-media-video,
.wp-block-acf-iter,
.wp-block-acf-restoration,
.wp-block-acf-contatti-footer,
.wp-block-acf-site-navbar {
  max-width: none;
  margin-left: 0;
  margin-right: 0;
}
