/* ------------------------ */
/* Customizzazione template */
/* ------------------------ */

/* H2 */
.section-title h2 {
	font-size: 24px;
	font-weight: 400;
	margin-bottom: 10px;
	padding-bottom: 0;
	font-family: "Poppins", sans-serif;
	color: #627680;
}

/* --------- */
/* Check-box */
/* --------- */
.checkbox-style {
  	padding-top: 6px;
}

.checkbox-style .form-check-input {
    	width: 25px;
    	max-height: 25px;
	border: 1px solid #bbb;
	margin-right: 10px;
}
.checkbox-style .form-check-input:focus {
     border-color: #ddd;
     outline: none;
     box-shadow: none;
/*    	background-color: #f2a206;*/
}
.checkbox-style .form-check-input:checked {
    	background-color: #312783;
    	border-color: #312783; 
}

/* ------ */
/* Select */
/* ------ */
.select-style-1 .select-position {
    	position: relative; 
}

.select-style-1 .select-position::after {
	border-bottom: 2px solid #312783;
     border-right: 2px solid #312783;
     content: "";
     display: block;
     height: 8px;
     width: 8px;
     margin-top: -5px;
     pointer-events: none;
     position: absolute;
     right: 16px;
     top: 50%;
     -webkit-transform: rotate(45deg);
     -ms-transform: rotate(45deg);
     transform: rotate(45deg);
     -webkit-transition: all 0.15s ease-in-out;
     transition: all 0.15s ease-in-out; 
}

.select-style-1 .select-position select {
     width: 100%;
     background: #ffffff;
     border: 1px solid #d3d3d3;
     border-radius: 0;
     padding: 5px 10px 5px 10px;
     color: #444;
     font-size: 14px; 
     appearance: none;
     -webkit-appearance: none;
     -moz-appearance: none;
/*     -webkit-transition: all 0.3s ease-out 0s;
     -moz-transition: all 0.3s ease-out 0s;
     -ms-transition: all 0.3s ease-out 0s;
     -o-transition: all 0.3s ease-out 0s;
     transition: all 0.3s ease-out 0s; 
*/
}

.select-style-1 .select-position select:focus {
     border-color: #312783;
     outline: none; 
}

/* -------------- */
/* php-email-form */
/* -------------- */
.contact {
  padding-top: 20px;
}

.contact .section-title {
  padding-bottom: 10px;
}

.contact .php-email-form {
  width: 100%;
  padding: 30px;
  background: #fff;
  border: 2px solid #e9ecee;
  border-radius: 4px;
}

.contact .php-email-form .form-group {
  padding-bottom: 8px;
}

.contact .php-email-form .error-message {
  display: none;
  color: #fff;
  background: #ed3c0d;
  text-align: left;
  padding: 15px;
  font-weight: 600;
}

.contact .php-email-form .error-message br + br {
  margin-top: 25px;
}

.contact .php-email-form .sent-message {
  display: none;
  color: #fff;
  background: #18d26e;
  text-align: center;
  padding: 15px;
  font-weight: 600;
}

/* ------------ */
/* PHP ADR FORM */
/* ------------ */
.php-adr-form {
	width: 100%;
	padding: 30px;
	background: #fff;
	border: 2px solid #e9ecee;
	border-radius: 4px;
	font-size: 13px;
}

.php-adr-form .form-group {
	padding-bottom: 8px;
}

.php-adr-form .error-message {
	display: none;
	color: #fff;
	background: #ed3c0d;
	text-align: left;
	padding: 15px;
	font-weight: 600;
}

.php-adr-form .error-message br + br {
/*  margin-top: 25px;*/
}

.php-adr-form .sent-message {
	display: none;
	color: #fff;
	background: #18d26e;
	text-align: center;
	padding: 15px;
	font-weight: 600;
}

.php-adr-form .loading {
	display: none;
	background: #fff;
	text-align: center;
	padding: 15px;
}

.php-adr-form .loading:before {
	content: "";
	display: inline-block;
	border-radius: 50%;
	width: 24px;
	height: 24px;
	margin: 0 10px -6px 0;
	border: 3px solid #18d26e;
	border-top-color: #eee;
	-webkit-animation: animate-loading 1s linear infinite;
	animation: animate-loading 1s linear infinite;
}

