@font-face {
	font-family: 'Montserrat';
	src: url('../fonts/Montserrat/static/Montserrat-Regular.ttf') format('truetype');
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Montserrat';
	src: url('../fonts/Montserrat/static/Montserrat-Medium.ttf') format('truetype');
	font-weight: 500;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Montserrat';
	src: url('../fonts/Montserrat/static/Montserrat-Bold.ttf') format('truetype');
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Poppins';
	src: url('../fonts/poppins/static/poppins-latin-400-normal.woff2') format('woff2'),
		 url('../fonts/poppins/static/poppins-latin-400-normal.woff') format('woff'),
		 url('../fonts/poppins/static/poppins-latin-400-normal.ttf') format('truetype');
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Poppins';
	src: url('../fonts/poppins/static/poppins-latin-700-normal.woff2') format('woff2'),
		 url('../fonts/poppins/static/poppins-latin-700-normal.woff') format('woff'),
		 url('../fonts/poppins/static/poppins-latin-700-normal.ttf') format('truetype');
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}

html {
	font-size: 1rem;
	scroll-behavior: smooth;
}

body,html {
	font-family: 'Montserrat',Helvetica,Arial,Lucida,sans-serif;
}
/*
 * Optional: Makes the sample page fill the window.
 */
html,
body {
	height: 100%;
	margin: 0;
	padding: 0;
	/*padding-top: 56px;*/
}


p{margin-bottom: 0}

:root {
	--building-color: #FF9800;
	--house-color: #0288D1;
	--shop-color: #7B1FA2;
	--warehouse-color: #558B2F;
}

.container-fluid{
	overflow-x: hidden;
}

.font-grey{
	color:#a6a7a9;
}

.font-dark-grey{
	color: #666;
}


.blue-jooylign{
	color:#4C97AF !important; 
}

.blue-lineo{
	color: #00a79e;
}

.lineo-link{
	color:#fff;
	transition: 0.3s opacity ;
}

.lineo-link:hover {
	opacity: 0.6;
}

.blue-lineo-alt{
	color: #01a796;
}

.jooylign-background{
	background-color: #4d96a8;
}


.linkedin-link {
	display: inline-block;
    
    font-size: 2.75rem;
    
}

.linkedin-link:hover {
    opacity: 0.7;
}



.btn-primary{
	background-color: #2c2357; /* #00a79e;*/ /* new #2c2357 */
	transition: background-color 0.3s;
	border-radius: 0;
	border: none;
	text-transform: uppercase;
	font-size: 1.3rem;
	padding:  0.4rem 1.2rem;
}
.btn-primary:hover{
	background-color: rgba(0,167,158,0.6);
	border: none;
}
/*overwrite bootstrap*/
:not(.btn-check)+.btn:active{
	background-color: rgba(0,167,158,0.6);
	border: none;
}

.btn-check:checked+.btn, .btn.active, .btn.show, .btn:first-child:active, :not(.btn-check)+.btn:active{
	border: none;
}



h1, h2, h3, h4, h5, h6, 
.h1, .h2, .h3, .h4, .h5, .h6 
{
	font-family: 'Montserrat',Helvetica,Arial,Lucida,sans-serif;
	font-weight: 400;

}

@media (min-width: 1200px){

	h1{
		font-size: 2.8rem;
	}
	h2{
		font-size: 2.4rem;
	}
	h3{
		font-size: 2.1rem;
	}
	h4{
		font-size: 1.75rem;
	}
	h5{
		font-size: 1.4rem;
	}
	h6{
		font-size: 1.2rem;
	}
}

.fw-weight-500{
 font-weight: 500;
}

.fw-weight-600{
 font-weight: 600 !important;
}

.font-poppins,
.font-poppins h1,
.font-poppins h2,
.font-poppins h3,
.font-poppins h4,
.font-poppins h5,
.font-poppins h6 {
	font-family: 'Poppins', Helvetica, Arial, sans-serif !important;
}

.w-15 {
    width: 15%!important;
}

.w-60 {
    width: 60%!important;
}
.w-35 {
    width: 35%!important;
}

.fullscreen-menu {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(76, 150, 175, 0.95);
	z-index: 1050;
	text-align: center;
	
	margin: auto;
	opacity: 0;
	transition: opacity 0.5s ease-in-out;
}
.fullscreen-menu-container{
	position: absolute; 
	top: 50%; 
	left: 50%; 
	transform: translate(-50%, -50%); 
}

