

@font-face{
	font-family: 'AmericanTypewriter';
	src:url(../../font/AmericanTypewriter.ttc);
	font-display: swap;
}
@font-face{
	font-family: 'Avenir Bold';
	src:url(../../font/AvenirNextLTPro-Bold.otf);
	font-display: swap;
}
@font-face{
	font-family: 'Avenir Condensed';
	src:url(../../font/AvenirNextCondensed.ttc);
	font-display: swap;
}

/** La parte sotto serve se vuoi usare i colori in variabili, se no cancella */
:root {
	--white: #ffffff;
	--black: #000000;
    --main-color:  #233a74;

}
/* Finisce qui */

body, html {
	overflow-x: hidden;
}

body { 
	font-family: 'Avenir';
	min-width: 100%;
	min-height: 100vh;
}

a {
	text-decoration: none;
	color: var(--main-color);
}


h2 {
	font-family: 'Avenir Bold';
	letter-spacing: 1px;
}



 





 





.overflow-hidden {
	overflow-x: hidden!important;
	overflow-y: hidden!important;
	overflow: hidden!important
}

/** Gestione barra di scroll */
::-webkit-scrollbar {
	width: 0!important;
	height: 0!important
}

::-webkit-scrollbar-track {
	background: var(--main-color-4)
}

::-webkit-scrollbar-thumb {
	background: var(--main-color)
}

::-webkit-scrollbar-thumb:hover {
	background: var(--main-color-3)
}

/** Finisce qui */



/** Gestione dei placeholder */
::placeholder {
	color: var(--body-color-t)!important;
	opacity: 1
}

:-ms-input-placeholder {
	color: var(--body-color-t)!important
}

::-ms-input-placeholder {
	color: var(--body-color-t)!important
}
/* Fine */

/* Preloader */
.preloader {
	background-color: #ffffffef;
	height: 100vh;
	width: 100vw;
	position: fixed;
	overflow: hidden;
	z-index: 2147483647;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	text-align: center
}

.preloader .spinner {
    display: inline-block;
    width: 64px;
    height: 64px;
    top: 50%;
    position: absolute;
    left: 50%;
    transform: translate(-50% , -50%);
}
.preloader .spinner:after {
    content: " ";
    display: block;
    width: 64px;
    height: 64px;
    border-radius: 50%;
    border: 4px solid var(--main-color);
    border-color: var(--main-color) transparent var(--main-color) transparent;
    animation: spinner 1.2s linear infinite;
}
.preloader span {
	display: inline-block;
	position: absolute;
	top: 55%;
	left: 50%;
	transform: translate(-50%, -50%);
    color: var(--main-color);
}
/* Fine */

/* Firma css eWeb */

.eweb_signature {
	background: var(--body-color);
	color: var(--main-grey);
	letter-spacing: 1.5px
}

/* Fine */

/* Media queries */

@media only screen and (max-width: 768px) {

	.content-center {
		top: 41% !important;
	}

	.btn-reservation {
		line-height: 22px !important;
	}
	
	.modal-dialog {
		width: 100% !important;
		margin-left: 0px !important;
    	padding: 0 5px;
	}

	.btn-reservation {
		font-size: 15px !important;
		padding: 5px 60px !important;
	}

	input, textarea, .form-check-label  {
		font-size: 12px !important;
	}

	textarea {
		height: 100px !important;
	}

	h2 {
		font-size: 18px !important;
	}

	h6 {
		font-size: 12px;
	}

	h4 {
		font-size: 16px !important;
	}

	.p-mob {
		width: 320px;
		font-size: 14px !important;
	}

	.icon-home-mob {
		position: fixed;
		top: 10px;
		right: 10px;
		z-index: 10;
		background: var(--main-color);
		border-radius: 50%;
		padding: 9px 8px;
		width: 40px;
		height: 40px;
	}

	.text-dati-mob {
		position: absolute;
		left: 10px;
		bottom: 20px;
		z-index: 10;
	}

	.text-dati-mob p {
		line-height: 12px;
		font-size: 12px;
		width: 250px;
	}

}

