/*--- globals ---*/
body *:not(i) { font-family: 'Montserrat' !important; }


.text-azzurro { color: #009af0; }
textarea { resize: vertical; height: initial; }
.text-justify { text-align: justify; }
.text-transform-initial { text-transform: initial !important; }

@media(min-width:992px){ .fs-lg-4-else-md-5 { font-size: calc(1rem + .25vw)!important; } }
@media(max-width:991px){ .fs-lg-4-else-md-5 { font-size: 1.18rem!important; } }
@media(max-width:768px){ .fs-lg-4-else-md-5 { font-size: initial !important; } }
@media(min-width:1201px){ .fs-xl-1-else-md-2 { font-size: calc(1.375rem + 1.5vw)!important; } }
@media(max-width:1200px){ .fs-xl-1-else-md-2 { font-size: calc(1.32rem + .9vw)!important; } }
@media(min-width:1201px){ .fs-xl-3-else-5 { font-size: calc(1.1rem + .6vw)!important; } }
@media(max-width:1200px){ .fs-xl-3-else-5 { font-size: 1.25rem!important; } }

.modal-xxl { --bs-modal-width: 80%; }
@media(max-width:767px){ .modal-xxl { --bs-modal-width: 90%; } }

@media only screen and (max-width: 450px){
	h2 { font-size: 24px; }
	.fs-1 { font-size: calc(1rem + 1.5vw)!important; }
}
@media only screen and (max-width: 375px){ h2 { font-size: 22px; } }

@media only screen and (max-width: 767px){ #hero #hero-footer .button-text { display: initial !important; } }

input.is-invalid { border-color: #dc3545 !important; }
input.is-invalid::placeholder,
input.is-invalid::-webkit-input-placeholder {
	color: #dc3545 !important;
}
/*--- /globals/ ---*/


/*--- header ---*/
header li a { text-transform: initial !important; font-size: 1rem !important; font-weight: 600 !important; }
header li a { color: #009af0 !important; }
header li > a::after { background: #009af0 !important; }
/*--- /header/ ---*/



/*--- home page ---*/
#home-yt-video_container .content-max-width { box-sizing: initial; padding-left: initial; padding-right: initial; max-width: initial; }
#home-yt-video {
	position: relative;
	width: 100%;
	background: black;
}
#home-yt-video:not(.verticale) > div {
	position: relative;
	padding-bottom: 56.15%;
	overflow: hidden;
	max-width: 100%;
	height: auto;
}
#home-yt-video.verticale > div {
	position: relative;
	padding-bottom: 0;
	height: 100vh;
}

#home-yt-video iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
#video-smartphone { display: block; object-fit: cover; object-position: center; width: 100%; height: 100%; }


#home-yt-video span {
	position: absolute;
	width: 100%;
	height: 100%;
	background: #00000045;
	z-index: 2;
}

.titolo-home {
	font-weight: 600;
	color: black !important;
	font-size: 3.9rem;
	text-align: left;
	letter-spacing: 1px;
	line-height: 67px !important;
}
.titolo-virgolette {
	position: relative;
	padding-left: 63px;
	padding-right: 55px;
}
.titolo-virgolette > img {
	position: absolute;
	top: -32px;
	left: 0px;
	width: 60px;
	height: 45px;
	z-index: 1;
}
.titolo-virgolette > img.virgoletta-2 {
	top: initial;
	left: initial;
	bottom: -31px;
	right: 0px;
	transform: rotate(180deg);
}
.titolo-virgolette.titolo-home { padding-right: 0 !important; }
.titolo-virgolette.titolo-home > img.virgoletta-2 { position: relative !important; }
@media (min-width:1218px) and (max-width:1318px){
	.titolo-virgolette.titolo-home { font-size: 3.1rem !important; line-height: 55px !important; }
}
@media (min-width:1329px) and (max-width:1472px){
	.titolo-virgolette.titolo-home { font-size: 3.5rem !important; line-height: 57px !important; }
}
@media (min-width:1600px) and (max-width:1664px){
	.titolo-virgolette.titolo-home { font-size: 3.6rem !important; line-height: 60px !important; }
}
@media(max-width: 619px){
	.titolo-virgolette.titolo-home { font-size: 2rem !important; }
	.titolo-virgolette.titolo-home > img.virgoletta-2 { top: 11px; }	
}


@media(max-width:1324px){ .titolo-home { font-size: 3.5rem; line-height: 64px !important; } }
@media(max-width:1204px){ .titolo-home br {  display: none; } }
@media(max-width:721px){ .titolo-home { font-size: 3rem; line-height: 56px !important; } }
@media(max-width:721px){ .titolo-home { font-size: 3rem; line-height: 56px !important; } }
@media(max-width:600px){
	.titolo-home {
		font-size: 1.5rem;
    line-height: 33px !important;
    padding: 0 !important;
	}
	.titolo-home.titolo-virgolette > img {
		top: -43px;
		transform: scale(.7) translateX(-50%);
	}
	.titolo-home.titolo-virgolette > img.virgoletta-2 {
		bottom: -38px;
    transform: rotate(180deg) scale(.8);
	}
}

@media(min-width:1201px){
	.div_container_nicetomeetyou { margin-top: 150px; }
}
.nice-to-meet-you small { font-size: 75%; }

.about-giamby {
	position: absolute;
	bottom: 63px;
	left: 63px;
}
@media(max-width:1225px){
	.about-giamby {
		margin-top: 10px;
		margin-bottom: 10px;
	}
	.div_container_nicetomeetyou { margin-top: 40px; padding-bottom: 60px; }
}
@media(max-width:1225px){
	.about-giamby {
		position: absolute;
		bottom: 0px;
		left: 0;
	}
}

#showcase-slider-holder #showcase-slider .inner { opacity: 1 !important; }
#showcase-slider-holder .slide-title span { opacity: 1 !important; transform: initial; -webkit-transform: initial; }
#showcase-slider-holder .slide-title small { display: block; font-size: 1rem; line-height: 35px; }
.showcase-pagination .slide-title { display: none; }

.slide-controls { display: none !important; }
#overflow-slider-1 { position:absolute;top:0;right:0;width:53%;height:100%;background:transparent;z-index:100; }
#overflow-slider-2 { position:absolute;top:0;left:0;width:100%;height:26%;background:transparent;z-index:100; }
#overflow-slider-3 { position:absolute;bottom:0;left:0;width:100%;height:33%;background:transparent;z-index:100; }

@media(max-width:1150px){ #overflow-slider-1 { width: 50% !important; } }
@media(max-width:1024px){ #overflow-slider-1 { width: 37% !important; } }
@media(max-width:900px){ #overflow-slider-1 { width: 33% !important; } }
@media(max-width:766px){ #overflow-slider-1 { width: 25% !important; } }
@media(max-width:600px){ #overflow-slider-1 { width: 18% !important; } }
@media(max-width:497px){
	#overflow-slider-1 { width: 14% !important; }
	#overflow-slider-2 { height: 32% !important; }
	#overflow-slider-3 { height: 38% !important; }
}


/*.swiper-slide .outer { display: none !important; }*/
/*.slide-controls { position: relative; top: 8px; }
.slide-controls .button-text { text-shadow: 0 0 10px black, 0 0 10px black; }

.container-pagination .showcase-caption-wrapper .content-full-width { display: none; }
.container-pagination .showcase-pagination-wrap { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.container-pagination .swiper-pagination-bullet { transform: translateY(12px) !important; top: 0; left: 50% !important; width: 40px !important; }
.container-pagination .parallax-wrap { left: -26px !important; top: 0 !important; }

.container-pagination .swiper-pagination-bullet:nth-child(1) { left: calc(47% - 46px) !important; }
.container-pagination .swiper-pagination-bullet:nth-child(2) { left: calc(47% - 6px) !important; }
.container-pagination .swiper-pagination-bullet:nth-child(3) { left: calc(47% + 34px) !important; }
@media(max-width:___479px){
	.container-pagination .parallax-wrap { display: inline !important; }
	.container-pagination .swiper-pagination-bullet:nth-child(1) { left: calc(50% - 40px) !important; }
	.container-pagination .swiper-pagination-bullet:nth-child(2) { left: 50% !important; }
	.container-pagination .swiper-pagination-bullet:nth-child(3) { left: calc(50% + 40px) !important; }
	
	#main .button-wrap.left { float: initial !important; left: initial !important; }
}*/




#gallery .slick-dots { position: absolute; bottom: 30px; z-index: 3; }
#gallery .slick-dotted.slick-slider { margin-bottom: -7px; }

#gallery .masonary-item .div_link {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: transparent; /*#0000004f;*/
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	padding: 0 200px;
}
#gallery .masonary-item .div_link * { color: white !important; text-shadow: 0 0 10px black; }

#gallery #btn-prev-slide, #gallery #btn-next-slide {
	position: absolute;
	z-index: 3;
	top: 0;
	height: 100%;
	display: flex;
	flex-wrap: wrap;
	align-items: end;
	cursor: pointer;
}
#gallery #btn-prev-slide *, #gallery #btn-next-slide * { color: white !important; }
#gallery #btn-prev-slide { left: 40px; }
#gallery #btn-next-slide { right: 40px; }
#gallery .slick-dots li.slick-active button {
	border: 2px solid white;
	border-radius: 50px;
	width: 5px;
	height: 2px;
	position: relative;
	left: 4px;
	padding: 4px 4px 5px 4px;
}
#gallery .slick-dots li.slick-active button:before {
	opacity: 1;
	color: white;
	width: 9px;
	height: 3px;
	line-height: 9px;
}
#gallery .slick-dots li button:before { color: white; opacity: .8; }


.bg-make-difference {
	position: absolute;
	top: 38%;
	left: 0;
	transform: translate(-50%, -50%);
	z-index: 1;
	height: 100%;
	width: auto;
}
@media(max-width:576px){
	.bg-make-difference { display: none; }
}

/*.link-line-danger { text-decoration: underline; }*/
.light-content .light-section a.link-line-danger::before { background: red; }
a.link-line-danger::before { transform: scaleX(1); transform-origin: left; background: red; }
a.link-line-danger:hover::before { transform: scaleX(0); transform-origin: left; }

.bg-effetto-collaborato { background-image: url(../img/effetto-bg-collaborato-con.png); }
#titolo-ho-collaborato-con { font-size: 2rem; }
#ho-collaborato-con {
	line-height: 45px !important;
	letter-spacing: 0px;
	font-size: 1rem !important;
	white-space: nowrap;
}
#img-ho-collaborato-con { background-image: url(../img/ho-collaborato-con.jpg); background-size: cover; }
@media(min-width:1600px){
	#img-ho-collaborato-con { width: 44%; }
}

#container-testo-ho-collaborato-con { margin: 100px 0; }
@media(max-width:1100px){
	#container-testo-ho-collaborato-con { margin: 50px 0; }
}
@media(max-width:500px){
	#ho-collaborato-con { font-size: 3.4vw !important; }
}
/*--- /home page/ ---*/



/*--- works ---*/
@media only screen and (max-width:700px) and (orientation:landscape){
	.snap-slide-caption .slide-title { font-size: calc(1rem + 5vw) !important; line-height: calc(1rem + 5vw) !important; }
}
/*--- /works/ ---*/



/*--- contatti ---*/
.bg-effetto-contatti { background-image: url(../img/effetto-bg-contatti.png); }

.send_message {
	background: #ff0000 !important;
	border-radius: 25px !important;
}
/*--- /contatti/ ---*/



/*--- about me ---*/
#modalAboutMe .btn-close {
	position: absolute;
	z-index: 2;
	top: 15px;
	right: 15px;
}
.img-aboutme {
	background-image: url(../img/img-aboutme.jpg);
	background-size: cover;
	background-position: center right;
	min-height: 400px;
}
.bg-effetto-aboutme {
	background-image: url(../img/effetto-bg-img-aboutme.jpg);
	background-size: cover;
	background-position: center right;
}
/*--- /about me/ ---*/



