/*
Theme Name: INSVLA by Artemida
Theme URI: https://artemida.it
Author: Artemida [ istinto creativo ]
Author URI: https://artemida.it
Template:   b5st
Version:    1.0
Text Domain: insvla
License: Common
License URI: 
*/


html, body {
   width: 100% !important;
   height: 100% !important;
	margin:0 !important;
	padding:0 !important;
}

body {
  color: #fff;
  font-family: 'Montserrat', sans-serif;
  font-size: 24px;
  
	height: 100%;
	background: rgb(1,105,107);
	background: -moz-radial-gradient(circle, rgba(1,105,107,1) 0%, rgba(0,65,66,1) 100%);
	background: -webkit-radial-gradient(circle, rgba(1,105,107,1) 0%, rgba(0,65,66,1) 100%);
	background: radial-gradient(circle, rgba(1,105,107,1) 0%, rgba(0,65,66,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#01696b",endColorstr="#004142",GradientType=1);
}
.sfondogreen {
	background: rgb(1,105,107);
	background: -moz-radial-gradient(circle, rgba(1,105,107,1) 0%, rgba(0,65,66,1) 100%);
	background: -webkit-radial-gradient(circle, rgba(1,105,107,1) 0%, rgba(0,65,66,1) 100%);
	background: radial-gradient(circle, rgba(1,105,107,1) 0%, rgba(0,65,66,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#01696b",endColorstr="#004142",GradientType=1);
}
#ftg-11 .tile:hover img {
    -moz-transform: -moz-rotate(0deg) -moz-scale(1.2);
    -webkit-transform: -webkit-rotate(0deg) -webkit-scale(1.2);
    -o-transform: -o-rotate(0deg) -o-scale(1.2);
    -ms-transform: -ms-rotate(0deg) -ms-scale(1.2);
    transform: rotate(0deg) scale(1.2) !important;
}
#ftg-11 .tile .tile-inner:before {
    background-color: rgba(0, 0, 0, 0.4) !important;
}

@keyframes fadeIn{
  100%{
    transform: scale(1.03);
    opacity: 0;
  }
}
#gallery-1 .gallery-item {
    padding: 0 10px 0 10px;
}
.thecontent {
	display: flex;
	height: 70vh;
  justify-content: center;
  align-items: center;
  position: relative;
}
.container {
  width: 100%;
}



.title {
  font-size: 2.2rem;
  margin-bottom: 1rem;
}

.subtitle {
  font-size: 1rem;
  margin-bottom: 2rem;
}

.btn {
  background: none;
  border: none;
  text-align: center;
  font-size: 1rem;
  color: #FFF;
  background-color: #005f61;
  padding: 0.8rem 1.8rem;
  border-radius: 2rem;
  cursor: pointer;
    -webkit-transition: background-color 500ms linear;
    -ms-transition: background-color 500ms linear;
    transition: background-color 500ms linear;
}
.btn:hover {
  color: #005f61;
  background-color: #ddcba3;
}


.menu {
  position: relative;
  padding: 50px 0;
z-index: 999;
}
.menu > ol {
  display: flex;
}
.menu li {
	white-space: nowrap;
	list-style: none;
}
@media only screen and (max-width: 800px) {
  .menu > ol {
    display: block;
  }
}
.menu > ol > .menu-item {
  display: inline-block;
  position: relative;
	display: flex;
    align-items: center;
	text-transform: uppercase;
	font-weight: 400;
}

.menu > ol > .menu-item.current > a {
	color: #f34ea4;
}
@media only screen and (max-width: 800px) {
  .menu > ol > .menu-item {
    display: block;
  }
}
.menu > ol > .menu-item:hover .sub-menu {
  opacity: 1;
}
.menu > ol > .menu-item:hover .sub-menu li:nth-child(1) {
  animation-name: subMenuAnimation;
  animation-duration: 300ms;
  animation-delay: 100ms;
  animation-timing-function: ease-in-out;
  animation-fill-mode: forwards;
}
.menu > ol > .menu-item:hover .sub-menu li:nth-child(2) {
  animation-name: subMenuAnimation;
  animation-duration: 300ms;
  animation-delay: 200ms;
  animation-timing-function: ease-in-out;
  animation-fill-mode: forwards;
}
.menu > ol > .menu-item:hover .sub-menu li:nth-child(3) {
  animation-name: subMenuAnimation;
  animation-duration: 300ms;
  animation-delay: 300ms;
  animation-timing-function: ease-in-out;
  animation-fill-mode: forwards;
}
.menu > ol > .menu-item > a {
  color: #fff;
  text-decoration: none;
  font-size: 1.2vw;
  font-weight: 400;
  letter-spacing: 1px;
  margin: 0 50px 0 0;
  display: block;
}
	#logosvg {
		width:110px;
		height: auto;
	}

	#logosvgsolo {
		width:140px;
		height: auto;
	}

	#logobibenda {
		width:120px;
		height: auto;
	}
	#logosommelier {
		width:290px;
		height: auto;
	}

