@charset "UTF-8";

/*
	Theme Name: [NV Dental Law by Porter One Design]
	Theme URI: http://#LAUNCHSTEP
	Description: A custom WordPress theme built for NV Dental Law
	Author: PorterOneDesign.com
	Version: 0.2.0
*/

/*
	We're going to try a new style of organizing stylesheets by grouping website sections together and having @media queries for each group. This should keep all styles affecting a single element together, rather than grouping all media queries together.
*/

/* Base Styles */

	/* Core Elements */

		body {
			margin: 0;
			padding: 0;
		}

		.mobile {
			display: block;
		}

		.desktop {
			display: none;
		}

		img {
			width: 100%;
		}

		.aside-placeholder {
			display: none;
		}

		@media only screen and (min-width: 720px) {
			.desktop {
				display: block;
			}

			.mobile {
				display: none;
			}

			.aside-placeholder {
				display: block;
			}
		}

	/* END Core Elements */

	/* Repeatable Elements */

		.fluidcontainer {
			width: 90%;
			margin-left: auto;
			margin-right: auto;
			position: relative;
			max-width: 1440px;
		}

		.clearfloat {
			clear: both !important;
		}

		.btn {
			border: 2px solid #83b26d;
			color: white;
			background-color: #83b26d;
			transition: 0.3s all;
			font-weight: 500;
			text-shadow: none;
			text-decoration: none;
			padding: 9px 25px;
			display: inline-block;
		}

		.btn:hover, .btn:focus {
			color: #83b26d;
			background-color: white;
		}

		.section-green .btn {
			border: 2px solid white;
			color: #83b26d;
			background-color: white;
			transition: 0.3s all;
			font-weight: 500;
		}

		.section-green .btn:hover, .section-green .btn:focus {
			color: white;
			background-color: #83b26d;
		}

		.content-container {
			overflow: auto;
		}

	/* END Repeatable Elements */

	/* Typography */

		@font-face {
			font-family: Fragua;
			src: url(fonts/Fragua-Light.otf);
			font-style: normal;
			font-weight: 300;
		}

		@font-face {
			font-family: Fragua;
			src: url(fonts/Fragua-Light-Italic.otf);
			font-style: italic;
			font-weight: 300;
		}

		@font-face {
			font-family: Fragua;
			src: url(fonts/Fragua-Medium.otf);
			font-style: normal;
			font-weight: 500;
		}

		@font-face {
			font-family: Fragua;
			src: url(fonts/Fragua-Medium-Italic.otf);
			font-style: italic;
			font-weight: 500;
		}

		@font-face {
			font-family: Fragua;
			src: url(fonts/Fragua-Bold.otf);
			font-style: normal;
			font-weight: 700;
		}

		@font-face {
			font-family: Fragua;
			src: url(fonts/Fragua-Bold-Italic.otf);
			font-style: italic;
			font-weight: 700;
		}

		h1, h2, h3, h4, h5, h6 {
			font-family: Fragua, 'arial', 'sans-serif';
			font-weight: 700;
			font-style: normal;
			color: #83b26d;
		}

		p, li, input, textarea, select, label, a {
			font-family: Fragua, 'arial', 'sans-serif';
			font-weight: 300;
			font-style: normal;
			font-size: 12pt;
			line-height: 18pt;
			color: #827b76;
		}

		p {
			margin-bottom: 12px;
			margin-top: 12px;
		}

		strong {
			font-weight: 700;
		}

		.section-white strong {
			color: #83b26d;
		}

		em {
			font-style: italic;
		}

		h1, h2 {
			font-size: 19pt;
			line-height: 24pt;
			margin-top: 15px;
			margin-bottom: 15px;
		}

		h3 {
			font-size: 18pt;
			line-height: 24pt;
			margin-top: 15px;
			margin-bottom: 15px;
		}

		h3.color-brown {
			color: #653614;
		}

		.postnomials {
			font-size: 50%;
		}

		.emphasize-text {
			font-size: 140%;
			font-weight: 700;
			color: #83b26d;
		}

		.section-title.color-brown .content-container h1, .section-title.color-brown .content-container h2, .section-title.color-brown .content-container h3 {
			color: #653614;
		} 

		@media only screen and (min-width: 480px) {

			h1, h2 {
				font-size: 26pt;
				line-height: 30pt;
				margin-top: 25px;
				margin-bottom: 25px;
			}
	
			h3 {
				font-size: 22pt;
				line-height: 28pt;
				margin-top: 25px;
				margin-bottom: 25px;
			}

			p, li, input, textarea, select, label, a {
				font-size: 13pt;
				line-height: 20pt;
			}
	
			p {
				margin-bottom: 15px;
				margin-top: 15px;
			}

		}

		@media only screen and (min-width: 920px) {
			h1, h2 {
				font-size: 32pt;
				line-height: 38pt;
				margin-top: 30px;
				margin-bottom: 30px;
			}

			h3 {
				font-size: 26pt;
				line-height: 30pt;
				margin-top: 30px;
				margin-bottom: 30px;
			}

			p, li, input, textarea, select, label, a {
				font-size: 14pt;
				line-height: 22pt;
			}

			p {
				margin-bottom: 20px;
				margin-top: 20px;
			}
		}

		@media only screen and (min-width: 1024px) {
			h1, h2 {
				font-size: 36pt;
				line-height: 42pt;
				margin-top: 35px;
				margin-bottom: 35px;
			}

			h3 {
				font-size: 32pt;
				line-height: 38pt;
				margin-top: 35px;
				margin-bottom: 35px;
			}

			p, li, input, textarea, select, label, a {
				font-size: 16pt;
				line-height: 26pt;
			}

			p {
				margin-bottom: 25px;
				margin-top: 25px;
			}
		}

		@media only screen and (min-width: 1200px) {
			h1, h2 {
				font-size: 42pt;
				line-height: 48pt;
				margin-top: 40px;
				margin-bottom: 40px;
			}

			h3 {
				font-size: 36pt;
				line-height: 42pt;
				margin-top: 40px;
				margin-bottom: 40px;
			}

			p, li, input, textarea, select, label, a {
				font-size: 18pt;
				line-height: 30pt;
			}

			p {
				margin-bottom: 30px;
				margin-top: 30px;
			}
		}

		@media only screen and (min-width: 1440px) {
			h1, h2 {
				font-size: 52pt;
				line-height: 58pt;
				margin-top: 45px;
				margin-bottom: 45px;
			}

			h3 {
				font-size: 42pt;
				line-height: 48pt;
				margin-top: 45px;
				margin-bottom: 45px;
			}

			p, li, input, textarea, select, label, a {
				font-size: 20pt;
				line-height: 32pt;
			}

			p {
				margin-bottom: 35px;
				margin-top: 35px;
			}
		}

		@media only screen and (min-width: 1640px) {
			p, li, input, textarea, select, label, a {
				font-size: 22pt;
				line-height: 36pt;
			}
		}

	/* END Typography*/

