﻿@viewport {
	width: device-width;
}

header, #header {
    /* - reinstate this to return to a non-reactive style re mobile usage 
	min-width: 600px; - */
    /*max-width: 1200px;*/
	width: 100%;
	margin: auto;
	background-color: #fff;
	position: fixed;
	top: 0;
	z-index: 200;
}

#footer {
	font-size: 1em;
	color: #999999;
	margin: 4% 0 3% 0;
	padding: 1% 0;
}

.page {
    margin-left: auto;
    margin-right: auto;
	width: 90%;
    max-width: 1200px;
	font-size: 0.925rem;
	font-family: "Arial",Helvetica,calibri !important
}

body{
    font-family: "Arial",Helvetica, calibri ;
	color: #000;
}

.marginTop10 {
	margin: auto;
	/*padding-top: 160px;*/
	/*padding-top: 100px;*/
	padding-top: 90px;
}

.marginTop0 {
	padding-top: 0;
	margin: auto;
}

#preview {
	display: none;
}

.blue {
	color: #0092CA;
	font-family: Arial;
	font-size: 0.9rem;
	font-style: italic;
}

.redBox {
	margin: 5px;
}

/* HEADINGS   
----------------------------------------------------------*/
h1, h2, h3, h4, h5, h6 {
    color: #434343;
    cursor: default;
}

/*-- Header --*/
h1 {
    /*font-size: 3.5em;*/
    font-size: 2rem;
	color:#000;
	margin-top: 10px;
}

/*-- Section Headers --*/
h2 {
    padding: 5px 5px 5px 5px;
	color: #fff;
	margin-bottom: 0;
}

/*-- Thank You Blurb --*/
h3 { 
	font-size: 1.25em; 
	text-align: center;
}

/*-- Sub-Headers --*/
h4 { 
	font-size: 0.95em; 
	margin: 15px 5px 5px 5px;
}

/*-- Sub-Headers --*/
h5, h6 { 
	font-size: 0.95em; 
	margin: 15px 5px 5px 10px;
}

p {
	padding:6px 0 6px 0;
	margin:0;
}

/*Main Styles 
-------------------------------------------------------*/

label.inline200 {
    display: block;
    width: 140px;
    margin-bottom: 1%;
}

.inlineInputs {
    margin-top: 2%;
}

.sectionHeader {
    text-align: center;
    color: white;
    font-size: 1.2em;
	font-weight: bold;
	margin-bottom: 25px;
	border-radius: 2px;
	background: rgb(0,145,201); /* Old browsers */
	background: rgb(0,166,229); /* Old browsers */
	background: -moz-linear-gradient(top,  rgba(0,166,229,1) 0%, rgba(0,154,214,1) 60%, rgba(0,145,201,1) 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(0,166,229,1)), color-stop(60%,rgba(0,154,214,1)), color-stop(100%,rgba(0,145,201,1))); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top,  rgba(0,166,229,1) 0%,rgba(0,154,214,1) 60%,rgba(0,145,201,1) 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(top,  rgba(0,166,229,1) 0%,rgba(0,154,214,1) 60%,rgba(0,145,201,1) 100%); /* Opera 11.10+ */
	background: -ms-linear-gradient(top,  rgba(0,166,229,1) 0%,rgba(0,154,214,1) 60%,rgba(0,145,201,1) 100%); /* IE10+ */
	background: linear-gradient(to bottom,  rgba(0,166,229,1) 0%,rgba(0,154,214,1) 60%,rgba(0,145,201,1) 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00a6e5', endColorstr='#0091c9',GradientType=0 ); /* IE6-9 */
}

.questionRow {
	border: 1px solid #787878;
	margin-bottom: 40px;
	padding: 0px;
	border-radius: 2px;
	overflow:hidden;
}

.questionNumber {
	margin-right: 10px;
}

.subHeading {
	padding: 5px 5px 5px 10px;
}

.questionText {
    background-color: #C4D8E2;
    color: #151314;
    padding: 10px 5px 10px 5px;
	font-weight: bold;
	display: inline-flex;
	width: 100%;
	box-sizing: border-box;
}

.innerQuestionArea{
	overflow: auto;
	margin:8px 0 0 0;
}

