@import url("https://cdnjs.cloudflare.com/ajax/libs/flag-icon-css/3.5.0/css/flag-icon.css");
/*@import url('https://fonts.googleapis.com/css2?family=Raleway:ital,wght@0,100..900;1,100..900&display=swap');*/
body {
  padding-top: 100px;
  font-size: 0.8rem !important;
  font-family: "Raleway", sans-serif !important;
}

.nav {
  position: fixed !important;
  width: 100%;
  min-height: 100px;
  background-color: #ffffffd9 !important;
  top: 0;
  left: 0;
  z-index: 9999;
}
.navbar-nav {
  display: flex;
  flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
  flex-flow: wrap !important;
}
.nav .nav-item {
  text-transform: uppercase;
  margin: 0 5px;
  font-size: 0.9rem;
}

.input:-webkit-autofill {
  -webkit-box-shadow: 0 0 0 50px white inset;
  /* Change the color to your own background color */
  -webkit-text-fill-color: #333;
}

.no-overflow {
  overflow-x: hidden;
}

.icon {
  margin-right: 10px;
  line-height: 2rem;
  width: 40px !important;
}

.home {
  background-position: center -250px;
}

.sign {
  background-size: cover;
  width: 100%;
  height: 100%;
}

.wool {
  background-size: cover;
  background-position: center;
  width: 100%;
  height: 100%;
}

.header {
  min-height: 720px;
  background-size: cover;
  padding-top: 150px !important;
  padding-left: 20px !important;
  background-attachment: fixed;
}

.logo {
  width: 80px;
}

.white {
  color: white;
}

.text {
  margin-top: 20px;
  margin-left: 20px;
}

.title {
  font-size: 2.5rem;
}

.subtitle {
  font-size: 2rem;
}

.description {
  font-size: 1rem;
}

.btn {
  font-size: 0.8rem;
}

.btn_nav {
  min-width: 100px;
  background-color: #ffffff !important;
}

.main-container {
  overflow-x: hidden;
}

#bar-languages {
  height: 50px;
}

.btn-lang {
  margin: 20px 5px 20px 0px;
  border-radius: 15px !important;
}

.contenitor-boxes {
  min-height: 400px;
  margin-bottom: 20px;
}

.contenitor-span {
  min-height: 50px;
}

.bar {
  height: 1px;
  background: gray;
  margin: 10px;
}

.small-title {
  color: gray;
}

label {
  vertical-align: top;
}

a {
  color: #aa120e;
  text-decoration: underline;
}

.w-400 {
  max-width: 400px !important;
}

.w-350 {
  width: 350px !important;
}

.w-300 {
  width: 300px !important;
}

.w-250 {
  width: 250px !important;
}

.small-subtitle {
  min-height: 50px;
  font-size: 1.6rem;
  font-weight: bolder;
}

.small-description {
  min-height: 50px;
  font-size: 1.4rem;
  margin-bottom: 50px;
}

.small-image {
  min-height: 400px;
  background-size: cover;
  background-position: center;
}

.column {
  background: none;
}

.column-reverse {
  background: none;
}

.footer {
  background: #5b6452;
  padding: 20px;
  color: white;
}

.input {
  border: 0;
  border-bottom: 1px solid white;
  color: white;
  outline: none;
  padding: 0;
  margin: 0;
  background: transparent;
}

.link {
  text-decoration: none;
}

.link:hover {
  text-decoration: underline;
}

.link-endspan {
  text-decoration: none !important;
}

.link-endspan:hover {
  color: black !important;
  transition: 1s;
}

#endbar {
  background: #f2efe8;
  min-height: 80px;
  padding-left: 50px;
}

.endspan {
  font-size: 0.8rem;
  color: rgb(70, 70, 70);
  margin-right: 50px;
}

.contenitor-step {
  margin-left: 10px;
  margin-right: 10px;
  margin-bottom: 20px;
}

.box {
  height: 100px;
  background: red;
}

.farm-box {
  border-bottom: 1px solid #b4b1ab;
}

.b-image {
  height: 300px;
  background-size: cover;
  background-position: center;
  border: 1px solid #d1cec7;
}

.farm-cover {
  background-position: center;
  background-size: cover;
  min-height: 500px;
  background-color: #d6d6d6;
  border: solid 1px #fff;
}

.overlay {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  opacity: 0.2;
  background: rgba(0, 0, 0, 0.9);
}

