/* ############## ABOUT US ############### */
.hamburger-menu-container {
	z-index: 9;
}
.hamburger-overlay {
	z-index: 8;
}
@media screen and (min-width: 701px) {
	.headshot-link-wrapper {
		display: block;
		float: left;
		height: 42.5vw;
		width: 42.5vw;
	}
	.headshot {
		height: 42.5vw;
		width: 42.5vw;
	}
	.headshot-link-wrapper:nth-of-type(1) {
		margin: 2.5vw 2.5vw 2.5vw 5vw;
	}
	.headshot-link-wrapper:nth-of-type(2) {
		margin: 2.5vw 2.5vw 2.5vw 2.5vw;
	}
	.headshot-link-wrapper:nth-of-type(3) {
		margin: 2.5vw 2.5vw 2.5vw 5vw;
	}
	.headshot-link-wrapper:nth-of-type(4) {
		margin: 2.5vw 2.5vw 2.5vw 2.5vw;
	}
}
@media screen and (max-width: 700px) {
	.headshot-link-wrapper {
		margin: 25px auto;
		height: 75vw;
		width: 75vw;
	}
}
.headshot-overlay > hr {
	color: #FFFFFF;
}
.headshot-link-wrapper {
	display: block;	
	color: #FFFFFF;
}
/headshot-link-wrapper:visited {
	color: #FFFFFF;
}
.navbar {
    top: 0px;
    z-index: 10;
}
.about-cover-img-container {
	width: 100%;
	height: 450px;
	margin-top: 75px;
	background: url('../images/full_desk.png');
	background-size: cover;
	background-position: center;
	position: relative;
}
	.about-cover-img-overlay {
		display: table;
		position: absolute;
		height: 100%;
		width: 100%;
		background: rgba(0,0,0,0.6); 
		top: 0px;
		left: 0px;
	}
		.about-cover-img-overlay > h1 {
			display: table-cell;
			vertical-align: middle;
			text-align: center;
			font-size: 4em;
			padding: 0px 25px;
			font-family: "Avenir-Heavy";
			color: #FFFFFF;
		}
.about-body-content {
	padding: 75px 0px;
	background: #FFFFFF;
}
	.about-main-body-text {
		width: 90%;
		margin: 0px auto;
		font-family: "Avenir-Book";
		font-size: 18px;
	}
	.about-main-body-header {
		color: #3ADFCD;
		font-family: "Avenir-Medium";
		font-size: 32px;
		margin: 0px auto;
		margin-bottom: 15px;
		width: 90%;
		text-align: center;
	}
.headshot-container {
	background: #FFFFFF;
	overflow: auto;
	padding-bottom: 100px;
}
	.headshot {
		border-radius: 5%;
		position: relative;
		background-repeat: no-repeat;
		background-size: 100%;
		background-position: center;
		transition: 0.35s background-size;
		height: 100%;
	    width: 100%;
	}
	.headshot:hover {
		border-radius: 5%;
		background-size: 115%; 
		transition: 0.35s background-size;
	}
	.headshot:hover > .headshot-overlay {
		opacity: 1.0;
		transition: 0.25s all;
	}
		.headshot-overlay {
			border-radius: 5%;
			position: absolute;
			cursor: pointer;
			opacity: 0.0;
			height: 95%;
			width: 95%;
			padding: 2.5%;
			top: 0px;
			left: 0px;
			background: rgba(0, 0, 0, 0.6);
			transition: 0.25s all;
		}
			.headshot-overlay > hr {
				margin: 15px 15px 5px 15px;
			}
			.headshot-overlay > .name {
				font-family: "Avenir-Heavy";
				color: #FFFFFF;
				text-align: center;
				margin: 0px auto;
			}
			.headshot-overlay > .position {
				font-family: "Avenir-Medium";
				color: #FFFFFF;
				padding-bottom: 10px;
				text-align: center;
				margin: 0px auto;	
			}
			.headshot-overlay > .description {
				font-family: "Avenir-Light";
				color: #FFFFFF;
				font-size: 14px;
				padding: 10px;
				text-align: left;
				margin: 0px auto;
			}
			.headshot-overlay > .email {
				position: absolute;
				width: 100%;
				font-family: "Avenir-Book";
				color: #FFFFFF;
				text-align: center;
				bottom: 15px
			}

