/*.poppins-regular {
 font-family: "DM Sans", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.poppins-medium {
 font-family: "DM Sans", sans-serif;
  font-weight: 500;
  font-style: normal;
}

.poppins-semibold {
 font-family: "DM Sans", sans-serif;
  font-weight: 600;
  font-style: normal;
}

.poppins-regular-italic {
 font-family: "DM Sans", sans-serif;
  font-weight: 400;
  font-style: italic;
}

.jetbrains-mono-1 {
  font-family: "JetBrains Mono", monospace;
  font-optical-sizing: auto;
  font-weight: 600;
  font-style: normal;
}


green: #77A940
green fade: #A0C379
mid-grey: #DFE0DB
dark-grey: #363633
light-grey: #F0F2EE

*/

@font-face {
    font-family: 'awesome_serif_italicMdRg';
    src: url('awesomeserifitalic-medregular-webfont.woff2') format('woff2'),
         url('awesomeserifitalic-medregular-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}


@charset 'UTF-8';



html, body { 
	background-color: #fefefe;
	font-size: 15px;
	color: #363633;
	
    font-family: "DM Sans", sans-serif;
     font-weight: 300;
     font-style: normal;
}

main {
	padding-top: 55px;
}

p, ul li {
	font-size: 1rem;
	line-height: 1.65rem;
	margin-bottom: 0px;
}

em{
	font-family: 'awesome_serif_italicMdRg';
}

strong {
	color: #77A940;
	font-weight: 500;
}



.large-body {
	font-weight: 500;
	font-size: 1.4rem;
	line-height: 2.2rem;
}



h1 {
    font-family: "DM Sans", sans-serif;
    font-weight: 600;
    font-style: normal;
	font-size: 1.775rem;
	margin-bottom: 1rem;
	display: inline-block;
}


h2 {
	font-size: 1.331rem;
	font-weight: 600;
	margin-bottom: 1rem;
}

h2 strong{
	color: #363633;
	font-weight: 600;
}

h3 {
	font-size: 1.7rem;
	line-height: 1.5rem;
	font-weight: 500;
	margin-bottom: 0.5rem;
}

h4 {
	display: inline-block;
	 font-family: 'awesome_serif_italicMdRg';
	 font-weight: normal;
	 font-size: 1.775rem;
	 margin-left: 2rem;
}



h5 {
    font-family: "JetBrains Mono", monospace;
    font-optical-sizing: auto;
    font-weight: 600;
    font-style: normal;
	font-size: 0.8rem;
	text-transform: uppercase;
	letter-spacing: 1px;
}


.port-overview h5 {
    margin-top: 2rem;
	margin-bottom: 1rem;
}



h6 {
    font-family: "JetBrains Mono", monospace;
    font-optical-sizing: auto;
    font-weight: 600;
    font-style: normal;
	font-size: 0.9rem;

	color: #77A940;
	
	display: inline-block;
}

blockquote {
	font-size: 2rem;
	line-height: 2.8rem;
	font-weight: normal;
	font-family: 'awesome_serif_italicMdRg', serif;
	letter-spacing: 1px;
	color:  #77A940;
	margin-bottom: 15px;
}

blockquote strong{
	color: #363633;
	font-family: "DM Sans", sans-serif;
    font-weight: 500;
	letter-spacing: 0.5px;
}

#bio ul {
	list-style: none;
	margin-left: 0px;
	padding-left: 0px;
}

#bio li {
	padding-bottom: 1.25rem;
}


.btn {
	display: inline-block;
	border-radius: 25px;
	padding: 7px 15px;
	border: solid 1px #363633;
	
    font-family: "JetBrains Mono", monospace;
    font-optical-sizing: auto;
    font-weight: 600;
    font-style: normal;
	
	text-transform: uppercase;
	letter-spacing: 1px;
	
	color: #363633;
	
	font-size: 0.9rem;
	
}

.btn:hover {
	background-color:#363633;
	color: #fff;
}


.section-div{
	display: block;
	width: 100%;
	height: 0.5px;
	background-color: #363633;
}



.gradient-bg {
	background: rgb(255,255,255);
	background: linear-gradient(180deg, rgba(255,255,255,1) 45%, rgba(240,242,238,1) 100%);
	
}

.container-padding {
	padding-top: 4rem;
	padding-bottom: 4rem;
}




@media (min-width: 768px) { 

	.container-padding {
		padding-top: 5rem;
		padding-bottom: 5rem;
	}
}

@media (min-width: 992px) { 
	
	blockquote {
		font-size: 2.3rem;
		line-height: 3.3rem;
		margin-bottom: 25px;
	}
}

@media (min-width: 1200px) { 
	html, body {
		font-size: 18px;
	}
	
	blockquote {
		margin-bottom: 35px;
	}
	
	.container-padding {
		padding-top: 6rem;
		padding-bottom: 6rem;
	}
}