input[type=checkbox]{
    display: inline-block;
    /*width: 95%;*/	
	min-width: 19px;
    height: 19px;
    /*-webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3), 0 0 40px rgba(0, 0, 0, 0.1) inset;
    -moz-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3), 0 0 40px rgba(0, 0, 0, 0.1) inset;
    box-shadow: 0px 0px 4px rgba(0,0,0,0.3), inset 0px 0px 40px rgba(0,0,0,0.1);
	13d 14d 16c 24d 27 33*/
	margin: 8px 0px;
	text-align:center;
}

.qn13d input[type=checkbox], .qn14d input[type=checkbox], .qn16c input[type=checkbox], .qn24d input[type=checkbox], .qn27 input[type=checkbox], .qn33 input[type=checkbox] {
	width: 19px;
	margin: 8px;
}

.ChoiceSubhead {
	font-weight: bold;
	text-decoration: underline;
	clear: both;
	display: block;
	padding-bottom: 2px;
	padding-top: 7px;
}

.choiceRow span {
	position: relative;
	/*display: inline-block;*/
	margin-left: 0.5%;
}

.qn27 .choiceRow span, .qn33 .choiceRow span {
	display: inline-block;
}

.choiceRow {
	padding-left: 20px;
}

.choiceVerticalInputCell {
	padding: 5px 12px;
	text-align: center;
}

/*-- Bespoke Styling for Background Information --*/
.bgi {
	background-color: #fff;
	color: #000;
	font-weight: normal;
	padding-top: 10px;
}

/* Matrix Tables 
-------------------------------------------------------*/
/*-- Answer Option Spacing --*/
.matrixHeaderCell {
	padding: 10px;
}

/*-- Row Height --*/
.matrixTable tr {
	min-height: 45px;
	width: auto;
}

/*-- Table Width --*/
.matrixTable, .verticalChoiceTable {
	width: 100%;
}

.qn6 .matrixTable {
	width: 200%;
}

/*-- Background Colours --*/
.matrixQuestionRow:nth-child(even) {
	background-color: #f3f7f9
} 

.matrixTable tr:nth-child(even) {
	background-color: #f3f7f9
} 

.matrixTable tc:nth-child(even) {
	background-color: #f3f7f9
} 

/*-- Tick All That Apply Style --*/
.matrixTextLabel {
    display: inline-block;
    height: 100%;
    font-weight: bold;
    color: #000;
}

.matrixQuestionTextCell {
	padding: 5px 5px 5px 5px;
	min-width: 120px;
}

.matrixQuestionTextCell .cRadio {
    position: absolute;
}

/*-- Cell Position --*/
.matrixInputCell {
	text-align: center;
}

/*-- Tick Box Position Q27 --*/
.qn29 .choiceVerticalInputCell {
	vertical-align: baseline;
}


/*-- Left Align TATA --*/
.matrixTableLeft .choiceVerticalInputCell {
	padding: 0px 0px 15px 15px;
	width: 40px;
}

.matrixTableLeft .matrixQuestionTextCell {
	padding: 0px 0px 10px 0px;
	min-width: auto;	
}

.matrixTableLeft input[type=checkbox] {
	margin: 0px;
}

.qn26a .matrixTable:first-child tr:nth-of-type(1) th:first-child, .qn26a .matrixTable:first-child tr:nth-of-type(2) td:first-child {
	display: none;
}

.qn26a .matrixTable:nth-of-type(2) {
	margin: 35px 0px;
}

/* Other Question Types
-------------------------------------------------------*/
.qn27 .choiceRow span, .qn33 .choiceRow span {
	max-width: 85%;
}

textarea {
	width: 95%;
	margin: 10px auto;
	display: block;
}

.qn29 textarea {
	width: 130px;
}

.qn26a input[type=text] {
	float: right;
	/*width: 11.7%;
	margin-right: 12.5%;
	width: 16%;
	margin-right: 14%;*/
	width: 23.5%;
	margin-right: 18.5%;
}

select, .stringAnswer {
	width: 95%;
	margin: 10px auto;
	display: block;
}

.integarAnswer {
	margin-left: 2%;
	width: 25%;
	text-align: center;
}

.dateSelector {
	margin-left: 2%;
}

/* Anonymous Users 
-------------------------------------------------------*/
.personFieldRow {
    margin: 5px;
}

.personFieldName {
    width: 20%;
    float: left;
}

.personFieldRow input {
    float: right;
    width: 70%;
}

/* Progress Bar
-------------------------------------------------------*/

