* {
    font-family: 'Roboto', sans-serif;
}

html, body {
   margin:0;
   padding:0;
   height:100%;
  scroll-behavior: smooth;
}

#container {
   min-height:100%;
   position:relative;
}

#header {

}

#body {
   padding: auto;
   padding-bottom:150px;   /* Height of the footer */
}

#footer {
    position:absolute;
    bottom:0;
    width:100%;
    height:150px;   /* Height of the footer */
}

#header .img-fluid {
 height: 70px;
}

#header hr {
  margin-bottom: 0;
}

@media (min-width: 576px) { 
    #body {
       padding:10px;
       padding-bottom:100px;   /* Height of the footer */
    }

    #footer {
        position:absolute;
        bottom:0;
        width:100%;
        height:100px;   /* Height of the footer */
    }

}



#footer a {
 color: #121212;
}

.coloro {
    color:#777;
}

.section-title {
   font-size: 1.3rem;
   color:#000000;
 padding-top:0.3rem;
 padding-bottom:0.3rem;
}

.section-subtitle {
   font-size:1.0rem;
 padding-top:0.3rem;
 padding-bottom:0.3rem;
}

.btn-benetton-verde {
    font-size: 1.0rem; 
    color: #FFFFFF; 
    text-decoration: none; 
    font-family:Roboto, sans-serif;
    background-color: #007E3C; 
    border: 2px solid #007E3C; 
    padding: 17px 50px;
    border-radius: 0px; 
    -moz-border-radius: 0px; 
    -webkit-border-radius: 0px;
}

.btn-benetton-verde:active, .btn-primary:active:focus, .btn-primary:focus:hover, .btn-primary:hover {
    border-color: #009848;
    background-color: #009848;
    color: #fff;
}

.btn-benetton-bianco {
    font-size: 1.0rem; 
    color: #007E3C; 
    text-align: center; 
    text-decoration: none; 
    font-family: Roboto;
    background-color: #FFFFFF;
    border: 2px solid #007E3C; 
    padding: 17px 50px; 
    border-radius: 0px; 
    -moz-border-radius: 0px; 
    -webkit-border-radius: 0px;
}


.btn-benetton-bianco:hover {
    background-color: #daf7e8;
    border-color: #009848;
    color: #009848;
}

.btn-benetton-bianco:active {
    background-color: #007e3c;
    border-color: #007e3c;
    color: #fff !important; 
}

/*** ERROR ***/

.error-feedback {
    width: 100%;
    margin-top: .25rem;
    font-size: 80%;
    color: #dc3545;
}

/*** CHECKBOXES **/

.topic-body .custom-control-label{
 padding-top: 0.2rem;
}

.custom-control-label {
  font-size: 1.0rem;  
  padding-left: 0.45rem;
}

.topic-body .custom-control-label {
  font-size: 0.8rem;  
  padding-left: 0.45rem;
}

.custom-checkbox .custom-control-input:checked~.custom-control-label::after {
    background-image: none;
}

/*** ALERT ***/
.alert-danger {
 color: #bd0000;
    text-align: center;
    display: block;
}

/*** CHECKBOX COLOR ***/

.custom-control-input:checked~.custom-control-label::before {
    color:#007e3c;
    border-color: #c4c4c4;
    background-color: #007e3c;
}

.custom-control-label::before, .custom-file-label, .custom-select {
    transition: background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}

.custom-control-input:not(:disabled):active~.custom-control-label::before {
    color: #fff;
    background-color: #007e3c;
    border-color: 007e3c;
}

.custom-control-label:focus::before {
 border-color: #FF0000;
 box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(255, 0, 0, 0.6);
}

.custom-checkbox .custom-control-input:disabled:checked~.custom-control-label::before {
    background-color: #e9ecef;
}

.custom-switch .custom-control-input:disabled:checked~.custom-control-label::before {
    background-color: #e9ecef;
}

/*** END ***/

.text-muted-red {
    color: #bd0000;
}