/* ############## BLOG POSTS ############### */
@media screen and (min-width: 801px) {
	.blog-post {
		margin: 2.5%;
		min-height: 350px;
		overflow: auto;
		width: 28.33%;
	}
}
@media screen and (max-width: 800px) {
	.blog-post {
		margin: 2.5% 12.5%; 
		min-height: 400px;	
		width: 75%;	
	}
}
.all-posts-wrapper {
	margin-top: 100px;
	padding-bottom: 100px;
	background-color: #FFFFFF;
	overflow: auto;
	width: 100%; 
}
.blog-post:hover {
	cursor: pointer;
}
.blog-post {
	border-radius: 5px;
	min-height: 400px;
	background-size: 125%;
	position: relative;
	float: left;
	transition: 0.35s all;
	box-shadow: 5px 5px 15px 1px rgba(35, 35, 35, 0.15);
}
	.blog-post > .upper {
		background: #3ADFCD;
		padding: 10px 0px;
		transition: 0.35s all;
	}
		.blog-post > .upper > h2 {
			margin-left: 15px;
			font-family: "Avenir-Medium";
			color: #FFFFFF;
		}
		.blog-post > .upper > p {
			margin-left: 15px;
			font-family: "Avenir-Light";
			color: #FFFFFF;
		}
	.blog-post > .lower {
		position: absolute;
		bottom: 0px;
		background: #EBEBEB;
		transition: 0.35s all;
	    width: 100%;
	}
		.blog-post > .lower > p {
			font-family: "Avenir-Book";
			text-align: left;
			padding: 15px;
		}

/* ############# SINGLE BLOG POST ################## */
@media screen and (min-width: 901px) {
	.blog-left-pane {
		display: block;
	}
	.blog-right-pane {
		padding-left: 25%; 
		width: 67.5%;
	}
	.blog-article-img {
		top: 100px;
		width: 67.5vw;
	}
	.blog-profile-img {
		top: 337.5px;
		height: 125px;
		margin-left: 50px; 
		width: 125px;
	}
	.blog-article-title, .blog-article-information {
		padding-left: 250px;
	}
	.blog-bottom-pane {
		display: none;
	}
	.blog-content-wrapper {
		padding: 100px 0px;
	}
}
@media screen and (max-width: 900px) {
	.blog-left-pane {
		display: none;
	}
	.blog-article-img {
		top: 75px;
		width: 100vw;
	}
	.blog-profile-img {
		top: 350px;
		height: 100px;
		margin-left: 25px; 
		width: 100px;
	}
	.blog-article-title, .blog-article-information {
		padding-left: 175px;
	}
	.blog-bottom-pane {
		display: block;
	}
	.blog-content-wrapper {
		padding: 100px 0px 0px 0px;
	}
	.blog-thumbnail-wrapper:last-of-type {
		margin-bottom: 150px;
	}
}

