/*---------------
ottanio - #00929e
rosso - #e32119
bianco - #ffffff
nero - #495057
giallo - #fcc770
----------------*/
body {
  	/* background-color: #8BBABB; */ /* 2024 */
    background-color: #ffffff; /* 2025 */
}
p,
span,
legend,
label,
a,
li {
	font-family: 'Montserrat', sans-serif;	
}
.testo-bianco,
.testo-bianco a {
	color: #ffffff;
}
img {
	max-width: 100%;
}
#grazie {
	/* background-color: #8BBABB; */ /* 2024 */
  	background-color: #ffffff; /* 2025 */
}
.full-height {
	min-height: 95vh;
	display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.card {
	background-color: #ffffff;
	color: #495057;
	padding: 4rem;
	border-radius: 2rem;
}
.card h1 {
	color: #e32119;
}
.header-tessera div .col {
	flex-basis: auto;
}
p.d-md-none {
	text-align: center;
	margin-top: 1rem;
}
/*---------------
TIPOGRAFIA
----------------*/
h1 {
	/* color: #ffffff; */ /* 2024 */
	color: #e32119;
	font-weight: 700;
	font-size: 2rem;
}
p.dp-arrow {
	font-size: 2rem;
	text-align: center;
	margin-bottom: 0;
}
/*---------------
HEADER / NAV
----------------*/
header {
	background-color: #e32119;
	text-align: center;
}
body#grazie header {
	background-color: #e32119;
}
header,
header a {
	color: #ffffff;
}
body#header,
body#header a {
	color: #ffffff;
}
header img.logo {
	padding:1rem;
	width: 70%;
}
header a,
header span {
	width: 100%;
	text-align: center;
	text-transform: uppercase;
	font-size: 1.4rem;
}
header.row a {
	color: #ffffff;
}
.row div {
	align-content: center;
}

.row div p {
	margin-bottom: 0;
	align-content: center;
}
header div {
	display: flex;
}
header div span {	
    align-self: center;
}
header div:nth-of-type(2) {
	border-left: none;
}

/*---------------
FORM
----------------*/
form {
	background-color: #eeeeee;
	border-radius: 2rem;
	padding: 1rem;
	border: 1px solid #cccccc;
}
form h2 {
	text-align: center;
	color: #e32119;
	margin-bottom: 1em;
}
#formtesserainregalo .inizio,
#formtesserainregalo .info {
    padding: 2rem;
}
#formtesserainregalo .info {
    border-left: 1px solid #cccccc;
}
#formtesserainregalo .info a {
    font-size: 1rem;
}
#formtesserainregalo [readonly] {
	border: none;
}
legend {
	color: #00929e;
}
legend small {
	color: #212529;
}
.no-js #formtessera [data-donazione] {
	display: none;
}
form [data-donazione] {
	margin-bottom: 2rem;
	padding: 0.375rem 0.75rem;
    border: 2px solid #00929e;
    border-radius: 0.25rem;
    background-color: #00929e;
    color: #ffffff;
	font-size: 1.2rem;
}
.form-text {
	color: #6c757d;
}
.has-error label,
.has-error input,
.has-error select,
.has-error .form-text {
	color: #e32119;	
}
.has-error label {
	font-weight: 600;
}
.has-error input,
.has-error select
.has-error .form-control:focus {
	border: 2px solid #8BBABB;
	border-color: #8BBABB;
	background-color: rgba(227,33,25,0.1);
	font-weight: 600;
}
.has-success {
}
.input-group.radio label {
	width:50%;
}
.input-group.radio label:first-of-type {
	border-top-right-radius: 0;
	border-bottom-right-radius: 0;
}
.input-group.radio label:last-of-type {
	border-top-left-radius: 0;
	border-bottom-left-radius: 0;
	margin-left: -1px;
}
.radio input[type="radio"] {
	position: fixed;
	opacity: 0;
}
.radio label {
	width: 100%;
	padding: 0.375rem 0.75rem;
    font-size: 1rem;
    border: 1px solid #ced4da;
    border-radius: 0.25rem;
	background-color: #ffffff;
}
.radio input[type="radio"]:checked + label {
	border-color: #00929e;
	background-color: #00929e;
	color: #ffffff;
}
.radio input[type="radio"]:checked + label::before {
	content: "\2713\00a0";
	color: #ffffff;
	font-weight: 900;
}
.js div[data-paymethod="CC"] legend {
	display: none;
}
input[type="submit"].btn.btn-default.btn-lg.btn-block {
	background-color: #e32119;
	color: #ffffff;
	font-weight: 800;
	text-transform: uppercase;
}
#informativa {
	font-size:0.8rem;
	line-height:1.4;
	display:inline-block;
	color:#555555;
	height:8rem;
	overflow-y:scroll;
	background-color: white;
	padding:1rem;
}
#informativa p {
	margin-bottom:1rem;
}
#formtesserainregalorichiediguid input[type="submit"] {
	background-color: #e32119;
	color: #ffffff;
	font-weight: 800;
	text-transform: uppercase;
	
}
#formtesserainregalorichiediguid .input-group {
	margin-top:3rem;
	margin-bottom:3rem;
}
#formtesserainregalorichiediguid input {
	border-top-left-radius: 0.25rem;
	border-bottom-left-radius: 0.25rem;
}

