@charset "utf-8";
/* CSS Document */

/* ============================
	GENERALI
   ============================ */

:root {
	--c1: #002d59;
	--c2: #dc4405;
	--c3: #84cde4;
	--c4: #bb774a;
	--c5: white;
	--font: "Klavika";
	--wLight: 300;
	--wNormal: normal;
	--wBold: bold;
}

.c1,
.c1:hover,
.c1:active {
	color: var(--c1);
}

.c2,
.c2:hover,
.c2:active {
	color: var(--c2);
}

.c3,
.c3:hover,
.c3:active {
	color: var(--c3);
}

.c4,
.c4:hover,
.c4:active {
	color: var(--c4);
}

.c5,
.c5:hover,
.c5:active {
	color: var(--c5);
}

body {
	font-family: var(--font), sans-serif;
	font-weight: var(--wNormal);
	font-style: normal;
	font-size: 16px;
	color: var(--c1);
}

.row {
	margin-left:0px;
	margin-right:0px;
}

h1, h2, h3, h4, p, a, b {
	font-family: var(--font), sans-serif;
	font-weight: var(--wBold);
	font-style: normal;
	color: var(--c1);
}

p {
  	font-weight: var(--wNormal);
}

a {
  	text-decoration: underline;
}

a:hover, a:focus, a:active {
  	color: var(--c1);
}

.txt-underline {
	text-decoration: underline;
}

.navbar-toggler:focus { /* rimuove l'ombra di selezione del bottone di Bootstrap */
  	box-shadow: 0 0 0 0px !important;
}

.button {
	color: var(--c5);
	background: var(--c3);
	border: 0px solid transparent;
	outline: none;
	border-radius: 0 25px 0 25px;
	font-family: var(--font), sans-serif;
	font-weight: var(--wBold);
	font-size: 1.8rem;
	padding: .5rem 2.5rem;
	width: max-content;
	max-width: 300px;
	text-decoration: none;
}

.button:hover {
	color: var(--c5);
	background: var(--c2);
}

#partecipa_body_1.position-relative {
	margin-top: -7rem;
}

#partecipa_body_1 {
	background: var(--c3) !important;
	max-width: 500px;
	font-size: 2rem;
}

@media(max-width:1400px) {

	#partecipa_body_1 {
		font-size: 1.5rem;
	}
	
}

@media (max-width:375px) {
	#partecipa_body_1,
	.button {
		font-size: 1rem;
		padding: .5rem 1.8rem;
		max-width: 250px;
	}
}

.step {
  	max-height: 160px;
}

.list {
	margin-bottom: 1rem;
	padding-left: 1rem;
}

.text-box {
	color: var(--c5);
	background-color: var(--c1);
	border-radius: 0 25px 0 25px;
	padding: 0.5rem 5rem;
}

@media (max-width:991px) {
	.box-info {
		border-radius: 20px;
	}

	.text-box {
		padding: 0.5rem 2.5rem;
	}
}

/* ============================
	MENU
   ============================ */

.skip-to-main-content-link {
	position: absolute;
	left: -9999px;
	z-index: 999;
	padding: 1em;
	background-color: black;
	color: var(--c5);
	opacity: 0;
}

.skip-to-main-content-link:focus {
	left: 50%;
	transform: translateX(-50%);
	opacity: 1;
}

#attiva_menu {
	max-width: 30px;
	margin:10px 25px;
	cursor: pointer;
}

.bi-list {
	font-size: 3rem;
	color: var(--c5);
}

#menu div.container-fluid {
	border-radius: 0 0 0 49.5px;
	border-bottom: 2px solid var(--c5);
	border-left: 2px solid var(--c5);
	background-color: var(--c1);
}

#menu_list li {
	list-style-type: none;
	float: left;
	padding-left: 2%;
	padding-right: 2%;
}

#menu_list li a {
	display: block;
	text-align: center;
	text-decoration: none;
	padding: 5px 10px;
	color: var(--c5);
	font-weight: var(--wNormal);
	font-size: 30px;
}

@media (max-width: 991px) {
	#menu_list li {
		float: none;
	}
	#menu_list li a {
		text-align: right;
    	font-size: 21px;
	}
}

@media (max-width: 1199px) {
	#menu_list {
		margin-left: 45px;
	}
}

@media (max-width:991px) {
	#menu_list {
		margin-left: 0px;
	}
}

#menu_list li a:hover, #menu_list li a.active {
	text-decoration: none !important;
	color: var(--c2);
}

.modal-body {
	background-color: var(--c5);
}

main {
	margin-top: -50px;
}

/* ============================
	FORM
   ============================ */

#errore {
	color: #ac182d;
	font-weight: var(--wBold);
	text-align: center;
	font-size: 24px;
}

label, input, select {
  	color: var(--c1);
}

p.col-1 {
	width: 1%;
}

.form-group {
	margin-bottom: 15px;
}

small.small {
	font-size: 10px;
	line-height: 9px;
}

.bi-info-circle-fill:hover {
  	color: var(--c4);
}

/* ============================
	FOOTER
   ============================ */

footer {
	background-color: var(--c1);
	border-radius: 0 49.5px 0 0;
	border-top: 2px solid var(--c5);
	border-right: 2px solid var(--c5);
}

footer p {
	color: var(--c5);
	font-family: var(--font), sans-serif;
	font-weight: var(--wNormal);
	font-style: normal;
	text-align: center;
}

footer b {
	color: var(--c5);
}

footer p a,
footer p a:hover,
footer p a:focus {
	color: var(--c5);
	text-decoration: underline;
	font-weight: var(--wBold);
}

@media(max-width:576px) {
	.mail_info {
		word-break: break-all;
	}
}

/* =========================
	COOKIE BAR
	======================= */

.cc-window {
	font-size: .85rem !important;
	line-height: 1.2em !important;
}

@media (max-width:767px) {
	.cc-window {
		font-size: .75rem !important;
		line-height: 1.1em !important;
	}
}