/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/
body,
button,
input,
select,
optgroup,
textarea {
	color: #444;
  font-family: 'Roboto', sans-serif;
	font-size: 14px;
	line-height: 1.5;
}
h1,
h2,
h3,
h4,
h5,
h6 {
	clear: both;
  margin:  0 0 10px;
  line-height: 1.2;
  overflow: initial;
	font-weight: 700;
}
h1 {
	font-size: 1.75em;
}
h2 {
	font-size: 1.5em;
}
h3 {
	font-size: 1.25em;
}
h4 {
	font-size: 1.125em;
}
p {
	margin: 0 0 14px 0;
}
dfn,
cite,
em,
i {
	font-style: italic;
}
blockquote {
	margin: 0 1.5em;
}
address {
	margin: 0 0 1.5em;
}
pre {
	background: #eee;
	font-family: "Courier 10 Pitch", Courier, monospace;
	font-size: 14px;
	line-height: 1.6;
	margin-bottom: 1.6em;
	max-width: 100%;
	overflow: auto;
	padding: 1.6em;
}
code,
kbd,
tt,
var {
	font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
	font-size: 14px;
}
abbr,
acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}
mark,
ins {
	background: #fff9c0;
	text-decoration: none;
}
big {
	font-size: 125%;
}
/*--------------------------------------------------------------
# Elements
--------------------------------------------------------------*/
html {
	box-sizing: border-box;
}
*,
*:before,
*:after { /* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
	box-sizing: inherit;
}
body {
  /* background-color: #E9ECE5; */
	position: relative;
}
blockquote:before,
blockquote:after,
q:before,
q:after {
	content: "";
}
blockquote,
q {
	quotes: "" "";
}
hr {
	background-color: #ccc;
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}
ul,
ol {
	margin-top: 0;
}
ul {

}
ol {
	list-style: decimal;
}
li > ul,
li > ol {

}
dt {
	font-weight: bold;
}
dd {
	margin: 0 1.5em 1.5em;
}
img {
	height: auto; /* Make sure images are scaled correctly. */
	max-width: 100%; /* Adhere to container width. */
}
figure {
	margin: 1em 0; /* Extra wide images within figure tags don't overflow the content area. */
}
table {
	margin: 0 0 1.5em;
	width: 100%;
}
a {
	color: #A5C05B;
	transition: all linear .2s;
	text-decoration: none;
	color: #618eb5;
}
a:hover,
a:focus,
a:active {
  text-decoration: none;
	color: #8ea64a;
	color: #3f74a5;
}

.btn {
  border-radius: 0px;
  -webkit-box-shadow: none;
  box-shadow: none;
  border: 1px solid transparent;
}
a.button,
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	display: inline-block;
	border: 1px solid;
	border-color: #A5C05B;
	border-radius: 0px;
	background: #A5C05B;
	color: #fff;
	font-size: 14px;
	font-size: 1em;
	line-height: 1;
	padding: 10px 15px;
	padding: .75em 1.125em;
	transition: all linear .2s;
	cursor: pointer;
	border-color: #618eb5;
	background: #618eb5;
}
a.button:hover,
button:hover,
input[type="button"]:hover,
input[type="submit"]:hover {
	background:#68839b;
	color: #A5C05B;
	color: #fff;
}
input:not([type]),
input[type="email"],
input[type="number"],
input[type="password"],
input[type="tel"],
input[type="url"],
input[type="text"] {
	padding: 2px 3px;
	max-width: 400px;
	width: 50%;
	min-width: 225px;
  background: rgba(255, 255, 255, .75);
	border-style: solid;
  border-width: 1px;
}

.login-area input[type="text"],
.login-area input[type="password"] {
	width: 100%;
}
input[type="reset"],
a.red-btn,
.red-btn {
	background: #c05b5b;
	border-color: #c05b5b;
}
input[type="reset"]:hover,
.red-btn:hover,
a.red-btn:hover {
	color: #c05b5b;
	background:transparent;
	border-color: #c05b5b;
}

