html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend, input, textarea, label, button, select,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, main,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video  {
	-moz-box-sizing:    border-box; 
	-webkit-box-sizing: border-box; 
	box-sizing:         border-box; 
}
  
@font-face {
  font-family: 'hub-survey';
  src:  url('https://s3.amazonaws.com/icomoon.io/31537/HUBSurvey/hub-survey.eot?c6ymz1');
  src:  url('https://s3.amazonaws.com/icomoon.io/31537/HUBSurvey/hub-survey.eot?c6ymz1#iefix') format('embedded-opentype'),
    url('https://s3.amazonaws.com/icomoon.io/31537/HUBSurvey/hub-survey.woff2?c6ymz1') format('woff2'),
    url('https://s3.amazonaws.com/icomoon.io/31537/HUBSurvey/hub-survey.ttf?c6ymz1') format('truetype'),
    url('https://s3.amazonaws.com/icomoon.io/31537/HUBSurvey/hub-survey.woff?c6ymz1') format('woff'),
    url('https://s3.amazonaws.com/icomoon.io/31537/HUBSurvey/hub-survey.svg?c6ymz1#hub-survey') format('svg');
  font-weight: normal;
  font-style: normal;
}

/* ---------- Long Form ---------- */

form {
  padding: 1em 0 0; 
}
form .group {
	padding: 1em 0; 
  position: relative;
}

form .field {
	display:  block;
	width: 100%;
	padding: .2em; 
	text-align: left;
  position: relative;  
}

form .cols2,   
form .cols3,
form .cols4 { 
	padding: 0;
} 	

@media only screen and (min-width: 740px) and (min-device-width: 480px) {  
	form .cols2,   
	form .cols3,
	form .cols4 { 
		width: 100%;
		display:  table; 
		padding: 0;
	} 	
	form .cols2 .field,
	form .cols3 .field,
	form .cols4 .field { 
		display:  table-cell;
	 }
	form .cols2 .field { width: 50%; } 	
	form .cols3 .field { width: 33.33%; }
	form .cols4 .field { width: 25%; }
}

form .radio { text-align: center; }

form .option {
	display: block;
  padding: .3em 0;
}
@media only screen and (min-width: 740px) and (min-device-width: 480px) {  
  form .single_line .option {
    display: inline-block;
    padding: 0;
  }
  .option {
    display: block;
    text-align: left;
  }
}
form .radio .option input,
form .checkbox .option input {
  display: none;
}

form input,
form select,
form textarea {
	width: 100%;
	cursor: pointer; 
  outline: none;
	-moz-transition:    all .3s cubic-bezier(0.75, -0.25, 0.25, 0.75);
	-o-transition:      all .3s cubic-bezier(0.75, -0.25, 0.25, 0.75);
	-webkit-transition: all .3s cubic-bezier(0.75, -0.25, 0.25, 0.75);
	transition:         all .3s cubic-bezier(0.75, -0.25, 0.25, 0.75); 	
}

form select {
}	
@media screen and (-webkit-min-device-pixel-ratio:0) { 

}
form textarea {
	height: 8em;
}	
form label {
	display: block;
	cursor: pointer;
	margin-bottom: .15em;
	-moz-transition:    all .3s cubic-bezier(0.75, -0.25, 0.25, 0.75);
	-o-transition:      all .3s cubic-bezier(0.75, -0.25, 0.25, 0.75);
	-webkit-transition: all .3s cubic-bezier(0.75, -0.25, 0.25, 0.75);
	transition:         all .3s cubic-bezier(0.75, -0.25, 0.25, 0.75);
}
form .option input {
  display: none !important;
}
form .option label { 
  padding-left: 1.8em;  
  cursor: pointer;
  display: block;
  transition:         color .3s ease-in-out;    
  -webkit-transition: color .3s ease-in-out;  
  -moz-transition:    color .3s ease-in-out;  
  -o-transition:      color .3s ease-in-out;  
  -ms-transition:     color .3s ease-in-out;   
}
.single-line .option label { 
  padding-left: 0;  
}
form .option .selector { 
  width: 1em;
  height: 1em;  
  margin-right: .2em;
  padding: .65em;
  line-height: 1.6;  
  font-style: normal;
  font-weight: 400;
  display: inline-block; 
  position: relative;
  top: .25em;
  transition:         all .3s ease-in-out;    
  -webkit-transition: all .3s ease-in-out;  
  -moz-transition:    all .3s ease-in-out;  
  -o-transition:      all .3s ease-in-out;  
  -ms-transition:     all .3s ease-in-out;     
}
form .checkbox .option .selector { 
  -webkit-border-radius:  .1em;
  -moz-border-radius:     .1em;
  border-radius:          .1em;
}
form .radio .option .selector { 
  -webkit-border-radius:  50%;
  -moz-border-radius:     50%;
  border-radius:          50%;
}
form .option .selector::before { 
  display: block; 
  text-align: center;
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 100;
  opacity: 0;
  font-size: 50%;  
  font-family: 'hub-survey';  
  -moz-transform:    translateX(-50%) translateY(-50%);
  -ms-transform:     translateX(-50%) translateY(-50%);
  -webkit-transform: translateX(-50%) translateY(-50%);
	transform:         translateX(-50%) translateY(-50%); 
  -moz-transition:    all .2s cubic-bezier(0.75, -0.25, 0.25, 0.75);
	-o-transition:      all .2s cubic-bezier(0.75, -0.25, 0.25, 0.75);
	-webkit-transition: all .2s cubic-bezier(0.75, -0.25, 0.25, 0.75);
	transition:         all .2s cubic-bezier(0.75, -0.25, 0.25, 0.75);    
}
form .option input:checked + label .selector::before { 
  font-size: 90%;
  opacity: 1;
}  

form .checkbox .option .selector::before { 
  content:'-';  
}
form .radio .option .selector::before { 
  content:'.';  
}
form .option em { 
  font-style: normal;
}
.yes_no .option {
  margin: 0 .5em;
}
.yes_no .option label {
  padding: .4em 1em;
  -webkit-border-radius:  .1em;
  -moz-border-radius:     .1em;
  border-radius:          .1em;
  transition:         all .3s ease-in-out;    
  -webkit-transition: all .3s ease-in-out;  
  -moz-transition:    all .3s ease-in-out;  
  -o-transition:      all .3s ease-in-out;  
  -ms-transition:     all .3s ease-in-out;    
}
form .button-row {
  text-align: center;
}
form .button-row button {
	cursor: pointer;	
	display: inline-block;
  transition:         all .3s ease-in-out;    
  -webkit-transition: all .3s ease-in-out;  
  -moz-transition:    all .3s ease-in-out;  
  -o-transition:      all .3s ease-in-out;  
  -ms-transition:     all .3s ease-in-out;  	
}