.article-body > hgroup {
	height: auto;
}
.blog-right-pane > img {
	object-fit: cover;
	object-position: center;
}
.blog-bottom-pane {
	width: 75vw;
	margin: 0px auto;
}
.blog-left-pane {
	position: fixed;
	width: 20%;
	margin: 0px 2.5%;
}
	.recent-posts {
		font-family: "Avenir-Medium";
		color: #000000;
		opacity: 0.75;
	}
	.blog-thumbnail-wrapper {
		background: url({% static 'images/full_desk.png' %});
		background-position: center;
		background-size: 150%;
		background-repeat: no-repeat;
		position: relative;
		height: 145px;
		margin: 15px 0px;
		padding: 15px; 
		transition: 0.35s all;
	}
		.blog-thumbnail-wrapper > .first {
			margin-top: 10px
		}
	.blog-thumbnail-wrapper:hover {
		background-size: 200%;
		transition: 0.35s all;
	}
	.blog-thumbnail-overlay {
		display: table;
		height: 100%;
		width: 100%;
		background: rgba(0, 0, 0, 0.25);
		transition: 0.35s all;
	}
	.blog-thumbnail-overlay:hover {
		background: rgba(0, 0, 0, 0.75);
		cursor: pointer;
		transition: 0.35s all;
	}
		.blog-thumbnail-text {
			display: table-cell;
			vertical-align: middle;
			text-align: center;
		}
			.blog-thumbnail-title {
				font-family: "Avenir-Medium";
				font-size: 18px;
				color: #FFFFFF; 
			}
			.blog-thumbnail-date {
				vertical-align: middle;
				font-family: "Avenir-Medium";
				font-size: 14px;
				color: #FFFFFF; 
			}
	.article-body {
		margin: 300px 0px 25px 0px; 
		background: #EBEBEB;
		border-top: 15px solid #FFFFFF; 
	}
		.title-information {
		}
		.blog-article-title {
			font-family: "Avenir-Heavy";
		}
		.blog-article-information {
			font-family: "Avenir-Light";
		}
		.blog-article-text {
			padding: 25px;
			font-family: "Avenir-Book";
			line-height: 170%;
		}
	.blog-article-img {
		z-index: -1;
		position: fixed;
		height: 300px;
		background: url({% static 'images/full_desk.png' %});
		background-size: 125%;
		background-repeat: no-repeat;
		background-position: center;   
	}
	.blog-profile-img {
		position: absolute;
		border: 15px solid #FFFFFF;
		border-radius: 125px;
	}

/* ################ FORM STYLING ################## */
.contact-form-container {
	margin: 150px auto;
	background: #D5D5D5;
	border-bottom: 33px solid #D5D5D5;
	border-radius: 15px;
}
@media screen and (min-width: 801px) {
	.contact-form-container {
		width: 75%;
	}
	.contact-form-container > .body-content > form > div {
		width: 75%;
	}
}
@media screen and (max-width: 800px) {
	.contact-form-container {
		width: 90%;
	}
	.contact-form-container > .body-content > form > div {
		width: 75%;
	}
}
@media screen and (max-width: 400px) {
	.contact-form-container {
		width: 100%;
	}
	.contact-form-container > .body-content > form > div {
		width: 90%;
	}
}
.contact-form-container > .body-content > h1 {
	font-family: "Avenir-Heavy";
	text-align: center;
	padding: 25px;
}
.contact-form-container > .body-content > form >  div > input[type="text"], 
.contact-form-container > .body-content > form >  div > input[type="password"] {
	width: 100%;
	padding: 5px;
	display: block;
	background: transparent;
	border-radius: 5px 5px 0px 0px;
	border-left: none;
	border-right: none;
	border-top: none;
	border-bottom: 1px solid #D0D0D0;
	font-family: "Avenir-Light";
	font-size: 16px;
	transition: 0.25s all;
}
.contact-form-container > .body-content > form >  div > textarea {
	padding: 5px;
	border-radius: 5px 5px 5px 5px;
	width: 100%;
	display: block;
	font-family: "Avenir-Light";
	font-size: 16px;	
	transition: 0.25s all;
	border: 1px solid #D0D0D0;
	resize: vertical;
}
.contact-form-container > .body-content > form >  div > input[type="submit"] {
	-webkit-appearance: none;
	border-radius: 100px;
	width: 50%;
	height: 50px;
	font-family: "Avenir-Medium";
	background: #3ADFCD;
	color: #FFFFFF;
	font-size: 18px;
	border: none;
	margin: 0px 25% 5% 25%;
	transition: 0.25s all;
}
.contact-form-container > .body-content > form > div > input[type="submit"]:hover {
	opacity: 0.75;
	cursor: pointer;
	transition: 0.25s all;
}
.contact-form-container > .body-content > form > div >  input:focus {
	border-bottom: 2px solid #3ADFCD;
	outline: none;
	transition: 0.25s all;
}
.contact-form-container > .body-content > form > div >  textarea:focus {
	border: 2px solid #3ADFCD;
	outline: none;
	transition: 0.25s all;
}
.contact-form-container > .body-content {
	width: 100%;
	background-color: #FFFFFF;
	border-radius: 15px;
}
.contact-form-container > .body-content > form > div {
	position: relative;
	padding: 15px 0px;
	margin: 0px auto;
}
ul.errorlist {
	background: #FF9877;
	text-align: center;
	list-style-type: none;
	padding: 0px;
	right: 10px;
	border-radius: 0px 0px 5px 5px;
}
	ul.errorlist > li {
		font-family: "Avenir-Medium";
		color: #FFFFFF;
	}