@media only screen and (min-width: 2000px) and (max-width: 4000px) {

}


@media all and (min-height: 992px) {

}
/* Fine */


/* Animazioni varie */

@keyframes spinner {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

.word {
	transition: 6s all ease;
	color: #fff;
	font-size: 24vh;
	transform: scale(0); 
	opacity:1;
	z-index: 150;
}

.word.pop {
	transform: scale(1.1);
	color: #fff9;
	opacity: 0.2;
}

@keyframes bounce {
	0% {
		transform: translateY(0) translateX(-50%)
	}
	10% {
		transform: translateY(0) translateX(-50%)
	}
	30% {
		transform: translateY(-5px) translateX(-50%)
	}
	50% {
		transform: translateY(0) translateX(-50%)
	}
	60% {
		transform: translateY(0) translateX(-50%)
	}
	65% {
		transform: translateY(0) translateX(-50%)
	}
	100% {
		transform: translateY(0) translateX(-50%)
	}
}

/* Fine */



.grecaptcha-badge{visibility: collapse !important;}

.section-cookies a{
	color: var(--main-color);
}

.btn_close_banner {
	background-color: var(--main-color) !important;
}

/*------------------------------SOCIAL------------------------------*/

.social {
	position: fixed;
	top: 120px;
	z-index: 10;
	pointer-events: none;
  }
  
  .social ul {
	padding: 0px;
	-webkit-transform: translate(-260px, 0);
	transform: translate(-260px, 0);
  }
  
  .social ul li {
	display: block;
	margin: 10px 5px;
	/* background: rgba(0, 0, 0, 0.36); */
	width: 306px;
	text-align: right;
	padding: 10px;
	position: relative;
	border-radius: 0 20px 20px 0;
	-webkit-transition: all 1s;
	transition: all 1s;
	background-color: var(--main-color);
	/* -webkit-transform: skewX(-6deg) skewY(-2deg);
	transform: skewX(-6deg) skewY(-2deg); */
	border: solid 1px transparent;
	z-index: 10;
	/* border-top: solid 1px #fff;
	border-right: solid 1px #fff; */
	pointer-events: all;
	color: var(--main-color);
  }
  
  .social ul li a {
	color: var(--main-color);
  }
  

  .social ul li:hover {
	-webkit-transform: translate(110px, 0);
	transform: translate(110px, 0);
	background: rgba(255, 255, 255, 1);
	border: 1px solid #fff;
  }
  
  .social ul li:hover a {
	color: var(--main-color);
  }
  
  .social ul li:hover i {
	color: var(--main-color);
	/*-webkit-transform: rotate(360deg);
	transform: rotate(360deg);*/
	-webkit-transition: all 1s;
	transition: all 1s;
  }
  
  .social ul li i {
	margin-left: 10px;
	color: #fff;
	padding: 5px;
	border-radius: 50%;
	width: 30px;
	height: 30px;
	font-size: 20px;
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg);
  }
  
  /*------------------------------SOCIAL------------------------------*/



  .content-center {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
  }

  .btn-reservation {
	background-color: #fff;
	padding: 20px 60px;
	border-radius: 20px;
	font-family: 'AmericanTypewriter';
	font-size: 30px;
	color: #FF0000;
	line-height: 30px;
	transition: .5s all ease;
	border: 10px double #d8d8d8;
  }

  .btn-reservation:hover {
	  background: #000;
	  color: #fff;
  }

  .modal-dialog {
	max-width: 800px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) !important;
  }

  .modal-content {
	  border-radius: 30px;
  }

  .btn-theme {
	  background: var(--main-color);
	  padding: 15px 40px;
	  border-radius: 15px;
	  border: 0px !important;
  }


.modal-open .fade.show {
    opacity: .9 !important;
}

input, textarea {
	border-radius: 15px !important;
}

.dati_ottica {
	position: fixed;
	bottom: 10px;
	left: 10px;
	z-index: 10;
	width: 550px;
}

i {
	font-size: 20px;
}


h5 {
	font-family: 'Avenir Condensed';
	font-size: 30px;
}

h2 {
	font-size: 30px;
}