#ProgressBarRow .progressBar
{
	background: rgb(97,153,199); /* Old browsers */
	background: -moz-linear-gradient(top,  rgba(97,153,199,1) 0%, rgba(58,132,195,1) 0%, rgba(65,154,214,1) 13%, rgba(75,184,240,1) 37%, rgba(58,139,194,1) 76%, rgba(38,85,139,1) 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(97,153,199,1)), color-stop(0%,rgba(58,132,195,1)), color-stop(13%,rgba(65,154,214,1)), color-stop(37%,rgba(75,184,240,1)), color-stop(76%,rgba(58,139,194,1)), color-stop(100%,rgba(38,85,139,1))); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top,  rgba(97,153,199,1) 0%,rgba(58,132,195,1) 0%,rgba(65,154,214,1) 13%,rgba(75,184,240,1) 37%,rgba(58,139,194,1) 76%,rgba(38,85,139,1) 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(top,  rgba(97,153,199,1) 0%,rgba(58,132,195,1) 0%,rgba(65,154,214,1) 13%,rgba(75,184,240,1) 37%,rgba(58,139,194,1) 76%,rgba(38,85,139,1) 100%); /* Opera 11.10+ */
	background: -ms-linear-gradient(top,  rgba(97,153,199,1) 0%,rgba(58,132,195,1) 0%,rgba(65,154,214,1) 13%,rgba(75,184,240,1) 37%,rgba(58,139,194,1) 76%,rgba(38,85,139,1) 100%); /* IE10+ */
	background: linear-gradient(to bottom,  rgba(97,153,199,1) 0%,rgba(58,132,195,1) 0%,rgba(65,154,214,1) 13%,rgba(75,184,240,1) 37%,rgba(58,139,194,1) 76%,rgba(38,85,139,1) 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#6199c7', endColorstr='#26558b',GradientType=0 ); /* IE6-9 */
}

.progressBarOuterContainor{
	background-color: #fff;
	font-weight: bold;
	color: #000;
	margin-bottom: 55px;
	position: fixed;
	/*top: 150px;*/
	/*top: 105px;*/
	top: 90px;
	width: 100%;
	z-index: 200;
}

.progressTitle {
	float: left;
}

.progressBarContainor{
	width: 50%;
	margin-bottom: 5px;
	margin-left: 5px;
	margin-right: 5px;
	margin-top: 2px;
	border: 1px solid #C8C7C7
}

.progressPercentage {
	margin-left: 10px;
}

/* Nav Row 
-------------------------------------------------------*/

.navigationRow {
	margin-top: 15px;
	font-size: 0.9em;
}	

nav {
	display: inline-grid;
	display: -ms-grid;
	-ms-grid-columns: 1fr 1vw 1fr;
	-ms-grid-rows: 1fr 1fr;
	-ms-grid-rows: 40px;
}
	
.buttonNext {
	margin-bottom: 5%;
	-ms-grid-column: 3;
}
	
.buttonPrevious {
	margin-bottom: 5%;
}

.saveButton {
	-ms-grid-row: 2;
	-ms-grid-column-span: 3;
}

.completionButton {
	-ms-grid-column: 3;
	margin-bottom: 5%;
}

/* Front Page 
-------------------------------------------------------*/

/*.questionnaireTitle{
	display: none;
}*/

/* Landing Page 
-------------------------------------------------------*/

#fpContent p {
	margin: 0 0 15px 0;
	line-height: 140%;
}

#fpWrapper {
	width: 900px;
	max-width: 95%;
	margin: 2% auto;
    -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3), 0 0 40px rgba(0, 0, 0, 0.1) inset;
    -moz-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3), 0 0 40px rgba(0, 0, 0, 0.1) inset;
    box-shadow: 0px 1px 4px rgba(0,0,0,0.3), inset 0px 0px 40px rgba(0,0,0,0);
	position: relative;
	padding-top: 20px;
	font-size: 1.15em;
}

#fpContent {
	padding: 5%;
}

.fpHeader1 {
	font-size: 4em;
	font-weight: bold;
	color: #000;
	margin-bottom: 16px;
}

#fpContent h2, .fpLeft h2, .fpRight h2 {
	font-weight: 600;
	color: #0091C9;
	padding: 0;
	margin: 0;
	font-size: 1.15em;
}

#fpContent img {
	float: right;
}

.fpBlue{
	color: #0091C9;
}