/* ################ FAQS ################## */
@media screen and (max-width: 800px) {
	.topics-pane > ul {
		padding-left: 0px;
		font-size: 10px;
	}
}

.faq-main-content {
	padding-top: 100px;
	background: #FFFFFF;
	width: 100%;
	overflow: auto;
	padding-bottom: 100px;
}
.topics-pane {
	background: #FFFFFF;
	padding: 2.5%;
	width: 20%;
	height: 75%;
	float: left;
}
	.topics-pane > ul {
		list-style-type: none;
		padding-top: 25px;
	}
		html > body > .faq-main-content > .topics-pane > ul > li.active-topic {
			font-family: "Avenir-Heavy";
			color: #000000;
		}
		.topics-pane > ul > li {
			font-family: "Avenir-Medium";
			color: #3ADFCD;
			font-size: 16px;
			padding: 5px;
			transition: 0.25s all;
		}
		.topics-pane > ul > li:hover {
			opacity: 1.0;
			text-decoration: underline;
			cursor: pointer;
			transition: 0.25s all;
		}
.faq-vertical-break {
	margin: 35px 0px;
	width: 2px;
	height: 70%;
	float: left;
	background: #EBEBEB;
}
.faq-content-pane {
	background: #FFFFFF;
	padding: 2.5%;
	width: 69%;
	height: 75%;
	float: left;
}
	.faq-content-pane > h2 {
		font-family: "Avenir-Medium";
		padding: 25px 40px;
		text-align: left;
	}
	.title-text {
		padding: 0px 40px;
		font-family: "Avenir-Medium";
		display: none;
	}
	.body-text {
		font-family: "Avenir-Book";
		padding: 25px 40px;
		display: none;
	}
	.back {
		padding: 0px 40px; 
		display: none;
		font-family: "Avenir-Light";
		color: #3ADFCD;
	}
	.back:hover {
		cursor: pointer;
		text-decoration: underline;
	}
	.topic-questions {
		list-style-type: none;
	}
		.topic-questions > li {
			padding: 10px 0px;
			font-family: "Avenir-Light";
		}
		.topic-questions > li:hover {
			text-decoration: underline;
			cursor: pointer;
		}

/* ################### LEGAL #################### */
.legal-text-body > p,
.legal-text-body > h3,
.legal-text-body > h1 {
	opacity: 0.75;
}

.legal-text-body > h1 {
	font-family: "Avenir-Heavy";
	text-align: center;
	padding-top: 60px;
	padding-bottom: 25px;
	padding-left: auto;
	padding-right: auto;
}
.legal-text-container {
	width: 100%;
	padding-bottom: 25px;
}	
	.legal-text-body {
		width: 70%;
		padding: 5%;
		background-color: #FFFFFF;
		margin: 0px auto;
		font-size: 0.85em;
		margin-bottom: 100px;
		border-radius: 0px 0px 10px 10px;
	}
		.legal-text-body > p,
		.legal-text-body > ul {
			font-family: "Avenir-Light";
		}
		.legal-text-body > h3 {
			font-family: "Avenir-Medium";
		}

		.legal-text-body > h1 {
			font-family: "Avenir-Heavy";
			text-align: center;
			padding-top: 60px;
			padding-bottom: 25px;
			padding-left: auto;
			padding-right: auto;
		}
		.tab-in-1 {
			padding-left: 10%;
		}
		.legal-header {
			position: relative;
			width: 100%;
			height: 150px;
			background-color: #3ADFCD;
		}
			.legal-header > h1 {
				color: #FFFFFF;
				font-family: "Avenir-Heavy";
				line-height: 150px;
				text-align: center;
			}
			.legal-thumbnail-image {
				position: absolute;
				top: 20px;
				left: 10px;
				height: 100px;
				width: 100px;
			}
				.legal-text-body > p,
				.legal-text-body > ul {
					font-family: "Avenir-Light";
				}
				.legal-text-body > h3 {
					font-family: "Avenir-Medium";
				}