@media only screen and (min-width:1141px) and (max-width: 1275px) {
	img#logobibenda {
		width:90px;
		height: auto;
	}
	img#logosommelier {
		width:180px;
		height: auto;
	}
}
@media only screen and (min-width:990px) and (max-width: 1140px) {
	img#logobibenda {
		width:80px;
		height: auto;
	}
	img#logosommelier {
		width:140px;
		height: auto;
	}
}
img.letteramenu {
    width: 60px;
    margin-right: 1rem;
}
.wpcf7-form-control-wrap input[type="text"], 
.wpcf7-form-control-wrap input[type="tel"], 
.wpcf7-form-control-wrap input[type="email"] {
	background-color: rgba(255,255,255,.5);
	padding:10px 12px;
	color: #005f61;
	border: 0;
    margin: 1rem;
} 
@media only screen and (max-width:767px) {
	.wpcf7-form-control-wrap input[type="text"], 
	.wpcf7-form-control-wrap input[type="tel"], 
	.wpcf7-form-control-wrap input[type="email"] {
		margin:0;
	}
}
.containervideo a {
	text-decoration: none;
}
.containervideo a:hover {
	color:#f6e4bd;
}
.containervideo img {
	max-width:140px;
	height:auto;
}
#gallery-1 {
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    justify-content: space-around;
}
#gallery-1 br {
	display: none;
}
#gallery-1 .gallery-item {
	width: auto !important;
	height: 150px;
}
@media only screen and (max-width: 991px) {
  #gallery-1 .gallery-item {
		width: 33% !important;
	}

}
@media only screen and (max-width: 800px) {
  .menu > ol > .menu-item > a {
    margin: 10px 0;
    font-size: 30px;
  }
  #gallery-1 .gallery-item {
		width: 50% !important;
	}
}
@media only screen and (max-width: 350px) {
  #gallery-1 .gallery-item {
		width: 100% !important;
	}
}
.menu > ol > .menu-item .sub-menu {
  padding: 28px 25px 0;
  position: absolute;
  left: 0;
  opacity: 0;
	top: 45%;
}
@media only screen and (max-width: 800px) {
  .menu > ol > .menu-item .sub-menu {
    left: 100%;
    top: -32px;
  }
}
.menu > ol > .menu-item .sub-menu li {
  opacity: 0;
}
.menu > ol > .menu-item .sub-menu li a {
  color: #fff;
  text-decoration: none;
  font-size: 1vw;
  font-weight: 400;
  letter-spacing: 1px;
  margin: 12px 0;
  display: block;
  white-space: nowrap;
  text-transform: uppercase;
  transition: color 0.3s cubic-bezier(0.13, 1.07, 0.84, 1);
}
@media only screen and (max-width: 1080px) {
  .menu > ol > .menu-item .sub-menu li a {
    font-size: 13px;
  }
}
.menu > ol > .menu-item .sub-menu li a:hover {
  color: #f34ea4;
}
.menu .menu-shape {
  position: absolute;
  left: -62px;
  top: -55px;
  z-index: -1;
}
@media only screen and (max-width: 1440px) {
  .menu .menu-shape {
    left: -32px;
  }
}
@media only screen and (max-width: 1180px) {
  .menu .menu-shape {
    left: -15px;
    top: -62px;
  }
}
@media only screen and (max-width: 800px) {
  .menu .menu-shape {
    left: -35px;
  }
}
.menu .menu-shape svg {
  position: relative;
  display: block;
  width: 10vw;
  height: 10vh;
  min-height: 150px;
  margin: 0 auto;
}
@media only screen and (max-width: 800px) {
  .menu .menu-shape svg {
    width: 80px;
    height: 80px;
  }
}