.fullscreen-menu.active {
	display: block;
	opacity: 1;
}

.fullscreen-menu a {
	display: block;
	color: white;
	font-size: 1.8rem;
	margin: 0.3rem 0;
	text-decoration: none;
	transition: color 0.3s;
	font-weight 500;
}
.fullscreen-menu a.active{
	color: #2e2356;
}

.fullscreen-menu a:hover {
	color: #ddd;
}

.fullwidth-image-section {
	background-size: cover;
	background-position: center;
	height: 85vh; /* Imposta l'altezza al 100% dell'altezza del viewport */
	
	display: flex;
	align-items: center; /* Centra il contenuto verticalmente */
	justify-content: center; /* Centra il contenuto orizzontalmente */
	position: relative;
}


.fullwidth-image-section h1{
	font-weight: normal;
	font-style: normal;
	text-transform: uppercase;
	text-decoration: none;
	letter-spacing: 1px;
	line-height: 1.2em;
	
}


.close-menu {
	position: absolute;
	top: 0.8rem;
	right: 2.2rem;
	background: none;
	border: none;
	color: white;
	font-size: 3rem;
	cursor: pointer;
}



.navbar-toggler {
	font-size:1rem;
	color: #2c2357; /* Colore dell'icona */
	border: none;
}
.navbar-toggler:focus {
	text-decoration: none;
	outline: 0;
	box-shadow: none;
}

