body {
    background-color: #EEEEEE;
    font-family: 'Raleway', sans-serif;
}

.samelinecontainer{
	white-space:nowrap;
}

.samelinecontainer div{
	display: inline-block; 
	vertical-align: middle;
	white-space:nowrap;
}
.emailoverflow{
	max-width:60%; 
	overflow: hidden;
	text-overflow: ellipsis; 
}

.nopadding {
   padding: 0 !important;
   margin: 0 !important;
}

.extrapadding {
   padding: 15px;
}

.nodesktop {
   display: none;
}

.nomobile {
   display: inherit;
}

.testatagrande {
    height: 390px;
    background-image: url("../img/testatagrande-servizi.jpg?2.4");
    background-repeat: no-repeat;
    background-position: left bottom;
    margin-bottom: 30px;
}

.testatagrandeportaledonatore {
    height: 390px;
    background-image: url("../img/portaledonatore/testatagrande-portaledonatore.png?2.4");
    background-repeat: no-repeat;
    background-position: left bottom;
    margin-bottom: 30px;
}

.testatagrandeprenotazioni {
    height: 390px;
    background-image: url("../img/prenotazioni/testatagrande-prenotazioni.jpg?2.4");
    background-repeat: no-repeat;
    background-position: left bottom;
    margin-bottom: 30px;
}

.testatagrandepagamenti {
    height: 390px;
    background-image: url("../img/pagamenti/testatagrande-pagamenti.jpg?2.4");
    background-repeat: no-repeat;
    background-position: left bottom;
    margin-bottom: 30px;
}

.testatainternaservizi {
    height: 158px;
    background-image: url("../img/testatainterna-servizi.jpg?2.4");
    background-repeat: no-repeat;
    background-position: left bottom;
}

.testatainternasportellovirtuale {
    height: 158px;
    background-image: url("../img/sportellovirtuale/testatainterna-sportellovirtuale.jpg?2.4");
    background-repeat: no-repeat;
    background-position: left bottom;
}

.testatainternaprenotazioni {
    height: 158px;
    background-image: url("../img/portaledonatore/testatainterna-portaledonatore.jpg?2.4");
    background-repeat: no-repeat;
    background-position: left bottom;
}

.testatainternatempisportelli {
    height: 158px;
    background-image: url("../img/tempisportelli/testatainterna-pagamenti.jpg?2.4");
    background-repeat: no-repeat;
    background-position: left bottom;
}

.testatainternaprontosoccorso {
    height: 158px;
    background-image: url("../img/prontosoccorso/testatainterna-prontosoccorso.jpg");
    background-repeat: no-repeat;
    background-position: left bottom;
}

.testatainternapagamenti {
    height: 158px;
    background-image: url("../img/pagamenti/testatainterna-pagamenti.jpg?2.4");
    background-repeat: no-repeat;
    background-position: left bottom;
}

.testatainternafaq {
    height: 158px;
    background-image: url("../img/faq/testatainterna-faq.jpg?2.4");
    background-repeat: no-repeat;
    background-position: left bottom;
}

.testatainternacartellaclinica {
    height: 158px;
    background-image: url("../img/cartellaclinica/testatainterna-cartellaclinica.jpg?2.4");
    background-repeat: no-repeat;
    background-position: left bottom;
}

.testatalogo {
    text-align: left;
}

.testatalogo img {
    margin-left: 20px;
    margin-top: 20px;
}

.testatascrittaservizi {
    text-align: right;
}

.testatascrittaservizi img {
    margin-top: 8px;
}

@keyframes sloganhome {
    0%   {opacity: 0;}
    100% {opacity: 1;}
}

.testataslogan {
    border-left: 2px solid white;
    font-size: 30px;
    margin-top: 30px;
    padding: 30px;
    animation-name: sloganhome;
    animation-duration: 3s;
}

.testatasloganhomepage {
    font-size: 29px;
    margin-top: 222px;
    padding: 30px;
    animation-name: sloganhome;
    animation-duration: 3s;
}

