﻿/*=====================================*/
/*             GENERIC STYLES          */
/*=====================================*/

@font-face {
  font-family: 'Stag-Sans';
  src: url('../fonts/subset-StagSans-Thin.eot');
  src: url('../fonts/subset-StagSans-Thin.eot?#iefix') format('embedded-opentype'),
  url('../fonts/subset-StagSans-Thin.woff2') format('woff2'),
  url('../fonts/subset-StagSans-Thin.woff') format('woff'),
  url('../fonts/subset-StagSans-Thin.ttf') format('truetype');
  font-weight: 100;
  font-style: normal;
}

@font-face {
  font-family: 'Stag-Sans';
  src: url('../fonts/subset-StagSansLG-Light.eot');
  src: url('../fonts/subset-StagSansLG-Light.eot?#iefix') format('embedded-opentype'),
  url('../fonts/subset-StagSansLG-Light.woff2') format('woff2'),
  url('../fonts/subset-StagSansLG-Light.woff') format('woff'),
  url('../fonts/subset-StagSansLG-Light.ttf') format('truetype');
  font-weight: 300;
  font-style: normal;
}

@font-face {
  font-family: 'Stag-Sans';
  src: url('../fonts/subset-StagSansLG-Book.eot');
  src: url('../fonts/subset-StagSansLG-Book.eot?#iefix') format('embedded-opentype'),
  url('../fonts/subset-StagSansLG-Book.woff2') format('woff2'),
  url('../fonts/subset-StagSansLG-Book.woff') format('woff'),
  url('../fonts/subset-StagSansLG-Book.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}


@font-face {
  font-family: 'Stag-Sans';
  src: url('../fonts/subset-StagSans-BookItalic.eot');
  src: url('../fonts/subset-StagSans-BookItalic.eot?#iefix') format('embedded-opentype'),
  url('../fonts/subset-StagSans-BookItalic.woff2') format('woff2'),
  url('../fonts/subset-StagSans-BookItalic.woff') format('woff'),
  url('../fonts/subset-StagSans-BookItalic.ttf') format('truetype');
  font-weight: normal;
  font-style: italic;
}

@font-face {
  font-family: 'Stag-Sans';
  src: url('../fonts/subset-StagSansLG-Semibold.eot');
  src: url('../fonts/subset-StagSansLG-Semibold.eot?#iefix') format('embedded-opentype'),
  url('../fonts/subset-StagSansLG-Semibold.woff2') format('woff2'),
  url('../fonts/subset-StagSansLG-Semibold.woff') format('woff'),
  url('../fonts/subset-StagSansLG-Semibold.ttf') format('truetype');
  font-weight: 600;
  font-style: normal;
}

* {
    box-sizing: border-box;
}

body, select, input, textarea {
    font-family: 'Stag-Sans', sans-serif;
    font-size: 1rem;
    color: #231f20;
    background: transparent;
}

select:focus, textarea:focus, input:focus {
    outline: 0;
}

h2 {
	position: relative;
	color: #353535;
	padding-left: 2.375rem;
	font-size: 2.25rem;
	font-weight: 300;
}

h2:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 2px;
    display: block;
    background-color: #c35b5b;
}

.page-content {
	line-height: 1;
}

.d-flex {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.align-items-center {
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

/*=====================================*/
/*                BUTTONS              */
/*=====================================*/
.button-holder {
    margin-top: 20px;
    text-align: center;
    border-top: 1px solid #c0c0c0;
    padding-top: 20px;
}

.button-holder .btn {
    display: inline-block;
    min-width: 318px;
    background-color: #88b7c6;
    color: #fff;
    padding: 1.5rem 3rem;
    text-decoration: none;
    border-radius: 4px;
    font-weight: 600;
    font-size: 1.5rem;
    border-radius: .25rem;
    border: 1px solid #88b7c6;
    cursor: pointer;
    line-height: 1;
    -webkit-transition: all .3s;
    -o-transition: all .3s;
    transition: all .3s;
}

.button-holder .btn:hover {
	background-color: transparent;
	color: #88b7c6;
}

.button-holder .btn[disabled] {
    opacity: 0.8;
    cursor: not-allowed;
}

/*=====================================*/
/*              QUESTIONS              */
/*=====================================*/
.questions input[type=file] {
    margin-bottom: 10px;
}

.questions .row.question {
    border-bottom: 1px solid #f0f0f0;
    padding: 10px 0;
}

.questions .q-name,
.questions .q-desc,
.questions .input,
.file-wrapper .filetext,
input[type="checkbox"] ~ label,
.icon-checklist label[for$="txtOther"],
.questions select,
small {
	color: #5a5b5b;
    font-weight: 300;
    -webkit-text-stroke: .35px #5a5b5b;
}

.questions .q-name,
.questions .q-desc {
	margin-bottom: 1rem;
}

.questions .q-name {
    font-size: 1.125rem;
}

.questions .q-name strong {
    font-weight: 600;
    -webkit-text-stroke: unset;
}

small,
.questions .q-desc {
	font-size: 0.875rem;
}

.questions .q-desc  {
    display: block;
}

.questions .q-desc a {
	color: #88b7c6;
	text-decoration: none;
	-webkit-text-stroke: .35px #88b7c6;
}

.questions .input,
.questions select,
.file-wrapper .filetext {
	outline: none;
	border: none;
	background-color: #fff;
	padding-left: 1.875rem;
	padding-right: 1.875rem;
	height: 55px;
	line-height: 55px;
	padding-top: 0;
	padding-bottom: 0;
	width: 100%;
	border-radius: .25rem;
	-webkit-box-shadow: 0px 0px 3px 0px rgba(90, 91, 91, .1);
	-moz-box-shadow: 0px 0px 3px 0px rgba(90, 91, 91, .1);
	box-shadow: 0px 0px 3px 0px rgba(90, 91, 91, .1);
	font-size: 1.125rem;
}

.file-wrapper {
	position: relative;
	margin-bottom: 1rem;
}

.file-wrapper .filetext {
	font-size: 1.125rem;
	-webkit-box-flex: 1;
	    -ms-flex-positive: 1;
	        flex-grow: 1;
}				

.file-wrapper .labelfile {
	border: 1px solid #ccc;
	font-size: 1.125rem;
	font-weight: 300;
	color: #000;
	-webkit-text-stroke: .35px #000;
	min-width: 230px;
	text-align: center;
	height: 55px;
	line-height: 55px;
	margin-left: 1rem;
	border-radius: .25rem;
	padding-left: 1.875rem;
	padding-right: 1.875rem;
}

.file-wrapper .inputfile {
	width: 100%;
	height: 100%;
	opacity: 0;
	overflow: hidden;
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
}

.questions textarea.input {
    resize: none;
    height: 141px;
    line-height: 1;
    padding-top: 18px;
    padding-bottom: 18px;
}

.questions select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none; 
	background: #fff url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAsAAAAHCAYAAADebrddAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAF9JREFUeNpiYGBgnAPE/4nAQHUMjOxAfJqAwtNgdf///wdpkAXiVzgUgsRlwepABFSDMxD/QVMI4jvD1cAYUA1laIrLUOTRFDMC8WqowjUgPk7FUA28QLwWRKPLAQQYADA6dD6nkIgOAAAAAElFTkSuQmCC') center right 1.875rem no-repeat;
	background-size: 11px 7px;
	padding-right: calc(1.875rem * 2 + 11px);
}

.questions select ::-ms-expand {
    display: none;
}

input[type="checkbox"]:not([id*="chkIcon"]) {
	-webkit-appearance: none;
	border: none;
	width: 0;
	height: 0;
	line-height: 0;
	display: none;
}

input[type="checkbox"]:not([id*="chkIcon"]) ~ .custom-checkbox {
	display: inline-block;
	vertical-align: middle;
	width: 14px;
	min-width: 14px;
	max-width: 14px;
	height: 14px;
	min-height: 14px;
	max-height: 14px;
	border-radius: 3px;
	background-color: #fff;
	position: relative;
	-webkit-box-shadow: 0px 0px 3px 0px rgba(90, 91, 91, .1);
	-moz-box-shadow: 0px 0px 3px 0px rgba(90, 91, 91, .1);
	box-shadow: 0px 0px 3px 0px rgba(90, 91, 91, .1);
}

input[type="checkbox"]:not([id*="chkIcon"]) ~ label {
	display: inline-block;
	vertical-align: middle;
	position: relative;
	left: -14px;
	padding-left: calc(14px + .75rem);
	top: 0;
	font-size: 1.125rem;
	line-height: 1;
	z-index: 1;
}

input[type="checkbox"]:not([id*="chkIcon"]):checked ~ .custom-checkbox:after {
	content: '\2714';
	position: absolute;
	font-size: 0.75rem;
	color: #5a5b5b;
	top: 50%;
	left: 50%;
	line-height: 1;
	-webkit-transform: translate(-50%, -50%);
	    -ms-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%);
}

label[for$="chkIcon1"] .sectors {
	background-color: #f52535;
}

label[for$="chkIcon2"] .sectors {
	background-color: #daa72e;
}

label[for$="chkIcon3"] .sectors {
	background-color: #34a74f;
}

label[for$="chkIcon4"] .sectors {
	background-color: #d82a3f;
}

label[for$="chkIcon10"] .sectors {
	background-color: #ed2891;
}

label[for$="chkIcon11"] .sectors {
	background-color: #ffa733;
}

.questions .input.other {
    margin-top: 10px;
}

.questions table {
    width: 100%;
}

.questions table td {
    padding: 10px 0;
}

.questions table td.error {
    padding: 10px;
}

.error {
 /*   border: 1px solid orange !important;
    background: #FFEED0 !important;
    color: orange;*/
    border: 1px solid #c35b5b !important;
    background: #FAE9E9 !important;
    color: #c35b5b;
}

.error-output {
    border: 1px solid orange !important;
    background: #FFEED0 !important;
    color: #D25C5C;
    padding: 20px;
    text-align: center;
    font-weight: bold;
}

.success-output {
    border: 1px solid #2FCE04 !important;
    background: #E3FFDC !important;
    color: #2E8E14;
    padding: 20px;
    text-align: center;
    font-weight: bold;
}

input[type=file].error {
    padding: 10px;
}

.page-content ul ul {
    padding-left: 0;
}

.icon-checklist {
    table-layout: fixed;
}

.icon-checklist td {
    padding: 5px !important;
}

.icon-checklist label:not([for$="txtOther"]) {
    line-height: 0;
}

.icon-checklist label[for$="txtOther"] strong {
	font-weight: inherit;
	display: block;
	margin-bottom: 1rem;
}

.icon-checklist label[for$="txtOther"] textarea {
	height: 109px;
}

.icon-checklist label {
	display: block;
}

.icon-checklist label img {
    pointer-events: none;
}

.icon-checklist span {
    padding: 5px 10px;
    display: block;
}

.icon-checklist .error span {
    border: 1px solid orange !important;
    background: #FFEED0 !important;
    color: orange;
}

.spinner {
    cursor: wait;
}

.warning-pop-up {
    position: fixed;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: .3s opacity;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    height: 0;
    width: 0;
    overflow: hidden;
    background: rgba(0,0,0,.3);
}

.warning-pop-up.active {
    width: 100%;
    height: 100%;
    opacity: 1;
}

.warning-pop-up-content {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 340px;
    height: 350px;
    margin-top: 100px;
    border-radius: 5px;
    background: #fff;
    opacity: 0;
    transition: .3s .1s margin, .3s .1s opacity;
}

.warning-pop-up.active .warning-pop-up-content {
    margin-top: 0;
    opacity: 1;
}


.warning-pop-up-content > div {
    padding: 0 30px;
}

.warning-pop-up-close {
    position: absolute;
    top: -18px;
    right: -18px;
    border-radius: 50%;
    width: 36px;
    height: 36px;
    background: #008B96;
}

.warning-pop-up-close:hover {
    cursor: pointer;
    background: #025b62;
}

.warning-pop-up-close:after,
.warning-pop-up-close:before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 12px;
    height: 2px;
    background: #fff;
}