@keyframes subMenuAnimation {
  0% {
    opacity: 0;
    transform: translateX(-30px);
  }
  100% {
    opacity: 1;
    transform: translateX(0px);
  }
}

.menutop {
	justify-content: space-between;
}
.info {
  position: absolute;
  left: 0;
  bottom: 0;
  color: #fff;
  text-align: center;
  width: 100%;
  padding-bottom: 30px;
  font-size: 20px;
  display: none;
}

.link {
  position: absolute;
  left: 0;
  bottom: 0;
  padding: 20px;
  z-index: 9999;
}
.link a {
  display: flex;
  align-items: center;
  text-decoration: none;
  color: #fff;
}
.link .fa {
  font-size: 28px;
  margin-right: 8px;
  color: #fff;
}

.swiper-container-vertical>.swiper-pagination-bullets {
    top: 30vh;
}

video {
	max-width: 100%;
    max-height: 100%;
}




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

    .swiper-slide {
      text-align: center;
      font-size: 18px;
      background: none;
      /* Center slide text vertically */
      display: -webkit-box;
      display: -ms-flexbox;
      display: -webkit-flex;
      display: flex;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      -webkit-justify-content: center;
      justify-content: center;
      -webkit-box-align: center;
      -ms-flex-align: center;
      -webkit-align-items: center;
      align-items: center;
    }

    .swiper-container-v {
      background: none;
    }
    
    .swiper-container-h
    {
      width:96%;
      margin:0px auto;
    }
    .swiper-container-h .swiper-wrapper
    {
      height:80%;
      margin-top:3%;
    }

    .swiper-pagination-bullet-active {
      background-color: #ddcba3;
    }

.swiper-button-next, .swiper-container-rtl .swiper-button-prev {
    background-image: url('commons/img/arrow.svg');
}
.swiper-button-prev, .swiper-container-rtl .swiper-button-next {
    background-image: url('commons/img/arrow.svg');
	transform: scaleX(-1);
}

