/*
 Theme Name:     NextAwards Child
 Theme URI:      https://example.com/nextawards-child
 Description:    Tema child di NextAwards
 Author:         Williams Bonomi
 Author URI:     https://itinerariodiviaggio.com
 Template:       nextawards
 Version:        1.0.0
 Text Domain:    nextawards-child
*/

/* -------------------------------------------------------------------------------- */
/* ! Typography */
/* -------------------------------------------------------------------------------- */

.text-3 {font-size: 1.5rem;}

.bold {font-weight: 700;}

/* -------------------------------------------------------------------------------- */
/* ! Menu */
/* -------------------------------------------------------------------------------- */
.icon-hamburger{display: block;}

.header__logo-img,
.header__logo_white-img{width: 140px;height: auto;}

.menu{   
  position: absolute; top:60px; right:0; background-color: var(--site-bg); width: 40%;
  height: 100vh; margin: 0 -5% 0 -5%; 
  overflow: auto;transition: all 1s cubic-bezier(.215, .61, .355, 1);padding-left: 0; padding-top: 40px; transform: translateX(130%);
}

.menu li{width: 90%;margin: 0 5%; border-bottom: 1px solid #000}
.menu-open .menu{transform: translateX(0%); }
.menu-open .menu > li:last-child{margin-bottom: 150px;position: relative;}

.icon-hamburger{height: 50px;width: 50px;margin-left: 20px;position:absolute; top: 10px; right:-15px; display: block;border:none; background: transparent;z-index: 9999;}
.icon-hamburger strong{height: 1px;margin-top:-1px; overflow: hidden;width: 1px;display: block;margin: 0;padding: 0;}
.icon-hamburger span{height: 2px; width: 30px;background: var(--site-text-color);position: relative;display: block;margin-bottom: 11px;transition: all 0.2s cubic-bezier(.215, .61, .355, 1);}

.menu-open .icon-hamburger span:nth-child(2){transform: rotate(45deg) translateY(9px);}
.menu-open .icon-hamburger span:nth-child(3){transform: rotate(-45deg) translateY(-9px);}
.header__content{padding-right: 50px;height: 60px;}
.header__quick{display: flex; justify-content: flex-end;}
.header__quick ul{padding-left: 0;}

.page-template-menu-black .spacer,
.page-template-blank .spacer,
.page-template-contained-no-title .spacer{height:44px}
.page-template-menu-black .header__content{border:none}

.menu li { border-bottom: none; }
.menu-header li a { font-size: 20px; line-height: 22px;}
.menu-header li { transition: all 1s cubic-bezier(.215, .61, .355, 1); }
.menu-header li:hover {
  border-bottom: 1px solid var(--link-color);
  box-shadow: 
    0 4px 8px 0 rgba(235, 191, 242, 0.5),
    0 6px 20px 0 rgba(235, 191, 242, 0.3);
}

.secondary-menu li {transition: all 1s cubic-bezier(.215, .61, .355, 1);}
.secondary-menu li:hover {
    border-bottom: 1px solid var(--link-color);
    box-shadow: 0 4px 8px 0 rgba(235, 191, 242, 0.5), 0 6px 20px 0 rgba(235, 191, 242, 0.3);
}
.secondary-menu a { font-size: 20px !important; }

ul { padding: 20px; }

@media (min-width: 1190px) {
    .menu {padding-top: 80px;}
    .menu-open .header {background-color: var(--site-bg);}

    .home .header {background: transparent;}
    .home .menu {top: 0;}
    .home.scroll-down .menu {top: 60px;}

    .page-template-menu-trasparent .icon-hamburger span {background: #FFF;}
    .page-template-menu-trasparent.menu-open .icon-hamburger span {background: #333;}
    .scroll-down .icon-hamburger span {background: #333;}
    .page-template-menu-trasparent .header__logo-img,
    .page-template-menu-trasparent .header [class^='icon-']{filter: brightness(1) invert(0);}
    .page-template-menu-trasparent .header__logo{color:#333}

    .page-template-menu-trasparent .menu li a,
    .page-template-menu-trasparent .header__quick ul li a {color:#333}

    .page-template-menu-trasparent.scroll-down .header{background: var(--site-bg);}

    .reveal-menu {
      transform: scaleY(0);
      transform-origin: top;
      transition: transform 1s cubic-bezier(.215, .61, .355, 1);
      overflow: hidden;
    }
    
    .menu-open .reveal-menu:nth-of-type(1) {
        transition-delay: 0.3s;
        transform: scaleY(1);
    }
    
    .menu-open .reveal-menu:nth-of-type(2) {
        transition-delay: 0.66s;
        transform: scaleY(1);
    }
    
    .menu-open .reveal-menu:nth-of-type(3) {
        transition-delay: 1s;
        transform: scaleY(1);
    }

    .menu-open .reveal-menu:nth-of-type(4) {
      transition-delay: 1.33s;
      transform: scaleY(1);
  }
    
}

@media (max-width: 1190px) {
  .menu {width: 105vw; padding-bottom: 200px;}
}

@media (min-width: 768px) {
  .menu-position {
    align-self: center;
    margin-top: -120px;
  }
}

/* -------------------------------------------------------------------------------- */
/* ! Header */
/* -------------------------------------------------------------------------------- */

.header__logo-img, .header__logo_white-img {
  width: 110px;
  height: auto;
  padding-top: 40px;
  z-index: 9;
  transition: all 1s cubic-bezier(.215, .61, .355, 1);
}

.scroll-down .header__logo-img, .header__logo_white-img {
  width: 70px;
  height: auto;
  padding-top: 0px;
}

.social-widget-area {padding: 20px;}
.menu li.wp-social-link { width: auto; }

@media (max-width: 1190px) {
  .header__logo-img, .header__logo_white-img {
    width: 70px;
    height: auto;
    padding-top: 0px;
  }

  .menu-open .header__logo-img, .menu-open .header__logo_white-img {
    width: 110px;
    padding-top: 40px;
  }
}

/* -------------------------------------------------------------------------------- */
/* ! Hero */
/* -------------------------------------------------------------------------------- */

.home .header__logo { opacity: 0; transition: all 1s cubic-bezier(.215, .61, .355, 1); }

.home.scroll-down .header__logo { opacity: 1; }

.cover-background-fade {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
}

.cover-background-fade img.cover-slide {
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0;
  transition: opacity 1.5s ease-in-out;
}

.cover-background-fade img.active {
  opacity: 1;
  z-index: 1;
}

.bg-color-over {
  background-color: #000 !important;
  opacity: 0.7;
}

/* -------------------------------------------------------------------------------- */
/* ! Swiper */
/* -------------------------------------------------------------------------------- */

.swiper-container {
  width: 100%;
  height: 100%;
}

.swiper-slide {
  text-align: center;
  font-size: 18px;
  background: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
}

.swiper-slide img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* -------------------------------------------------------------------------------- */
/* ! Swiper Parallax */
/* -------------------------------------------------------------------------------- */

swiper-container {
  width: 100%;
  height: 100%;
  background: #000;
}

swiper-slide {
  font-size: 18px;
  color: #000;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 40px 10vw;
  margin: 0;
  padding-top: 10vh;
  padding-bottom: 10vh;
}

.parallax-bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 130%;
  height: 100%;
  -webkit-background-size: cover;
  background-size: cover;
  background-position: center;
}

swiper-slide .title {
  font-size: 41px;
  font-weight: 300;
}

swiper-slide .subtitle {
  font-size: 21px;
}

swiper-slide .text {
  font-size: 14px;
  max-width: 400px;
  line-height: 1.3;
}

.swiper-button-next svg, .swiper-button-prev svg {
  color: #000 !important;
}

.col-50.swiper-text {
    align-self: center;
}

.swiper-image {
  align-self: center;
}

.swiper-image img {
  border-radius: 999px;
  border: 4px solid #ABD3BC;
  max-width: 300px;
}

@media (max-width: 768px) {
  .swiper-image {padding-top: 30px !important; display: flex; justify-content: center;}
}

/* -------------------------------------------------------------------------------- */
/* ! Image Wall */
/* -------------------------------------------------------------------------------- */

    .image-wall {
        padding: 2rem;
        max-width: 100%;
        text-align: center;
    }

    .image-container {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
        gap: 1rem;
        max-width: 1200px;
        margin: 0 auto;
    }

    .image-item {
        position: relative;
        overflow: hidden;
        border-radius: 8px;
    }

    .image-item a {
        display: block;
        position: relative;
    }

    .image-item img {
        width: 100%;
        height: auto;
        aspect-ratio: 700/400;
        object-fit: cover;
        transition: transform 0.5s ease;
    }

    .image-item.slide-out img {
        transform: translateX(-100%);
    }

    .image-item.slide-in img {
        transform: translateX(100%);
    }

    .caption {
        position: absolute;
        bottom: 0;
        background: rgba(0,0,0,0.6);
        color: white;
        width: 100%;
        padding: 0.5rem;
        text-align: center;
        font-size: 0.9rem;
    }

    .nav-buttons {
        margin-top: 1.5rem;
    }

    .nav-buttons button {
        background-color: #333;
        color: white;
        border: none;
        padding: 0.5rem 1.2rem;
        margin: 0 0.5rem;
        cursor: pointer;
        border-radius: 5px;
        font-size: 1rem;
    }

    .nav-buttons button:hover {
        background-color: #555;
    }

    @media (max-width: 600px) {
        .image-item img {
            aspect-ratio: 7/4;
        }
    }

/* -------------------------------------------------------------------------------- */
/* ! Grid Wall */
/* -------------------------------------------------------------------------------- */
.row {
  display: -ms-flexbox; /* IE10 */
  display: flex;
  -ms-flex-wrap: wrap; /* IE10 */
  flex-wrap: wrap;
  padding: 0 4px;
  max-width: none;
}

/* Create four equal columns that sits next to each other */
.column {
  -ms-flex: 25%; /* IE10 */
  flex: 25%;
  max-width: 25%;
  padding: 0 4px;
}

.column img {
  margin-top: 8px;
  vertical-align: middle;
  width: 100%;
}

/* Responsive layout - makes a two column-layout instead of four columns */
@media screen and (max-width: 800px) {
  .column {
    -ms-flex: 50%;
    flex: 50%;
    max-width: 50%;
  }
}

/* -------------------------------------------------------------------------------- */
/* ! News */
/* -------------------------------------------------------------------------------- */

.news {padding: 0 30px !important;}
.mini-news .col-50{padding: 0 20px !important;}

.news h2 {font-size: 30px; font-weight: 500; line-height: 39px; margin: 0;}
.news p {font-size: 18px; font-weight: 400; line-height: 27px; color: #7a736a;}

.mini-news h2 {font-size: 20px; font-weight: 500; line-height: 39px; margin: 0;}
.mini-news p {font-size: 14px; font-weight: 400; line-height: 20px; color: #7a736a;}

.news img, .mini-news img {border-radius: 20px;}

.news__content {padding-top: 16px;}

.small-tag {
    grid-column-gap: 6px;
    background-color: #f3ece5;
    color: #7a736a;
    letter-spacing: .4px;
    text-transform: uppercase;
    border-radius: 24px;
    padding: 4px 10px;
    font-size: 11px;
    font-weight: 600;
    line-height: 14px;
    margin-bottom: 5px;
    transition: all 0.5s cubic-bezier(.215, .61, .355, 1);
    display: inline-block;
}

.small-tag:hover {background-color: #e9e2da; color: #7a736a;}

/* -------------------------------------------------------------------------------- */
/* ! Servizi */
/* -------------------------------------------------------------------------------- */

.post-type-archive-servizio .spacer, .servizio-template-default .spacer { height: 80px; }
.servizio-template-default h1 { text-transform: uppercase; }

.post-type-archive-servizio a { color: #cc5c61; }

.data-ritiro, .contact-list-menu {
    font-size: 16px;
    width: 100%;
    margin-top: 8px;
    height: 40px;
}

@media (max-width: 768px) {
  .post-type-archive-servizio .spacer, .servizio-template-default .spacer { height: 40px; }
}

/* -------------------------------------------------------------------------------- */
/* ! Icons */
/* -------------------------------------------------------------------------------- */
.icon-position{ overflow: hidden; font-size:1px; text-indent:-9999px;display:inline-block; margin: -3px 5px;width: 18px;height: 18px;background-size: 100%; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='ionicon' viewBox='0 0 512 512'%3E%3Cpath d='M192 0C86 0 0 86 0 192c0 77.5 113.3 200.8 168.5 256.7a24 24 0 0 0 33 0C270.7 392.8 384 269.5 384 192 384 86 298 0 192 0zm0 272a80 80 0 1 1 80-80 80 80 0 0 1-80 80z'/%3E%3C/svg%3E");}

.icon-1{width: 25px;height: 25px;}

/* -------------------------------------------------------------------------------- */
/* ! Helpers */
/* -------------------------------------------------------------------------------- */

.container {padding: 20px;}

.flex {display: flex;}
.dflex { display: flex; justify-content: space-around;}
.valign {align-self: center;}

.tw {color: #FFF;}
.dark-link {color: #333 !important;}
.light-link {color: #DDD !important;}
.invert {filter: invert(100%);}

.img-50 {width: 30%; height: auto;}

.pt-4 {padding-top: 10vh;}
.pt-5 {padding-top: 15vh;}
.pt-6 {padding-top: 20vh;}

.pb-6 {padding-bottom: 20vh;}

.h-100 {min-height: 100vh;}

@media (max-width: 768px) {
  .pt-5, .pt-6 { padding-top: 10vh; }
}