.navbar-light .navbar-toggler-icon {
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='%234c96af' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

.navbar-light .navbar-toggler-icon:focus
.navbar-toggler:focus
{
	outline: 0;
}




.divider-black-absolute {
	/*background: linear-gradient(3deg, rgba(0, 0, 0, 1.0) 49%, rgba(0,0,0,0.5) 50%, rgba(0, 0, 0, 0) 60%); */
	background: linear-gradient(3deg, rgba(40, 40, 41, 1.0) 48%, rgba(40,40,41,0.7) 49%,  rgba(40, 40, 41, 0.4) 59%, rgba(0, 0, 0, 0) 60%);
	width: 100%;
	position: absolute;
	bottom: 0;
	left: 0;
	height: 15vh;
	padding: 0;
	margin: 0;
}

.divider-blue-absolute {
	
	background: linear-gradient(3deg, rgba(0,167,158, 1.0) 48%,   rgba(17, 167, 158, 0.4) 49%, rgba(0, 0, 0, 0) 60%);
	width: 100%;
	position: absolute;
	bottom: 0;
	left: 0;
	height: 15vh;
	padding: 0;
	margin: 0;
}

.divider-blue {
	/*background: linear-gradient(3deg, rgba(0, 0, 0, 1.0) 49%, rgba(0,0,0,0.5) 50%, rgba(0, 0, 0, 0) 60%); */
	background: linear-gradient(3deg, rgba(0,167,158, 1.0) 48%,   rgba(17, 17, 17, 0.4) 49%, rgba(0, 0, 0, 0) 60%);
	width: 100%;
	
	height: 15vh;
	padding: 0;
	margin: 0;

}



.divider-black {
	/*background: linear-gradient(3deg, rgba(0, 0, 0, 1.0) 49%, rgba(0,0,0,0.5) 50%, rgba(0, 0, 0, 0) 60%); */
	background: linear-gradient(3deg, rgba(0, 0, 0, 1.0) 48%, rgba(0,0,0,0.7) 49%,  rgba(0, 0, 1, 0.4) 59%, rgba(0, 0, 0, 0) 60%);
	width: 100%;
	
	height: 15vh;
	padding: 0;
	margin: 0;
}

.divider-grey {
	/*background: linear-gradient(3deg, rgba(0, 0, 0, 1.0) 49%, rgba(0,0,0,0.5) 50%, rgba(0, 0, 0, 0) 60%); */
	background: linear-gradient(3deg, rgba(40, 40, 41, 1.0) 48%, rgba(40,40,41,0.7) 49%,  rgba(40, 40, 41, 0.4) 59%, rgba(0, 0, 0, 0) 60%);
	width: 100%;
	
	height: 15vh;
	padding: 0;
	margin: 0;
}

.divider-grey-reverse {
	/*background: linear-gradient(3deg, rgba(0, 0, 0, 1.0) 49%, rgba(0,0,0,0.5) 50%, rgba(0, 0, 0, 0) 60%); */
	background: linear-gradient(-3deg, rgba(40, 40, 41, 1.0) 48%, rgba(40,40,41,0.7) 49%,  rgba(40, 40, 41, 0.4) 59%, rgba(0, 0, 0, 0) 60%);
	width: 100%;
	
	height: 15vh;
	padding: 0;
	margin: 0;
}

.divider-grey-50 {
	/*background: linear-gradient(3deg, rgba(0, 0, 0, 1.0) 49%, rgba(0,0,0,0.5) 50%, rgba(0, 0, 0, 0) 60%); */
	background: linear-gradient(5deg, rgba(40, 40, 41, 1.0) 48%, rgba(40,40,41,0.7) 49%,  rgba(40, 40, 41, 0.4) 59%, rgba(0, 0, 0, 0) 60%);
	width: 100%;
	
	height: 15vh;
	padding: 0;
	margin: 0;
}

.divider-grey-reverse-50 {
	/*background: linear-gradient(3deg, rgba(0, 0, 0, 1.0) 49%, rgba(0,0,0,0.5) 50%, rgba(0, 0, 0, 0) 60%); */
	background: linear-gradient(-5deg, rgba(40, 40, 41, 1.0) 48%, rgba(40,40,41,0.7) 49%,  rgba(40, 40, 41, 0.4) 59%, rgba(0, 0, 0, 0) 60%);
	width: 100%;
	
	height: 15vh;
	padding: 0;
	margin: 0;
}





.body-gradient-dark-grey{
	background: rgb(40,40,41);
	background: linear-gradient(90deg, rgba(40,40,41,1) 0%, rgba(26,26,27,1) 35%, rgba(1,1,1,1) 100%);
}


.body-grey-row{
	background-color: #282829;
}



.body-black-row{
	background-color: #000;
}

.body-grey-row.box-bg{
	color:#fff;
	background-size: 55% auto;
	background-position: right -15% top -12%;	
	background-repeat: no-repeat;

}

.in-about-page.box-bg.box-bg{
    background-size: 39% auto;
    background-position: right 12% top 55%;
    background-repeat: no-repeat;
}

.body-blue-row{
	background-color: #00a79e;
	color:#333;	
}

.body-light-blue-row{
	background-color: #33b9b2;
	color:#333;	
}




.body-blue-row.aligner-bg{
	background-size: contain;
	background-blend-mode: screen;
	background-position: center bottom;	
	background-repeat: no-repeat;
	background-size: 20% auto;
	background-blend-mode:screen;
	
	
}

.body-blue-row .btn-primary{
	background-color: #333;
}

.body-blue-row .btn-primary:hover{
	background-color: rgba(17, 17, 17, 0.7);
}

.body-blue-row .fa {
	color:#fff;
	font-size: 2.5rem;
	font-weight: 200;

}


.bordered-image{
	border:2px solid #8e8f90;
	width: 67% !important;
}


.features .fa-sharp,
.quote-section .fa-solid
{
	font-size: 5rem;
}


footer{
	background-color: #282829;
	color:#fff;
}




@media (max-width: 900px){

	.body-black-row{
		background-size: 65% auto;
		background-position: right -15% top 0%;	
	}
	.body-blue-row{
		background-image: none!important;
		/*background-size: 100% auto;
		background-position: center bottom;	*/
	}
}


@media (max-width: 767px){

	.body-black-row{
		background-size: 100% auto;
		background-position: right 0 top 0;	

	}
}





/*
 * Always set the map height explicitly to define the size of the div element
 * that contains the map.
	*/
#map {
	height: 680px;
	width: 100%;
}

@media (max-width: 1920px){
	#map {
		height: 560px;
	}
}

@media (max-width: 1200px){
	#map {
		height: 420px;
	}
}

@media (max-width: 767px){
	#map {
		height: 280px;
	}
}

#pac-input{
	font-size: 1.2rem;
}


.info-window-content {

	background: white;
	padding: 15px;
	border-radius: 8px;

	max-width: 250px;
}

.info-window h3 {
	margin-top: 0;
	color: #333;
	font-weight: 700;
	font-size: 1.2rem;
	margin-bottom: 3px;
}

.info-window h5 {
	margin-top: 0;
	margin-bottom: 10px;
	color: #333;
	font-weight: 700;
	font-size: 1rem;
}

.info-window p {
	margin: 5px 0;
	color: #555;
}


.info-window a{
	text-decoration: none;
	border-bottom: none;
	box-shadow: none;
	color:#00a79e;
	margin-top: 5px;
}

.info-window a:hover{
	text-decoration: underline;
}


