body {
    font-family: 'Helvetica Neue', Helvetica, Arial, Sans-serif;
    font-size: 13px;
    color: #333;
    background: #fff;
    -webkit-text-stroke: 1px transparent;
    -webkit-font-smoothing: antialiased;
}

/* general styling
--------------------------------------------------------- */
a {
    color: #37d;
    text-decoration: none;
}
a:hover {
    text-decoration: underline;
}
ul{
    margin: 0;
    padding: 0;
    list-style: none;
}

/* Header
--------------------------------------------------------- */
#header {
    text-align: center;
}
#header .logo {
    margin: 20px auto 50px;
    max-width: 100%;
}

#header .language-selector {
    text-align: right;
}
#header .language-selector label {
    font-size: 16px;
    color: #999;
    vertical-align: middle;
}

/* Form elements
--------------------------------------------------------- */

option{
     font-size:16px; color:#666666;
}

.formelement.departments{
    /*padding-bottom: 20px;*/
    /*border-bottom: 1px solid #ccc;*/
}




.formelement.departments .label:before{
    position: absolute;
    bottom:-6px;
    left:50%;
    width:8px;
    height:6px;
    margin-left: -4px;
    background: url('../images/sprite.png') -350px 0;
    content:'';
}


.formelement .row label{
    float: left;
    width: 180px;
    font-size: 16px;
    color: #666;
}
.formelement .row .rating{
    float: right;
}
.formelement .row .rating-tip{
    position: absolute;
    top:23px;
    left:-190px;
    text-align: left;
}

/* double columns */
.double{
}


.double .formelement:first-child{
    margin-left: 0;
}


div.selector span,
textarea,
input[type="text"],
input[type="password"],
input[type="datetime"],
input[type="datetime-local"],
input[type="date"],
input[type="month"],
input[type="time"],
input[type="week"],
input[type="number"],
input[type="email"],
input[type="url"],
input[type="search"],
input[type="tel"],
input[type="color"],
.uneditable-input {
    display: inline-block;
    height: 40px;
    width: 100%;
    padding: 9px 9px;
    margin-bottom: 0;
    font-size: 16px;
    line-height: 23px;
    color: #666;
    text-align: center;
    vertical-align: middle;
    background-color: #fff;
    border: 1px solid #dedede;
    -webkit-border-radius: 3px;
       -moz-border-radius: 3px;
            border-radius: 3px;
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
            box-sizing: border-box;
}
input,
.selector span,
textarea,
button{
    outline:0;
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
            box-sizing: border-box;
}


button{
    margin: 0;
    padding: 0;
    border: 0;
    background: none;
}
textarea:focus,
input[type="text"]:focus,
input[type="password"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="time"]:focus,
input[type="week"]:focus,
input[type="number"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="search"]:focus,
input[type="tel"]:focus,
input[type="color"]:focus,
.uneditable-input:focus {
  border-color: #777;
  outline: 0;
}
input:focus:invalid,
textarea:focus:invalid,
select:focus:invalid {
    color: #b94a48;
    border-color: #ee5f5b;
}
input:focus:invalid:focus,
textarea:focus:invalid:focus,
select:focus:invalid:focus {
    border-color: #e9322d;
    -webkit-box-shadow: 0 0 6px #f8b9b7;
       -moz-box-shadow: 0 0 6px #f8b9b7;
            box-shadow: 0 0 6px #f8b9b7;
}

/* Privacy
--------------------------------------------------------- */
form .privacy{
    line-height: 40px;
    padding: 0 5px;
    color: #1F612E;
    border: 1px solid #ccc;
    background-color: #F0F0F0;
    -webkit-border-radius: 4px;
       -moz-border-radius: 4px;
            border-radius: 4px;
}

form .contenido_privacy
{
    line-height: 20px !important;
    color:#333;
    text-align: justify;
    padding-bottom: 10px;
    padding-left: 10px;
    padding-right: 10px;
}

form .privacy label{
    position: relative;
    display: block;
    font-size: 16px;
    width: 100%;
    text-align: left;
    padding-left: 25px;
}
form .privacy a{
    color: #1F612E;
    text-decoration: underline;
}
form .privacy label .checker{
    position: absolute;
    left:0;
    top:6px;
}

