@import url('https://fonts.googleapis.com/css2?family=Pinyon+Script&family=Playfair+Display:wght@300;400;500;600&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600&display=swap');
section .container-fluid {
  padding: 0;
}


/* ! MOD-15 */ 
.mod15 {
  display: flex;
  align-items: center;
  padding: 25px 0;
}
.mod15 .col-12.img {
  padding: 0;
}

.mod15 .container-fluid .destra-pos img, 
.mod15 .container-fluid .sinistra-pos img {
  width: 100%!important;
}
.mod15 .row.sinistra-pos.pos, .mod15 .row.destra-pos.pos {
    align-items: center;
    column-gap: 80px;
    row-gap: 30px;
}
.mod15 .sinistra-pos img {
  text-align: left;
  object-fit: cover;
}
.mod15 img {
  width: 100%;
  padding: 0;
}

.mod15 .txtCont {
  text-align: center;
  display: -ms-flexbox;
  flex-direction: column;
  -ms-flex-direction: column;
  -ms-flex-pack: center;
  -ms-flex-align: center;
  -ms-flex-line-pack: center;
}

.mod15_mobile{
  display: none;
}
.mod15__content__txt__subtitle {
  margin-bottom: 20px;
}
.mod15__content__txt__subtitle2 {
    margin: 20px 10px;
}

.mod15__content__txt__subtitle2 {
  margin-bottom: 12px;
}
.mod15  .row.destra-pos.pos {
  flex-direction: row-reverse;
  align-items: center;
}
.mod15 .img_mod15_desk_left{
  object-position: left!important;
}
.mod15 .img_mod15_desk_right{
  object-position: right!important;
}
.mod15 .img_mod15_desk_top{
  object-position: top!important;
}
.mod15 .img_mod15_desk_bottom{
  object-position: bottom!important;
}
.mod15 .img_mod15_desk_center{
  object-position: center!important;
}
.mod15 .img_mod15_mobile_left{
  object-position: unset;
}
.mod15 .img_mod15_mobile_right{
  object-position: unset;
}
.mod15 .img_mod15_mobile_top{
  object-position: unset;
}
.mod15 .img_mod15_mobile_bottom{
  object-position: unset;
}
.mod15 .img_mod15_mobile_center{
  object-position: unset;
}
/* ! MOD-16 */
.mod16__content {
  width: 100%;
}
.content__arrow {
  position: absolute;
  top: 90%;
  transform: translateY(-10px);
  width: 100%;
  margin: auto;
  display: flex;
  align-content: center;
  justify-content: center;
  align-items: center;
  margin-left: 14px;
}
.mod16  .mod16__content__images {
  position: relative;
}
.mod16__content__txt__item__box {
  width: 200px!important;
  max-width: 200px!important;
  height: 200px!important;
  min-height: 200px!important;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-block: 51px;
  padding-inline: 20px;
  overflow: hidden;
}
.mod16 .mod16__content__txt__item{
  padding: 0;
  display: flex;
  justify-content: center;
}

.mod16  .mod16__content__txt {
  position: absolute;
  top: 50%;
  width: 100%;
  transform: translateY(-50%);
}
.mod16  img.lozad {
  object-fit: cover;
  width: 100%;
  height: 100vh;
}
.mod15 .img_mobile,
.mod16 .img_mobile{
  display:none;
}
.mod15 .img_desk,
.mod16 .img_desk{
  display:block;
}

.mod16 .img_mod16_desk_left{
  object-position: left!important;
}
.mod16 .img_mod16_desk_right{
  object-position: right!important;
}
.mod16 .img_mod16_desk_top{
  object-position: top!important;
}
.mod16 .img_mod16_desk_bottom{
  object-position: bottom!important;
}
.mod16 .img_mod16_desk_center{
  object-position: center!important;
}
.mod16 .img_mod16_mobile_left{
  object-position: unset;
}
.mod16 .img_mod16_mobile_right{
  object-position: unset;
}
.mod16 .img_mod16_mobile_top{
  object-position: unset;
}
.mod16 .img_mod16_mobile_bottom{
  object-position: unset;
}
.mod16 .img_mod16_mobile_center{
  object-position: unset;
}

/* ! MOD-17 */
.mod17 {
  padding: 60px 0;
}
.mod17 .container-fluid {
  padding: 0;
}
.mod17 .row {
  display: flex;
  justify-content: center;
  align-items: baseline;
}
.mod17__content__img{
  padding: 0px!important;
  background-size: cover;
  aspect-ratio: 4/3;
}