a.button.button-transparent {
	background: transparent;
	border-color: transparent;
	color: #efefef;
	line-height: 1.4;
}
a.button.button-transparent:hover {
	background: transparent;
	border-color: transparent;
	color: #fff;
}

button.empty-cart,
a.button.empty-cart {
	background: #c05b5b;
	border-color: #c05b5b;
}
button.empty-cart:hover,
a.button.empty-cart:hover {
	color: #c05b5b;
	background:transparent;
	border-color: #c05b5b;

}
label {
	font-weight: 700;
}
.form-control {
	border-radius: 0;
}

/*-----------------------
 # CUSTOM
 ---------------------- */

.center {
	text-align: center;
}

/* -------------------------
## Header
  ------------------------*/
.navbar {
	display: none;
	padding: 1em 2em;
}
.navbar-brand, .nav-link {
	padding-top: 0;
	padding-bottom: 0;
}
.navbar-toggler {
  padding: 0.125rem .25rem;
  border-radius: 0;
	border: none;
}
.navbar-toggler-icon {
	width: 1.25em;
	height: 1.25em;
}

/* -------------------------
## Content Area
  ------------------------*/
.content {
	/* padding: 20px; */
	min-height: calc(100vh - 0px);
}
.main-area {
	padding: 2em;
	min-height: 60vh;
}
.section {
	padding: 2em 0;
}
.v-flex {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	  -ms-flex-direction: column;
	    flex-direction: column;
	-webkit-box-pack: center;
	  -ms-flex-pack: center;
	    justify-content: center;
}
/*  Home Page */
.home .main-area {
	padding: 0;
min-height: 0;
}
.top-area {
	font-size: 1.375em;
	padding: 5em 1.5em;
	background: #618eb5;
  color: #fff;
  line-height: 2;
	min-height: calc(100vh - 0px);
}
.main-title-area {
	font-size: 2em;
}
.main-title {
	line-height: 1.2;
}
.top-area .text {
	margin: 24px auto;

}
.disclaimer {
	font-size: .75em;
  margin-top: 20px;
}
button.white-btn,
a.white-btn {
	border: 2px solid #fff;
	width: 200px;
	font-size: 1.125em;
	padding: .5em;
}
button.white-btn.user-btn,
a.white-btn.user-btn {
	border: 1px solid #fff;
	width: 100px;
	font-size: 1em;
	padding: 8px;
	padding: .575em;
	text-align: center;
	margin-left: 3px;
}
button.white-btn:hover,
a.white-btn:hover {
	background: #fff;
	color: #618eb5;
	border-color: #618eb5;
}
.news-section {
	margin: 0 auto;
	max-width: 800px;
}
.news-section h2 {
	text-align: center;
}
.news ul {
	padding-left: 0;
	list-style: none;
}
.news ul li {
	margin: 1em 0;

}

.modal-open .modal {
  background-color: rgba(0, 0, 0, .75);
}
.modal-700 {
	max-width: 700px;
}

.browser-disclaimer {
	margin-top: 1.75em;
  border-top: 1px solid #ccc;
  padding-top: 1.25em;
	display: none;
}
.important {
	font-weight: 700;
	padding-bottom: .25em;
}
/*  Login */
.no-header {
	min-height: 100vh;
	position: relative;

}
.no-header-content {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;

	background-color: #222;
	align-items: center;
}
.login-box {
	max-width: 700px;
	background-color: #f5f5f5;
	padding: 2em 1.5em 1.75em;
}

.login-area {

}
#admin-login {
  margin-top: 20px;
  /* border-top: 1px solid #dedede; */
}
.title {
  font-family: "Roboto Slab", serif;
  margin-bottom: 24px;
}
.nih {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
		-ms-flex-pack: justify;
			justify-content: space-between;
	-webkit-box-align: center;
		-ms-flex-align: center;
			align-items: center;
}
.nih-img {
    width: 58px;
    opacity: .75;
}
.left {
	width: 42%;
	padding-right: 30px;
}
.right {
	width: 58%;
}