/* Datepicker
--------------------------------------------------------- */
.calendar{
    position: relative;
}


/* Selectors
--------------------------------------------------------- */
div.selector {
    line-height: 40px;
    height: 40px;
    padding: 0 0 0 0px;
    /*
    padding: 0 0 0 10px;
    */
    min-width: 160px;
}
div.selector span {
    position: relative;
    display: block;
    width: 100%;
    padding-left: 15px;
    text-align: left;
    min-width: 160px;
}
div.selector span:before {
    position: absolute;
    top:50%;
    right:15px;
    width:8px;
    height:6px;
    margin: -3px 0 0 -4px;
    background: url('../images/sprite.png') -350px 0;
    content:'';
}

/* Checkboxes
--------------------------------------------------------- */
div.checker
{
    margin-right: 10px;
}
div.checker span,
div.checker.hover span,
div.checker.active span,
div.checker.hover.active span{
    position: absolute;
    top: 50%;
    left: 0;
    margin: -16px 0 0 0;
    background: url('../images/sprite.png') -448px 0;
}
div.checker span.checked,
div.checker.hover span.checked,
div.checker.focus span.checked,
div.checker.hover.active span.checked,
div.checker.focus.active span.checked{
    background-position: -500px 0;
}

/* Radios
--------------------------------------------------------- */
div.radios label{
    position: relative;
/*    float: left;  */
    float: left;
    height: auto;
    cursor: pointer;
}
div.radios label:first-child{
    margin-left: 0 !important;
}
div.radios label div.radio{
    width: 100%;
    height: auto;
}
div.radios label div.radio span{
    display: block;
    width: 100%;
    height: 32px;
    border: 1px solid #ccc;
    -webkit-border-radius: 4px;
       -moz-border-radius: 4px;
            border-radius: 4px;
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
            box-sizing: border-box;
}

/* boolean */


div.radios.boolean label.no div.radio span.checked{
    background-color: #f00;
}
div.radios.boolean label.yes div.radio span.checked{
    background-color: #268239;
}
div.radios.boolean label em{
    position: absolute;
    top:0;
    left:0;
    width: 100%;
    font-size: 16px;
    line-height: 32px;
    font-style:normal;
    color: #666;
    text-align: center;
}
div.radios.boolean label.checked em{
    color: #fff;
    font-weight: bold;
}

/* multiple radio sin icono */

div.radios.multiple_texto label div.radio span{
    height: 32px;
}

div.radios.multiple_texto label span:before{
    position: absolute;
    top:0;
    left:0;
    width: 32px;
    height: 32px;
    background-image: url('../images/sprite.png');
    background-repeat: no-repeat;
    content:'';
}



div.radios.multiple_texto label div.radio span.checked:before{
background-position: -200px 0;
}

/* multiple */
div.radios.multiple label{
    width: 60px;
    margin-left: 25px;
    position: relative;
}
div.radios.multiple label div.radio span{
    height: 60px;
}
div.radios.multiple label span:before{
    position: absolute;
    top:0;
    left:0;
    width: 60px;
    height: 60px;
    background-image: url('../images/sprite.png');
    background-repeat: no-repeat;
    content:'';
}
div.radios.multiple label.business span:before{
    background-position: 0 -50px;
}
div.radios.multiple label.couple span:before{
    background-position: -100px -50px;
}
div.radios.multiple label.family span:before{
    background-position: -200px -50px;
}
div.radios.multiple label.friends span:before{
    background-position: -300px -50px;
}
div.radios.multiple label.individual span:before{
    background-position: -400px -50px;
}
div.radios.multiple label.business span.checked:before{
    background-position: 0 -150px;
}
div.radios.multiple label.couple span.checked:before{
    background-position: -100px -150px;
}
div.radios.multiple label.family span.checked:before{
    background-position: -200px -150px;
}
div.radios.multiple label.friends span.checked:before{
    background-position: -300px -150px;
}
div.radios.multiple label.individual span.checked:before{
    background-position: -400px -150px;
}
div.radios.multiple label em{
    display: block;
    width: 100%;
    margin-top: 5px;
    font-size: 13px;
    font-style:normal;
    color: #999;
    text-align: center;
}
div.radios.multiple label div.radio span.checked{
    background-color: #20622F;
    border-color: #20622F;
}
div.radios.multiple label.checked em{
    color: #20622F
}