/*---------------
FOOTER
----------------*/
footer {
	padding-bottom: 2rem;
	margin-top: -5rem;
}
footer,
footer a {
	text-align: center;
	/* color:#ffffff;*/ /* 2024 */
	color:#212529; /* 2025 */
	font-weight: 400;
}
footer a {
	text-decoration: underline;
}
/*---------------
MQ
----------------*/
@media screen and (min-width: 576px) {
	h1 { font-size: 3rem; }
	h2 { font-size: 1.5rem; }	
}
@media screen and (min-width: 786px) {
	.nav {
		border-left: 4px solid #ffffff;
	}
	header {
		margin-top: 2rem;
	}
	header div:nth-of-type(2):before {
		content:"";
		position:absolute;
		background: #ffffff;
		top:0;
		left:-25px;
		bottom: 0;
		width: 4px;
		-webkit-transform: skew(-15deg);
		-moz-transform: skew(-15deg);
		-ms-transform: skew(-15deg);
		transform: skew(-15deg);
	}
	#grazie header div:nth-of-type(2):before {
		background: #ffffff;
	}
	header div:nth-of-type(2):after {
		content:none;
	}
	form {
		padding: 4rem;
	}
}

/*--- 2021 + 2025 -----*/ 
div.container-fluid {
	/* background-color: #8BBABB; */ /* 2024 */
  	background-color: #ffffff; /* 2025 */
}
form {
	position: relative;
	top:-8rem;
}
.row div p[data-donazione] {
    margin-bottom: 2rem;
}
.piazze div {
	font-size: 1.5rem;
    text-align: center;
    padding: 0.5rem;
    margin-top: 1rem;
    background-color: #00929e;
}
.piazze div a {
	text-decoration: underline;
}

/* 2022 + 2025 */
#errore .container-fluid {
	/* background-color: #8BBABB; */ /* 2024 */
  	background-color: #ffffff; /* 2025 */
}
#errore header {
	background-color: #e32119;
}
#errore .row header a, #errore .row header span {
	color: #ffffff;
}
#errore .jumbotron {
	/* background-color: #8BBABB; */ /* 2024 */
  	background-color: #ffffff; /* 2025 */
}
#errore h2 {
	color:#e32119;
}
/* 2023 */
.header-tessera {
    padding-bottom: 10rem;
    padding-top: 5rem;
}
#maincopy {
	text-align: center;
	font-size:1.2rem;
}
#maincopy h1 {
	text-transform: uppercase;
}
#maincopy p {
	margin-top:1rem;
}
body#grazie div.d-flex {
	padding-top: 3rem;
	padding-bottom: 3rem;
}
body#grazie div.col {
	flex-basis: auto;
}
body#grazie footer {
	padding-bottom: 0;
	margin-top: 0;
}

#accessibilita div.col {
	margin: 0 auto;
}

#accessibilita h3, h4 {
	margin-top: 1rem;
}
footer {
	margin-top: 0;
}