/* END Base Styles */

/* Header Styles */

	.header {
		background-color: white;
		box-shadow: 2px 2px 4px 8px rgba(0,0,0,0.1);
		width: 100%;
		position: relative;
		z-index: 20;
	}

	@media only screen and (min-width: 720px) {
		.header-left-container {
			width: 320px;
			float: left;
		}

		.header-right-container {
			width: calc(100% - 320px);
			float: left;
		}
	}

	@media only screen and (min-width: 1024px) {
		.header-left-container {
			width: 340px;
		}

		.header-right-container {
			width: calc(100% - 340px);
		}
	}

	@media only screen and (min-width: 1440px) {
		.header-left-container {
			width: 360px;
		}

		.header-right-container {
			width: calc(100% - 360px);
		}
	}

	/* Contact Container Styles */

		.contact-container {
			background-color: #eff6ec;
		}

		.contact-container.mobile .fluidcontainer {
			text-align: center;
		}

		.contact-element-container {
			display: block;
		}

		.contact-element {
			display: inline-block;
		}

		.contact-element:first-child {
			margin-right: 10px;
		}

		.contact-element a {
			color: #83b26d;
			transition: 0.3s all;
			display: inline-block;
			width: 100%;
			padding-top: 6px;
			padding-bottom: 6px;
		}

		.contact-element a span {
			font-size: 10.5pt;
			line-height: 32px;
			transition: 0.3s all;
		}

		.contact-element a span.icon-container img {
			width: 24px;
			padding-top: 8px;
			float: left;
			margin-right: 8px;
		}

		.contact-element a:hover span.text-container {
			color: #52803c;
		}

		@media only screen and (min-width: 480px) {
			.contact-element a span {
				font-size: 12pt;
			}

			.contact-element:first-child {
				margin-right: 20px;
			}
		}

		@media only screen and (min-width: 720px) {

			.header {
				overflow: hidden;
			}
			
			.header-right-container {
				text-align: right;
			}

			.contact-container.desktop {
				display: inline-block;
				position: relative;
			}

			.contact-container.desktop::before {
				content: '';
				display: block;
				position: absolute;
				left: -10%;
				top: 0px;
				width: 10%;
				background: linear-gradient(90deg, white 0%, #eff6ec 100%);
				height: 100%;
			}

			.contact-container.desktop::after {
				content: '';
				display: block;
				position: absolute;
				right: -200%;
				top: 0px;
				width: 200%;
				background-color: #eff6ec;
				height: 100%;
			}

			.contact-container .fluidcontainer {
				width: 100%;
				max-width: none;
				text-align: right;
			}

			.contact-element a span {
				font-size: 10.5pt;
			}

			.contact-element:first-child {
				margin-right: 10px;
			}
		}

		@media only screen and (min-width: 920px) {

			.contact-container.desktop {
				width: 80%;
			}

			.contact-element a span {
				font-size: 13pt;
			}

			.contact-element:first-child {
				margin-right: 30px;
			}

			.contact-container.desktop::before {
				width: 20%;
				left: -20%;
			}
		}

		@media only screen and (min-width: 1024px) {
			.contact-element a span {
				font-size: 14pt;
			}

			.contact-element:nth-child(2) a span.icon-container img {
				padding-top: 10px;
			}
		}

		@media only screen and (min-width: 1200px) {
			.contact-element a span {
				font-size: 16pt;
			}

			.contact-element:nth-child(2) {
				margin-right: 30px;
			}

			.contact-element:nth-child(1) a span.icon-container img {
				padding-top: 11px;
			}

			.contact-element:nth-child(2) a span.icon-container img {
				padding-top: 14px;
			}
		}

		@media only screen and (min-width: 1440px) {
			.contact-element:nth-child(2) {
				margin-right: 48px;
			}

			.contact-element a span {
				font-size: 16pt;
				line-height: 32pt;
			}
		}

		@media only screen and (min-width: 1640px) {
			.contact-element a {
				line-height: 28pt;
			}
		}

	/* END Contact Container Styles */

	/* Logo Container Styles */

		.logo-container a {
			display: block;
			padding-top: 10px;
			padding-bottom: 5px;
			max-width: 320px;
			margin-left: auto;
			margin-right: auto;
		}

		.logo-container a img {
			display: block;
		}

		@media only screen and (min-width: 720px) {
			.logo-container a {
				padding-top: 13px;
				padding-bottom: 13px;
			}
		}

		@media only screen and (min-width: 1024px) {
			.logo-container a {
				max-width: 340px;
				padding-top: 16px;
				padding-bottom: 16px;
			}
		}

		@media only screen and (min-width: 1200px) {
			.logo-container a {
				padding-top: 18px;
				padding-bottom: 18px;
			}
		}

		@media only screen and (min-width: 1440px) {
			.logo-container a {
				max-width: 360px;
			}
		}

	/* END Logo Container Styles */

	/* Navigation Container Styles */

		.navigation-container {
			width: 100%;
		}

		.navigation-container ul {
			width: 100%;
			display: block;
			margin: 0;
			padding: 0;
		}

		.navigation-container ul li {
			list-style: none;
			display: block;
			width: 50%;
			float: left;
		}

		.navigation-container ul li a {
			font-size: 12pt;
			line-height: 16pt;
			padding-top: 8px;
			padding-bottom: 8px;
			display: block;
			width: 100%;
			text-align: center;
			color: #83b26d;
			transition: 0.3s all;
			text-decoration: none;
		}

		.navigation-container ul li a:hover, .navigation-container ul li a:focus {
			color: #52803c;
		}

		@media only screen and (min-width: 480px) {
			.navigation-container ul li {
				width: 25%;
				position: relative;
				overflow: hidden;
			}

			.navigation-container ul li::after {
				content: '';
				display: block;
				position: absolute;
				width: 100%;
				height: 3px;
				bottom: -3px;
				transition: 0.3s all;
				background-color: #83b26d;
			}

			.navigation-container ul li:hover::after, .navigation-container ul li:focus::after {
				bottom: 0px;
				background-color: #52803c;
			}

			.navigation-container ul li a {
				font-size: 14pt;
				line-height: 20pt;
			}
		}

		@media only screen and (min-width: 920px) {
			.navigation-container {
				width: 90%;
				float: right;
			}
		}

		@media only screen and (min-width: 1024px) {
			.navigation-container ul li a {
				font-size: 16pt;
				line-height: 24pt;
				padding-top: 10px;
			}
		}

		@media only screen and (min-width: 1200px) {
			.navigation-container {
				width: 80%;
			}
		}

		@media only screen and (min-width: 1440px) {
			.navigation-container ul li a {
				font-size: 18pt;
				line-height: 24pt;
			}
		}

		@media only screen and (min-width: 1640px) {
			.navigation-container {
				width: 75%;
			}
		}

	/* END Navigation Container Styles */

/* END Header Styles */

/* Hero Styles */

	.hero-container {
		position: relative;
	}

	.hero-container .image-frame {
		overflow: hidden;
		display: block;
		position: relative;
	}

	.hero-container .image-frame .image-placeholder {
		width: 100%;
		padding-bottom: 50%;
	}

	.hero-container .image-frame img {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
	}

	.hero-container .title-frame {
		position: absolute;
		bottom: 0;
		padding-left: 15px;
		border-left: 3px solid #653614;
	}

	.hero-container .title-frame p {
		margin-top: 0px;
		margin-bottom: 0px;
		color: white;
		text-shadow: 1px 1px 2px rgba(0,0,0,0.75);
	}

	.hero-container .title-frame p:last-child {
		margin-bottom: 15px;
	}

	.hero-container .title-frame p.larger-text {
		font-size: 200%;
		font-weight: 700;
		line-height: 22pt;
	}

	@media only screen and (min-width: 480px) {
		.hero-container .title-frame {
			padding-left: 25px;
		}

		.hero-container .title-frame p:last-child {
			margin-bottom: 25px;
		}

		.hero-container .title-frame p {
			font-size: 18pt;
			margin-bottom: 5px;
		}

		.hero-container .title-frame p.larger-text {
			font-size: 28pt;
		}
	}

	@media only screen and (min-width: 720px) {
		.hero-container .title-frame p {
			font-size: 24pt;
		}

		.hero-container .title-frame p.larger-text {
			font-size: 50pt;
			line-height: 50pt;
		}

		.hero-container .title-frame p {
			text-shadow: 2px 2px 4px rgba(0,0,0,0.75);
		}
	}

	@media only screen and (min-width: 920px) {
		.hero-container .title-frame p {
			font-size: 32pt;
			line-height: 32pt;
		}

		.hero-container .title-frame p.larger-text {
			font-size: 64pt;
			line-height: 64pt;
		}

		.hero-container .title-frame {
			padding-left: 35px;
		}

		.hero-container .title-frame p {
			text-shadow: 3px 3px 8px rgba(0,0,0,0.75);
		}
	}

	@media only screen and (min-width: 1024px) {
		.hero-container .title-frame p {
			font-size: 38pt;
			line-height: 38pt;
		}

		.hero-container .title-frame p.larger-text {
			font-size: 72pt;
			line-height: 72pt;
		}

		.hero-container .title-frame p:last-child {
			margin-bottom: 35px;
		}

		.hero-container .title-frame {
			padding-left: 45px;
		}
	}

	@media only screen and (min-width: 1200px) {
		.hero-container .title-frame {
			border-left: 6px solid #653614;
		}

		.hero-container .title-frame p {
			font-size: 46pt;
			line-height: 46pt;
		}

		.hero-container .title-frame p.larger-text {
			font-size: 90pt;
			line-height: 90pt;
		}

		.hero-container .title-frame p {
			text-shadow: 4px 4px 12px rgba(0,0,0,0.85);
		}
	}

	@media only screen and (min-width: 1440px) {
		.hero-container .title-frame {
			padding-left: 60px;
		}

		.hero-container .title-frame p:last-child {
			margin-bottom: 45px;
		}
	}

	@media only screen and (min-width: 1640px) {
		.hero-container .title-frame p {
			font-size: 52pt;
			line-height: 52pt;
		}

		.hero-container .title-frame p.larger-text {
			font-size: 110pt;
			line-height: 110pt;
		}
	}

/* END Hero Styles */

/* Row Element Styles */

	.row-lgreen {
		background-color: #eff6ec;
	}

/* END Row Element Styles */

/* Section Element Styles */

	.section-white {
		background-color: white;
		padding-top: 20px;
		padding-bottom: 20px;
	}

	.section-green {
		background-color: #83b26d;
		padding-top: 20px;
		padding-bottom: 20px;
	}

	.section-green .content-container p:first-child, .row-intro .aside-placeholder p:first-child {
		margin-top: 0px;
	}

	.section-green p, .section-green h1, .section-green h2, .section-green h3, .section-green h4, .section-green h5, .section-green h6 {
		color: white;
		text-shadow: 1px 1px 2px rgba(0,0,0,0.5);
	}

	@media only screen and (min-width: 480px) {

		.section-green {
			padding-top: 25px;
			padding-bottom: 25px;
		}

		.section-white {
			padding-top: 25px;
			padding-bottom: 25px;
		}

	}

	@media only screen and (min-width: 720px) {

		.row-split .section-green {
			pointer-events: none;
		}

		.row-split .section-green .content-container {
			pointer-events: all;
		}

	}

	@media only screen and (min-width: 920px) {
		.section-green {
			padding-top: 35px;
			padding-bottom: 35px;
		}

		.section-white {
			padding-top: 35px;
			padding-bottom: 35px;
		}
	}

	@media only screen and (min-width: 1024px) {
		.section-green {
			padding-top: 45px;
			padding-bottom: 45px;
		}

		.section-white {
			padding-top: 45px;
			padding-bottom: 45px;
		}
	}

	@media only screen and (min-width: 1440px) {
		.section-green {
			padding-top: 60px;
			padding-bottom: 60px;
		}

		.section-white {
			padding-top: 60px;
			padding-bottom: 60px;
		}
	}

/* END Secton Element Styles */

/* Intro Row Stlyes */

	.row-intro .section-white {
		padding-top: 0px;
	}

	.row-intro .content-container h1:first-child {
		padding-left: 15px;
		border-left: 3px solid #653614;
		margin-top: 0px;
		padding-top: 15px;
		margin-bottom: 0px;
	}

	.row-intro .content-container h1:first-child + p {
		padding-left: 18px;
		margin-top: 5px;
		padding-top: 0px;
	}

	.row-intro .content-container p:last-child, .row-intro .aside-placeholder p:last-child {
		margin-bottom: 0px;
	}

	.row-intro .content-container ul:last-child {
		margin-bottom: 0px;
	}

	.row-intro .section-green {
		padding-bottom: 20px;
	}

	.row-intro .section-white .aside-placeholder {
		display: none;
	}

	@media only screen and (min-width: 480px) {
		.row-intro .content-container h1:first-child {
			padding-left: 25px;
			padding-top: 25px;
		}

		.row-intro .content-container h1:first-child + p {
			padding-left: 28px;
		}

		.row-intro .section-green {
			padding-bottom: 25px;
		}

		.row-intro .content-container h1:first-child + p {
			margin-top: 15px;
		}
	}

	@media only screen and (min-width: 720px) {

		.row-intro {
			position: relative;
			overflow: hidden;
		}

		.row-intro .section-white {
			padding-bottom: 0px;
		}

		.row-intro .section-white .content-container {
			padding-bottom: 25px;
		}

		.row-intro .section-white .aside-placeholder {
			display: block;
		}

		.row-intro .section-white .fluidcontainer .content-container {
			width: calc(55% - 25px);
			padding-right: 25px;
			float: left;
		}

		.row-intro .section-green {
			padding-top: 0px;
			padding-bottom: 0px;
			background-color: rgba(0,0,0,0);
			position: absolute;
			top: 0;
			right: 0;
			width: 100%;
		}

		.row-intro .section-green .fluidcontainer .content-container, .row-intro .section-white .aside-placeholder {
			width: calc(45% - 25px);
			float: right;
			padding-top: 25px;
			padding-bottom: 25px;
			padding-left: 25px;
			background-color: #83b26d;
		}

		.row-intro .section-green .content-container p, .row-intro .aside-placeholder .description p, .row-intro .aside-placeholder p {
			font-size: 12pt;
			line-height: 16pt;
		}

		.experience-element {
			margin-bottom: 10px;
		}

		.aside-placeholder {
			width: calc(45% - 25px);
			float: right;
			padding-top: 25px;
			padding-bottom: 25px;
			padding-left: 25px;
		}

		.row-intro .section-green .content-container {
			position: relative;
			overflow: visible;
		}

		.row-intro .section-green .content-container::before {
			display: block;
			content: '';
			width: 100%;
			height: 100%;
			position: absolute;
			left: 100%;
			background-color: #83b26d;
			top: 0px;
		}

		.row-intro .section-green .content-container::after {
			display: block;
			content: '';
			width: 200%;
			height: 100%;
			position: absolute;
			top: 100%;
			left: 0px;
			background-color: #83b26d;
		}

	}

	@media only screen and (min-width: 920px) {
		.row-intro .section-green .content-container p, .row-intro .aside-placeholder .description p, .row-intro .aside-placeholder p {
			font-size: 13pt;
			line-height: 20pt;
		}

		.row-intro .section-green .fluidcontainer .content-container, .row-intro .section-white .aside-placeholder {
			width: calc(45% - 35px);
			padding-top: 35px;
			padding-bottom: 35px;
			padding-left: 35px;
		}

		.row-intro .section-white .fluidcontainer .content-container {
			width: calc(55% - 35px);
			padding-right: 35px;
			float: left;
		}

		.row-intro .content-container h1:first-child {
			padding-left: 35px;
			padding-top: 35px;
		}

		.row-intro .content-container h1:first-child + p {
			padding-left: 38px;
		}

		.row-intro .content-container ul {
			padding-left: 56px;
		}

		.row-intro .section-white .content-container {
			padding-bottom: 35px;
		}
	}

	@media only screen and (min-width: 1024px) {
		.row-intro .section-green .content-container p, .row-intro .aside-placeholder .description p, .row-intro .aside-placeholder p {
			font-size: 14pt;
			line-height: 22pt;
		}

		.row-intro .section-green .fluidcontainer .content-container, .row-intro .section-white .aside-placeholder {
			width: calc(40% - 45px);
			padding-top: 45px;
			padding-bottom: 45px;
			padding-left: 45px;
		}

		.row-intro .section-white .fluidcontainer .content-container {
			width: calc(60% - 45px);
			padding-right: 45px;
		}

		.row-intro .content-container h1:first-child {
			padding-left: 45px;
			padding-top: 45px;
		}

		.row-intro .content-container h1:first-child + p {
			padding-left: 48px;
		}

		.row-intro .content-container ul {
			padding-left: 66px;
		}

		.row-intro .section-white .content-container {
			padding-bottom: 45px;
		}
	}

	@media only screen and (min-width: 1200px) {
		.row-intro .content-container h1:first-child {
			border-left: 6px solid #653614;
		}

		.row-intro .content-container h1:first-child + p {
			padding-left: 51px;
		}

		.row-intro .section-green .content-container p, .row-intro .aside-placeholder .description p, .row-intro .aside-placeholder p {
			font-size: 16pt;
			line-height: 25pt;
		}
	}

	@media only screen and (min-width: 1440px) {
		.row-intro .section-green .content-container p, .row-intro .aside-placeholder .description p, .row-intro .aside-placeholder p {
			font-size: 18pt;
			line-height: 28pt;
		}

		.row-intro .section-green .fluidcontainer .content-container, .row-intro .section-white .aside-placeholder {
			width: calc(40% - 60px);
			padding-top: 60px;
			padding-bottom: 60px;
			padding-left: 60px;
		}

		.row-intro .section-white .fluidcontainer .content-container {
			width: calc(60% - 60px);
			padding-right: 60px;
		}

		.row-intro .content-container h1:first-child {
			padding-left: 60px;
			padding-top: 60px;
		}

		.row-intro .content-container h1:first-child + p {
			padding-left: 66px;
		}

		.row-intro .content-container ul {
			padding-left: 88px;
		}

		.row-intro .section-white .content-container {
			padding-bottom: 60px;
		}
	}

	@media only screen and (min-width: 1640px) {
		.row-intro .section-green .content-container p, .row-intro .aside-placeholder .description p, .row-intro .aside-placeholder p {
			font-size: 20pt;
			line-height: 30pt;
		}

		.row-intro .section-green .fluidcontainer .content-container, .row-intro .section-white .aside-placeholder {
			width: calc(35% - 60px);
		}

		.row-intro .section-white .fluidcontainer .content-container {
			width: calc(65% - 60px);
		}
	}

	/* Experience Section Styles */

		.experience-element {
			margin-bottom: 15px;
		}

		.experience-element .years {
			display: block;
			float: left;
			width: 60px;
			margin-right: 15px;
			text-align: center;
		}

		.experience-element .years p.years-text {
			font-size: 32pt;
			line-height: 32pt;
			font-weight: 700;
			margin-top: 0px;
			margin-bottom: 0px;
		}

		.experience-element .years p.experience-text {
			font-size: 14pt;
			line-height: 14pt;
			margin-top: 0px;
			margin-bottom: 0px;
			font-weight: 700;
			text-transform: uppercase;
		}

		.experience-element .description {
			float: left;
			width: calc(100% - 75px);
			margin-top: 7px;
		}

		.experience-element .description p {
			font-size: 14pt;
			line-height: 18pt;
			margin-bottom: 0px;
			margin-top: 0px;
		}

		.experience-element .description p.experience-title {
			text-transform: uppercase;
			font-weight: 700;
		}
		.experience-element p {
			display: block;
		}

		@media only screen and (min-width: 920px) {
			.experience-element .description p {
				font-size: 14pt;
				line-height: 22pt;
			}
			
			.experience-element .description p.experience-title {
				font-size: 18pt;
				line-height: 22pt;
			}

			.experience-element .description {
				margin-top: 5px;
			}
		}

		@media only screen and (min-width: 1024px) {
			.experience-element .years p.years-text {
				font-size: 42pt;
				line-height: 36pt;
			}

			.experience-element .years p.experience-text {
				font-size: 17pt;
				line-height: 17pt;
			}

			.experience-element .description {
				margin-top: 8px;
			}
		}

		@media only screen and (min-width: 1200px) {
			.experience-element {
				margin-bottom: 25px;
			}
		}

		@media only screen and (min-width: 1440px) {
			.experience-element .years {
				width: 80px;
				margin-right: 20px;
			}
			
			.experience-element .years p.years-text {
				font-size: 52pt;
				line-height: 48pt;
			}

			.experience-element .years p.experience-text {
				font-size: 21pt;
				line-height: 21pt;
			}

			.experience-element .description {
				width: calc(100% - 100px);
			}

			.experience-element .description p.experience-title {
				font-size: 22pt;
				line-height: 24pt;
			}

			.experience-element .description {
				margin-top: 14px;
			}
		}

	/* END Experience Section Styles */

	/* Other Green Sections Styles */

		.section-green .content-container h3:first-child, .section-white .aside-placeholder h3:first-child {
			margin-top: 0px;
		}

		@media only screen and (min-width: 480px) {
			.section-green .content-container h3:first-child, .section-white .aside-placeholder h3:first-child {
				margin-bottom: 15px;
			}
		}

	/* END Other Green Sections Styles */

/* END Intro Row Styles */

/* Services Row Styles */

	.row-services .section-title {
		text-align: center;
		padding-top: 15px;
		padding-bottom: 15px;
	}

	.row-services .section-title h2 {
		/* enlarge on mobile */
		font-size: 28pt;
		line-height: 32pt;
		margin-top: 0px;
		margin-bottom: 0px;
	}

	.section-services .service-bucket {
		padding-top: 15px;
		padding-bottom: 15px;
	}

	.section-services .service-bucket:first-child {
		padding-top: 0px;
		background: radial-gradient(circle at 50% 100%, rgba(131,178,109,0.25) 0%, rgba(131,178,109,0) 40%);
	}

	.section-services .service-bucket:nth-child(3) {
		padding-bottom: 0px;
		background: radial-gradient(circle at 50% 0%, rgba(131,178,109,0.25) 0%, rgba(131,178,109,0) 40%);
	}

	.section-services .service-bucket .icon-container {
		width: 85%;
		max-width: 300px;
		margin-left: auto;
		margin-right: auto;
	}

	.section-services .service-bucket .content-container h3 {
		text-align: center;
		font-size: 22pt;
		font-size: 26pt;
		margin-top: 12px;
		margin-bottom: 12px;
	}

	.section-services .service-bucket .content-container ul {
		margin: 0;
		padding: 0;
		text-align: center;
	}

	.section-services .service-bucket .content-container ul li {
		list-style: none;
	}

	.row-services .section-cta .content-container {
		text-align: center;
	}

	.row-services .section-cta .content-container p:first-child {
		margin-top: 0px;
		margin-bottom: 0px;
	}

	.row-services .section-cta {
		padding-top: 20px;
		padding-bottom: 20px;
	}

	@media only screen and (min-width: 480px) {
		.row-services .section-title {
			padding-top: 25px;
			padding-bottom: 25px;
		}

		.section-services .service-bucket {
			padding-top: 25px;
			padding-bottom: 25px;
		}

		.row-services .section-cta {
			padding-top: 25px;
			padding-bottom: 25px;
		}
	}

	@media only screen and (min-width: 720px) {
		.section-services .service-bucket {
			width: 33.33%;
			float: left;
			padding-top: 0px;
			padding-bottom: 0px;
		}

		.section-services .service-bucket:first-child {
			background: radial-gradient(circle at 100% 50%, rgba(131,178,109,0.25) 0%, rgba(131,178,109,0) 40%);
		}

		.section-services .service-bucket:nth-child(3) {
			background: radial-gradient(circle at 0% 50%, rgba(131,178,109,0.25) 0%, rgba(131,178,109,0) 40%);
		}
	}

	@media only screen and (min-width: 920px) {
		.row-services .section-title {
			padding-top: 35px;
			padding-bottom: 35px;
		}

		.row-services .section-cta {
			padding-top: 35px;
			padding-bottom: 35px;
		}

		.row-services .section-title h2 {
			font-size: 32pt;
			line-height: 38pt;
		}

		.section-services .service-bucket .content-container h3 {
			margin-top: 20px;
			margin-bottom: 20px;
		}
	}

	@media only screen and (min-width: 1024px) {
		.row-services .section-title {
			padding-top: 45px;
			padding-bottom: 45px;
		}

		.row-services .section-cta {
			padding-top: 45px;
			padding-bottom: 45px;
		}

		.row-services .section-title h2 {
			font-size: 36pt;
			line-height: 42pt;
		}

		.section-services .service-bucket .content-container h3 {
			line-height: 30pt;
		}
	}

	@media only screen and (min-width: 1200px) {
		.row-services .section-title h2 {
			font-size: 42pt;
			line-height: 48pt;
		}

		.section-services .service-bucket .content-container h3 {
			font-size: 28pt;
			line-height: 34pt;
		}
	}

	@media only screen and (min-width: 1440px) {
		.row-services .section-title h2 {
			font-size: 52pt;
			line-height: 58pt;
		}

		.section-services .service-bucket .content-container h3 {
			font-size: 32pt;
			line-height: 36pt;
		}

		.row-services .section-cta {
			padding-top: 60px;
			padding-bottom: 60px;
		}
	}

	@media only screen and (min-width: 1640px) {
		.section-services .service-bucket .content-container h3 {
			font-size: 36pt;
			line-height: 40pt;
		}
	}

/* END Services Row Styles */

/* Content Row Styles */

	.row-content .section-title .content-container h1:first-child, .row-content .section-title .content-container h2:first-child, .row-content .section-title .content-container h3:first-child, .row-content .section-title .content-container h4:first-child, .row-content .section-title .content-container h5:first-child, .row-content .section-title .content-container h6:first-child {
		margin-top: 0px;
	}

	.row-content .section-title .content-container h1:last-child , .row-content .section-title .content-container h2:last-child , .row-content .section-title .content-container h3:last-child , .row-content .section-title .content-container h4:last-child , .row-content .section-title .content-container h5:last-child , .row-content .section-title .content-container h6:last-child  {
		margin-bottom: 0px;
	}

	.row-content .section-title + .section-content {
		padding-top: 0px;
	}

	.row-content .section-content + .section-content {
		padding-top: 0px;
	}

	.row-content .section-content .main-content p:last-child, .row-content .section-content .main-content ul:last-child  {
		margin-bottom: 0px;
	}

	.row-content .section-content + .section-title {
		padding-top: 0px;
	}

	.row-content .section-title:first-child {
		padding-top: 20px;
	}

	.row-content .section-content .content-container p:last-child {
		margin-bottom: 0px;
	}

	.row-content .section-2col .content-container .col:last-child {
		margin-bottom: 20px;
	}

	.row-content .section-aside-image .image-frame {
		position: relative;
		overflow: hidden;
	}

	.row-content .section-aside-image .image-frame .image-placeholder {
		position: relative;
		width: 100%;
	}

		.row-content .section-aside-image .image-frame .image-placeholder.image-size-25 {
			padding-bottom: 25%;
		}

		.row-content .section-aside-image .image-frame .image-placeholder.image-size-30 {
			padding-bottom: 30%;
		}

		.row-content .section-aside-image .image-frame .image-placeholder.image-size-40 {
			padding-bottom: 40%;
		}

		.row-content .section-aside-image .image-frame .image-placeholder.image-size-50 {
			padding-bottom: 50%;
		}

		.row-content .section-aside-image .image-frame .image-placeholder.image-size-60 {
			padding-bottom: 60%;
		}

		.row-content .section-aside-image .image-frame .image-placeholder.image-size-66 {
			padding-bottom: 66%;
		}

		.row-content .section-aside-image .image-frame .image-placeholder.image-size-75 {
			padding-bottom: 75%;
		}

		.row-content .section-aside-image .image-frame .image-placeholder.image-size-100 {
			padding-bottom: 100%;
		}

	.row-content .section-aside-image .image-frame img {
		position: absolute;
		left: 0;
		top: 0;
		width: 100%;
	}

	.row-content .section-aside-image .image-frame.image-frame-no-crop img {
		position: relative;
		display: block;
		width: 100%;
	}

	.row-content .section-aside-image .image-frame.image-frame-no-crop .image-placeholder {
		display: none;
	}

	@media only screen and (min-width: 480px) {
		.row-content .section-title:first-child {
			padding-top: 25px;
		}

		.row-content .section-2col .content-container .col h3:first-child {
			margin-bottom: 15px;
		}
	}

	@media only screen and (min-width: 720px) {

		.row-content .section-content.section-aside-image {
			overflow: hidden;
			position: relative;
		}

		.row-content .section-content.section-aside-image .main-content {
			padding-top: 0px;
		}

		.row-content .section-content.section-aside-image .main-content p:first-child {
			margin-top: 0px;
		}

		.row-content .section-content.section-aside-image .aside-image.aside-left {
			float: left;
			width: calc(35% - 25px);
			margin-right: 25px;
		}

		.row-content .section-content.section-aside-image .aside-image.aside-left + .main-content {
			float: left;
			width: 65%;
		}

		.row-content .section-content.section-aside-image .aside-image.aside-right {
			float: right;
			width: calc(35% - 25px);
			margin-left: 25px;
		}

		.row-content .section-content.section-aside-image .aside-image.aside-right + .main-content {
			float: left;
			width: 60%;
		}

		.row-content .section-content.section-aside-image .main-content {
			padding-top: 0px;
		}

		.row-content .content-container ul.ul-2col li {
			float: left;
			width: 50%;
		}

		.row-content .section-2col .content-container .col {
			float: left;
			width: calc(50% - 25px);
			margin-right: 25px;
			margin-bottom: 25px;
		}

		.row-content .section-2col .content-container .col:nth-child(2) {
			margin-left: 25px;
			margin-right: 0px;
		}

	}

	@media only screen and (min-width: 920px) {
		.row-content .section-title:first-child {
			padding-top: 35px;
		}

		.row-content .section-content.section-aside-image .aside-image.aside-left {
			width: calc(35% - 35px);
			margin-right: 35px;
		}

		.row-content .section-content.section-aside-image .aside-image.aside-right {
			width: calc(35% - 35px);
			margin-left: 35px;
		}

		.row-content .section-2col .content-container .col {
			width: calc(50% - 35px);
			margin-right: 35px;
			margin-bottom: 35px;
		}

		.row-content .section-2col .content-container .col:nth-child(2) {
			margin-left: 35px;
			margin-right: 0px;
		}
	}

	@media only screen and (min-width: 1024px) {
		.row-content .section-title:first-child {
			padding-top: 45px;
		}

		.row-content .section-content.section-aside-image .aside-image.aside-left {
			width: calc(35% - 45px);
			margin-right: 45px;
		}

		.row-content .section-content.section-aside-image .aside-image.aside-right {
			width: calc(35% - 45px);
			margin-left: 45px;
		}

		.row-content .section-2col .content-container .col {
			width: calc(50% - 45px);
			margin-right: 45px;
			margin-bottom: 45px;
		}

		.row-content .section-2col .content-container .col:nth-child(2) {
			margin-left: 45px;
			margin-right: 0px;
		}
	}

	@media only screen and (min-width: 1440px) {
		.row-content .section-title:first-child {
			padding-top: 60px;
		}

		.row-content .section-content.section-aside-image .aside-image.aside-left {
			width: calc(35% - 60px);
			margin-right: 60px;
		}

		.row-content .section-content.section-aside-image .aside-image.aside-right {				width: calc(35% - 60px);
			margin-left: 60px;
		}
	}

	@media only screen and (min-width: 1640px) {
		.page-interior .row-content .section-content.section-aside-image .main-content {
			padding-top: 15px;
		}

		.page-interior .row-content .section-content.section-aside-image:last-child .content-container .image-frame .image-placeholder.image-size-60 {
			padding-bottom: 66%;
		}
	}

/* END Content Row Styles */

/* Footer Row Styles */

	.row-footer .content-container h2:first-child, .row-footer .aside-placeholder h2:first-child {
		margin-top: 0px;
	}

	.row-footer .contact-container {
		margin-top: 12px;
		margin-bottom: 12px;
		background-color: rgba(0,0,0,0);
	}

	.row-footer .contact-container .contact-element {
		clear: left;
		display: block;
		margin-right: 0px;
	}

	.row-footer .contact-container .contact-element a {
		color: white;
		text-shadow: 1px 1px 2px rgba(0,0,0,0.5);
		padding-top: 0px;
		padding-bottom: 0px;
	}

	.row-footer .contact-container .contact-element a:hover span, .row-footer .contact-container .contact-element a:focus span {
		color: #d9f2ce;
	}

	.row-footer .copywrite-container p {
		margin-bottom: 0px;
		margin-top: 0px;
		color: #d9f2ce;
	}

	.row-footer .copywrite-container p a {
		color: #d9f2ce;
		transition: 0.3s all;
	}

	.row-footer .copywrite-container p a:hover, .row-footer .copywrite-container p a:focus {
		color: white;
	}

	.row-footer .section-white .content-container h2 {
		color: #653614;
	}

	.row-footer .form-container .form-part {
		margin-bottom: 8px;
		width: 100%;
		display: block;
	}

	.row-footer .form-container .form-part label {
		width: 90px;
		text-align: right;
		display: block;
		float: left;
		margin-right: 10px;
		padding-top: 6px;
		padding-bottom: 6px;
	}

	.row-footer .form-container .form-part input, .row-footer .form-container .form-part textarea {
		width: calc(100% - 126px);
		padding: 6px 12px;
		border: 1px solid #d2d2d2;
		box-shadow: 2px 2px 3px #d2d2d2;
		max-height: 144pt;
	} 

	.row-footer .form-container .form-part input[type="submit"] {
		border: 2px solid #653614;
		background-color: #653614;
		margin-left: 99px;
		display: inline-block;
		width: auto;
		padding-left: 30px;
		padding-right: 30px;
	}

	.row-footer .form-container .form-part input[type="submit"]:hover, .row-footer .form-container .form-part input[type="submit"]:focus {
		color: #653614;
		background-color: white;
		cursor: pointer;
	}

	.row-footer .section-white .aside-placeholder + .content-container {
		overflow: visible;
	}

	@media only screen and (min-width: 480px) {
		.row-footer .content-container h2:first-child, .row-footer .aside-placeholder h2:first-child {
			margin-bottom: 15px;
		}

		.row-footer .form-container .form-part {
			margin-bottom: 14px;
		}
	}

	@media only screen and (min-width: 720px) {

		.section-contact .aside-placeholder {
			display: block;
			margin-top: -25px;
			float: left;
			opacity: 0;
			z-index: -10;
			pointer-events: none;
		}

		.row-footer {
			position: relative;
			overflow: hidden;
		}

		.row-footer .section-white .fluidcontainer .content-container {
			width: 55%;
			padding-left: 0px;
			float: right;
		} 

		.row-footer .section-green {
			padding-top: 0px;
			padding-bottom: 0px;
			background-color: rgba(0,0,0,0);
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
		}

		.row-footer .section-green .content-container, .row-footer .section-white .aside-placeholder {
			width: calc(45% - 50px);
			float: left;
			padding-top: 25px;
			padding-bottom: 25px;
			padding-left: 0px;
			padding-right: 25px;
			background-color:#83b26d;
			z-index: 10;
			position: relative;
			overflow: visible;
		}

		.row-footer .section-green .content-container::before {
			display: block;
			content: '';
			width: 100%;
			height: 100%;
			position: absolute;
			right: 100%;
			background-color: #83b26d;
			top: 0px;
		}

		.row-footer .section-green .content-container::after {
			display: block;
			content: '';
			width: 200%;
			height: 100%;
			position: absolute;
			top: 100%;
			right: 0px;
			background-color: #83b26d;
		}

		.row-footer .form-container .form-part:last-child {
			margin-bottom: 0px;
		}

	}

	@media only screen and (min-width: 920px) {

		.row-footer .form-container .form-part label {
			width: 110px;
		}

		.row-footer .form-container .form-part input, .row-footer .form-container .form-part textarea {
			width: calc(100% - 146px);
		}

		.row-footer .form-container .form-part input[type="submit"] {
			margin-left: 120px;
		}

		.section-contact .aside-placeholder {
			margin-top: -35px;
		}

		.row-footer .section-green .content-container, .row-footer .section-white .aside-placeholder {
			width: calc(45% - 70px);
			float: left;
			padding-top: 35px;
			padding-bottom: 35px;
			padding-left: 0px;
			padding-right: 35px;
		}

	}

	@media only screen and (min-width: 1024px) {
		.section-contact .aside-placeholder {
			margin-top: -45px;
		}

		.row-footer .section-green .content-container, .row-footer .section-white .aside-placeholder {
			width: calc(40% - 90px);
			padding-top: 45px;
			padding-bottom: 45px;
			padding-left: 0px;
			padding-right: 45px;
		}

		.row-footer .section-white .fluidcontainer .content-container {
			width: 60%;
		}

		.row-footer .section-green .content-container .contact-element a span.text-container, .row-footer .section-white .aside-placeholder .contact-element a span.text-container {
			font-size: 16pt;
		}

		.row-footer .section-green .content-container .copywrite-container p, .row-footer .section-white .aside-placeholder  .copywrite-container p, .row-footer .section-green .content-container .copywrite-container p a, .row-footer .section-white .aside-placeholder  .copywrite-container p a {
			font-size: 14pt;
			line-height: 18pt;
		}
	}

	@media only screen and (min-width: 1200px) {
		.row-footer .form-container .form-part label {
			width: 165px;
		}

		.row-footer .form-container .form-part input, .row-footer .form-container .form-part textarea {
			width: calc(100% - 216px);
		}

		.row-footer .form-container .form-part input[type="submit"] {
			margin-left: 190px;
		}

		.row-footer .form-container .form-part {
			margin-bottom: 20px;
		}

		.row-footer .form-container .form-part label {
			margin-right: 25px;
		}
	}

	@media only screen and (min-width: 1440px) {
		.section-contact .aside-placeholder {
			margin-top: -60px;
		}

		.row-footer .section-green .content-container, .row-footer .section-white .aside-placeholder {
			width: calc(35% - 120px);
			padding-top: 60px;
			padding-bottom: 60px;
			padding-left: 0px;
			padding-right: 60px;
		}

		.row-footer .section-white .fluidcontainer .content-container {
			width: 65%;
		}

		.row-footer .section-green .content-container .contact-element a span.text-container, .row-footer .section-white .aside-placeholder .contact-element a span.text-container {
			font-size: 18pt;
		}

		.row-footer .section-green .content-container .copywrite-container p, .row-footer .section-white .aside-placeholder  .copywrite-container p, .row-footer .section-green .content-container .copywrite-container p a, .row-footer .section-white .aside-placeholder  .copywrite-container p a {
			font-size: 16pt;
			line-height: 22pt;
		}
	}

	/* Contact Form 7 Plugin Styles */

		span.wpcf7-not-valid-tip {
			font-family: Fragua, 'arial', 'sans-serif';
			font-weight: 300;
			font-style: normal;
			font-size: 12pt;
			line-height: 16pt;
			width: calc(100% - 112px);
			margin-left: 112px;
			font-weight: 300 !important;
			font-style: italic;
			margin-top: 2px;
		}

		.wpcf7-response-output {
			margin: 0px !important;
			margin-top: 15px !important;
			margin-bottom: 15px !important;
			background-color: #83b26d;
			padding: 10px 10px 10px 20px !important;
			border-left: 3px solid #52803c !important;
			border-right: none !important;
			border-top: none !important;
			border-bottom: none !important;
			box-shadow: 2px 2px 3px #d2d2d2;
			color: white;
			text-shadow: 1px 1px 1px rgba(0,0,0,0.4);
			font-family: Fragua, 'arial', 'sans-serif';
			font-weight: 300;
			font-style: normal;
		}

		@media only screen and (min-width: 920px) {
			span.wpcf7-not-valid-tip {
				font-size: 13pt;
				line-height: 17pt;
				width: calc(100% - 132px);
				margin-left: 132px;
				margin-top: 6px;
			}
		}

		@media only screen and (min-width: 1200px) {
			span.wpcf7-not-valid-tip {
				font-size: 15pt;
				line-height: 19pt;
				width: calc(100% - 201px);
				margin-left: 201px;
				margin-top: 8px;
			}

			.wpcf7-response-output {
				font-size: 14pt;
				line-height: 19pt;
			}
		}

	/* Contact Form 7 Plugin Stylys */

/* END Footer Row Styles */