
@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100;0,300;0,400;1,600&display=swap');

/* Globals
----------------------------------------------- */
body,
html {
	font-family: 'Montserrat', serif;
	font-size: 1.1em;
	font-weight: 300;
	line-height: 1.5em;
	}

.section {
	max-width: 1400px;
	}
	
h1,
h2,
h3 {
	font-family: 'Montserrat', serif;
	line-height: 1.5em;
	}
	
h1 {
	font-size: 1.70em;
	}	
	
h2 {
	font-size: 1.25em;
	padding-bottom: .3em;
	border-bottom: 1px solid rgb(253,156,60);
	}
	
h3 {
	font-size: 0.9em;
	}

a {
	color: #000;
	}
	
a:hover {
	color: rgb(120,32,121);
	}
		
a.button,
input.button {
	width: auto;
	min-width: 200px;
	height: auto;
	padding: 10px 10px 10px 10px;
	line-height: 30px;
	font-size: 0.8em;
	font-weight: 400;
	border-radius: 25px;
	border: solid 1px #fff;
	background: rgb(64,64,64);
	background: linear-gradient(0deg, rgba(64,64,64,1) 0%, rgba(151,151,151,1) 100%);
	transition: color 0.3s ease; 
	}
	
a.button:hover,
input.button:hover {
	color: rgb(253,156,60);
	background: rgb(64,64,64);
	background: linear-gradient(0deg, rgba(64,64,64,1) 0%, rgba(151,151,151,1) 100%);
	}
	
img.dropFrame {
	box-shadow: 0 0 8px #333;
	border-radius: 25px;
	overflow: hidden;
	}
	
.content {
	padding: 1.2em;
	}

.container.main {
	padding: 20vh 0;
	}
	
.pageContent {
	padding-left: 2em;
	}
	
.templateBG {
	width: 100%;
	height: auto;
	position: absolute;
	top: 110px;
	z-index: -1;
	}
	
.ftw {
	width: 100%;
	height: 100%;
	bottom: 0;
	left: 0;
	background: -moz-linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0) 65%, rgba(255,255,255,1) 100%);
	background: -webkit-linear-gradient(top, rgba(255,255,255,0) 0%,rgba(255,255,255,0) 65%,rgba(255,255,255,1) 100%);
	background: linear-gradient(to bottom, rgba(255,255,255,0) 0%,rgba(255,255,255,0) 65%,rgba(255,255,255,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#ffffff',GradientType=0 );
	}
	
.opacity3 {
	opacity: 0.3;
	}
	
/* Header
----------------------------------------------- */
.header {
	display: grid;
	grid-template-columns: 360px 1fr 360px;
	grid-template-rows: auto;
	grid-gap: 0.85em;
	justify-content: space-evenly;
	padding: 0.85em;
	width: 100%;
	height: 78px;
	background: #fff;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 999;
	box-shadow: 0 0 8px #333;
	}
	
.mainLogo {
	width: 320px;
	position: relative;
	bottom: -10px;
	left: 1.2em;
	z-index: 1;
	}
	
.mainHump {
	width: 120px;
	height: 120px;
	border-radius: 50%;
	box-shadow: 0 0 8px #333;
	position: absolute;
	z-index: 0;
	bottom: -32px;
	left: 0;
	}
	
.mainHump:before{
    position: absolute;
    content: "";
    width: 150%;
    height: 110px;
    left: -25%;
    bottom: 20px;
    background: #fff;
}

.mainHump:after{
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    left: 0;
    bottom: 0;
    background: white;
    border-radius: 50%;
}

/* Job Opps
----------------------------------------------- */	
.asfeat {
	font-size: 13px;
	font-weight: 300;
	text-align: right;
	margin-top: -3%;
	}

.sideasfeat {
	font-size: 13px;
	font-weight: 300;
	text-align: right;
	margin-top: -3%;
border-top-left-radius: 25px;
border-bottom-left-radius: 25px;
border-top-right-radius: 25px;
border-bottom-right-radius: 25px;
	}	

.leftSection {
	margin-bottom: 1em;
	}
		
.joppboxWrap {
	border: 1px solid rgb(64,64,64);
	background: #fff;
border-top-left-radius: 25px;
border-top-right-radius: 25px;
	
	}	
		
.joppHead {
	width: 94%;
	color: #771F7A;
	font-size: 20px;
	font-weight: 600;
	padding: 2% 3%;
	}

.joppTitle {	
	font-size: 0.85em;
	font-weight: 600;
	color: #000;
	margin-bottom: 16px;
	border-top-left-radius: 25px;
border-bottom-left-radius: 0px;
border-top-right-radius: 25px;
border-bottom-right-radius: 0px;
	box-shadow: 0 0 8px #333;
	}

.joppList a {
	font-size: 0.85em;
	color: #333;
	}		
	
.sidejoppTitle {
	background: rgb(64,64,64);
border-top-left-radius: 25px;
border-bottom-left-radius: 0px;
border-top-right-radius: 25px;
border-bottom-right-radius: 0px;
	box-shadow: 0 0 8px #333;
	}

.sidejoppTitle:hover {
	background: rgba(63,63,63,0.7);
	}
	
.sidejoppTitle.activeType {
	background: rgba(254,190,15,1);
	border-top-left-radius: 25px;
	border-top-right-radius: 25px;
	border-bottom-right-radius: 0px;
	border-bottom-left-radius: 0px;
	box-shadow: 0 0 8px #333;
	}

.sidejoppTitle.activeType h3 {	
	color: rgb(64,64,64);
	}
	
.sidejoppTitle h3 {	
	font-size: 1.25em;
	font-weight: 400;
	color: #fff;
	padding: 0.85em;
	margin: 0;
	}

	
.sidejoppTitle a {
	text-decoration: none;
	padding-bottom: 
	}
	
.sidejoppTitle a:hover {
	}


	
.foppItem {
	text-decoration: none;
	padding: 0.4em 0.85em;
	display: block;
	}
	
.foppItem:last-child {
	border: 0;
	}
	
.foppItem:hover,
.foppItem.selected,
#ALL.selected {
	cursor: pointer;
	background: rgba(255,235,188,1) !important;
	}
	