.fpBfooter{
	clear: both;
	position: relative;
	background-color: #0091C9;
	bottom:0;
	padding: 5%;
	color: #fff;
	padding-bottom: 40px;
	margin-bottom: 20px;
}

.fpBfooter a:link {
    color: #FFF;
    text-decoration: underline;
}

.fpBfooter a:visited {
     color: #FFF;
}

.fpBfooter a:hover {
     color: #FFF;
	 text-decoration:none;
}

.fpBfooter a:active {
     color: #FFF;
}

.allCaps {
	text-transform: uppercase;
}

/* -------------------------- CASCADE NO Q TEXT MATRIX QUESTIONS --------------------------*/

.questionRow.qn10bc, .questionRow.qn13d, .questionRow.qn14d, .questionRow.qn24d {
	margin-top: -50px;
	border-top: none;
	border-top-left-radius: 0px;
	border-top-right-radius: 0px;
}

.questionRow.qn10, .questionRow.qn24, .questionRow.qn13, .questionRow.qn14 {
	border-bottom: none;
	border-bottom-left-radius: 0px;
	border-bottom-right-radius: 0px;
}

/* -------------------------- REMOVE Q TEXT FOR SELECT MATRIX QUESTIONS --------------------------*/

.qn10bc .questionText, .qn11e .questionText, .qn13d .questionText, .qn14d .questionText, .qn16c .questionText, .qn21bd .questionText, .qn24d .questionText, .qn30b .questionText, .qnVAL .questionText, .qnNoQText .questionText {
	padding: 0;
}

/* -------------------------- FOR USE WITH CUSTOM TEMPLATE XX COLUMN MATRIX LAYOUT -------------------------- */
.qn13d .choiceVerticalInputCell, .qn14d .choiceVerticalInputCell  {
	text-align: left;
	display: inline-flex;
	align-items: center;
	min-width: 180px;
}

.qn16c .choiceVerticalInputCell {
	text-align: left;
	vertical-align: initial;
	background-color: white;
	/*padding: 5px 30px 0px 10px;*/
}

.matrixTextLabel {
	padding: 5px 30px 0px 10px;
}

/* -------------------------- BESPOKES' LOCAL QUESTION STYLES -------------------------- */
/*-RBN-*/
/*-LQ1-*/
.QQeee1fdb2 .MQ6dc7e04a .matrixInputCell{
	text-align: left;
}

/*-RJ1-*/
/*-LQ1b-e, LQ2b0c-*/
.QQ1eb3423c .questionText, .QQddc1971c .questionText {
	display: none;
}

/*-RTD-*/
/*-LQ1a, LQ2a-*/
.questionRow.QQ33751283, .questionRow.QQe3ded81e {
	border-bottom: none;
	border-bottom-left-radius: 0px;
	border-bottom-right-radius: 0px;
}
/*-LQ1b, LQ2b -*/
.questionRow.QQ7b22f51f, .questionRow.QQ84bdd8cc {
	margin-top: -50px;
	border-top: none;
	border-top-left-radius: 0px;
	border-top-right-radius: 0px;
}
.QQ7b22f51f .questionText, .QQ84bdd8cc .questionText {
	padding: 0;
}

/*-RVW-*/
/*-LQ3a-*/
.questionRow.QQ6263d9e5 {
	border-bottom: none;
	border-bottom-left-radius: 0px;
	border-bottom-right-radius: 0px;
}
/*-LQ3b -*/
.questionRow.QQc63718a5 {
	margin-top: -50px;
	border-top: none;
	border-top-left-radius: 0px;
	border-top-right-radius: 0px;
}

/*-LQ2b, LQ3b, LQ7_OTHER-*/
.QQ7dd23509 .questionText, .QQc63718a5 .questionText, .QQdefc3a7e .questionText {
	padding: 0;
}