.img-link {
	line-height: 0;
}
/* -------------------------
### User Profile Page
  ------------------------*/
.top-user-area {
	padding: 1em 2em;
	background-color: #F6F6F6;
	/* background: #618eb5; */
	/* color: #f6f6f6; */
	border-bottom: 1px solid #ffc665;
	display: -webkit-box;
  	display: -ms-flexbox;
    	display: flex;
	-webkit-box-pack: justify;
    -ms-flex-pack: justify;
      justify-content: space-between;
	-webkit-box-align: center;
    -ms-flex-align: center;
      align-items: center;
}
.site-branding figure {
	width: 300px;
	margin: 0
}
.user-buttons {
	text-align: right;
}
p.big-text {
	font-size: 1.5em;
	margin-bottom: .175em;
}

.first-time-area {
	margin-top: 20vh;
}
.first-time-box {
	max-width: 600px;
  background: #eee;
  border: 1px solid #ddd;
  text-align: center;
  padding: 3em 2em;
  margin: 0 auto;
}
.first-time-box p {
	font-size: 1.25em;
}
.application-section {
  max-width: 900px;
	margin: 0 auto;
}
.access-area {
	margin: 30px auto;
}
.box {
	margin-bottom: 25px;
	border: 1px solid #f5f5f5;
}
.box h2 {
	padding: 5px;
	margin-bottom: 5px;
	background: #f5f5f5;
}

/* .card {
  box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);
  transition: all 0.3s cubic-bezier(.25,.8,.25,1);
	border-radius: 0;
}

.card:hover {
  box-shadow: 0 14px 28px rgba(0,0,0,0.25), 0 10px 10px rgba(0,0,0,0.22);
} */



ul.access-list {
	list-style: none;
	margin: 0;
	padding: 0;
}
.access-list li {
	padding: 5px;
}
.access-list a,
.access-table a {
	color: #618eb5;
}
.access-list a:hover,
.access-table a:hover {
	text-decoration: underline;
}
table.access-table {
	margin: 0;
}
.access-table th,
.access-table td {
	padding: 2px 5px;
}
.dar-name {
	text-transform: capitalize;
}
.no-user-text {
	padding: 5px 5px 0;
}

/* Profile Page */
.content-section {
	max-width: 1080px;
	margin: 0 auto;
}

.user-info-area {
	background-color: #f5f5f5;
	padding: 15px 25px;
	position: relative;
}
.user-info {
	padding: 10px 0;
}
.info-title {
  font-weight: 700;
}
.profile-page input[type="submit"],
.profile-page input[type="button"] {
	padding: 7px 10px 6px;
}
.required {
	padding: .75em 0;
	font-size: .875em;
	font-style: italic;
}
.required p {
	margin: 0 0 .5em 0;
}
p.not-required {
	font-style: italic;
	font-weight: 400;
	font-size: .875em;
	margin-top: -0.5em;
}
.gray-border {
	border-color: #cccccc;
}
.red-border {
	border-color: #c05b5b;
}
.error {
	color: #c05b5b;
}
.success {
	color: #A5C05B;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background-color: rgba(255, 255, 255, .5);
}
.sucess-area {
	width: 100%;
	height: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
.sucess-box {
	padding: 2em 2.5em;
	background-color: #fff;
	border: 1px solid #eee;
}
#success, #error, #errorFirst, #errorLast, #errorEmail, #errorInstitution, #errorAWS, #errorValidAWS  {
	display: none;
}


@media screen and (min-width: 768px) {

}


/* section {
	min-height: 100vh;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 18px;
}
section:nth-child(2n) {
	background-color: #fff;
}

section .content {
	text-align: center;
	padding: 50px;
	max-width: 1440px;
} */
/* # Introduction */
/* .portal-access {
	padding: 20px 0;
}
.portal-access button {
	margin-bottom: 20px;
} */

/* ----------------
# Login
 ------------------*/
.session-info {
	position: absolute;
	bottom: 0;
}