.principale {
    /*background-image: url("../img/sfondo-container-principale.gif");*/
    background-color: #FFFFFF;
    background-repeat: no-repeat;
    background-position: right bottom;
    min-height: 400px;
    /*padding-bottom: 40px;*/
}

.principaleinterna {
    padding-top:15px;
}

.paginatesto {
    font-size: 112%;
    padding: 45px;
}

.centrato {
    text-align: center;
}

.adestra {
    text-align: right;
}

.asinistra {
    text-align: left;
}

.grande110 {
    font-size: 110%;
    line-height: 130%;
}

.grande130 {
    font-size: 130%;
    line-height: 150%;
}

.grande150 {
    font-size: 150%;
}

.biancotrasparente {
    color: #FFFFFF;
    opacity: 0.5;
}

.testogrigio {
    color: #777777;
}

.testorosso {
    color: #C6191F;
}

.testogiallo {
    color: #FFCC29;
}

.testoblu {
    color: #00678C;
}

.testoverde {
    color: #74AE1C;
}

.testoceleste {
    color: #6EC2DF;
}

.testorossonegativo {
    background-color: #C6191F;
    padding: 8px;
    color: #FFFFFF;
    display:table;
}

.testoblunegativo {
    background-color: #00678C;
    padding: 8px;
    color: #FFFFFF;
    display:table;
}

.testoverdenegativo {
    background-color: #74AE1C;
    padding: 8px;
    color: #FFFFFF;
    display:table;
}

.testoblunegativo_attese {
    background-color: #00678C;
    padding: 8px;
    color: #FFFFFF;
    text-align: center;
}

.testoverdenegativo_attese {
    background-color: #74AE1C;
    padding: 8px;
    color: #FFFFFF;
    text-align: center;
}

.testorossoblock {
    background-color: #fff;
    padding: 8px;
    color: #C6191F;
    display:table;
    border: 1px solid #CCCCCC;
}

.testopiccolo {
    font-size: 0.7em;
}

.boxgrigio {
    background-color: #F9F9F9;
    border: 1px solid #CCCCCC;
    margin: 15px;
    padding: 5px 15px 15px 15px;
}

.boxgrigio:hover {
    background-color: #fff;
    border-color: #aaa;
}

.boxgrigiodisabilitato {
    background-color: #F9F9F9;
    border: 1px solid #CCCCCC;
    margin: 15px;
    padding: 5px 15px 15px 15px;
    color: #BBBBBB;
}

.boxneutro {
    margin: 15px;
    padding: 5px 15px 15px 15px;
}

.boxgiallo {
    background-color: #FFFAEA;
    border: 1px solid #FFCC29;
    margin-top: 25px;
    padding: 10px;
    border-radius: 8px;
}

.boxbiancoradius {
    background-color: #FFF;
    border: 1px solid #BBB;
    padding: 20px;
    border-radius: 8px;
}

.boxcookie {
    background-color: rgba(255,250,234,0.9);
    padding: 10px;
    position: fixed;
    width: 100%; 
    z-index: 100; 
    font-size: 16px;
}

.boxalert {
    padding-left: 15px;
    padding-right: 15px;
    padding-top: 5px;
    padding-bottom: 5px;
    margin-left: 15px;
    margin-right: 15px;
    margin-top: 20px;
    background-color: rgba(255,150,134,0.3);
}

.biancointerno {
    background-color: #fff;
    padding: 1px 10px 5px 10px;
    margin-bottom: 10px;
}

.biancointerno:hover {
    background-color: #F9F9F9;
}

.dividergrigio {
    background-color: #DDDDDD;
    height: 5px;
    margin-top: 10px;
    margin-bottom: 10px;
}

.dividergrigiopiccolo {
    background-color: #DDDDDD;
    height: 2px;
    margin-top: 5px;
    margin-bottom: 5px;
}

.dividergiallo {
    background-color: #FFCC29;
    height: 5px;
    margin-top: 10px;
}

.dividerrosso {
    background-color: #C6191F;
    height: 5px;
    margin-top: 10px;
}