/*-RX1-*/
/*-LQ2b, LQ6b -*/
.QQef466071 .questionText, .QQ60ffff61 .questionText {
	padding: 0;
}
/*-LQ3 Intro-*/
.sectionHeader.QQ2af5703f  {
	background: none;
	color: #000;
	text-align: left;
}
/*-LQ7-*/
.questionRow.QQda1b5ab1 {
	border-bottom: none;
	border-bottom-left-radius: 0px;
	border-bottom-right-radius: 0px;
}
.QQda1b5ab1 .matrixQuestionTextCell {
	padding: 15px;
}
.QQda1b5ab1 input[type=number] {
	height: 30px;
	width: 30px;
}
/*-LQ7_OTHER-*/
.questionRow.QQdefc3a7e {
	margin-top: -60px;
	border-top: none;
	border-top-left-radius: 0px;
	border-top-right-radius: 0px;
}
.QQdefc3a7e .stringAnswer {
	margin: 10px 10px;
}
/*-NAR-*/
.questionRow.QQ1d0bf6bc {
	border: none;
}
.QQ1d0bf6bc .questionText {
	background-color: transparent;
}
/*-LQ10 Border Reset-*/
.questionRow.QQ45909e02 {
	border: 1px solid #787878 !important;
}

/*-RDE-*/
/*LQ3b, LQ4c-*/
.QQf12cc06e .questionText, .QQ174e3a9f .questionText {
	padding: 0;
}
/*-LQ4c-*/
.QQ174e3a9f input[type=checkbox] {
    width: 19px;
	margin: 8px;
}

.QQ174e3a9f .choiceVerticalInputCell {
    text-align: left;
	vertical-align: initial;
	background-color: white;
	/*padding: 5px 30px 0px 10px;*/
}

/*-RGP-*/
/*-LQ1a Other Box, LQ2a Other Box*/
.QQ52d3a246 input[type=text], .QQ71939c2d input[type=text] {
	margin: 0px 0px 10px 20px;
}

/*-RYR-*/
/*-LQ2 Other-*/
.QQ5d0579a8 .matrixWithOtherInput {
	padding: 10px 0px 10px 10px;
	width: 40%;
}

.QQ5d0579a8 input[type=text] {
	width: 40%;
}
/*-LQ9 Other-*/
.QQ58ce43df .matrixWithOtherInput {
	padding: 10px 0px 20px 20px;
}

.QQ58ce43df input[type=text] {
	width: 100%;
}

/* Media Resets
-------------------------------------------------------*/
/*--------------------------- Small Mobiles uo -------------------------------*/
@media only screen and (min-width: 375px) {
	.fpHeader1 {
		font-size: 4em;
	}

}

/*--------------------------- Medium Mobiles up -------------------------------*/
@media only screen and (min-width: 480px) {
	.qn6 .matrixTable {
		width: 155%;
	}

}

/*--------------------------- Tablets up -------------------------------*/
@media only screen and (min-width: 768px)  {

	/*--- Header Reset ---*/
	.marginTop10 {
		padding-top: 160px;
	}	

	h1 {
    	font-size: 3.5em;;
	}

	.progressBarOuterContainor{
		top: 150px;
	}
	
	/*--- Nav Bar Reset ---*/
	nav {
		display: inline-block;
	}

	/*--- Q27 Reset ---*/
	/* .qn27 .choiceVerticalInputCell {
		vertical-align: unset;
	} */

	/*--- Q8 Reset ---*/
	.qn6 .matrixTable {
		width: 100%;
	}


	/*--- Other Text Box Reset ---*/
	.qn26a input[type=text] {
		float: right;
		/*width: 11.7%;
		margin-right: 12.5%;*/
		width: 19.5%;
		margin-right: 20%;
	}	

	/*--- Landing Page Reset ---*/

	#fpContent {
		padding: 40px 85px 10px 85px;
	}

	.fpLeft{
		position: relative;
		width: 47%;
		float: left;
		padding-right: 2%;
	}

	.fpRight{
		position: relative;
		width: 47%;
		float: right;
	}

	.fpBfooter {
		padding: 10px 85px 10px 85px;
	}
}

/*--------------------------- Small desktops up -------------------------------*/
@media only screen and (min-width: 992px)  {

	/*--- Q13 / Q14 Reset ---*/
	.qn13d .choiceVerticalInputCell, .qn14d .choiceVerticalInputCell {
		min-width: 0;
	}


	/*--- Vertical Layout with Choice Subheads Reset ---*/
	.qn27 .choiceRow span, .qn33 .choiceRow span {
		max-width: 100%;
	}

	/*--- Footer Reset ---*/
	#footer {
		margin: 0;
		padding: 0;
	}
	
	.navigationRow {
		font-size: 1em;
	}	
}

/*--------------------------- Widescreens up -------------------------------*/
@media only screen and (min-width: 1200px)  {

	/*--- Content Width Reset ---*/
	.page {
		width: 80%;
	}
}
