/* BASIC STYLES  */
/* Font brand */
/* @import url('https://fonts.googleapis.com/css?family=Lato:400,700,900&display=swap'); */
@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500;1,600;1,700&display=swap');
@import 'svg.css';

/* Variables  */
html {
    --main-color: #373776;
    --secondary-color: #C35964;
    --red: #FA4659;
    /* --text-color: #444444; */
    --blue-light: #F5F7FC;
    --dark-red:#201616;
    --azzurro: #C4D4F7;
}
/* Layout */
html, body {
    margin: 0;
    padding: 0;
    width: 100%;
    height: 100%;
    position: relative;
    font-family: 'Poppins', sans-serif;
    font-size: 1rem;
    line-height: 1.4;
    font-weight: 300;
    color: var(--main-color);
    scroll-behavior: smooth;
    background-color: white;
}
body{
    background: white;
}
html:focus-within {
    scroll-behavior: smooth;
  }
#main-container {
    min-height: 100%;
    position: relative;
}
main {
    /* margin: 44px 0 0 0; */
    /* padding-bottom: 1rem; */
    margin-bottom: 130px;
}

.container-big{
    max-width:1400px
}

.container-fluid{
    padding-top:60px;
    padding-bottom:60px
}
.grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 3rem;

}

/* .grid-4 {
    display: block;
} */
.grid-4 {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    column-gap: 2rem;
}



/* Accessibility of smooth scrolling */
@media (prefers-reduced-motion: reduce) {
    html {
      scroll-behavior: auto;
    }
  }

/* Text */
h1, h2, h3, h4, h5, h6 {
    color: var(--main-color);
}
h1{
    font-size: 38px;
}
h2{
    font-size: 32px;
}
h3{
    font-size: 22px;
}
h4{
    font-size: 20px;
}

a {
    color: var(--secondary-color);
    text-decoration: none;
    transition: all 0.3s ease-in-out;
}
a:hover {
    color: var(--main-color);
    text-decoration: none;
    transition: all 0.3s ease-in-out;
}

/* Buttons  */
.btn {
    text-transform: uppercase;
    border-radius: 0;
}
.btn-primary{
    background-color: var(--main-color);
    border-color: var(--main-color);
}
.btn-primary:hover{
    background-color: var(--secondary-color);
    border-color: var(--secondary-color);
}

.p-bigger {
    font-size: 1.1rem;
}

/* NAVBAR  */
.navbar {
    /* border-bottom: 1px solid var(--main-color); */
    height: 44px;
    background-color: rgba(0,0,0,0.2);
    box-shadow: 0px 0px 15px 15px rgba(0,0,0,0.2);
}
.navbar-brand img {
    max-height: 53px;
    position: absolute;
    top: 2px;
    box-shadow: 2px 2px 2px rgba(0,0,0,0.2);
    border-radius: 50%;

}
.navbar-nav .nav-link {
    font-weight: 600;
    font-size: 1rem;
    color: white;
    text-shadow: 2px 2px 2px var(--dark-red);
}
.navbar-nav .show > .nav-link,
.navbar-nav .active > .nav-link,
.navbar-nav .nav-link.show,
.navbar-nav .nav-link.active {
    color: var(--secondary-color);
}
.navbar-nav .nav-link:hover, .navbar-nav .nav-link:focus {
    color: var(--main-color);
}
.navbar-collapse {
    /* background: rgba(255,255,255,0.9); */
    background-color: transparent;
}
.navbar-toggler {
    padding: 0rem 0.5rem;
}
.nav-link .img-fluid{
    box-shadow: 2px 2px 2px var(--dark-red);
    border-radius: 50%;
}


/* // Custom navigation items  */
.navigation_list {
  display: flex;
  list-style: none;
  align-items: center;
  height: 100%;
  margin-bottom: 0;
}
.nav-items {
  margin-left: auto;
}
.navigation_item {
  font-size: 1rem;
  letter-spacing: 0.1rem;
  font-weight: 500;
  transition: all 0.4s;
}
.navigation_link {
    color: #fff;
    background-image: linear-gradient(
        120deg,
        transparent 0%,
        transparent 50%,
        #fff 50%
    );
    background-size: 250%;
    padding: 1rem 1.5rem;
    transition: all 0.4s;
    position: relative;

    /* & > span {
        display: none;
    } */
}
/* .navigation_link .nav-link{
    color: white;
} */

