@import url('https://fonts.googleapis.com/css2?family=Inter:ital,wght@0,100;0,400;0,500;0,600;0,700;0,800;1,300&display=swap');
/* ===== Boxicons CSS  */
@import url('https://unpkg.com/boxicons@2.1.1/css/boxicons.min.css');

* {
	margin: 0;
	padding: 0;
	font-family: 'Inter';
	outline: none;
	-webkit-tap-highlight-color: rgba(255, 255, 255, 0);
    box-sizing: border-box;
}

select, option {
	font: -moz-pull-down-menu;
}

:root {
    --blu-chiaro: #1a659e;
    --blu-scuro: #004e89;
	--primary: #2667ff;
	--primary-opacity: #3f8efc;
}

.titolo {
	width: 100%;
	padding: 40px 0;
    display: flex; 
    justify-content: center;
    font-size: 22px;
    font-weight: 600;
    text-align: center;
	margin: 0px auto;
}

.contFoto {
	margin-top: 90px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    width: 100%;
    min-height: 95vh;
	padding: 20px 0;
    background-position: center;
    background-size: cover;
	background-repeat: no-repeat;
    box-shadow: inset 0 1000px rgb(0, 0, 0, .3);
}
.contFoto h1 {
    font-size: 90px;
    color: rgb(255, 255, 255, .9);
    letter-spacing: 4px;
    text-shadow: 5px 5px 5px rgb(0, 0, 0, .8);
    font-weight: 400;
}
.contFoto h2 {
    font-size: 30px;
    color: #3F3;
    letter-spacing: 2px;
    text-shadow: 2px 2px 8px var(--blu-scuro);
    font-weight: 400;
}

/* SUBHOME */
.subHome > div {
	display: flex;
	align-items: center;
	flex-direction: column;
}
.subHome strong {
	width: fit-content;
	font-size: 20px;
}
.subHome p {
	font-size: 16px;
	line-height: 25px;
	margin: 20px 0;
}

.cta {
    display: flex;
    align-items: center;
    color: var(--blu-chiaro);
    background: none;
    border: none;
    padding: 12px 18px;
    position: relative;
    font-size: .95em;
    cursor: pointer;
    font-weight: 500;
	white-space: nowrap;
}

.cta .bx {
    font-size: 19px;
    margin-left: 15px;
}

.cta:before {
    content: "";
    position: absolute;
    top: 50%;
    transform: translateY(-50%) translateX(calc(100% + 53px));
    width: 45px;
    height: 45px;
    background: rgb(0, 0, 0, .2);
    border-radius: 50px;
    transition: transform .25s .25s cubic-bezier(0, 0, .5, 2), width .25s cubic-bezier(0, 0, .5, 2);
    z-index: -1;
}

.cta:hover::before {
    width: 100%;
    transform: translateY(-50%) translateX(-18px);
    transition: transform .25s cubic-bezier(0, 0, .5, 2), width .25s .25s cubic-bezier(0, 0, .5, 2);
}

.cta i {
    margin-left: 5px;
    transition: transform .25s .4s cubic-bezier(0, 0, .5, 2);
}

.cta:hover i {
    transform: translateX(3px);
}


	.card {
		display: flex;
		gap: 10px;
	}
			.card .left-card {
				display: flex;
				flex-direction: column;
				gap: 20px !important;
				width: 100%;
			}
			.card .right-card {
				display: flex;
				flex-direction: column;
				gap: 10px !important;
			}
			.card .right-card .button {
				width: 150px;
			}	
			

			
			.base-card {
				display: flex;
				align-items: center;
				gap: 40px;
				flex-direction: row;
			}
			
			

.contField {
    display: flex;
    flex-direction: column;
    gap: 20px;
    align-items: center;
}