@media (min-width: 1400px) { 
	
}
  
.navbar {
	background-color: #FFF;
	padding-top: 0px;
	padding-bottom: 0px;
	border-top: 5px solid #77A940;
	border-bottom: 0.75px solid #363633;
}

.navbar .container-fluid {
	padding-top: 8px;
	padding-bottom: 8px;
}

.navbar-brand {
	
   font-family: "DM Sans", sans-serif;
    font-weight: 600;
    font-style: normal;
	margin: 0px;
	color: #77A940;
}

.navbar-brand:hover {
	color: #363633;
}

.navbar-brand em{
	font-family: 'awesome_serif_italicMdRg';
	color: #363633;
    font-weight: normal;
    font-style: normal;
	font-size: 0.95em;
}

.navbar-toggler {
	padding: 3px 5px;
	border: none;
	position: relative;
	top: 2px;
}

.navbar-toggler:hover {
	background-color:#DFE0DB;
}

.navbar-toggler:focus {
    box-shadow: none;
	background-color: #A0C379;
}

.navbar-collapse {
	text-align: center;
}

.navbar-nav {
	margin: 0px 0px;
	padding: 10px 0px;
}

.nav-link {
	font-size: 1.25rem;
	font-weight: 500;
	color: #363633;
	letter-spacing: 0.25px;
	
	padding: 15px 0px;
}

.nav-link:hover {
	color: #77A940;
}

.nav-link.active {
	color: #77A940!important;
}

.nav-link .fa-solid{
	font-size: 0.8em;
}

.nav-spacer {
	width:25px;
	height:10px;
}

/* S P L A S H */


@media (min-width: 768px) { 
	
	
	.navbar-nav {
		margin: 0px 0px;
		padding: 0px 0px;
		border-top: none;
		border-bottom: none;
		min-width:180px;
	}
	

	.nav-link {
		font-size: 16px;
		font-weight: 400;
		padding: 3px 20px;
	}
	
	.navbar-expand-md .navbar-nav .nav-link {
		padding-left: 12px;
		padding-right: 12px;
	}
	
	#splash .container {
		background-image: url('../img/jc-port-splash-bg.png');
		background-size: 45% auto;
		background-position: bottom right;
		background-repeat: no-repeat;
	}
	
}

@media (min-width: 992px) { 
	
	#splash .container {
		background-size: 38% auto;
	}
}

@media (min-width: 1200px) { 
	#splash .container {
		background-size: 39% auto;
	}
}

@media (min-width: 1400px){
	#splash .container {
		background-image: url('../img/jc-port-splash-bg.png');
		background-size: 32% auto;
		background-position: bottom right;
		background-repeat: no-repeat;
	}
	
}

/* P O R T F O L I O */

#portfolio {
	padding: 1.25rem 0px;
}

.port-section {
	padding: 1.5rem 0px;
}

.section-title {
	padding: 1rem 0px 0.5rem 0px;
}

.project-link {
	color: #363633;
	text-decoration: none;
	display: inline-block;
	margin-bottom: 1.9rem;
	
	transition: scale 0.2s;
}

.project-link:hover {
	color: #77A940;
	scale: 95%;
}

.project-link .fa-solid{
	font-size: 0.8em;
}

.project-link img{
	width: 100%;
	height: auto;
}

.project-link-label strong{
	color: #363633;
}


#portfolio .section-div {
	margin-bottom: 1.25rem;
}



@media (min-width: 768px) {
	
	
	#portfolio {
		padding-top: 40px;
	}

}

footer {
	background-color: #fff;
	padding: 3rem 0px;
	color: #363633;
	border-top: solid 0.75px #363633;
}

.footer-brand h1 {
   font-family: "DM Sans", sans-serif;
    font-weight: 600;
    font-style: normal;
	font-size: 1.5rem;
	line-height: 1.7rem;
	padding-left: 0px;
	color: #77A940;
}

.footer-brand h1 em {
	font-family: 'awesome_serif_italicMdRg';
	color: #363633;
	font-weight: normal;
}

.footer-contact {
	display: flex;
	width: 100%;
	justify-content: space-between;
	padding-right: 10px;
}

.footer-contact a{
	color: #363633;
	text-decoration: none;
	display: inline-block;
	font-size: 16px;
}

.footer-contact a:hover{
	color: #77A940;
}

.copyright {
	background-color: #77A940;
	color: #fff;
	padding-top: 10px;
	padding-bottom: 10px;
}

.copyright p{
	font-size: 14px;
}

@media (min-width: 576px) { 
	.footer-contact {
		padding-right: 0px;
	}
}

/* A B O U T */

#bio {
	padding: 2rem 0px 0rem 0px;
}

#contact {
	padding: 2rem 0px 3rem 0px;
}

.profile-bio-wrap i {
	color: #363633;
}

.bio-row {
	padding-top: 1.25rem;
	padding-bottom: 3rem;
}