ul.opps_list {
	margin: 0;
	}
	
ul.opps_list li.jlist {
	list-style: none;
	padding: 2% 0;
	border-bottom: 1px dashed #333;
	}
	
ul.opps_list li.jlist:hover {
	cursor: pointer;
	background: rgba(255,235,188,1);
	}
	
ul.opps_list li.jlist.joblist_active:hover {
	background: none;
	cursor: default;
	}
	
.opp_title,
.experience {
	font-size: 16px;
	font-weight: 400;
	display: inline-block;
	vertical-align: baseline;
	margin-bottom: 5px;
	}
	
.opp_title {
	font-family: 'Source Sans Pro', sans-serif;
	font-size: 20px;
	color: #771F7A;
	}
	
.full_details {
	padding: 2% 0;
	}
	
.full_details_body {
	}
	
.sort {
	text-align: right;
	padding: 0 0 10px 0;
	}
	
.closeIt {
	width: 20px;
	height: 20px;
	color: #771F7A;
	text-align: center;
	line-height: 20px;
	border: 1px solid #771F7A;
	position: absolute;
	top: 0;
	right: 0;
	display: none;
	}
	
.joblist_active .opp_name:hover .closeIt {
	color: #fff;
	background: #771F7A;
	cursor: pointer;
	}
	
.joblist_active .closeIt {
	display: block;
	}
	
/* Forms
----------------------------------------------- */
form {
	width: 60%;
	display: block;
	margin: 0 auto;
	padding: 3%;
	margin-top: 6%;
	position: relative;
	}	

.form {
	display: block;
	margin: 0 auto;
	position: relative;
	z-index: 3;
	}
	
ol.form li {
	list-style: none;
	margin-bottom: 15px;
	}
	
.form label,
.form input,
.form textarea,
.form select {
	width: 94%;
	min-width: 230px;
	display: block;
	margin: 0 0 5px 0;
	}

.form label {
	font-weight: 600;
	}
	
.form label .nobold {
	font-weight: 300;
	}
		
.form input,
.form textarea {
	font-size: 13px;
	padding: 3%;
	background: #fff;
	border: 1px solid #ddd;
border-radius: 5px;
	}

.form textarea {

	}

.form select {
	width: 100%;
	padding: 3%;
	border: 1px solid #ddd;
	}
			