.mod17 .row__arrow {
  margin-top: 0px;
  position: absolute;
  transform: translateY(-50px);
  width: 100%;
  margin: auto;
  display: flex;
  align-content: center;
  justify-content: center;
  align-items: center;
  margin-left: -6px;
}
.mod17 .img_mod17_desk_left{
  object-position: left!important;
}
.mod17 .img_mod17_desk_right{
  object-position: right!important;
}
.mod17 .img_mod17_desk_top{
  object-position: top!important;
}
.mod17 .img_mod17_desk_bottom{
  object-position: bottom!important;
}
.mod17 .img_mod17_desk_center{
  object-position: center!important;
}
.mod17 .img_mod17_mobile_left{
  object-position: unset;
}
.mod17 .img_mod17_mobile_right{
  object-position: unset;
}
.mod17 .img_mod17_mobile_top{
  object-position: unset;
}
.mod17 .img_mod17_mobile_bottom{
  object-position: unset;
}
.mod17 .img_mod17_mobile_center{
  object-position: unset;
}



@media screen and (max-width:1441px){
  img.responsive {
    width: 100%; 
    height: auto;
  }
}
.mod17__content__img picture, 
.mod17__content__img picture img {
  width: 100%;
  aspect-ratio: 4/3;
  object-fit: cover;
  height: 100%;
}
.mod17__content__txt {
  text-align: center;
  left: 0!important;
  width: 324px!important;
  min-width: 324px!important;
  height: 324px!important;
  min-height: 324px!important;
  bottom: 0px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.mod17 .row.destra-pos.pos {
  flex-direction: row;
}
.mod17 .row.sinistra-pos.pos.mod17__content {
    flex-direction: row-reverse;
}
.mod17__content__txt a{
margin-top: 40px;
}
.mod17__content__txt__subtitle {
  margin-bottom: 10px;
}
.mod17__content__txt__subtitle2 {
    margin: 20px 10px;
}

.mod17__content__txt__title h1, 
.mod17__content__txt__title h2 {
  font-family: 'Playfair Display', serif!important;
}
/* ! MOD-18 */
.mod18__content {
  text-align: center;
}
.mod18 .row {
  row-gap: 60px;
}
.mod18__content__img img {
  width: 100%;
  object-fit: contain;
}
.mod18__content__img a {
  border-bottom: 0px!important;
}
.mod18__content__img {
  margin-bottom: 30px;
}
.mod18  .img_half {
  aspect-ratio: 4/3;
}

.mod18  .img_small {
  aspect-ratio: 3/2;
}

.mod18 .img_square {
  aspect-ratio: 1/1;
}
.mod18  .img_original {
  aspect-ratio: auto;
}

/* ! MOD-19 */
.mod19__slider__item img {
  aspect-ratio: 8/6;
  object-fit: cover;
}
.mod19__slider {
  position: relative!important;
}
.mod19__slider .owl-nav {
  position: absolute!important;
  width: 100%;
  top: 50%;
  transform: translateY(-50px);
  display: flex;
  justify-content: space-between;
  align-content: space-around;
}
.mod19__slider button.owl-prev,
.mod19__slider button.owl-next {
  background: #fff!important;
  width: 32px;
  height: 30px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.mod19__slider button.owl-prev {
    margin-left: 40px;
}

.mod19__slider button.owl-next {
    margin-right: 40px!important;
    right: 0;
    position: absolute;
}
.mod19 .txtCont.text-center,
.mod19 .txtCont.text-left,
.mod19 .txtCont.text-right {
  padding-block: 20px;
}
.mod19 .row {
  display: flex;
  flex-direction: column;
  align-items: center;
}



.mod19 .img_mod19_desk_left{
  object-position: left!important;
}
.mod19 .img_mod19_desk_right{
  object-position: right!important;
}
.mod19 .img_mod19_desk_top{
  object-position: top!important;
}
.mod19 .img_mod19_desk_bottom{
  object-position: bottom!important;
}
.mod19 .img_mod19_desk_center{
  object-position: center!important;
}
.mod19 .img_mod19_mobile_left{
  object-position: unset;
}
.mod19 .img_mod19_mobile_right{
  object-position: unset;
}
.mod19 .img_mod19_mobile_top{
  object-position: unset;
}
.mod19 .img_mod19_mobile_bottom{
  object-position: unset;
}
.mod19 .img_mod19_mobile_center{
  object-position: unset;
}




/* ! MOD-20 */
.mod20__list {
  list-style: none;
  padding: 0;
  margin-bottom: 0;
}
li.mod20__list__item.mod20__list__item--continente.mod20__list__item-first.opened {
  border-top: none;
}
ul.mod20__list.mod20__list--depth1.mod20__list--depth1--last.depth-2.open {
  padding-bottom: 38px;
  border-bottom: 0px!important;
}
li.mod20__list__item.mod20__list__item--nazione.mod20__list__item-first {
  border-top: 1px solid #d6d4d3;
  margin-left: 59px;
  padding-block: 22px;
  padding-left: 0px;
  border-bottom: 0;
}

li.mod20__list__item.mod20__list__item--regione.mod20__list__item-first {
  padding-left: 0!important;
  margin-left: 102px;
  border-top: 1px solid #ccc9c9;
  border-bottom: 0;
}
li.mod20__list__item.mod20__list__item--citta.mod20__list__item-last {
    padding-left: 0;
    margin-left: 104px;
}
li.mod20__list__item.mod20__list__item--regione.mod20__list__item-first.opened {
  border-bottom: 0;
}
li.mod20__list__item.mod20__list__item--regione.mod20__list__item-first:first-child {
  border-top: none!important;
}
.mod20__list li {
  padding-block: 17px;
  border-bottom: 1px solid #ccc9c9;
}
.mod20__list--depth2 .mod20__list li {
  padding-left: 62px;

}
li.mod20__list__item.mod20__list__item--nazione.mod20__list__item-first:first-child {
    border-top: none;
}

li.mod20__list__item.mod20__list__item--nazione.mod20__list__item-first.opened {
    border-bottom: 1px solid #d6d4d3;
}
.mod20__list--depth2 li {
  border: none;
  padding-left: 70px!important;
}
.mod20__list--depth1 .mod20__list__item {
  padding-left: 48px;
  padding-block: 17px;
}
.mod20__list--depth1, 
.mod20__list--depth2{
  display: none;
}
.mod20__list__item-first:after {
  content: url('../img/+.svg');
  color: #777;
  font-weight: bold;
  float: right;
  margin-left: 5px;
}
.mod20__list__item-first.opened:after {
  content: url('../img/-.svg');
  width: 28px;
}

.mod20__list__item.mod20__list__item-last {
  border-bottom: none;
  padding-block: 20px 0;
  font-size: 16px;
  margin-left: -6px;
}
.mod20__list.mod20__list--depth3.mod20__list--depth1--last {
  border-bottom: 1px solid #ccc9c9;
  padding-left: 42px;
}
.mod20__list__item--continente, 
.mod20__list__item--nazione {
  font-weight: 600;
  font-size: 18px;
}

.mod20__list__item--regione{
  font-size: 16px;
  font-weight: 400;
  padding-left: 98px!important;
} 
.mod20__list:last-child {
  border-bottom: 1px solid #d6d4d3!important;
}
li.mod20__list__item.mod20__list__item--continente.mod20__list__item-first.opened {
  border-bottom: 1px solid #d6d4d3!important;
  border-top: 1px solid #d6d4d3!important;
}
ul.mod20__list.mod20__list--depth1.depth-x.open {
  border-bottom: none!Important;
}
ul.mod20__list.mod20__list--depth1.depth-1.open {
  border-bottom: none!important;
}
.mod20__list__item.mod20__list__item-last p {
  font-weight:400;
}
.mod20__list__item-last__content h5 {
  padding-bottom:0px;
  margin-bottom:0px!important;
}
.mod20__list__item-last__content p {
  padding-top:0px;
  margin-top:0px!important;
}
.mod20__list__item--continente {
  padding-block: 36px!important;
  border-top: 1px solid #d6d4d3;
  border-bottom: none!important;
}
/* ! MOD21 */
#mod-21 {
  min-height: 150px;
  padding: 40px 0;
}
.share_us {
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-content: center;
  align-items: center;
}

.share_us h4 {
  font-family: 'Playfair Display', serif!important;
  font-size: 16px!important;
  margin-bottom: 40px;
  text-transform: capitalize!important;
  padding-bottom: 20px;
}

.share_us ul {
  display: flex;
  list-style: none;
  align-items: center;
  column-gap: 5px;
  justify-content: center;
  align-content: center;
  padding: 0;
}
.share_us ul li {
  width: fit-content!important;
  padding: 7px!important;
  display: flex!important;
  align-items: center!important;
  margin: 0!important;
  border: 1px solid #322b2540!important;
  transition: 0.4s;
}
.share_us li:hover {
  border: 1px solid transparent!important;
  background: rgba(223,96,72,1);
  color: #fff;
  transition: .3s cubic-bezier(0.4, 0, 1, 1);
}
.share_us li:hover a{
  color:#fff!important;
}
.share_us a {
  color: #322B25!important;
}

@media screen and (min-width:992px){
  .mod17 .sinistra-pos .mod17__content__txt {
    left: 71px!important;
  }
  .mod17 .destra-pos .mod17__content__txt {
    left: -69px!important;
  }
}

@media screen and (min-width:1025px){

  .mod19__slider__item img {
    aspect-ratio: 64/33;
  }
  .mod17 .row {
   justify-content: unset;
  }
  .mod16  .mod16__content__txt {
    position: absolute;
    /* top: 50%; */
    width: 100%;
    /* transform: translateY(-50%); */
  }
  .mod17__content__txt {
    padding-block: 43px;
    width: 324px!important;
    height: 324px!important;
  }
}


@media screen and (max-width:991px){
  .mod17 .sinistra-pos .mod17__content__txt {
    left: 0!important;
  }
  .mod17 .destra-pos .mod17__content__txt {
    left: 0!important;
  }
  .cont-footer-title {
    padding-inline: 30px;
  }
  .mod20 {
    padding-inline: 30px;
  }
  .mod20__list__item {
    padding-left: 0px!important;
  }
  .mod20 .container {
    padding: 0;
  }
  ul.mod20__list.mod20__list--depth1.open {
    padding-left: 15px;
  }
  .mod17__content__img{
  aspect-ratio: 1;
  height: 100vh;
  }
  .mod16 .mod16__content__txt__item{
    margin:auto;
  }
   .mod17__content__txt.mod17__content__txt-bottom{
    top: 0px;
    transform: translateY(-50%);
  }
   .mod17__content__txt.mod17__content__txt-center{
    top: 250px;
    transform: translateY(-301%);
    margin-bottom: -250px;
  }

  .mod16 .h1, .mod16 h1,
  .mod17 .h1, .mod17 h1,
  .mod16 .h2, .mod16 h2,
  .mod17 .h2, .mod17 h2{
    font-size: 18px!important;
  }
  .mod16 .h3, .mod16 h3,
  .mod17 .h3, .mod17 h3,
  .mod16 .h4, .mod16 h4,
  .mod17 .h4, .mod17 h4,
  .mod16 .h5, .mod16 h5,
  .mod17 .h5, .mod17 h5,
  .mod16 .h6, .mod16 h6,
  .mod17 .h6, .mod17 h6{
    font-size: 14px!important;
  }
  a.link.serif-a, a.serif-a {
    font-size: 14px!important;
  }
  .mod17 {
  padding: 30px 0;
  }
  .mod19__slider__item img {
    height: 100vh;
    min-height: 580px;
  }

  .mod15_mobile{
    display: block;
  }

  .mod15_desktop{
    display: none;
  }
  .mod15 .container {
    padding: 0;
  }
  .mod15 .txtCont {
    padding: 0 30px;
  }
  #mod-18 {
    padding-bottom: 60px!important;
  }
  .mod15 .img_mobile, .mod16 .img_mobile{
    display:block;
  }
  .mod15 .img_desk, .mod16 .img_desk{
    display:none;
  }
  .mod15 .img_mod15_desk_left{
  object-position: unset;
  }
  .mod15 .img_mod15_desk_right{
    object-position: unset;
  }
  .mod15 .img_mod15_desk_top{
    object-position: unset;
  }
  .mod15 .img_mod15_desk_bottom{
    object-position: unset;
  }
  .mod15 .img_mod15_desk_center{
    object-position: unset;
  }
  .mod15 .img_mod15_mobile_left{
    object-position: left!important;
  }
  .mod15 .img_mod15_mobile_right{
    object-position: right!important;
  }
  .mod15 .img_mod15_mobile_top{
    object-position: top!important;
  }
  .mod15 .img_mod15_mobile_bottom{
    object-position: bottom!important;
  }
  .mod15 .img_mod15_mobile_center{
    object-position: center!important;
  }

  .mod16 .img_mod16_desk_left{
    object-position: unset;
  }
  .mod16 .img_mod16_desk_right{
    object-position: unset;
  }
  .mod16 .img_mod16_desk_top{
    object-position: unset;
  }
  .mod16 .img_mod16_desk_bottom{
    object-position: unset;
  }
  .mod16 .img_mod16_desk_center{
    object-position: unset;
  }
  .mod16 .img_mod16_mobile_left{
    object-position: left!important;
  }
  .mod16 .img_mod16_mobile_right{
    object-position: right!important;
  }
  .mod16 .img_mod16_mobile_top{
    object-position: top!important;
  }
  .mod16 .img_mod16_mobile_bottom{
    object-position: bottom!important;
  }
  .mod16 .img_mod16_mobile_center{
    object-position: center!important;
  }

  .mod17 .img_mod17_desk_left{
    object-position: unset;
  }
  .mod17 .img_mod17_desk_right{
    object-position: unset;
  }
  .mod17 .img_mod17_desk_top{
    object-position: unset;
  }
  .mod17 .img_mod17_desk_bottom{
    object-position: unset;
  }
  .mod17 .img_mod17_desk_center{
    object-position: unset;
  }
  .mod17 .img_mod17_mobile_left{
    object-position: left!important;
  }
  .mod17 .img_mod17_mobile_right{
    object-position: right!important;
  }
  .mod17 .img_mod17_mobile_top{
    object-position: top!important;
  }
  .mod17 .img_mod17_mobile_bottom{
    object-position: bottom!important;
  }
  .mod17 .img_mod17_mobile_center{
    object-position: center!important;
  }

  .mod19 .img_mod19_desk_left{
    object-position: unset;
  }
  .mod19 .img_mod19_desk_right{
    object-position: unset;
  }
  .mod19 .img_mod19_desk_top{
    object-position: unset;
  }
  .mod19 .img_mod19_desk_bottom{
    object-position: unset;
  }
  .mod19 .img_mod19_desk_center{
    object-position: unset;
  }
  .mod19 .img_mod19_mobile_left{
    object-position: left!important;
  }
  .mod19 .img_mod19_mobile_right{
    object-position: right!important;
  }
  .mod19 .img_mod19_mobile_top{
    object-position: top!important;
  }
  .mod19 .img_mod19_mobile_bottom{
    object-position: bottom!important;
  }
  .mod19 .img_mod19_mobile_center{
    object-position: center!important;
  }
  .mod17 .row__arrow {
    transform: translateY(-300px);
  }
  .mod17__content {
    margin-bottom: -162px;
  }
}