.descrizioneservizio {
    color: #777777;
    font-size: 20px;
    margin-top: 55px;
}

.descrizioneserviziohub {
    color: #777777;
    font-size: 1.2em;
}

.fintobottonegrigio {
  padding: 10px 16px;
  background: #eeeeee;
  font-size: 16px;
  line-height: 1.3333333;
  border-radius: 6px;
  display: block;
  width: 100%;
  text-align: center;
}

.fintobottonebianco {
  padding: 10px 16px;
  background: #FFFFFF;
  font-size: 16px;
  line-height: 1.3333333;
  border-radius: 6px;
  display: block;
  width: 100%;
  text-align: center;
}

.fintobottonequadrato {
  padding: 10px;
  background: #000000;
  color: #FFFFFF;
  font-size: 16px;
  border-radius: 6px;
  display:inline-block;
  width: 40px;
  text-align: center;
}

.fintobottonetestoverde {
  padding: 10px 16px;
  color: #74AE1C;
  background: #ffffff;
  font-size: 16px;
  line-height: 1.3333333;
  border-radius: 6px;
  display: block;
  width: 100%;
  text-align: center;
}

.codicerosso {
  padding: 10px 16px;
  background: #FF6347;
  font-size: 16px;
  line-height: 1.3333333;
  border-radius: 6px;
  display: block;
  width: 100%;
  text-align: center;
}

.codicegiallo {
  padding: 10px 16px;
  background: #FFD700;
  font-size: 16px;
  line-height: 1.3333333;
  border-radius: 6px;
  display: block;
  width: 100%;
  text-align: center;
}

.codiceverde {
  padding: 10px 16px;
  background: #90EE90;
  font-size: 16px;
  line-height: 1.3333333;
  border-radius: 6px;
  display: block;
  width: 100%;
  text-align: center;
}

.codicebianco {
  padding: 10px 16px;
  background: #EEE;
  font-size: 16px;
  line-height: 1.3333333;
  border-radius: 6px;
  display: block;
  width: 100%;
  text-align: center;
}

.testobottonegrande {
  font-size: 20px;
}

.btn-pagamenti {
    background-color: #C6191F;
    color: #FFF;
    font-size: 1.1em;
    margin-top: 10px;
    margin-bottom: 15px;
    padding-left: 20px;
    padding-right: 20px;
} 

.btn-pagamenti:hover {
    background-color: #FFCC29;
    color: #C6191F;
} 

.btn-esenti {
    background-color: #FFCC29;
    color: #555555;
    font-size: 1.1em;
    margin-top: 10px;
    margin-bottom: 15px;
    padding-left: 20px;
    padding-right: 20px;
} 

.btn-esenti:hover {
    background-color: #DDDDDD;
    color: #555555;
} 

.btn-neutro {
    background-color: #DDDDDD;
    color: #999;
    font-size: 1.1em;
    margin-top: 10px;
    margin-bottom: 15px;
    padding-left: 20px;
    padding-right: 20px;
} 

.btn-neutro:hover {
    background-color: #999;
    color: #FFF;
} 

.btn-giallo {
    background-color: #FFCC29;
    color: #555555;
    letter-spacing: 2px;
    border-color: #FFCC29;
} 

.btn-giallo:hover {
    background-color: #DDD;
    color: #555555;
} 

.btn-paga-disabled{
    background-color: #DDD;
    color: #555555;
    letter-spacing: 2px;    
}

.btn-paga-disabled:hover{
    background-color: #DDD;
    color: #555555;
    letter-spacing: 2px;    
}

.btn-blupetrolio {
    background-color: #00668C;
    color: #FFF;
    letter-spacing: 2px;
    border-color: #00668C;
    border-width: 2px;
} 

.btn-blupetrolio:hover {
    background-color: #eee;
    color: #00668C;
    border-color: #00668C;
} 

.btn-grigioinverso {
    background-color: #eee;
    color: #555;
    letter-spacing: 2px;
    border-color: #555;
    border-width: 2px;
} 