/* Rating */


.rating .star-rating-control{
    float: left;            
}


.rating .star-rating{
    float:left;
    width:32px;
    height:32px;
    text-indent:-999em;
    cursor:pointer;
    display:block;
    overflow:hidden;
    padding-right: 3px;
}
.rating .star-rating a{
    background: url('../images/sprite.png') 0 0;
    display:block;
    width:32px;
    height:32px;
}

.rating div.star-rating-on.rate01 a,
.rating div.star-rating-hover.rate01 a{
    background-position: -50px 0;
}
.rating div.star-rating-on.rate02 a,
.rating div.star-rating-hover.rate02 a{
    background-position: -100px 0;
}
.rating div.star-rating-on.rate03 a,
.rating div.star-rating-hover.rate03 a{
    background-position: -150px 0;
}
.rating div.star-rating-on.rate04 a,
.rating div.star-rating-hover.rate04 a{
    background-position: -200px 0;
}
.rating div.star-rating-on.rate05 a,
.rating div.star-rating-hover.rate05 a{
    background-position: -250px 0;
}
.rating div.star-rating-on.rate06 a,
.rating div.star-rating-hover.rate06 a{
    background-position: -300px 0;
}

.rating div.star-rating.rate07{
    width:47px !important;
}
.rating div.star-rating.rate07 a{
    margin-left:15px;
}
.rating div.star-rating-on.rate07 a,
.rating div.star-rating-hover.rate07 a{
    background-position: 0 -368px;
}

/* Buttons
--------------------------------------------------------- */

/* Footer
--------------------------------------------------------- */
#footer {
    margin-top: 80px;
    text-align: center;
}
#footer .logo-hq{
    display: block;
    margin: 0 auto;
    width: 82px;
    height: 102px;
    background: url('../images/sprite.png') 0 -250px;
    text-indent: -9999em;
    overflow: hidden;
}


.input_comentario_oculto{
display:none !important;
}

.campo_otros_dropdown
{
display: inline;
}

.asterisco{
color:#F00;
vertical-align: middle;
padding-top: 3px;
}

.rojo{
color:#FF0000 !important;
}


.formelement.separador{
    border-bottom: 1px solid #ccc;
    margin-bottom:15px;
}

.formelement.centrado{
     text-align: center !important;
}

.formelement .oculto{
    display: none !important;
}

#texto_lpd
{
    display: none;
}

              div.radios.multiple_texto label div.radio span{   
    border: none ;
} 

/**
 * Se utiliza para cambiar el estilo del cuestionario para moviles y tablet 
 * DM - 2013-12-17
 **/
@media screen and (max-width:799px){

form .privacy label{
    padding-left: 40px !important;
}

.btn{
    margin-top: -20px;
    display: block;
    height: 40px;
    width: 100%;
    padding: 0 9px;
    margin-bottom: 0;
    font-size: 16px;
    font-weight: bold;
    line-height: 40px;
    color: #fff;
    text-align: center;
    vertical-align: middle;
    background-color: #20622F;
    background-image: none;
    -webkit-border-radius: 3px;
       -moz-border-radius: 3px;
            border-radius: 3px;
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
            box-sizing: border-box;
}

/* general layout
--------------------------------------------------------- */
#page {
    background: #fff;
    width: 400px;
    margin: 20px auto 80px;
}
.wrapper{
    width: 400px;
    margin: 0 auto;
}

.formelement{
    margin-bottom: 40px;
}

.formelement.departments .label{
    position: relative;
    border-bottom: 1px solid #ccc;
    padding-bottom: 10px;
    margin-bottom: 30px;
}

/* rows */
.formelement .row{
    margin-bottom: 25px;
}

.double .formelement{
    float: left;
    margin-right: 0;
    margin-left: 4%;
    width: 48%;
}

.label{
    display: block;
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    margin-bottom: 15px;
}

textarea{
    height: 120px;
    text-align: left;
}

.formato_valor_campo
{
    display: inline-block;
    height: 41px;
    width: 100%;
    padding: 9px 9px;
    margin-bottom: 0;
    font-size: 16px;
    line-height: 23px;
    color: #666;
    text-align: center;
    vertical-align: middle;
    background-color: #fff;
    border: 1px solid #dedede;
    -webkit-border-radius: 3px;
       -moz-border-radius: 3px;
            border-radius: 3px;
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
            box-sizing: border-box;
    
}

