 @import url('https://fonts.googleapis.com/css?family=Montserrat:400,700,800|Open+Sans&display=swap');

*
{
   box-sizing: border-box;	
}
body
{
	font-family:"Open Sans",sans-serif;
	font-size:17px;
	margin:0;
	color:black;
	background:white;
	overflow-y:auto;
	overflow-x:hidden;
} 

h1,h2,h3,h4
{
	font-family:"Montserrat",serif;
	font-weight:bold;
}
.uppercase
{
	text-transform:uppercase;
}

.break_word
{
	word-break: break-word;
}

.hide, .hidden
{
	 display:none !important;
}
.lng
{
	display:none;
}
.lng_en
{
	display:inherit;
}

a
{
	color:black;
}

section
{
	position:absolute;
	flex-direction:column;
	left:0;
	top:0;
	width:100vw;
	min-height:100vh;

	background:white;
	align-items: center;
	justify-content: center;
	display:none;
	padding:0 20%;
	text-align:center;
	line-height:1.2;
}
.logos_row 
{
	position:fixed;
	left:0;
	display:flex;
	width:100%;
	background:white;
	padding:10px 40px;
	z-index:300;
}
.logos_left 
{
	flex:2;
	text-align:left;
}
.logos_right
{
	flex:1;
	border-left:1px solid #aaa;
}
.logos_top
{
	margin-bottom:20px;
	top:0;
}
.logos_top img 
{
	width:50px;
	margin-right:5px;	
}
.logos_bottom 
{
	bottom:0;
}
.logos_bottom img 
{
	height:50px;
	margin-right:20px;
}
section h1 
{
	margin:10px 0;
}
.ul_sep li
{
	margin-bottom:10px;
}
.section_active
{
	display:flex !important;
}
.background_gray
{
	background:gray;
	color:white;
}

.btn_default 
{
	text-decoration:none;
	border:2px solid black;
	background:white;
	padding:10px 20px;
	color:black;
	text-transform: uppercase;
	margin:30px 0;
}
.btn_default:hover 
{
	background:#eee;
	color:black;
}
.btn_80
{
	width:100%;
	display:block;
}
input 
{
	font-size:18px;
	border:0;
	border-bottom:2px solid black;
	padding:5px 0;
	width:400px; /*100%;*/
	outline:none;
	margin:10px 0;
	text-align:center;
	background:transparent;
}
.input_error
{
	border-color:red !important;
}
.background_gray input 
{
	color:white;
	border-color:white;
}
.input_short
{
	width:100px;
}
.user_confirmation
{
	font-size:16px;
}
.playing_cross
{
	font-size:20vh;
	color:white;
}
.question_bottom
{
	display:flex;
	align-items:flex-start;
	justify-content: center;
	min-width:400px;
}
.question_col 
{
	flex:1;
	padding: 0 5px;
}
.question_bottom a 
{
	margin-left:5px;
	margin-right:5px;
	margin-bottom:10px;
}
.question_bottom_column 
{
	flex-direction: column;
	width:auto;
	margin-top:20px;
}

.question_bottom_column a
{
    width: 100%;
    margin: 10px 0;
    text-transform: none;
}
.lbl_song_number
{
	font-size: 14px;
    color: lightyellow;
    background: darkslategray;
    padding: 5px 10px;
    border-radius: 20px;
}
ol, ul
{
	text-align: left;
	margin:0 0 20px 0;
}
ul
{
	list-style: none;
}
.lbl_option
{
	font-size:14px;
}

.test_progress 
{
	width:250px;
	height:10px;
	background:lightgrey;
	position:relative;
	border-radius:10px;
}
.test_progress_bar
{
	position:absolute;
	left:0;
	top:0;
	background: darkslategray;
	height:100%;
	width:0;
	border-radius:10px;
	transition: width 0.5s;
}

.user_confirmation 
{
	display: block;
	position: relative;
	padding-left: 35px;
	margin: 20px 0 0 0;
	font-size:smaller;
	text-align: left;
	cursor: pointer;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	max-width: 500px;
}
.user_confirmation input 
{
	position: absolute;
	opacity: 0;
	cursor: pointer;
	height: 0;
	width: 0;
}
.checkmark 
{
	position: absolute;
	top: 0;
	left: 0;
	height: 20px;
	width: 20px;
	border:2px solid black;
}
.checkmark:after {
	content: "";
	position: absolute;
	display: none;
}
  
.user_confirmation input:checked ~ .checkmark:after 
{
	display: block;
}
  
.user_confirmation .checkmark:after 
{
	left: 4px;
	top: 1px;
	width: 4px;
	height: 8px;
	border: solid black;
	border-width: 0 3px 3px 0;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

.section_survey .question_col a 
{
	margin-top:10px;
}
.option_selected
{
	background:black !important;
	color:white !important;
}
textarea
{
	width: 100%;
    height: 80px;
    margin-bottom: 20px;
	font-size:18px;
	padding:5px 10px;
	outline:none;
}

/* ---- RESPONSIVE -----------------*/

@media (max-width: 768px) 
{

  section
  {
	padding:20px 20px 40px 20px;
	height:auto;
	min-height:100vh;
	text-align: left;
  }
  .section_top 
  {
	  justify-content:flex-start;
	  padding-top:30px !important;
  }
  section h1 
  {
	  width:100%;
  }
  .test_progress
  {
  	width: 100%;
    margin-bottom: 20px;
  }
  .lbl_song_number
  {
	position: absolute;
    left: 0;
    top: 0;
    width: 100%;
	border-radius: 0;
	padding-left:20px;
  }

  ul 
  {
	padding:0 10px;
  }	
  
  input
  {
	 width:100%;
	 margin-bottom:30px;
  }
  .question_bottom
  {
  	width: 100%;
    justify-content: center;
	align-items: center;
	flex-direction: column;
	min-width: auto;
  }
  .btn_80
  {
	  width:auto;
  }	
  .btn_default
  {
	padding: 20px 30px;
	margin:15px 0;
	width:100%;
	text-align:center;
  }
  .question_col 
  {
	display: flex;
    flex-direction: row-reverse;
	width: 100%;
    align-items: center;
  }
  .question_col a
  {
	  flex:1;
	  margin:7px 0 7px 0px;
	  padding:15px 20px;
  }
  .question_col .lbl_option 
  {
	  flex:1;
  }

  .logos_row 
   {
	position:relative;
	padding:0px 0px;
   }
  .logos_left 
  {
	flex:1;
  }
  .logos_right
  {
	border-left:none; 
	border-top:1px solid #aaa;
  }
  .logos_top
  {
	margin-bottom:20px;
  }
  .logos_bottom 
  {
	margin-top:80px;
	flex-direction:column;
  }
  .logos_bottom img 
  {
	  margin-bottom:20px;
  }
  .logos_top img 
  {
	  height:40px;
	  width:40px;
  }
  .logos_left
  {
	  padding:0 0 0px 0;
  }
  .logos_right 
  {
	  padding:20px 0 0 0;
  }
  p 
  {
	  width:100%;
  }
  .user_confirmation
  {
	  max-width: auto;
	  margin-bottom:50px;
  }
}