.profile-img-wrap{
	text-align: center;
	padding: 1.5rem 0px;
}

.profile-image {
	width: 80%;
	height: auto;
}

.skyline-img-wrap{
	text-align: center;
	padding: 1.5rem 0px;
}

.skyline-image {
	width: 70%;
	height: auto;
}

.about-block {
	padding: 1em 0px 2rem 0px;
}

.about-block h5{
	margin-bottom: 1rem;
}

.about-block p{
	margin-bottom: 1rem;
}


#contact {
	background-color: #F0F2EE;
}

.contact-info {
	padding-bottom: 50px;
}

.contact-info h1{
	padding-bottom: 10px;
}

#contact blockquote {
	color: #363633;
}

@media (min-width: 768px) { 
	
	
	.about-block {
		padding-left: 1.5rem;
	}
	
	.profile-img-wrap{
		padding-top: 1rem;
	}
	
	.profile-image {
		width: 100%;
		height: auto;
	}
	
	.skyline-image {
		width: 100%;
		height: auto;
	}
	
	.proficiency {
		padding-right: 3rem;
	}
	
	#contact blockquote {
		padding-right: 2rem;
	}
}

@media (min-width: 992px) {
	
	.bio-row {
		padding-top: 2rem;
		padding-bottom: 4rem;
	}
	.about-block {
		padding-left: 2rem;
	}
	
}

@media (min-width: 1200px) {
	
	.skyline {
		padding: 0px 0px 0px 30px;
	}
	
	.about-block {
		padding-left: 2.5rem;
	}
	
}

@media (min-width: 1400px) {
	.about-block {
		padding-left: 3rem;
	}
	
}

/* P O R T F O L I O */

.port-splash {
	padding-top: 1rem;
}



.port-header {
	padding-top: 4rem;
}

.port-header h3 {
	font-size: 2.25rem;
	line-height: 2.5rem;
	font-weight: 600;
	letter-spacing: 1px;
	color: #77A940;
}



.port-content h5 {
	margin-bottom: 1rem;
}


.port-header a {
	text-decoration: none;
	
    font-family: "JetBrains Mono", monospace;
    font-optical-sizing: auto;
    font-weight: 600;
    font-style: normal;
	
	text-transform: uppercase;
	letter-spacing: 1px;
	
	color: #363633;
	
	font-size: 0.85rem;
	line-height: 0.85rem;
}

.port-header a:hover {
	color: #77A940;
}

.port-content {
		padding: 3rem 0px 3rem 0px;
}

.port-row {
		padding: 1rem 0px 1rem 0px;
}

.port-content img, .port-splash img {
	width:100%;
	height: auto;
}

.port-text-block {
	padding: 10px 0px;
}

figure {
	padding: 7px 0px;
}

.keyword-wrap {
	padding-top: 3rem;
	padding-bottom: 3.5rem;
}

.keywords ul { 
	list-style: none;
	margin: 0px;
	padding-left: 0px;
	padding-bottom: 20px;
}

.keywords ul li { 
	font-family: 'awesome_serif_italicMdRg';
	font-size: 3rem;
	line-height: 4rem;
	letter-spacing: 1px;
	padding-bottom: 5px;
}

.content-block p, .content-block h5 { 
	margin-bottom: 1rem;
}

.content-block ul { 
	list-style: none;
	margin: 0px;
	padding-left: 15px;
	margin-top: 15px;
	margin-bottom: 15px;
	border-left: 0.75px solid #363633;
}

.content-block ul li { 
	font-family: 'awesome_serif_italicMdRg';
	font-size: 1.5rem;
	line-height: 2rem;
	letter-spacing: 1px;
	padding-bottom: 2px;
}

.carousel-indicators {
	margin-bottom: 2rem;
}

.carousel-control-next, .carousel-control-prev {
    width: 10%;
	opacity: 0.75;
}

.wp-block-separator {
	display: block;
	width: 100%;
	height: 1px;
	background-color: #363633;
}

.port-text {
	padding: 3rem 0px 3.5rem 0px;
}

.port-content ul {
	margin: 1rem 0px 1rem 0px;
	padding-left: 15px;
}

.port-content ul li{
	padding-bottom: 0.6rem;
	padding-left: 0.6rem;
}

.port-content ul li {
  list-style-type: '→';
}

.h5-space {
	margin-bottom: 1rem;
}

@media (min-width: 576px) { 
	
	figure {
		padding: 7px 0px;
	}
}

@media (min-width: 768px) { 
	
	.port-content ul {
		margin: 0px;
		padding-left: 15px;
		padding-right: 2rem;
	}
}

@media (min-width: 992px) { 
	
	.content-block {
		padding-left: 15px;
	}
	
	.text-img {
		padding: 1rem;
	}
}

.arc-content {
	padding: 3rem 0px 2rem 0px;
}

.return {
	padding: 2rem;
	text-align: center;
}



