/*
DM - 2013-10-02 issue 3197
.calendar:before{
    position: absolute;
    bottom: 6px;
    right: 6px;
    width: 27px;
    height: 27px;
    background: url('../../images/sprite.png') -400px 0;
    content:'';
}
.calendar .datepicker{
    padding-right: 40px;
}
*/
.calendar .ui-datepicker-trigger
{
    position: absolute;
    bottom: 6px;
    right: 6px;
    width: 27px;
    height: 27px;
    content:'';
    background: url('../images/calendario.png');
}

div.radios.boolean label{
    width: 49%;
    margin-left: 2%;
}

div.radios.multiple_texto
{
    margin-top: 10px;
}

div.radios.multiple_texto label
{
    width: 32px;
    position: relative;
}

div.radios.multiple_texto em{
    display: block;
    width: 100%;
    margin-left: 20px !important;
    padding-left: 20px !important;
    font-size: 16px !important;
    font-style:normal;
    color: #999;
    text-align: left;    
}

.rating{
    position: relative;
    width: 210px;
    margin: 0 auto;
}

.rating .rating-tip{
    position: absolute;
    top:40px;
    left:0;
    width: 100%;
    color: #999;
    text-align: center;
}

.input_comentario{
margin-top: 35px !important;
}

div.radios.multiple_texto
{
    margin-bottom: 15px;
}

div.radios.multiple_texto label
{
    width: 400px;
    position: relative;
    clear:both;
    margin-bottom:10px;
}

div.radios.multiple_texto em{
    width: 100%;
    margin-left: 20px !important;
    font-size: 16px !important;
    font-style:normal;
    color: #999;
    text-align: left;    
}

div.radios.multiple_texto label div.radio{   
    width:32px;
    float:left;
}


}/** Fin de @media screen and (max-width:799px){ */

/**
 *Se utiliza para cambiar el estilo del cuestionario para PC 
 *DM - 2013-12-17
 **/
@media screen and (min-width:800px){

/* general layout
--------------------------------------------------------- */

#page{
    background: #fff;
    width: 800px;
    margin: 20px auto 80px;
}
.wrapper{
    width: 800px;
    margin: 0 auto;
}


/* Form elements
--------------------------------------------------------- */
.formelement{
    margin-bottom:0px;
    float:left;
    width:800px;
}

.formelement.departments .label{
    position: relative;
    border-bottom: 1px solid #ccc;
    padding-bottom: 10px;
    margin-bottom: 30px;
    width:100% !important;
}

/* rows */
.formelement .row{
    margin-bottom: 15px;
}


.formelement .row label{
    float: left;
    width: 180px;
    font-size: 16px;
    color: #666;
}
.formelement .row .rating{
    float: right;
}

.formelement .row .rating-tip{
    position: absolute;
    top:23px;
    left:-190px;
    text-align: left;
}

/* double columns */
.double{
}
.double .formelement{
    float: left;
    margin-right: 0;
    margin-left: 4%;
    width: 48%;
    margin-bottom:10px;
}

.double .formelement:first-child{
    margin-left: 0;
}

.label{
    display: block;
    font-size: 18px;
    font-weight: bold;
    text-align: justify;
    margin-bottom: 15px;
    float: left;
    width:350px;
    margin-right: 15px;
}

textarea{
    height: 120px;
    text-align: left;
    margin-bottom: 15px;
}


.calendar .ui-datepicker-trigger
{
    position: absolute;
    bottom: 8px;
    right: 18px;
    width: 27px;
    height: 27px;
    content:'';
    background: url('../images/calendario.png');
    background-repeat: no-repeat;
    padding-left: 0px;
}


/* Radios
--------------------------------------------------------- */

/* boolean */
div.radios.boolean{
    width: 410px;
    float:left;
    margin: 0 auto 15px;
}

div.radios.boolean label{
    width: 200px;
    margin-left: 2%;
    float:left;
}

/* multiple radio sin icono */

div.radios.multiple_texto
{
    margin-bottom: 15px;
    float:left;
}

