* {-webkit-box-sizing:border-box; -moz-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;}
*:focus {outline:0 !important;}

:root {
  --color2: #052F60;
  --color1: #54697C;
  --color3: #ED6953;

}

html, body {text-rendering:optimizeLegibility; font-family: "Montserrat", sans-serif; background-image: linear-gradient(rgba(220, 214, 200, 0.6), rgba(248, 245, 238, 0.6));} 
html {height: 100%; font-size: 56.25%;}
body {padding:5% 0 0 0; color:#fff;  min-height: 100vh;    min-height: 100dvh;}
body {
	
}
.color1 {color:var(--color1);}
.color2 {color:var(--color2);}
.color3 {color:var(--color3);}
.white {color: #fff;}

.bg1 {background-color:var(--color1)}
.bg2 {background-color:var(--color2)}

.font1 {font-family: "Montserrat", sans-serif;}

.logo {
	width:40rem;
	max-width: 95%;
	/* filter: grayscale(1) brightness(500%); */
}

.title {
    font-size: 6rem;
	font-weight: 500;
    letter-spacing: .25rem;
	line-height: 1.3;
}

.title.s {
    font-size: 4rem;
	font-weight: 500;
    letter-spacing: .25rem;
	line-height: 1;
}
.subtitle {
    font-weight: 400;
    font-size: 4rem;
    letter-spacing: .1rem;
}
.dida {font-size:2rem!important; font-weight:300; line-height: 1.5;}
.text {font-size:1.6rem!important;}
.cst-btn {
	border: 1px solid #fff;
	color:#fff!important;
	background-color:transparent;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	padding:0 4rem;
	transition: all .3s;
	margin: 1rem 2rem 1rem 0;
	font-size: 2rem;
	letter-spacing: .1rem;
	border-radius: 0;
	height:63px;
	font-weight:400;
}
.cst-btn.disc-btn i {font-size:3rem;}
.cst-btn:hover {
	border: 1px solid #ED6953!important;
	background-color:#ED6953!important;
}
.cst-btn.bg2:hover {
	border: 1px solid var(--color1)!important;
	background-color:var(--color1)!important;
}
.cst-btn i {font-size: 2.5rem;}

.btn-blur {
	background: rgba(255, 255, 255, 0.2); /* leggermente trasparente */
	  backdrop-filter: blur(3px);
	  -webkit-backdrop-filter: blur(8px); /* per Safari */
}


#footer a {color:#052F60; }

img.dark {filter: brightness(65%);}
.box {
    position: relative;
    display: inline-block;
	}
	.box .bg {transition: all 1s;}
	.box .bg:hover.bg {
         {background-color: transparent;}
        img:not(.ico):not(.img-ico) {filter:brightness(60%);}
	}
	.box .bg:hover.bg a .btn-white {
		background-color:#fff;
		
    }

		.box .bg:hover.bg a .hover3 {
					border-color:red;
					background-color:yellow;
					color: f#fff!important;
	}
	.box .bg:hover.bg a .hover2 {
					border-color:greenyellow;
					background-color:violet;
					color: #fff!important;
		}



.cnt-center
	{
		position: absolute;
		left:0;
		right:0;
		top:0;
		bottom:0;
		z-index: 5;
		display: flex;
		flex-direction: column;
		-ms-flex-pack: center!important;
		justify-content: center!important;
		-ms-flex-align: center!important;
		align-items: center!important;
	}
		.cnt-center.bottom {
				-ms-flex-pack: flex-end!important;
				justify-content: flex-end!important;
		}
		.cnt-center.left {
			-ms-flex-align: start!important;
			align-items: start!important;
		}
		.cnt-center.texture {
			background:url('/assets/texture/texture.jpg');
			background-size: cover;
			opacity: .15;
			z-index: 0;
		}

		.cnt-center.subtitle  {
				margin-top:100px!important;
			}
		.cnt-center.subtitle h2.title {font-size: 3rem!important; line-height: 3.7rem!important;}

		img.invert { height:8rem; filter: invert(100%);}
		
@media (min-width:768px) {
	#footer {
	
		bottom:2rem;
		padding-left:4rem;
		padding-right:4rem;
		text-align: center;
		color:#fff;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	/* body {width:100%;} */
}

@media (max-width:1199px) {
	.logo {width:45rem;}
	.title {font-size: 6rem;}
	.subtitle {font-size: 3.5rem;}
	.text {font-size:2.5rem;}
	img.invert { height:8rem; }
	.title.s {font-size: 3.5rem;}
}
@media (max-width:991px) {
	.logo {width:40rem;}
	.cst-container {padding:3rem;}
	.title {font-size: 5rem;}
	.subtitle {font-size: 2.8rem;}
	.text {font-size:2rem;}
	.cst-btn {font-size:2.1rem; height:55px;}
	.title.s {font-size: 3rem;}
	img.invert {height:6rem; }
	 
}
@media (max-width:767px) {
	.logo {width:35rem;}
	.title {font-size: 4rem;}
	.subtitle {font-size: 2.3rem;}
	.cst-btn {font-size:1.7rem; margin: 1rem 0 1rem 2rem;}
	.cst-container {justify-content: start;}
	img.invert { height:8rem;}
	.title.s {font-size: 4rem;}
	footer {position:relative; }
	
}
@media (max-height:600px) {
	/* body {padding:2rem 0; justify-content: start;} */
	.subtitle {font-size:2.2rem}
	.cst-btn {
		padding:0 4rem;
		margin: 1rem 2rem 1rem 0;
		font-size: 1.8rem;
		height:45px;
	}
}
@media (max-width:575px) {
	
	.logo {width:20rem;}
	.title {font-size: 4rem; line-height: 1;}
	.subtitle {font-size: 2.4rem;}
	.text {font-size:2rem; font-weight:400}
	.cst-btn {padding:0 1rem; width:70%; margin:1rem 0;}
	.cst-btn i {font-size: 1.7rem;}
	#footer {
		left:3rem;
		right:3rem;
	}
	.title.s {
		font-size: 3rem;
		
	}
	

}
@media (max-height: 800px) and (min-width: 600px) {
	/* body {justify-content: start;} */
	.logo {width:45rem;}
	.title {font-size:5rem; line-height: 1;}
	.subtitle {font-size: 3rem;}
	.cst-btn {width:auto; margin:1rem; height: 40px;}
}
@media (max-height:600px) {
	.logo {width:40rem;}
	.title {font-size: 4.5rem; line-height: 1;}
	.subtitle {font-size: 2.2rem;}
	.text {font-size:2rem; font-weight:400}
	.cst-btn {padding:0 3rem; margin:1rem; height:45px;}
	.cst-btn i {font-size: 1.7rem;}
	
}

.mt6 {margin-top:6rem;} 

 .bg2-opacity {
	
	opacity: 100;
	
} 

.bg2-opacity:hover {
		opacity: 100;
		background-color: rgba(5, 47, 96, 0.6)!important;
		width: 100%;
		height: 100%;
		z-index:1000;
		transition: all .3s;
	}

	.bg3-opacity {
	
		opacity: 100;
		
	} 
	
	.bg3-opacity:hover {
			opacity: 100;
			background-color: rgba(237, 107, 85, 0.6)!important;
			width: 100%;
			height: 100%;
			z-index:1000;
			transition: all .3s;
		}

hr {
	width:10%;
	height:2px;
	color:#ED6953;
	margin: 5rem auto;
}