.btn-grigioinverso:hover {
    background-color: #555;
    color: #FFF;
    border-color: #555;
} 

.btn-zeroattesa {
    background-color: #74AE1C;
    color: #FFF;
    font-size: 1.1em;
    margin-top: 10px;
    margin-bottom: 15px;
    padding-left: 20px;
    padding-right: 20px;
} 

.btn-zeroattesa:hover {
    background-color: #DDD;
    color: #74AE1C;
} 

.btn-tempisportelli {
    background-color: #107AA3;
    color: #FFF;
    font-size: 1.1em;
    margin-top: 10px;
    margin-bottom: 15px;
    padding-left: 20px;
    padding-right: 20px;
} 

.btn-tempisportelli:hover {
    background-color: #DDD;
    color: #107AA3;
} 

.btn-tempiattesa {
    background-color: #444444;
    color: #FFF;
    font-size: 1.1em;
    margin-top: 10px;
    margin-bottom: 15px;
    padding-left: 20px;
    padding-right: 20px;
} 

.btn-tempiattesa:hover {
    background-color: #DDD;
    color: #107AA3;
} 

.btn-tempiprontosoccorso {
    background-color: #D93600;
    color: #FFF;
    font-size: 1.1em;
    margin-top: 10px;
    margin-bottom: 15px;
    padding-left: 20px;
    padding-right: 20px;
} 

.btn-tempiprontosoccorso:hover {
    background-color: #008C00;
    color: #FFFFFF;
} 

.btn-disabilitato {
    background-color: #DDDDDD;
    color: #FFF;
    font-size: 1.1em;
    margin-top: 10px;
    margin-bottom: 15px;
    padding-left: 20px;
    padding-right: 20px;
} 

.btn-disabilitato:hover {
    color: #FFF;
} 