p {
	font-size: 1rem;
    text-align: justify;
}
.h-16-9 {
	height: calc(100vw * 9 / 16);
}
#site-footer .text-small {
	font-size: .7rem;
}
#site-footer {
	z-index: 999;
}
.text-insvla {
	color:#ddcba3;
}
.bg-insvla {
	background-color:#ddcba3;
	color: #005f61;
	
	 background-color: #ddcba3;
  background-image:
    radial-gradient(ellipse at 0% 0%, #ddcba3 0%, transparent 55%),
    radial-gradient(ellipse at 100% 100%, #bfaa7a 0%, transparent 80%);
	background-size: 100% 100%;
	
}
.p2 {
    font-size: 1.5rem;
}
.margintop-2 {
	margin-top: -.4rem;
	position: absolute;
}

form.wpcf7-form p {
	display: block;
    margin: auto;
    width: 100%;
    text-align: center;
}

.wpcf7 form.sent .wpcf7-response-output {
    border: none !important;
	font-size: 1rem;
}

.wpcf7-form.sent .aftersend,
.wpcf7-form.sent .wpcf7-submit {
	display:none;
}
.wpcf7-form-control.wpcf7-submit {
	text-wrap: wrap;
	display: block;
	margin:auto;
}
.wpcf7-spinner {
	position:absolute;
}

.text-white a {
	color: #FFF;
}


.scene {
  display: inline-block;
  /*width: 200px;
  height: 260px;*/
/*   border: 1px solid #CCC; */
  margin: 40px 0;
  perspective: 600px;
	
	width: 80%;
    height: 100%;
    padding: 2%;
	
}
.scene.scenesmall {
	width: 170px;
	height: auto;
	padding:0;
	margin:0;
}
.card {
  position: relative;
  cursor: pointer;
  transform-style: preserve-3d;
  transform-origin: center right;
  transition: transform 1s;
	
	padding:0;
	max-width: 100%;
}

.card.is-flipped {
  transform: translateX(-100%) rotateY(-180deg);
}

.card__face {
  position: absolute;
  width: 100%;
  height: 100%;
  color: white;
  text-align: center;
  backface-visibility: hidden;
}

.card__face--back {
  transform: rotateY(180deg);
}
.card img {
	box-shadow: 0 0 32px 0 rgba( 0, 0, 0, 0.3 );
  border: 1px solid rgba( 255, 255, 255, 0.5 );
}
.h-70vh {
	height: 70vh;
}
.h-80vh {
	height: 80vh;
}
.h-100vh {
	height: 100vh;
}

.btn-close.position-absolute {
	right:0;
}
.cursor-pointer {
	cursor: pointer;
}
.posterbutton {
	max-width: 180px;
    height: auto;
}
.coverpage {
	top:0;
	left:0;
	position: absolute;
	width:100%;
	height:100%;
	display: none;
	backdrop-filter: blur(4px);
}
.canvas {
  transition: 0.5s cubic-bezier(0.91, 0.06, 0.47, 1.05) transform;
}
.h7 {
    font-size: .7rem;
}
.canvas.show-nav .coverpage {
	display: block;
}

.canvas.show-nav {
  transform: translateX(-230px);
}
.canvas.show-nav .fa-window-close {
  display: block;
}
.canvas.show-nav .fa-bars {
  display: none;
}

.canvas.show-nav .side-nav {
	display: block;
}
.canvas .side-nav {
  position: absolute;
  display: block;
  width: 230px;
  transform: translateX(calc(100vw));
  color: #E6E9F7;
	display: none;
  background: rgb(1,105,107);
background: -moz-radial-gradient(circle, rgba(1,105,107,1) 0%, rgba(0,65,66,1) 100%);
background: -webkit-radial-gradient(circle, rgba(1,105,107,1) 0%, rgba(0,65,66,1) 100%);
background: radial-gradient(circle, rgba(1,105,107,1) 0%, rgba(0,65,66,1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#01696b",endColorstr="#004142",GradientType=1);
  padding-top: 20px;
  min-height: 100%;
	
	-webkit-box-shadow: inset 8px 0px 8px -1px rgba(0,0,0,0.36); 
box-shadow: inset 8px 0px 8px -1px rgba(0,0,0,0.36);
	
}
.canvas .side-nav a {
  color: #EEE;
  display: block;
  padding: 5px 10px;
  font-size: 0.6em;
  text-transform: uppercase;
  letter-spacing: 2px;
	text-decoration:none;
}

.main-content {
  padding: 50px;
}

.toggle-button, .toggle-button:hover {
  font-size: 1.2em;
  color: #EEE;
display: flex;
    align-items: center;
	text-decoration: none;
}

.toggle-button small {
	font-size: .9rem;
}
.fa-window-close {
  display: none;
  margin: 12px 0px;
}

.cliccaqui {
font-size: 1.2rem;
position: absolute;
width: 100%;
bottom: -8%;
}