.navigation_item a {
    color: white;
    text-decoration: none;
    transition: all 0.3s ease-in-out;
    font-size: 0.9rem;
}
.navigation_item a:hover {
    color: var(--secondary-color);
    text-decoration: none;
    transition: all 0.3s ease-in-out;
    font-size: 0.9rem;
}



.navigation_link .nav-link:hover {
    color: gray !important;
    }
.navigation_link:hover,
.navigation_link:active{
    /* background-position: 100%; */
    color: var(--main-color);
}

/* // on scroll  */
.navbar.scrolled{
    box-shadow: 0px 0px 6px -1px rgba(0,0,0,0.2);
    transition:  300ms linear;

}
.navbar-scroll-change.scrolled {
    background-color: white;
    border-bottom: 0;
    padding-top: 8px;
    padding-bottom: 8px;
    transition: white 300ms linear;

  }

.navbar-scroll-change.scrolled a{
    color: var(--main-color);

}

.navigation_item .nav-link.active{
    color: var(--secondary-color);
}


.navbar-scroll-change.scrolled a:hover{
    color:var(--main-color);
}
.navbar-scroll-change.unscrolled,
.navbar-scroll-change {
    transition: white 500ms linear;
}


/* // Custom hamburger  */
.line {
  position: relative;
}
.hamburger {
  display: none;
}
.line,
.line::after,
.line::before {
  content: "";
  background-color: var(--secondary-color);
  width: 2rem;
  display: inline-block;
  height: 0.2rem;
  border-radius: 12px;
  left: 0;
  transition: all 0.3s;
}
.line::after {
  top: -0.8rem;
  position: absolute;
}
.line::before {
  top: 0.8rem;
  position: absolute;
}
.checked > .line::after {
    top: 0;
    transform: rotate(135deg);
}
.checked > .line::before {
    top: 0;
    transform: rotate(-135deg);
}
.checked > .line {
    background-color: transparent;
}

/* FOOTER  */
/* .footer {
    position: relative;
    bottom: 0;
    width: 100%;
    padding: 2rem 1rem;
    font-size: 0.9rem;
    line-height: 1.2;
    background-color: var(--main-color);
    color: white;
} */

.footer {
    position: fixed;
    bottom: 0;
    z-index: -1;
    width: 100%;
    height: 130px;
    padding: 2rem 1rem;
    font-size: 0.9rem;
    line-height: 1.2;
    background-color: var(--main-color);
    color: white;
}
.footer a:hover {
    color: white;
}
.footer-top {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}
.footer img {
    width: 200px;
}

.footer a:hover i {
    color: var(--secondary-color);
}


.footer a i{
    color: var(--red);
}

.blocco-footer{
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1rem;
}
.blocco-footer-sx, .blocco-footer-dx{
    display: flex;
    align-items: center;
}
.blocco-footer-dx .mail-footer{
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: white;
    margin-left: 0.5rem;
}

/* HOME PAGE  */

.card{
    border: 0;
    border-radius: 0;
}
.index {
    background:
    url(/img/home.png) fixed center center no-repeat;
    min-height:70vh;
    background-size:cover;
    height:100%;
    position: relative
}

.index h1{
    font-size: 72px;
}
.index h3{
    font-size: 27px;
}

.titolo-home{
    color: white;
    position: absolute;
    top: 30vh;
}

.blocco-1{
    margin: 4rem 0 8rem 0;
}
.blocco-1 h3{
    line-height: 1.6;
}

.blocco-2 .card .card-header{
    display: flex;
align-items: center;
justify-content: space-between;
padding-bottom: 0rem;
background-color: white;
border-bottom: 1px solid var(--azzurro);
}


.blocco-2 .card .card-header .sottotitolo{
    color: var(--azzurro);
}

/* custom */

.container-custom{
    padding: 3rem 0;
    margin-bottom: 1rem;
    height: 600px;
    width: 100%;
}
.container-custom .immagini-custom{
    position: relative;
    width: 100%;
    height: auto;
}
.container-custom .immagini-custom .custom-1, .container-custom .immagini-custom .custom-2, .container-custom .immagini-custom .custom-3 {
    position: absolute;
}
.container-custom .immagini-custom .custom-1 img, .container-custom .immagini-custom .custom-2 img, .container-custom .immagini-custom .custom-3 img {
    position: absolute;
    width: 600px;
    height: auto;
    box-shadow: 0px 0px 3px 3px rgba(0,0,0,0.1);
    border-radius: 20px;
}