.hidden {
    display:none;
}

.linkbnt{
    color: #121212;
    text-decoration: none;
    font-size:16px;
}

hr {
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
}

#header > hr {
 margin-top: 0;
}

.custom-checkbox .custom-control-input:checked:focus ~ .custom-control-label::before {
    box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 255, 0, 0.25)
}

.custom-checkbox .custom-control-input:focus ~ .custom-control-label::before {
    box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0,255,0,0.3);
    border-color: #c4c4c4;
}

custom-control-label {
    position: relative;
    margin-bottom: 0;
    vertical-align: top;
    padding-left: 0.45rem;
}

.link_personalizzati {
    color: #000000 !important;
    text-decoration:none;
}


/** Accordion ***/
.accordion .card .card-header button:after {
  font-family: "Font Awesome 5 Free";
  content: "\f106";
  font-weight: 900;
  position: absolute;
    right: 25px;
   color: #007E3C;
   top: 32%;
}

.accordion .card .card-header button.collapsed:after {
  font-family: "Font Awesome 5 Free";
    content: "\f107";
    font-weight: 900;
 color: #007E3C;
   top: 32%;
}

 
.card-header .btn {
   white-space: normal;
   text-align: left;
   color: rgb(51, 51, 51);
   font-size: 16px;
   font-weight: 700;
   text-decoration: none!important;
   padding-left: 0px;
}

 

.card-header .btn-link:hover{
   color: rgb(51, 51, 51);
   text-decoration: none!important;
}

.card-header {
    margin: 0;
    padding: 10px 10px;
    border-bottom: solid 1px #e5e5e5;
   background-color: #FFF;
   position: relative;
}

.card {
   border: 0px solid rgba(0,0,0,.125);
}

.card-body{
   padding: 20px;
}

.title-container{
    padding-left: 0px;
    padding-right: 0px;
}

@media(min-width:768px){
  .title-container{
      /**padding-left: 60px; **/
      /**padding-right: 60px; **/
  }
}

.general-title {
    font-size: 18px;
    /**line-height: 27px;**/
}

.general-title + hr {
    border-color: black;
    width: 45px;
    margin: 0;
    margin-top: 10px;
    border: 0;
    border-top: 1px solid black;
}

/** END ACCORDION **/

.topic-header{
    margin: 0;
    padding: 0.5rem 0.5rem;
    border-bottom: solid 1px #e5e5e5;
    background-color: #FFF;
    position: relative;
  font-weight:500;
  font-size: 0.9rem;
}

.topic-body{
 padding: 1.0rem;
 font-size: 0.8rem;
}

/*** GO TO BOTTOM ***/


.sticky-bottom {
 left: 85%;
 bottom: 10%;
 width: fit-content;
 width: -moz-fit-content;
 right: 0px;
}

@media (min-width: 576px) { 
    .sticky-bottom {
        left: 90%;
        bottom: 10%;
        width: fit-content;
  width: -moz-fit-content;
        right: 0px;
    }
}

/** BTN CIRCLE ***/

a.btn-circle {
    margin: 0px;
    padding: 10px;
    -webkit-appearance: button;
    overflow: visible;
    text-transform: none;
}

.btn-circle {
 width: 40px;
 height: 40px;
 border-radius: 20px;
 text-align: center;
 font-size: 12px;
 line-height: 1.42857;
    box-shadow: 0 5px 11px 0 rgba(0,0,0,.18), 0 4px 15px 0 rgba(0,0,0,.15);
    background-color: #fff;
    border-color: #007E3C;
 color: black!important;
}

.btn-circle:focus {
    -webkit-box-shadow: 0 5px 11px 0 rgba(0,0,0,.18), 0 4px 15px 0 rgba(0,0,0,.15);
 background-color: #007E3C!important;
 border-color: #007E3C!important;
}

.btn-circle:hover {
    color: white!important;
}

.btn-circle:active {
    background-color: #007E3C!important;
}

/*** END BTN CIRCLE ***/