/* ################## TEXT ME THE APP ################### */
#success-bubble {
    z-index: 999;
    position: absolute;
    width: 300px;
    height: auto;
}
#error-bubble {
    z-index: 999;
    position: absolute;
    width: 300px;
    height: auto;
}

#flying-ting {
    position: absolute;
    left: 0px;
    bottom: 0px;
    height: 60%;
    width: auto;
}
h1.text-me-header {
    border-radius: 10px;
    top: 10px;
    position: absolute;
    font-family: "Avenir-Heavy";
    font-size: 28px;
    height: 100px;
    text-align: center;
    color: #FFFFFF;
    background: #255662;
    width: 110%;
    line-height: 47px;
    left: -5%;
}
h2.back-button {
    padding: 5px 15px;
    top: 5px;
    font-size: 1em;
    height: 1.5em;
    left: 10px;
    position: absolute;
    font-family: "Avenir-Heavy";
    color: #255662;
    text-decoration: underline;
    transition: all 0.35s;
}
h2.back-button:hover {
    cursor: pointer;
    border-radius: 8px;
    background: #FFFFFF;
    color: #3ADFCD;
    transition: all 0.35s;
}
div.flat-container {
    float: right;
    margin-right: 10vw;
    position: relative;
    width: 40vw;
    height: 28vw;
    min-width: 375px;
    min-height: 265px;
}
div.flat-container > div.flat-upper {
    z-index: 1;
    position: absolute;
    background: #FFFFFF;
    width: inherit;
    height: inherit;
    min-width: inherit;
    min-height: inherit;
    border-radius: 20px;
}
div.flat-container > img {
    position: absolute;
    width: 55vw;
    min-width: 500px;                
    height: 90px;
    top: 60px;
}
div.flat-container > div.flat-lower {
    position: absolute;
    margin-top: 15px;
    z-index: 0;
    background: #D5D5D5;
    width: inherit;
    height: inherit;
    min-width: inherit;
    min-height: inherit;
    border-radius: 20px;
}
div.input-flat-container {
    position: relative;
    margin: 35% auto 15px auto;
    width: 75%;
    height: 60px;
}
div.input-flat-container > img {
    z-index: 2;
    left: 12.5px;
    position: absolute;
    height: 50px;
    width: 50px;
}
div.input-flat-container > input:focus {
    outline: none;
}
div.input-flat-container > input {
    text-indent: 75px;
    color: #232323;
    z-index: 1;
    position: absolute;
    width: 100%;
    height: 50px;
    background: #EBEBEB;
    font-family: "Avenir-Black";
    font-size: 18px;
    border: none;
    margin: 0px auto;
    border-radius: 8px;
}
div.input-flat-container > div.input-lower {
    z-index: 0;
    position: absolute;
    top: 10px;
    width: 100%;
    height: 50px;
    background: #D5D5D5;
    border-radius: 8px;
}

div.button-container.text-me-button {
    position: relative;
    height: 40px;
    width: 45%;
    margin: 0px auto;
}
div.button-container.text-me-button > div.upper-portion {
    z-index: 1;
    top: 0px;
    position: absolute;
    font-family: "Avenir-Medium";
    color: #FFFFFF;
    font-size: 16px;
    text-align: center;
    line-height: 40px;
    height: inherit;
    width: 100%;
    background:#3ADFCD;
    border-radius: 25px;
    transition: all 0.25s;
}
div.button-container.text-me-button > div.upper-portion:hover {
    background: #3ADFCD;
    cursor: pointer;   
    top: 10px;
    transition: all 0.25s;
}
div.button-container.text-me-button > div.lower-portion {
    z-index: 0;
    top: 10px;
    position: absolute;
    height: inherit;
    width: 100%;
    background:#1DB1A0;
    border-radius: 25px;
}
.web-version-header {
	font-family: "Avenir-Heavy";
	color: #FFFFFF;
	font-size: 1.5em;
	text-align: center;
	margin-bottom: 10px;
}
.use-email-login {
	display: block;
	color: #FFFFFF;
	font-family: "Avenir-Medium";
	text-align: center;
	margin-top: 20px;
	font-size: 1.15em;
	text-decoration: underline;
}
.use-email-login:hover {
	cursor: pointer;
}