.container-custom .immagini-custom .custom-1 img:hover, .container-custom .immagini-custom .custom-2 img:hover, .container-custom .immagini-custom .custom-3 img:hover {
    box-shadow: 0px 0px 15px 8px rgba(0,0,0,0.1);
}
.container-custom .immagini-custom .custom-1{
    left: 0px;
    top: 2rem;
    transform: rotate(-3deg);
    z-index: 2;
}
.container-custom .immagini-custom .custom-2{
    left: 29%;
    top: 2rem;
    z-index: 3;
}
.container-custom .immagini-custom .custom-3{
    right: 650px;
    top: 1.5rem;
    transform: rotate(3deg);
    z-index: 1;
}

.container-custom .immagini-custom .custom-1:hover{
    z-index: 5;
    transition:0.1s ease-in-out;
    transform: scale(101%);
}
.container-custom .immagini-custom .custom-2:hover{
    z-index: 6;
    transition:0.1s ease-in-out;
    transform: scale(101%);
}
.container-custom .immagini-custom .custom-3:hover{
    z-index: 4;
    transition:0.1s ease-in-out;
    transform: scale(101%);
}

.bg-fluid{
    background: url(/img/home.png)fixed center center no-repeat;
    background-size:cover;
    height: 320px;
    color: white;
}
.bg-fluid h2{
    color: white;
}


.bg-blue{
    background-color: var(--blue-light);
}

.card-transparent{
    background-color: transparent;
}
.card-transparent .descrizione{
    margin-top: 1rem;
}
.card-transparent .descrizione h3{
    border-bottom: 1px solid var(--azzurro);
    padding-bottom: 0.75rem;
    margin-bottom: 1.5rem;
}

/* chi siamo */

.img-grid{
    height: 130px;
    width: auto;
  }

  .bg-fluid#chi-siamo{
    height: 420px;
}

#chi-siamo h4, #chi-siamo h1{
    color: white;
}

.chi-siamo{
    position: relative;
    /* margin-bottom: 360px; */
    margin-bottom: 420px;
}
.chi-siamo-loghi{
    position: absolute;
    top: -9.5rem;
    width: 100%;
}

.chi-siamo-loghi .card{
    box-shadow: 0px 0px 3px 3px rgba(0,0,0,0.1);
    height: 115px;
    margin-bottom: 1rem;
}
.chi-siamo-loghi .card .card-body{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 100%;
}


/* contattaci  */
#contattaci .form-control{
    border: 0;
    border-radius: 0;
}
.testo-contattaci{
    text-align: center;
    width: 50%;
    margin-bottom: 2rem;
}

/* multilingua */

.lang-active{
    transform: scale(1.1);
    box-shadow: 0px 0px 0px 2px rgba(0,0,0,0.1);
    border-radius: 50%;
}

.eng:hover, .ita:hover, .esp:hover, .por:hover{
    transform: scale(1.1);
    box-shadow: 0px 0px 0px 2px rgba(0,0,0,0.1);
    border-radius: 50%;
    transition: ease-in;
}

.img-ita, .img-eng, .img-esp, .img-por{
    box-shadow: 0px 0px 3px 4px rgba(0,0,0,0.1);
    border-radius: 25px;
}
.testo-multilingua{
    width: 50%;
}
/* classi utili */
.pointer{
    cursor: pointer;
}
.w-60{
    width: 60% !important;
}
.border-bottom{
    border-bottom: 1px solid var(--azzurro) !important;
}
.p-relative{
    position: relative;
}
.bg-white{
    background-color: white !important;
}
.mt-desktop{
    margin-top: 3rem;
}
.pb-6{
    padding-bottom: 7rem;
}

/* SLIDER  */
.slick-dots li button {
    border-radius: 50%;
    background: var(--main-color);
    color: var(--secondary-color);
    opacity: 0.5;
}
.slick-dots .slick-active > button {
    color: var(--secondary-color);
    background: var(--secondary-color);
    opacity: 1;
}
.slick-dots li button::before {
    font-size: 46px;
    padding-left: 1px;
    opacity: 1;
    color: var(--main-color);
}
.slick-dots li.slick-active > button::before {
    font-size: 46px;
    padding-left: 1px;
    opacity: 1;
    color: var(--secondary-color);
}
.slick-prev, .slick-next {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    color: var(--main-color);
    background: var(--secondary-color);
}
.slick-prev:hover, .slick-prev:focus, .slick-next:hover, .slick-next:focus {
    color: var(--secondary-color);
    outline: none;
    background:var(--main-color);
}
.slick-prev {
    left: -35px;
}
.slick-next {
    right: -35px;
}