.php-adr-form input, .contact .php-adr-form textarea {
	border-radius: 0;
	box-shadow: none;
	font-size: 14px;
	padding: 5px;
}
/*
.php-adr-form input {
  height: 44px;
}
*/
.php-adr-form textarea {
	padding: 10px 12px;
}

.php-adr-form button[type="submit"] {
	background: #312783;
	border: 1px solid #312783;
	padding: 8px 10px;
	color: #fff;
	transition: 0.4s;
	border-radius: 4px;
}
.php-adr-form button[type="submit"]:hover {
	background: #fff;
	color: #312783;
	border: 1px solid #312783;
}

.php-adr-form button[type=submit].reverse {
  	background: #fff;
  	color: #312783;
  	border: 1px solid #312783;
}
.php-adr-form button[type=submit].reverse:hover {
 	background: #312783;
  	color: #fff;
  	border: 1px solid #312783;
}

.php-adr-form button[type=submit].green {
  	background: #22bb22;
  	color: #fff;
  	border: 1px solid #22bb22;
}
.php-adr-form button[type=submit].green:hover {
 	background: #fff;
  	color: #22bb22;
  	border: 1px solid #22bb22;
}

.php-adr-form button[type=submit].red {
  	background: #bb2222;
  	color: #fff;
  	border: 1px solid #bb2222;
}
.php-adr-form button[type=submit].red:hover {
 	background: #fff;
  	color: #bb2222;
  	border: 1px solid #bb2222;
}

.php-adr-form button[type=submit].red_reverse {
  	background: #fff;
  	color: #bb2222;
  	border: 1px solid #bb2222;
}
.php-adr-form button[type=submit].red_reverse:hover {
 	background: #bb2222;
  	color: #fff;
  	border: 1px solid #bb2222;
}

.hidden {
	visibility: hidden;
	display: none;
}

/* ------- */
/* Feedback boxes */
/* ------- */
.ask-message {
  	visibility: hidden;
  	display: none;
  	color: #05579e;
/* 	background: transparent;*/
	background: #eee;
  	text-align: left;
  	padding: 10px;
  	font-weight: 600;
  	border-radius: 4px;
  	margin-bottom: 15px;
}
.ok-message {
  	display: block;
  	color: #fff;
  	background: #18d26e;
  	text-align: center;
  	padding: 10px;
 /* 	font-weight: 600;*/
  	border-radius: 4px;
  	margin-bottom: 24px;
}
.warning-message {
  	display: block;
  	color: #312783;
  	background: #f4eb7e;
  	text-align: center;
  	padding: 10px;
 /* 	font-weight: 600;*/
  	border-radius: 4px;
  	margin-bottom: 24px;
}
.info-message {
  	display: block;
  	color: #312783;
  	background: #eee;
  	text-align: center;
  	padding: 10px;
 /* 	font-weight: 600;*/
  	border-radius: 4px;
  	margin-bottom: 24px;
}
.generic-error {
  	display: block;
  	color: #fff;
  	background: #ed3c0d;
  	text-align: center;
  	padding: 10px;
/*  	font-weight: 600;*/
  	border-radius: 4px;
  	margin-bottom: 24px;
}
/* ------- */
/* Buttons */
/* ------- */
.help-box {
	background-color: #eee; 
	padding: 15px; 
	visibility: hidden; 
	display: none;
}

/* ------- */
/* Table   */
/* ------- */
/* Vertical scroll */
@media (max-height: 768px) {
	.scroll-table {
		height: 250px; 
		overflow: auto; 
	}
}
@media (min-height: 769px) {
	.scroll-table {
		height: 580px; 
		overflow: auto; 
	}
}
@media (min-height: 935px) {
	.scroll-table {
		height: 720px; 
		overflow: auto; 
	}
}

/* Sticky header */
.scroll-table thead {
 	position: sticky; 
	top: 0; 
	z-index: 2; 
/*	background: rgba(255, 255, 255, 0.8);*/
     background-color: #ffffcc;
 /*    opacity: 0.8;*/
}
/* tabella compatta (es. per edit commesse) */
.table.compact > :not(caption) > * > * {
	padding: 0.1rem 0.1rem;
}

/* Blocca la prima colonna */
th:first-child,
td:first-child {
    position: sticky;
    left: 0;
    background-color: #f2f2f2; /* Sfondo necessario per non sovrapporsi */
    z-index: 1; /* Assicura che stia sopra le altre colonne */
}

.form-control.compact {
	text-align: center;
}

td.table-gray {
	background-color: #eee;
}