.overlay:hover {
  opacity: 0.7;
  transition: 1s;
}

.img-title {
  color: white;
  font-size: 1.8rem;
}

#map {
  height: 400px;
  width: 100%;
}

.phone-flag {
  width: 27px !important;
  margin-right: 10px;
  line-height: 2rem;
}

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
  transition: background-color 5000s ease-in-out 0s;
}

@media screen and (max-width: 800px) {
  .column {
    flex-direction: column;
  }

  .column-reverse {
    flex-direction: column-reverse;
  }

  body {
    overflow-x: hidden;
  }

  .header {
    background-position: center -50px;
  }

  .media {
    width: 80%;
  }
}

@media screen and (max-width: 600px) {
  .b-none {
    border: none !important;
  }
}

.input-group-prepend {
  min-width: 120px;
}

.input-group-prepend-large {
  min-width: 350px;
}

.bg_card_2 {
  background: #f2efe8 !important;
}

.border_right_card {
  border-right: 1px solid #d1cec7 !important;
}

#questionnaire_form_2,
#questionnaire_form_3,
#questionnaire_result {
  display: none;
}

.progress_row {
  min-height: 150px;
}

.cons-show {
  display: none;
}

.text-transparent {
  color: transparent !important;
}

#playlist {
  display: table;
}

#playlist li {
  cursor: pointer;
  padding: 8px;
  color: white;
}

#playlist li:hover {
  color: silver;
}

#videoarea {
  float: left;
  width: 100%;
}

.datepicker {
  padding: 0.375rem 0.75rem !important;
}

/* Certificato SCADUTO - rosso e disabilitato */
input.expired-certificate[disabled] + label {
  color: #dc3545 !important;
  opacity: 0.7;
  text-decoration: line-through;
}

option[disabled] {
  color: #dc3545 !important;
  font-style: italic;
  text-decoration: line-through;
}

/* Badge EXPIRED in rosso grassetto */
.text-danger.small.fw-bold {
  font-size: 0.85em;
  font-weight: 700 !important;
  display: inline-block;
  margin-left: 5px;
}

/* Info scadenza per certificati validi - grigio */
.text-muted.small {
  font-size: 0.85em;
  color: #6c757d !important;
  display: inline-block;
  margin-left: 5px;
}

/* ============================================================
   Questionario FE (p=13): campi piu' grandi e leggibili (ago 2026)
   Checkbox e radio ingranditi, input testo/numero/data piu'
   spaziosi. Regole limitate alle card .questionnaire_form,
   il resto del sito non viene toccato.
   ============================================================ */

/* quadratini e cerchietti grandi */
.questionnaire_form input[type="checkbox"],
.questionnaire_form input[type="radio"] {
  width: 1.5em;
  height: 1.5em;
  min-width: 1.5em; /* non si schiaccia con label lunghe */
  margin-right: 0.6em;
  vertical-align: middle;
  accent-color: #5b6452; /* verde Authentico (come il footer) */
  cursor: pointer;
}

/* label allineate al centro del quadratino/cerchietto e piu' leggibili */
.questionnaire_form input[type="checkbox"] + label,
.questionnaire_form input[type="radio"] + label {
  vertical-align: middle;
  font-size: 0.95rem;
  line-height: 1.6;
  padding: 0.2rem 0;
  cursor: pointer;
}

/* input testo, numero e data piu' spaziosi (stile form-control) */
.questionnaire_form input[type="text"],
.questionnaire_form input[type="number"],
.questionnaire_form input[type="date"] {
  padding: 0.45rem 0.75rem;
  font-size: 0.95rem;
  line-height: 1.4;
  border: 1px solid #ced4da;
  border-radius: 0.375rem;
  background-color: #fff;
  min-width: 220px;
  max-width: 100%;
}

.questionnaire_form input[type="text"]:focus,
.questionnaire_form input[type="number"]:focus,
.questionnaire_form input[type="date"]:focus {
  outline: none;
  border-color: #5b6452;
  box-shadow: 0 0 0 0.2rem rgba(91, 100, 82, 0.25);
}

/* campi disabilitati (readonly o certificato scaduto): niente mano */
.questionnaire_form input[disabled] {
  cursor: not-allowed;
}

/* su mobile gli input occupano tutta la riga */
@media screen and (max-width: 600px) {
  .questionnaire_form input[type="text"],
  .questionnaire_form input[type="number"],
  .questionnaire_form input[type="date"] {
    min-width: 100%;
  }
}