/* animazioni */
.fade-in {
    -webkit-animation: fade-in 0.3s ease-in 0.2s both;
    -moz-animation: fade-in 0.3s ease-in 0.2s both;
    -o-animation: fade-in 0.3s ease-in 0.2s both;
    animation: fade-in 0.3s ease-in 0.2s both;
}
@-webkit-keyframes fade-in {
    0% {
      opacity: 0;
    }
    100% {
      opacity: 1;
    }
}
@keyframes fade-in {
    0% {
      opacity: 0;
    }
    100% {
      opacity: 1;
    }
}
.fade-in-2 {
    -webkit-animation: fade-in 0.3s ease-in 0.4s both;
    -moz-animation: fade-in 0.3s ease-in 0.4s both;
    -o-animation: fade-in 0.3s ease-in 0.4s both;
    animation: fade-in 0.3s ease-in 0.4s both;
}

.fade-in-3{
    animation: fade-in 0.5s ease-in 0.5s both;
}

.fade-in-4{
    animation: fade-in 0.7s ease-in 0.7s both;
}
@-webkit-keyframes fade-in-2 {
    0% {
      opacity: 0;
    }
    100% {
      opacity: 1;
    }
}
@keyframes fade-in-2 {
    0% {
      opacity: 0;
    }
    100% {
      opacity: 1;
    }
}

.slide-right {
	animation: slide-right 0.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
}

 @keyframes slide-right {
    0% {
      transform: translateX(-100px);
    }
    100% {
      transform: translateX(0);
    }
  }


  .slide-left {
	animation: slide-left 0.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
}

 @keyframes slide-left {
    0% {
      transform: translateX(100px);
    }
    100% {
      transform: translateX(0);
    }
  }

  .scale-up-bottom {
	animation: scale-up-bottom 0.2s cubic-bezier(0.390, 0.575, 0.565, 1.000) 0.3s both;
}


 @keyframes scale-up-bottom {
    0% {
      transform: scale(0.5);
      transform-origin: 50% 100%;
    }
    100% {
      transform: scale(1);
      transform-origin: 50% 100%;
    }
  }

  .slide-fwd-center {
	animation: slide-fwd-center 0.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
}


 @keyframes slide-fwd-center {
    0% {
      transform: translateZ(0);
    }
    100% {
      transform: translateZ(160px);
    }
  }

  .text-short-desktop{
    width: 50%;
  }


/* MEDIA QUERIES  */
@media all and (max-width: 1200px) {
    .navbar-scroll-change.scrolled {
        /* padding-top: 21px; */
        padding-bottom: 10px;
    }
    .container-custom{
        height: 670px;
    }
    .container-custom .immagini-custom .custom-3{
        top: 8.5rem;
    }
    .grid{
        display: block;
    }
    /* .grid-4{
        display: block;
    } */
    .footer-top {
        flex-wrap: wrap;
    }
    .footer-top > * {
        flex: 1 0 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
        margin-bottom: 1rem;
    }
}

@media all and (max-width: 992px) {
    main{
        margin-bottom: 0;
    }
    .footer{
        position: absolute;
        z-index: 1;
    }
    .text-short-desktop{
        width: 75%;
    }

    .navigation_list{
        flex-direction: column;
    }
    .navbar-toggler-icon {
        background: var(--secondary-color);
    }
    .navbar-dark .navbar-toggler{
        background-color: var(--secondary-color);
    }
    .navbar-brand img {
        top: 10px;

    }
    .titolo-home{
        top: 20vh;
    }
   .titolo-destro{
       top: 35vh;
   }
    .testo-multilingua{
        width: 85%;
    }
    .container-custom{
        height: 560px;
    }
    .container-custom .immagini-custom .custom-1 img, .container-custom .immagini-custom .custom-2 img, .container-custom .immagini-custom .custom-3 img {
        width: 440px;
    }
    .container-custom .immagini-custom .custom-1{
        top: 5.5rem;
    }
    .container-custom .immagini-custom .custom-2{
        top: 0rem;
    }
    .container-custom .immagini-custom .custom-3{
        top: 5.5rem;
        right: 440px;
    }

    .testo-contattaci{
        width: 75%;
    }
    .grid-4 {
        display: block;
    }
    /* .grid-4 {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        column-gap: 3rem;
        row-gap: 2rem;
    } */
    .chi-siamo {
        margin-bottom: 1rem;/*320px;*/
    }
    .card-chi-siamo{
        padding: 0 1rem;
    }
    .chi-siamo-loghi{
        position: static;
    }
    .navbar-collapse .navbar-nav {
        padding-left: 1rem;
        padding-right: 1rem;
        margin-bottom: 0.5rem;
    }

    .navbar-collapse .navbar-nav .nav-link {
        text-align: center;
    }
    /* .navbar-collapse {
        background: rgba(255,255,255,0.9);
    } */
    .nav-link.img-bandiere img{
        width: 25px;
        height: auto;
    }
    .navbar-collapse {
        background: white;
    }
    .navigation_item a {
        color: var(--main-color);
      }


    .footer .order-2 img {
        margin-top: 2rem;
    }
    .footer .order-3 img {
        margin-top: 3rem;
    }

}
/*
@media all and (min-width: 992px) {

    .navbar-expand-lg .navbar-nav .nav-link {
        padding-left: 1.5rem;
        padding-right: 1.5rem;
      }

} */