/*--- cool hunter ---*/
.item-coolhunter { position: relative; overflow: hidden; }
.item-coolhunter img { transition: all linear .4s; }
.item-coolhunter .details {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	width: 100%;
	height: 100%;
	display: flex;
	flex-wrap: wrap;
	align-items: end;
	overflow: hidden;
	transition: background linear .4s;
}
.item-coolhunter:focus img, .item-coolhunter:active img, .item-coolhunter:hover img {
	transform: scale(1.2);
}
.item-coolhunter:focus .details, .item-coolhunter:active .details, .item-coolhunter:hover .details {
	background: #0000004d;
}


.bg-effetto-coolhunter {
	background-image: url(../img/effetto-bg-coolhunter.jpg?ricarica=1);
	background-size: cover;
	background-position: top;
	height: 100%;
}
.descrizione-lapo {
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	justify-content: center;
	height: 300px;
	padding: 3rem 15rem 3rem 7rem;
}
.descrizione-lapo p { font-size: 1.4rem !important; }
.immagine-lapo {
	position: absolute;
	z-index: 2;
	bottom: -25%;
	left: -25%;
	width: 100%;
	height: 100%;
}
@media(max-width:1450px){ .descrizione-lapo { height: 300px !important; padding: 3rem 9rem 2rem 5rem !important; } }
@media(max-width:1430px){ .immagine-lapo { bottom: -40%; } }
@media(max-width:1300px){
	.descrizione-lapo {
		height: 300px;
		padding: 2rem 9rem 0rem 5rem !important;
	}
	.descrizione-lapo p { font-size: 1.2rem !important; }
	.descrizione-lapo .fs-1 { font-size: 2rem!important; }
}
@media(max-width:1250px){
	.descrizione-lapo { height: initial !important; padding: 3rem !important; }
	.descrizione-lapo p { font-size: 1.2rem !important; }
	.immagine-lapo { position: initial; width: initial; height: initial; }
}