@media screen and (max-width:576px){
  .mod17__content {
    margin-bottom: -125px;
}
.mod17__content__txt.mod17__content__txt-center{
  margin-bottom: -324px;
}
  .mod17__content__img picture, .mod17__content__img picture img {
    width: 100%;
    aspect-ratio: 3/4;
    object-fit: cover;
}
  .mod16 .mod16__content__txt {
    display: flex;
    justify-content: center;
    align-content: center;
    align-items: center;
    width: 100%;
  }
  .mod16 .mod16__content__txt__item {
    justify-content: center!important;
    padding: 0;
  }
  .mod16 .mod16__content__txt .row {
    display: flex;
    justify-content: center;
    align-content: center;
    align-items: center;
  }
  .mod15 .sinistra-pos .txtCont {
    right: unset;
    width: 100%;
    position: unset;
  }
  .mod15 .destra-pos .txtCont {
    left: unset;
    /* width: 100%; */
    position: unset;
  }
  .mod15 .pos {
    display: flex;
    flex-direction: column;
    row-gap: 30px;
  }
  .mod17__content__txt {
    width: 250px!important;
    min-width: 250px!important;
    height: 250px!important;
    min-height: 250px!important;
  }

  li.mod20__list__item.mod20__list__item--nazione.mod20__list__item-first {
    margin-left: 0;
  }

  li.mod20__list__item.mod20__list__item--regione.mod20__list__item-first {
      margin-left: 0;
  }

  li.mod20__list__item.mod20__list__item--citta.mod20__list__item-last {
      margin-left: -9px;
  }

}