.subHome strong {
	font-weight: 600;
	color: rgb(255, 255, 255);
	margin-bottom: 40px;
	text-align: center;
	width: 400px;
	margin: 0;
}
.contField .box {
    display: flex;
    flex-flow: column-reverse;
    justify-content: center;
    border: 0;
    width: 400px;
    border-radius: 5px;
    padding: 4px 15px 6px;
    font-size: .9em;
    cursor: text;
	background-color: rgb(200, 200, 200, .3);
	border: 1px solid rgb(255, 255, 255, .9);
    transition: .3s;
}
.contField .box:hover {
    background-color: rgb(255, 255, 255, .2);
}
.contField .box:focus-within {
    background-color: rgb(255, 255, 255, .1);
}

.contField .box .input::-webkit-input-placeholder {
    opacity: 0;
}
.contField .box .input::-moz-placeholder {
    color: transparent !important;
}

.contField .box textarea {
    resize: none;
    height: 150px;
}

.contField .box .input {
    border: 0;
    background-color: rgb(0, 0, 0, 0);
    outline: 0;
    font-size: 15px;
    transition: all 0.2s;
    color: rgb(255, 255, 255);
	padding: 30px 0 10px;
	margin: -30px 0 -10px;
}
.contField .box .input + label {
    transform-origin: left;
    color: rgb(255, 255, 255, .7);
    cursor: text;
    font-size: 15px;
    user-select: none;
    transition: all 0.2s;
}
.contField .box .input + label {
    transform: translate(0, 50%) scale(1);
	pointer-events: none;
}
.contField .box .input:not(:placeholder-shown) + label,
.contField .box .input:focus + label {
    transform: translate(0, 0) scale(.8);
}
.subHome p {
	margin: 10px 0 0;
    width: 400px;
	text-align: center;
	color: rgb(250, 250, 250);
}
.subHome p a {
	color: rgb(220, 220, 220);
}


/* BUTTON */
.button {
	border: none;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 2px;
	font-size: 0.8em;
	padding: 8px 20px;
	border-radius: 4px;
	background-color: var(--primary);
	color: #fff;
	transition: .3s;
	text-decoration: none;
}
.button:hover {
	background-color: var(--primary-opacity);
}
.button i {
	font-size: 1.2em;
}




.btn-more {
    position: relative;
    display: inline-block;
    min-width: 160px;
    padding: 14px 10px;
    background-color: var(--primary);
    font-weight: 600;
    color: #fff;
    font-size: .9em;
    letter-spacing: .1px;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    transition: .3s;
}
.btn-more:hover {
    background-color: var(--primary-opacity);
    padding-right: 30px;
}

.btn-more i {
    position: absolute;
    top: 50%;
    transform: translate(-10px, -50%);
    display: inline-block;
    font-size: 19px;
    opacity: 0;
    transition: .3s;
}
.btn-more:hover i {
    transform: translate(5px, -50%);
    opacity: 1;
}

.floatingButt {
	background-color: var(--primary);
	display: flex;
	align-items: center;
	justify-content: center;
	width: 60px;
	height: 60px;
	cursor: pointer;
	font-size: 22px;
	border-radius: 50em;
	color: #fff;
	transition: .3s;
	box-shadow: 0px 0px 3px 3px rgb(50, 50, 50, .1);
	border: none;
	text-decoration: none;
}
.floatingButt:hover {
	background-color: var(--primary-opacity);
}

.switch input[type=checkbox]{
    height: 0;
    width: 0;
    visibility: hidden;
}

.switch label {
    cursor: pointer;
    width: 45px;
    height: 20px;
    background-color: rgb(200, 200, 200);
    display: block;
    border-radius: 50em;
    position: relative;
    transition: .3s;
    padding: 4px;
    box-sizing: content-box;
}

.switch label:after {
    content: '';
    position: absolute;
    width: 20px;
    height: 20px;
    background-color: #fff;
    border-radius: 50em;
    transition: .3s;
}

.switch input:active + label {
    background-color: rgb(200, 200, 200, .8);
}

.switch input:checked + label {
    background-color: var(--primary-opacity);
}

