form.gm_custom_form {
    width: 100%;
}

form .form_container {
    margin-bottom: 10px;
}

.gm_custom_form legend {
    display: inline;
    font-weight: bold;
    padding: 2px 5px;
    margin-bottom: 10px;
    margin-top: 10px;
    color: #114D20;
}

.gm_custom_form input, .gm_custom_form select {
    display: block;
    width: 100%;
    padding-top: 10px;
    padding-bottom: 10px;
    /*font-size: 1.2em;*/
    background: #FFF;
    color: #000 !important;
}

input#nato_il:placeholder {
    color: lightgrey;
}

.generate-token {
    margin-top: 20px;
}

.gm-error-message {
    font-size: 0.8em;
}

.gm_custom_form span.required {
    color: red;
}

.gm_custom_form .gm-error-message {
    color: red;
    font-weight: bold;
    padding: 2px 5px;
    display: none;
}

.gm_custom_form .gm-content-flex {
    display: flex;
    justify-content: space-between;
}

.gm_custom_form .col12 {
    width: 100%;
}

.gm_custom_form .col9 {
    width: 71%;
}

.gm_custom_form .col6 {
    width: 46%;
}

.gm_custom_form .col3 {
    width: 21%;
}

.caption_container {
    margin-top: 10px;
    margin-bottom: 10px;
}

.checkbox_container {
    padding: 10px;
    vertical-align: top;
}

.checkbox_text {
    padding: 10px;
}

.button-container {
    text-align: center;
}

/* CSS */
.button-43 {
  background-image: linear-gradient(-180deg, #37AEE2 0%, #1E96C8 100%);
  border-radius: .5rem;
  box-sizing: border-box;
  color: #FFFFFF;
  /*display: flex;*/
  font-size: 16px;
  justify-content: center;
  padding: 1rem 1.75rem;
  text-decoration: none;
  width: 100%;
  max-width: 200px;
  border: 0;
  cursor: pointer;
  user-select: none;
  -webkit-user-select: none;
  touch-action: manipulation;
}

.button-43:hover {
  background-image: linear-gradient(-180deg, #1D95C9 0%, #17759C 100%);
}

.wait_processing {
    text-align: center;
    padding: 20px;
    font-weight: bold;
    color: darkgreen;
}

.layer-fixed-center {
    position: fixed;
    top:0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #000;
    opacity: 0.3;
    z-index: 99999;
    display: none;
}

.fixed-center {
    position: fixed;
    top:50%;
    left: 50%;
    margin-left: -10px;
    margin-top: -10px;
    z-index: 99999;
    display: none;
}

.button-container {
    display: none;
}

.validation_form {
    text-align: center;
    font-weight: bold;
    display:none;
    padding: 10px;
    font-size: 1.4em;
}

.validation_form.error_request {
    color: red !important;
}

.validation_form.success_request {
    color: darkgreen !important;
}

.message-alert-fixed {
    position: fixed;
    top: 0px;
    z-index: 999999999;
    left: 0;
    text-align: center;
    width: 100%;
    pointer-events: none;
    display: none !important;
}

.message-alert-fixed .alert-warning {
    color: #934d25;
    background-color: #fde6d8;
    border-color: #fcd9c5;
    padding: 5px 50px 10px 50px;
}

.message-alert-fixed .alert-success {
    padding: 5px 50px 10px 50px;
    background: #48AE6D;
    color: #FFF;
}

.message-alert-fixed .icon-item {
    border-radius: 50%;
    display: flex;
    -webkit-box-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    align-items: center;
    color: #5e6e82;
    transition: all 0.2s ease-in-out;
    height: 2.5rem;
    width: 2.5rem;
    border: 0;
    font-size: 1.875rem;
    box-shadow: 0 0.125rem 0.25rem rgba(0,0,0,0.075);
    margin-right: 25px;
 }
 
 .message-content-fixed {
    margin:auto;
    display: flex;
    align-items: center;
 }
 
 .message-content-fixed p  {
     margin: 0;
 }
 
 .message-alert-fixed .bg-warning {
     background-color: #f5803e !important;
 }
 
 .message-alert-fixed .bg-success {
     background-color: #00d27a !important;
 }

 a.gm_custom_form_anchor {
    position: absolute;
    margin-top: -150px;
 }
 
 div.success-img {
    width: 100%;
    text-align: center;
    display: none;
 }
 
 div.success-img img {
     max-width: 400px;
 }
 
 .title_custom_form {
     text-align: center;
     border-top: 2px solid green;
     border-bottom: 2px solid green;
     color: #981210;
 }
 
 .img_mini_loader {
     display:none;
     margin-top: 10px;
 }
 
 input[type="date"] {
     padding: 0.6em 0;
     border: none;
     border-bottom-width: 1px;
     border-bottom-style: solid;
     border-color: #E3E3E3;
     font-size: 16px;
     line-height: 1.5em;
 }
 
 .success_submit {
     display: none;
 }
 
 .hide_form {
     display: none;
 }
 
 #rotate-notice {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.7);
    z-index: 9999;
    justify-content: center;
    align-items: center;
}

#rotate-notice img {
    max-width: 60%;
    height: auto;
}

.errore_segnalazioni {
    display: none;
}

/* Desktop (a partire da 1024px) */
@media (min-width: 480px) and (max-width: 1023px) {
  button-43 {
    padding: 1rem 2rem;
  }
   div.gm-content-flex {
      display: block !important;
  }
   div.gm-content-flex .col6 {
      width: 100% !important;
  }
  .submenu_reserved {
      display: none;
  }
}