.loader {
    border: 12px solid #f3f3f3; /* Grigio chiaro */
    border-top: 12px solid #FFCC29; /* Giallo */
    border-radius: 50%;
    width: 120px;
    height: 120px;
    animation: spin 2s linear infinite;
    display: table;
    margin: 0 auto;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

.led-lampeggiante {
  display: inline-block;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  margin-right: 5px;
  animation: blinkYellow 1s infinite;
}

@keyframes blinkYellow {
    from { background-color: #74AE1C; }
    50% { background-color: #EEEEEE; }
    to { background-color: #74AE1C; }
}  

.iconetitoli {
    font-size: 0.75em;
} 

.footerservizi {
    margin-top: 10px;
}

.footer-nav ul {
    margin: 0;
    padding: 0;
    margin-top: 25px;
    list-style-type: none;
    text-transform: uppercase;
    font-weight: bold;
    font-size: 0.7em;
    letter-spacing: 0.5px;
}

.footer-nav ul li {
    display: inline;
}

.footer-nav ul li a {
    text-decoration: none;
    padding: .2em 0.4em;
    color: #AAAAAA;
    border: 1px solid #EEEEEE;
}

.footer-nav ul li a:hover {
    color: #666;
    border: 1px solid #666;
}

.subfooter-nav ul {
    margin: 0;
    padding: 0;
    margin-top: 15px;
    margin-bottom: 20px;
    text-align: left;
    list-style-type: none;
    font-size: 0.9em;
    letter-spacing: 0.5px;
}

.subfooter-nav ul li {
    display: inline;
}

.subfooter-nav ul li a {
    text-decoration: none;
    padding: .2em 0.4em;
    color: #444444;
}

.subfooter-nav ul li a:hover {
    color: #C6191F;
}

.subfooter-copyright {
    color: #C6191F;
    font-size: 0.85em;
    letter-spacing: 0.3px;
    text-align: right;
    margin-top: 5px;
}


/* Regole Desktop Medi (meno di 1200px) */
@media screen and (max-width: 1200px) {
    .testataslogan {
        border-left: 2px solid white;
        font-size: 30px;
        padding: 10px;
        margin-top: 40px;
    }
    .testatasloganhomepage {
    margin-top: 177px;
    }
    .testatalogo img {
    width: 200px;
    height: 72px;
    }
    .testatagrande {
    height: 323px;
    background-size: 970px 323px;
    margin-bottom: 30px;
    }
    .testatagrandeportaledonatore {
    height: 323px;
    background-size: 970px 323px;
    margin-bottom: 30px;
    }
    .testatagrandeprenotazioni {
    height: 323px;
    background-size: 970px 323px;
    margin-bottom: 30px;
    }
    .testatainternaservizi {
    height: 131px;
    background-size: 970px 131px;
    }
    .testatainternasportellovirtuale {
    height: 131px;
    background-size: 970px 131px;
    }
    .testatainternaprenotazioni {
    height: 131px;
    background-size: 970px 131px;
    }
    .testatainternatempisportelli {
    height: 131px;
    background-size: 970px 131px;
    }
    .testatainternaprontosoccorso {
    height: 131px;
    background-size: 970px 131px;
    }
    .testatainternafaq {
    height: 131px;
    background-size: 970px 131px;
    }
    .testatainternacartellaclinica {
    height: 131px;
    background-size: 970px 131px;
    }
    .testatagrandepagamenti {
    height: 323px;
    background-size: 970px 323px;
    margin-bottom: 30px;
    }
    .testatascrittaservizi img {
    width: 160px;
    height: 48px;
    }
    .testataslogan {
    font-size: 24px;
    margin-top: 24px;
    padding: 24px;
    }
}

/* Regole Tablet (meno di 992px) */
@media screen and (max-width: 992px) {
    .nodesktop {
        display: inherit;
    }
    .nomobile {
        display: none;
    }  
    .testatagrande {
        height: 525px;
        background-image: url("../img/testatagrande-servizi-mobile.jpg?2.4");
        background-repeat: no-repeat;
        background-position: center bottom;
        background-size: auto;
        margin-bottom: 30px;
    }
    .testatagrandeportaledonatore {
        height: 525px;
        background-image: url("../img/portaledonatore/testatagrande-portaledonatore-mobile.png?2.4");
        background-repeat: no-repeat;
        background-position: center bottom;
        background-size: auto;
        margin-bottom: 30px;
    }
    .testatagrandeprenotazioni {
        height: 525px;
        background-image: url("../img/prenotazioni/testatagrande-prenotazioni-mobile.jpg?2.4");
        background-repeat: no-repeat;
        background-position: center bottom;
        background-size: auto;
        margin-bottom: 30px;
    }
    .testatagrandepagamenti {
        height: 525px;
        background-image: url("../img/pagamenti/testatagrande-pagamenti-mobile.jpg?2.4");
        background-repeat: no-repeat;
        background-position: center bottom;
        background-size: auto;
        margin-bottom: 30px;
    }
    .testatainternaservizi {
        height: 290px;
        background-repeat: no-repeat;
        background-position: right bottom;
        background-size: auto;
    }
    .testatainternasportellovirtuale {
        height: 290px;
        background-repeat: no-repeat;
        background-position: right bottom;
        background-size: auto;
    }
    .testatainternaprenotazioni {
        height: 290px;
        background-repeat: no-repeat;
        background-position: right bottom;
        background-size: auto;
    }
    .testatainternatempisportelli {
        height: 290px;
        background-repeat: no-repeat;
        background-position: right bottom;
        background-size: auto;
    }
    .testatainternaprontosoccorso {
        height: 290px;
        background-repeat: no-repeat;
        background-position: right bottom;
        background-size: auto;
    }
    .testatainternapagamenti {
        height: 290px;
        background-repeat: no-repeat;
        background-position: right bottom;
    }
    .testatainternafaq {
        height: 290px;
        background-repeat: no-repeat;
        background-position: right bottom;
        background-size: auto;
    }
    .testatainternacartellaclinica {
        height: 290px;
        background-repeat: no-repeat;
        background-position: right bottom;
        background-size: auto;
    }
    .testatalogo {
        text-align: center;
    }
    .testatalogo img {
        margin-left: 0;
        margin-bottom: 10px;
        margin-top: 15px;
        width: 250px;
        height: 90px;
    }
    .testatascrittaservizi {
        text-align: center;
        border-bottom: 2px solid white;
    }
    .testatascrittaservizi img {
        margin-bottom: 15px;
        margin-top: 20px;
        width: 200px;
        height: 60px;
    }
    .testataslogan {
        border-left: none;
        text-align: center;
        padding: 50px;
        margin-top: 30px;
        font-size: 30px;
    }
    .testatasloganhomepage {
        margin-top: 232px;
        text-align: center;
        font-size: 26px;
    }
    .centratomobile {
    text-align: center;
    }
    .footerservizi {
    text-align: center;
    }
    .footer-nav ul {
    margin-top: 20px;
    margin-bottom: 20px;
    }
    .footer-nav ul li {
    display: block;
    margin-top: 15px;
    text-align: center;
    }
    .subfooter-nav ul li {
    display: block;
    text-align: center;
    }
    .subfooter-copyright {
    text-align: center;
    margin-bottom: 25px;
    }
}

/* Regole Smartphone (meno di 768px) */
@media screen and (max-width: 768px) {
    .boxgrigionopadding {
        background-color: #F9F9F9;
        border: 0px;
        border-top: 1px solid #CCCCCC;
        border-bottom: 1px solid #CCCCCC;
        margin-left: -15px;
        margin-right: -15px;
        padding: 5px 10px 10px 10px;
    }
    .extrapaddingmobile {
       padding: 25px 15px 25px 15px;
    }
    .footerservizi {
        text-align: center;
        margin-top: 20px;
    }
}

/* Regole Vecchi Smartphone (meno di 380px) */
@media screen and (max-width: 380px) {
    .btn {
        font-size: 0.85em;
    }
    .testataslogan {
        font-size: 26px;
    }
    .testatasloganhomepage {
        margin-top: 238px;
        text-align: center;
        font-size: 22px;
    }
}

/*help impegnativa*/
.help-block-impegnativa {
  display: inline-block;
  font-size: 18px;
  cursor: pointer;
  margin-top: 5px;
  margin-bottom: 10px;
  color: #737373;
}
.help-numero-impegnativa-bianca{
 	height: 672px;     
    background-repeat: no-repeat;
    background-position: center bottom;
    background-size: auto;
    margin-bottom: 30px;
	background-image: url("../img/prenotazioni/ricetta-bianca-large.jpg?2.4");
}
.help-numero-impegnativa-rossa{
	height: 709px;     
    background-repeat: no-repeat;
    background-position: center bottom;
    background-size: auto;
    margin-bottom: 30px;
	background-image: url("../img/prenotazioni/ricetta-rossa-large.jpg?2.4");
}

.help-numero-impegnativa-modal-dialog {
	position: relative;
	width: 960px;
    margin: 30px auto;
}

@media screen and (max-width: 992px) {
	.help-numero-impegnativa-modal-dialog {
		position: relative;
		width: auto;
  		margin: 30px;
	}
    .help-numero-impegnativa-bianca{
    	height: 411px;  
    	background-image: url("../img/prenotazioni/ricetta-bianca-medium.jpg?2.4");
    }
    .help-numero-impegnativa-rossa{
    	height: 433px;  
    	background-image: url("../img/prenotazioni/ricetta-rossa-medium.jpg?2.4");
    }
}

@media screen and (max-width: 700px) {
	.help-numero-impegnativa-bianca{
		height: 228px; 
    	background-image: url("../img/prenotazioni/ricetta-bianca-small.jpg?2.4");
    }
    .help-numero-impegnativa-rossa{
    	height: 198px; 
    	background-image: url("../img/prenotazioni/ricetta-rossa-small.jpg?2.4");
    }


.help-impegnativa {
  display: inline-block;
  cursor: pointer;
  margin-top: 5px;
  margin-bottom: 10px;
  color: #737373;
  font-size: 16px;
}