.switch input:checked + label:after {
    transform: translateX(calc(100% + 5px));
}

.radio-cont {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    gap: 2px;
    color: #000;
}
.radio-cont label {
    display: flex;
    align-items: center;
    gap: 2px;
    width: fit-content;
    cursor: pointer;
    padding: 2px 5px;
    border-radius: 50px;
    position: relative;
    transition: .2s;
}
.radio-cont label:hover {
    background-color: rgb(0, 0, 0, .1);
}
.radio-cont .check {
    content: '';
    width: 15px;
    height: 15px;
    border-radius: 50em;
    border: 2px solid var(--primary);
    position: absolute;
    box-sizing: border-box;
    transition: .2s linear;
}
.radio-cont input[type="radio"] {
    visibility:hidden;
}
.radio-cont input[type="radio"]:checked + .check {
    border: 5px solid var(--primary);
}

.cool-divider {
	margin: 30px auto;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
}
.cool-divider i {
	font-size: 1.5em;
	opacity: .2;
}
.cool-divider::before,
.cool-divider::after {
	content: '';
    width: 150px;
    height: 0px;
    border-bottom: 1px solid rgba(0, 0, 0, .1);
}



					 .tableInnoa {
						 border-spacing: 10px;
						 border: 3px solid #D3D3D3;
						 background-color: #FFF; 
						 border-collapse: collapse;
						 color: #4D4D4D;
						 font-size: 12px;
						 box-shadow: .5px .5px 4px 1px rgba(220,220,220,0.8);
					 }

					  .tableInnoa th {
						  background-color: #444;
						  color: #FFF;
					  }

					  .tableInnoa tr {
						  transition: .2s;
						  height: 25px;
					  }

                      .tableInnoa tr:nth-child(even) {
						  background-color: #ACC; 
					  }

	                 .tableInnoa tr:nth-child(odd) {
						 background-color: #CAC; 
					 }


					  .tableInnoa tr:hover {
						  background-color: #F1F1F1;
					  }

					  .tableInnoa td, th {
						  padding: 2px 5px;
						  border-bottom: 1px solid #A3A3A3;
					  }

.tracking-in-contract-bck{-webkit-animation:tracking-in-contract-bck 1s cubic-bezier(.215,.61,.355,1.000) both;animation:tracking-in-contract-bck 1s cubic-bezier(.215,.61,.355,1.000) both}
@-webkit-keyframes tracking-in-contract-bck{0%{letter-spacing:.3em;-webkit-transform:translateZ(400px);transform:translateZ(400px);opacity:0}40%{opacity:.6}100%{-webkit-transform:translateZ(0);transform:translateZ(0);opacity:1}}@keyframes tracking-in-contract-bck{0%{letter-spacing:.3em;-webkit-transform:translateZ(400px);transform:translateZ(400px);opacity:0}40%{opacity:.6}100%{-webkit-transform:translateZ(0);transform:translateZ(0);opacity:1}}

.fade-in{-webkit-animation:fade-in .5s cubic-bezier(.39,.575,.565,1.000) both;animation:fade-in .5s cubic-bezier(.39,.575,.565,1.000) both}
@-webkit-keyframes fade-in{0%{opacity:.5}100%{opacity:1}}@keyframes fade-in{0%{opacity:.5}100%{opacity:1}}

.slide-in-bottom{-webkit-animation:slide-in-bottom .3s cubic-bezier(.25,.46,.45,.94) both;animation:slide-in-bottom .3s cubic-bezier(.25,.46,.45,.94) both}
@-webkit-keyframes slide-in-bottom{0%{-webkit-transform:translateY(50px);transform:translateY(50px);opacity:0}100%{-webkit-transform:none;transform:none;opacity:1}}
@keyframes slide-in-bottom{0%{-webkit-transform:translateY(50px);transform:translateY(50px);opacity:0}100%{-webkit-transform:none;transform:none;opacity:1}}