.effetto-bg-logofolio { background: url(../img/effetto-bg-logofolio.jpg); background-size: contain; }

.effetto-bg-logofolio .slick-initialized .slick-slide { display: flex; justify-content: center; }
.effetto-bg-logofolio .gallery .slick-dots { bottom: -60px !important; }
.effetto-bg-logofolio #gallery .slick-dots li.slick-active button { border: 2px solid black; }
.effetto-bg-logofolio #gallery .slick-dots li button:before { color: black !important; }
.effetto-bg-logofolio #gallery .slick-dots li.slick-active button:before { color: black !important; }
/*--- /cool hunter/ ---*/	



/*--- footer ---*/
footer {
	position: initial;
	height: initial;
	pointer-events: initial;
	background: #171717;
}
footer * { color: white; }
footer a:hover { color: #d3d3d3; }
footer a::before { background: #d3d3d3 !important; }
#footer-container {
	position: initial;
	height: initial;
}

.logo-footer { max-height: 50px; }
/*--- /footer/ ---*/



.text-color-other-project { color: #9d9d9d; }

/*--- pagina AMS Onlus ---*/
.container-image-accessori { padding: 0 6rem; }
.container-image-magliette {
	margin-top: -100px;
	padding: 10rem 9rem 6rem 9rem;
	background: #cdf1ff;
}
@media(max-width:767px){
	.container-image-accessori { padding: 0; }
	.container-image-magliette { padding: 2rem 1rem; margin: 0; }
}
/*--- /pagina AMS Onlus/ ---*/

/*--- pagina IT's Real ---*/
.titolo-itsreal {
	text-align: justify;
	font-size: 1.9rem;
}
.titolo-itsreal img:not(.virgoletta-2) { transform: scale(.8); top: -40px; }
.titolo-itsreal img.virgoletta-2 { transform: scale(.8) rotate(180deg); }
@media(max-width:600px){
	.titolo-itsreal {
		padding: 0;
    font-size: 1.5rem;
	}
	.titolo-itsreal img:not(.virgoletta-2) { transform: scale(.8) translateX(-100%); }
	.titolo-itsreal img.virgoletta-2 { transform: scale(.8) rotate(180deg) translateX(-100%); }
}

@media(min-width:991px){
	.div_container_telefono {
		width: auto;
		position: relative;
		top: -50px;
    max-width: 50%;
	}
}
@media(min-width:1600px){ .div_container_telefono { top: -100px; } }
/*--- /pagina IT's Real/ ---*/

/*--- pagina Technic ---*/
@media(min-width:991px){
	.titolo-technic {
		padding-left: 10%;
    padding-right: 10%;
	}
}
/*--- /pagina Technic/ ---*/

/*--- pagina Tecnoworld ---*/
@media(max-width:600px){ .hero-title-tecnoworld { font-size: 12vw !important; } }

.titolo-tecnoworld {
	text-align: justify;
	font-size: 1.5rem;
}
.titolo-tecnoworld img:not(.virgoletta-2) { transform: scale(.8); top: -40px; }
.titolo-tecnoworld img.virgoletta-2 { transform: scale(.8) rotate(180deg); }

@media(max-width:600px){
	.titolo-tecnoworld { padding: 0; }
	.titolo-tecnoworld img:not(.virgoletta-2) { transform: scale(.8) translateX(-100%); }
}
/*--- /pagina Tecnoworld/ ---*/

/*--- pagina Ziiro ---*/
@media(min-width:991px){
	.img-ziiro-sinistra { position: relative; top: 20%; }
	.img-ziiro-sinistra-2 { position: relative; top: 40%; }
	.divider-dopo-img-ziiro { height: 250px; }
}
/*--- /pagina Ziiro/ ---*/

/*--- pagina Limone ---*/
.effetto-bg-gif-limone { background: url(../img/limone/effetto-bg-gif.png); }
#title-progettazione-iconografie { color: #00c3ff; font-size: 1.8rem; }
@media(min-width:1200px){
	#title-progettazione-iconografie { font-size: 2vw; }
}
/*--- /pagina Limone/ ---*/



/*--- my-rotate-device  ---*/
#my-rotate-device {
	width: 100%;
	height: 100%;
	position: fixed;
	z-index: 99999;
	top: 0;
	left: 0;
	background-color: #0f1010;
	background-image: url(../images/ruota_telefono.png);
	background-size: 100px 100px;
	background-position: center;
	background-repeat: no-repeat;
	display: none;
}
/*--- /my-rotate-device/ ---*/