div.radios.multiple_texto label
{
    width: 400px;
    position: relative;
    clear:both;
    margin-bottom:10px;
}

div.radios.multiple_texto em{
    width: 100%;
    margin-left: 20px !important;
    font-size: 16px !important;
    font-style:normal;
    color: #999;
    text-align: left;    
}


/* multiple */
div.radios.multiple{
    margin-bottom: 15px;
}

/* Rating */
.rating{
    position: relative;
    width: 210;
    margin: 0 auto 15px;
    float: left;
}

.rating .rating-tip{
    position: absolute;
    top:8px;
    width: 100%;
    color: #999;
    text-align: left;
    margin-left: 10px;
}

.input_comentario{
margin-top: 0px !important;
margin-left: 370px;
width: 410px !important;
margin-bottom:15px !important;
}

.formelement.centrado input
{
    width:410px !important;
}

.formelement .selector
{
   float:left !important;
   margin-left:5px;  
   margin-bottom:15px;
}

.formelement.centrado .row.clearfix input 
{
    margin-left:-15px;
}  

.formelement.centrado .row.clearfix 
{
    padding-top:30px;
    text-align: left;
    margin-left: 383px;
}

.formelement.opciones .row.clearfix 
{
    padding-top:30px;
    text-align: left;
    margin-left: 383px;
}

.formelement.opciones .row.clearfix input 
{
    margin-left:-15px;
} 
  

.double.clearfix input
{
float:left;
width:185px;
}

.double.clearfix .checker input
{
float:left;
width:40px;
}

.double .formelement .label{
width:175px;
}

.double.clearfix .selector
{
float:left;
width:180px;
}

.formelement.abiertas .label{
    width:100%;    
}

div.radios.multiple_texto label div.radio{   
    width:32px;
    float:left;
}

.formelement.motivos{
margin-top:10px;
}

form .privacy{
width:365px !important;
margin-right:7px !important;
}

form .privacy .asterisco{
margin-left:15px;
}

.formato_valor_campo
{
    display: inline-block;
    height: 41px;
    width: 175px;
    padding: 9px 9px;
    margin-bottom: 0;
    font-size: 16px;
    line-height: 23px;
    color: #666;
    text-align: center;
    vertical-align: middle;
    background-color: #fff;
    border: 1px solid #dedede;
    -webkit-border-radius: 3px;
       -moz-border-radius: 3px;
            border-radius: 3px;
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
            box-sizing: border-box;
    
}

.btn{    
    display: block;
    height: 40px;
    width: 200px;
    padding: 0 9px;
    margin-bottom: 0;
    font-size: 16px;
    font-weight: bold;
    line-height: 40px;
    color: #fff;
    text-align: center;
    vertical-align: middle;
    background-color: #20622F;
    background-image: none;
    clear:both;
    -webkit-border-radius: 3px;
       -moz-border-radius: 3px;
            border-radius: 3px;
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
            box-sizing: border-box;
}

.boton_enviar{
margin-top: 20px;
}

}/** Fin de @media screen and (min-width:800px) */

/**
 * Para los dispositivos con menos de 400px, ajusta algunas medidas para centrar el contenido
 *  */
@media screen and (max-width:399px)
{

form .privacy label{
    padding-left: 40px !important;
    width:auto !important;
}

#page{
    background: #FFF;
    width: 96% !important;
    margin: 10px auto 60px !important;
    min-width: 300px;
}

.wrapper{
    width: 96% !important;
    margin: 0 auto !important;
    min-width: 300px;
}

.formelement.calendar input{
padding-right:30px !important;
}

div.radios.multiple_texto label
{
    width: 95% !important;
}

/* multiple
* DM - 2014-04-02  issue 4062  
*/
.formelement.motivos div.radios.multiple label{
    width: 58px;
    margin-left: 5px;
    position: relative;
}

}/* Fin de @media screen and (max-width:399px){ */ 



.mensaje_error
{
        font-family: Helvetica, Arial, sans-serif;
        font-size:11px;
        background:#E6E6E6;
    	border-color:#D8D8D8;                
    	border-style:solid;
    	border-width:1px;
        color:#0101DF;
        position:relative;
        padding:4px;
        text-align:center;
        padding-left:2px;
        padding-top:7px
}