form input.button {
	position: relative;
	z-index: 12;
	}
	
.form .resume_avenue label,
.form .transcript label {
	width: 150px;
	min-width: auto;
	display: inline-block;
	vertical-align: baseline;
	}
	
.form .transcript label {
	width: 150px;
	}
	
.form .transcript .checkboxOption,
.form .resume_avenue .radioOption {
	width: auto;
	}
	
.form .transcript .checkboxOption input,
.form .resume_avenue .radioOption input,
.form .radio_option input {
	width: 40px;
	min-width: 40px;
	}
	
.form .radio_option label,	
.form .radio_option input,
.form .checkboxOption label,	
.form .checkboxOption input {
	display: inline-block;
	vertical-align: baseline;
	}
	
.form .radio_option label {

	}
	
.form .radio_option input,
.form .checkboxOption input {
	width: 20px;
	}
	
ul.error {
	color: #fff;
	margin: 0;
	padding: 3%;
	background: red;
	}
	
ul.error li {
	padding: 0;
	margin: 0;
	}





/* Footer
----------------------------------------------- */
.footer {
	box-shadow: 0 0 8px #333;
	position: relative;
	padding-bottom: 5em;
	background: #fff;
	}
	
.footHump {
	width: 120px;
	height: 120px;
	border-radius: 50%;
	box-shadow: 0 0 8px #333;
	position: absolute;
	z-index: 0;
	top: -25px;
	left: 0;
	}
	
.footHump:before {
    position: absolute;
    content: "";
    width: 150%;
    height: 110px;
    left: -25%;
    top: 25px;
    background: #fff;
}

.footHump:after {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background: white;
    border-radius: 50%;
}
	
.footLogo {
	width: 320px;
	position: relative;
	top: 10px;
	left: 1.2em;
	z-index: 1;
	}
	
.footer a {
	text-decoration: none;
	}
	
.footNav a,
.footAddy {
	padding: 8px 8px 8px 0;
	display: block;
	border-top: 1px solid #979797;
	}
	
.footNav a:first-child,
.footAddy.noBorder {
	border: none;
	}

.footNav a,
.footAddy a {
	color: rgb(120,32,121);
	}
		
.footNav a:hover,
.footAddy a:hover {
	color: rgb(253,156,60);
	}

.footFlaireContainer {
	text-align: center;
	}
	
.socialIcon {
	display: inline-block;
	vertical-align: middle;
	margin: 10px 10px 0 0;
	}
	
.socialIcon:hover {
	opacity: 0.8;
	}

.footIcon {
	width: 33px;
	height: 33px;
	margin-right: 10px;
	display: inline-block;
	vertical-align: middle;
	}
		
.footFlaire {
	width: auto;
	display: inline-block;
	vertical-align: middle;
	margin: 0 0.85em;
	}
	
.gFlaire {
	width: 175px;
	}

@media handheld, only screen and (max-width: 1599px) {
.headSpacer {
	width: 0;
	}
}
	
@media handheld, only screen and (max-width: 1140px) {
.footer  .sixcol {
	width: 96%;
	}
	
.footer .col {
	margin: 0;
	}
	
.socialSection {
	text-align: center;
	margin: 1em 0;
	}
}

@media handheld, only screen and (max-width: 800px) {
.header {
	grid-template-columns: 100%;
	}
	
.pageContent {
	padding: 0.85em;
	}
	
form {
	width: 94%;
	}
}

@media handheld, only screen and (max-width: 640px) {
.header {
	height: 15vw;
	}
	
.mainLogo {
	width: 40%;
	max-width: 300px;
	left: auto;
	}
	
.mainHump,
.footHump {
	display: none;
	}
	
.templateBG {
	top: 8vw;
	}
	
.footLogo {
	width: 60%;
	max-width: 300px;
	display: block;
	margin: 1em auto;
	top: auto;
	left: auto;
	}
	
.footer .content {
	font-size: 0.85em;
	}
	
.footer .content .footAddy {
	font-size: 0.7em;
	}
	
.footFlaireContainer a {
	display: block;
	margin: 20px auto;
	}
	
.shareit {
	font-size: 0.85em;
	padding: 20px !important;
	overflow: hidden;
	}
	
.shareit a:last-of-type {
	font-size: 0.5em;
	line-height: 100%;
	}
}