@media screen and (min-width: 1400px){

  .mod17__content__txt {
    width: 431px!important;
    height: 431px!important;
    min-width: 431px!important;
    min-height: 431px!important;
  }
  .mod16__content__txt__item__box {
    width: 320px!important;
    min-width: 320px!important;
    height: 320px!important;
    min-height: 320px!important;
  }
}

@media screen and (min-width:1440px){
  .container {
    max-width: 1440px!important;
  }

}

/*UPDATE MOD-01*/
#mod-01.mod16, #mod-01.mod16 iframe {
    height: auto;
    min-height: 100vh;
}
#mod-01.mod16 .vimeoFullBackground {
    height: 100vh;
    min-height: 100vh;
    width: 100%;
    position:relative;
}
#mod-01.mod16 .vimeoFullBackground .videodesktop{
    height: 57vw;
    width: 100%!important;
    min-width: 178vh!important;
    min-height: 100vh;
    position:absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
#mod-01.mod16 .vimeoFullBackground .videomobile {
	min-height: 100vh;
	min-width: 178vh!important;
	position:absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
#mod-01.mod16 .container {
	display: block;
}
@media screen and (max-width: 991px) {
  #mod-01.mod16 .videomobile {
    display: block;
    width: 100vw;
    height: 177vw;
  }
}    

}