.warning-pop-up-close:after {
    transform: translate(-50%, -50%) rotate(45deg);
}

.warning-pop-up-close:before {
    transform: translate(-50%, -50%) rotate(-45deg);
}

/*** Media Queries ***/

@media (max-width: 991.98px) {
	.mobile-center {
		text-align: center !important;
		margin-bottom: 1rem;
	}
}

@media(max-width: 600px) {
	.questions .row.question .col-sm-9 {
        padding-top: 10px;
    }

    .icon-checklist td {
    	padding: 5px 0 !important;
    }

	h2 {
		padding-left: 1.5rem;
		font-size: 2rem;
	}

	.questions .q-name,
	.questions .input,
	.questions select,
	.file-wrapper .filetext,
	.file-wrapper .filetext,
	.file-wrapper .labelfile,
	input[type="checkbox"]:not([id*="chkIcon"]) ~ label {
		font-size: 1.0625rem;
	}

	.questions .input,
	.questions select,
	.file-wrapper .filetext,
	.file-wrapper .labelfile {
		padding-left: 1.5rem;
		padding-right: 1.5rem;
		height: 50px;
		line-height: 50px;
	}

	.questions select {
		padding-right: calc(1.5rem * 2 + 11px);
		background-position: center right 1.5rem;
	}

	.file-wrapper .labelfile {
		min-width: auto;
		margin-left: 0;
		margin-top: 1rem;
	}

	.button-holder .btn {
		font-size: 1.3125rem;
	}

	.file-wrapper,
	.file-wrapper .labelfile,
	.file-wrapper .filetext {
		display: block;
		width: 100%;
	}
}

@media(max-width: 450px) {
	h2 {
		padding-left: 1rem;
		font-size: 1.75rem;
	}

	.questions .q-name,
	.questions .input,
	.questions select,
	.file-wrapper .filetext,
	.file-wrapper .filetext,
	.file-wrapper .labelfile,
	input[type="checkbox"]:not([id*="chkIcon"]) ~ label {
		font-size: 1rem;
	}

	.questions .input,
	.questions select,
	.file-wrapper .filetext,
	.file-wrapper .labelfile {
		padding-left: 1rem;
		padding-right: 1rem;
		height: 45px;
		line-height: 45px;
	}

	.questions select {
		padding-right: calc(1rem * 2 + 11px);
		background-position: center right 1rem;
	}

	.button-holder .btn {
		font-size: 1.125rem;
		min-width: auto;
	}
}