@media all and (max-width: 768px) {
    .text-short-desktop{
        width: 100%;
    }
    .order-md-first{
        order: -1;
    }
    .container-custom{
        height: 630px;
    }
    .container-custom .immagini-custom .custom-1{
        top: 0rem;
    }
    .container-custom .immagini-custom .custom-2{
        top: 6rem;
        left: 20%;
    }
    .container-custom .immagini-custom .custom-3{
        top: 12.5rem;
    }

    .titolo-home{
        top: 20vh;
    }
   .titolo-destro{
       top: 35vh;
   }
   .grid{
        grid-template-columns: repeat(2, 1fr);
        gap: 3rem;
    }
    .img-ita, .img-eng, .img-esp, .img-por{
        max-width: 60%;
    }

    .chi-siamo {
        margin-bottom: 300px;
      }

}

@media all and (max-width: 576px) {

    .index h1{
        font-size: 55px;
    }
    .mt-desktop{
        margin-top: 0rem;
    }
    .blocco-1 {
        margin: 4rem 0 4rem 0;
    }

    .bg-fluid {
        height: 355px;
    }

    .container-custom .immagini-custom .custom-1 img, .container-custom .immagini-custom .custom-2 img, .container-custom .immagini-custom .custom-3 img {
        width:300px;
    }
    .container-custom{
        height: 550px;
    }
    .container-custom .immagini-custom .custom-1 {
        top: 10rem;
    }
    .container-custom .immagini-custom .custom-2 {
        top: 18rem;
        left: 12%;
    }
    .container-custom .immagini-custom .custom-3 {
        top: -0.5rem;
        right: 85%;
    }

    .img-ita, .img-eng, .img-esp, .img-por{
        max-width: 80%;
    }
    .chi-siamo {
        margin-bottom: 400px;
      }
      .chi-siamo-loghi {
        top: -4.5rem;
      }

}

@media all and (max-width: 528px){
    #chi-siamo h4{
        font-size: 18px;
    }
    .navbar{
        height: 73px;
    }
    .scrolled .navbar-brand img {
        top: 10px;
    }
    #contattaci{
        padding-bottom: 10rem;
    }
    .footer{
        height: 160px;
    }
    .blocco-footer{
        flex-direction: column;
    }

    .blocco-footer-dx{
        justify-content: start;
        flex-direction: row-reverse;
        margin: 1rem 0;
    }
    .blocco-footer-dx .mail-footer{
        margin-left: 0;
        margin-right: 0.5rem;
    }

    .navbar-scroll-change.scrolled {
        /* padding-top: 21px; */
        padding-bottom: 0;
    }
    .nav-items{
        margin-left: 0;
    }
    .navigation_list{
        padding-left: 0;
    }
}

@media all and (max-width: 368px){
    /* .container-custom {
        height: auto;
      }
    .container-custom .immagini-custom .custom-1, .container-custom .immagini-custom .custom-2, .container-custom .immagini-custom .custom-3 {
    position: relative;
    }
    .container-custom .immagini-custom .custom-1 {
        transform: rotate(0deg);
        z-index: 1;
      } */
      .container-custom .immagini-custom .custom-1 img, .container-custom .immagini-custom .custom-2 img, .container-custom .immagini-custom .custom-3 img {
        width: 250px;
      }
}
