:root {
	--main-bg-color: #323e98;
}

/* Phones (Portrait) */
@media screen and (max-width: 991.97px) {
	body {
		width: 100vw;
		height: 100vh;
		font-family: "Montserrat", sans-serif;
	}

	body::-webkit-scrollbar {
		display: none;
	}

	h1 {
		font-weight: 600;
		font-size: calc(0.8rem + 2vw);
	}

	p {
		font-size: calc(0.8rem + 1vw);
	}

	a {
		text-decoration: none;
		color: #323e98;
	}

	strong {
		font-weight: bold;
	}

	a:hover {
		cursor: pointer;
	}

	.navwrap {
		grid-column: 2;
		z-index: 0;
		width: 100vw;
		height: 50px;
		display: flex;
		align-items: center;
		background-image: url("../images/navbar.svg");
		background-repeat: no-repeat;
		background-size: cover;
	}

	nav {
		position: relative;
		display: flex;
		flex-flow: row;
		align-content: center;
		color: var(--main-bg-color);
	}

	nav>a>img {
		display: hidden;
	}

	#homebanner {
		z-index: -1;
		grid-column: 2;
		position: relative;
		top: -40px;
		width: 100%;
		height: 325px;
		background-image: url("../images/slideshowphotos/image_0.jpg");
		background-repeat: no-repeat;
		background-size: cover;
		background-position: center;
		margin-bottom: 10px;
		transition: all 1s ease-out;
	}

	#logocontainer {
		margin-left: 5%;
	}

	.pcg_gear {
		min-width: 15%;
		max-width: 20%;
		position: relative;
		-webkit-animation: spin 20s linear infinite;
		-moz-animation: spin 20s linear infinite;
		animation: spin 20s linear infinite;
	}

	.pcg_words {
		position: relative;
		left: -23.5%;
		z-index: 1;
		min-width: 15%;
		max-width: 25%;
	}

	.pcg_gear,
	.pcg_words {
		top: 20px;
	}

	@-moz-keyframes spin {
		100% {
			-moz-transform: rotate(360deg);
		}
	}

	@-webkit-keyframes spin {
		100% {
			-webkit-transform: rotate(360deg);
		}
	}

	@keyframes spin {
		100% {
			-webkit-transform: rotate(360deg);
			transform: rotate(360deg);
		}
	}

	#facebook {
		width: 30px;
		height: 30px;
		background-image: url("../images/facebook.svg");
		background-repeat: no-repeat;
		padding-right: 20px;
	}

	#introdiv {
		grid-column: 2;
		position: relative;
		top: -30px;
		background-color: #fff;
		height: 160px;
		width: 100%;
		display: flex;
		flex-flow: column;
		align-content: center;
		padding-top: 20px;
		margin: 10% 0% 10% 0;
	}

	#introdiv_jargon {
		grid-column: 2;
		color: var(--main-bg-color);
		text-align: center;
		padding-left: 15px;
		padding-right: 15px;
	}

	#introdiv_jargon>h1 {
		margin-bottom: 20px;
	}

	#introdiv_jargon>h2 {
		font-size: 18pt;
		font-weight: 500;
		font-style: italic;
	}

	#introdiv_jargon>button {
		color: white;
		background-color: var(--main-bg-color);
		border: 8px solid var(--main-bg-color);
	}

	#introdiv_bubble {
		display: none;
	}

	#bubgear {
		display: none;
	}

	.message_btn {
		border-radius: 10px;
	}

	#servediv {
		grid-column: 2;
		background-image: url("../images/section2.svg");
		background-repeat: no-repeat;
		background-size: cover;
		width: 100%;
		display: flex;
		flex-flow: column-reverse;
		align-content: center;
		overflow: visible;
		padding-bottom: 40px;
	}

	#servediv_jargon {
		grid-column: 2;
		color: #fff;
		display: flex;
		justify-content: center;
		flex-direction: column;
		overflow: visible;
		margin-top: 5%;
		margin-bottom: 10%;
		text-align: center;
		padding-left: 10px;
		padding-right: 10px;
	}

	#servediv_jargon>h1 {
		margin-bottom: 20px;
		font-size: calc(5em * 2vw);
	}

	#servediv_img {
		grid-column: 4;
		overflow: visible;
		display: flex;
		justify-content: center;
		margin-top: 15%;
	}

	#servediv_img>img {
		width: calc(55% - 2vw);
	}

	#biodiv {
		grid-column: 2;
		margin-top: 10%;
		margin-bottom: 10%;
		text-align: center;
		padding-left: 20px;
		padding-right: 20px;
	}

	#biodiv_img {
		height: 200px;
		width: 100%;
		justify-content: center;
		background-image: url("../images/owners.jpg");
		background-position: center;
		background-size: cover;
		background-repeat: no-repeat;
	}

	#biodiv_jargon {
		grid-column: 4;
		color: var(--main-bg-color);
		display: flex;
		justify-content: center;
		flex-direction: column;
		padding-top: 20px;
	}

	#biodiv_jargon>h1 {
		margin-bottom: 20px;
		font-size: calc(1rem + 3vw);
	}

	#biodiv_jargon>p {
		margin-bottom: 20px;
		font-size: 12pt;
	}

	#mapdiv {
		grid-column: 2;
		background-image: url("../images/section4.svg");
		background-repeat: no-repeat;
		background-size: cover;
		display: flex;
		flex-flow: column;
		align-content: center;
		overflow: visible;
		padding-top: 50px;
		padding-left: 10px;
		padding-right: 10px;
		text-align: center;
		margin-bottom: -15%;
	}

	#map {
		height: max-content;
	}

	#google_map {
		width: 100%;
		padding-bottom: 20px;
	}

	#visit_us {
		color: #fff;
		padding-left: 10px;
		padding-right: 10px;
	}

	#visit_us>h1 {
		margin-bottom: 5%;
		font-size: calc(1.8rem + 1.5vw);
	}

	#socials {
		display: none;
	}

	#message_us {
		position: absolute;
		top: 0;
		left: 0;
		width: 100vw;
		height: 100vh;
		z-index: 2;
		background-color: rgba(50, 62, 152, 0.8);
		display: none;
		justify-content: center;
		align-items: center;
		flex-flow: column;
		color: #fff;
	}

	#message_us>p {
		padding: 0px 15px;
		text-align: center;
	}

	#message_us>.form_elementz {
		margin: 20px 0px;
	}

	#message_us>.form_elementz>label {
		display: block;
		margin-bottom: 5px;
	}

	#message_us>.form_elementz>input {
		width: 100%;
		height: 40px;
		font-size: 17px;
		border: 2px solid #fff;
		background: rgba(255, 255, 255, 0.9);
		color: var(--main-bg-color);
	}

	#message_us>.form_elementz>button {
		width: 100%;
		height: 40px;
		font-size: 17px;
		text-transform: uppercase;
		border: none;
		outline: none;
		background: rgba(255, 255, 255, 0.9);
		color: var(--main-bg-color);
		border-radius: 10px;
		margin-top: 20px;
		margin-left: 50%;
		transform: translate(-50%);
	}

	#message_us>.form_elementz>#add_notes {
		height: 80px;
	}

	#message_us>#close_btn {
		position: absolute;
		top: 40px;
		right: 40px;
		color: #fff;
		font-size: 40px;
		cursor: pointer;
	}

	#close_btn2 {
		position: absolute;
		top: 40px;
		right: 40px;
		color: var(--main-bg-color);
		font-size: 40px;
		cursor: pointer;
	}

	#thank_you {
		height: 100vh;
		width: 100vw;
		display: flex;
		justify-content: center;
		color: var(--main-bg-color);
	}

	footer {
		margin-top: 10%;
		grid-column: 2;
		padding-top: 12px;
		padding-bottom: 12px;
		font-size: 12px;
		text-align: center;
		color: #99cc99;
		background-color: var(--main-bg-color);
	}

	footer>a,
	:visited {
		color: white;
	}
}

/* Phones (Portrait) */
@media screen and (max-width: 991.97px) and (orientation: landscape) {
	body {
		width: 100vw;
		height: 100vh;
		font-family: "Montserrat", sans-serif;
	}

	body::-webkit-scrollbar {
		display: none;
	}

	h1 {
		font-weight: 600;
		font-size: calc(0.8rem + 2vw);
	}

	p {
		font-size: calc(0.8rem + 1vw);
	}

	a {
		text-decoration: none;
		color: #323e98;
	}

	strong {
		font-weight: bold;
	}

	a:hover {
		cursor: pointer;
	}

	.navwrap {
		grid-column: 2;
		z-index: 0;
		width: 100vw;
		height: 50px;
		display: flex;
		align-items: center;
		background-image: url("../images/navbar.svg");
		background-repeat: no-repeat;
		background-size: cover;
	}

	nav {
		position: relative;
		display: flex;
		flex-flow: row;
		align-content: center;
		color: var(--main-bg-color);
	}

	nav>a>img {
		width: 15%;
		float: right;
		margin-right: 10%;
	}

	#homebanner {
		z-index: -1;
		grid-column: 2;
		position: relative;
		top: -40px;
		width: 100%;
		height: 325px;
		background-image: url("../images/slideshowphotos/image_0.jpg");
		background-repeat: no-repeat;
		background-size: cover;
		background-position: center;
		margin-bottom: 10px;
		transition: all 1s ease-out;
	}

	#logocontainer {
		margin-top: 10%;
		margin-left: 5%;
	}

	.pcg_gear {
		min-width: 15%;
		max-width: 20%;
		position: relative;
		-webkit-animation: spin 20s linear infinite;
		-moz-animation: spin 20s linear infinite;
		animation: spin 20s linear infinite;
	}

	.pcg_words {
		position: relative;
		left: -23.5%;
		z-index: 1;
		min-width: 15%;
		max-width: 25%;
	}

	.pcg_gear,
	.pcg_words {
		top: 20px;
	}

	@-moz-keyframes spin {
		100% {
			-moz-transform: rotate(360deg);
		}
	}

	@-webkit-keyframes spin {
		100% {
			-webkit-transform: rotate(360deg);
		}
	}

	@keyframes spin {
		100% {
			-webkit-transform: rotate(360deg);
			transform: rotate(360deg);
		}
	}

	#facebook {
		width: 30px;
		height: 30px;
		background-image: url("../images/facebook.svg");
		background-repeat: no-repeat;
		padding-right: 20px;
	}

	#introdiv {
		grid-column: 2;
		position: relative;
		top: -30px;
		background-color: #fff;
		height: 160px;
		width: 100%;
		display: flex;
		flex-flow: column;
		align-content: center;
		padding-top: 20px;
		margin: 10% 0% 10% 0;
	}

	#introdiv_jargon {
		grid-column: 2;
		color: var(--main-bg-color);
		text-align: center;
		padding-left: 15px;
		padding-right: 15px;
	}

	#introdiv_jargon>h1 {
		margin-bottom: 20px;
	}

	#introdiv_jargon>h2 {
		font-size: 18pt;
		font-weight: 500;
		font-style: italic;
	}

	#introdiv_jargon>button {
		color: white;
		background-color: var(--main-bg-color);
		border: 8px solid var(--main-bg-color);
	}

	#introdiv_bubble {
		display: none;
	}

	#bubgear {
		display: none;
	}

	.message_btn {
		border-radius: 10px;
	}

	#servediv {
		grid-column: 2;
		background-image: url("../images/section2.svg");
		background-repeat: no-repeat;
		background-size: cover;
		width: 100%;
		display: flex;
		flex-flow: column-reverse;
		align-content: center;
		overflow: visible;
		padding-bottom: 40px;
	}

	#servediv_jargon {
		grid-column: 2;
		color: #fff;
		display: flex;
		justify-content: center;
		flex-direction: column;
		overflow: visible;
		margin-top: 5%;
		margin-bottom: 10%;
		text-align: center;
		padding-left: 10px;
		padding-right: 10px;
	}

	#servediv_jargon>h1 {
		margin-bottom: 20px;
		font-size: calc(5em * 2vw);
	}

	#servediv_img {
		grid-column: 4;
		overflow: visible;
		display: flex;
		justify-content: center;
		margin-top: 15%;
	}

	#servediv_img>img {
		width: calc(55% - 2vw);
	}

	#biodiv {
		grid-column: 2;
		margin-top: 10%;
		margin-bottom: 10%;
		text-align: center;
		padding-left: 20px;
		padding-right: 20px;
	}

	#biodiv_img {
		height: 200px;
		width: 100%;
		justify-content: center;
		background-image: url("../images/owners.jpg");
		background-position: center;
		background-size: cover;
		background-repeat: no-repeat;
	}

	#biodiv_jargon {
		grid-column: 4;
		color: var(--main-bg-color);
		display: flex;
		justify-content: center;
		flex-direction: column;
		padding-top: 20px;
	}

	#biodiv_jargon>h1 {
		margin-bottom: 20px;
		font-size: calc(1rem + 3vw);
	}

	#biodiv_jargon>p {
		margin-bottom: 20px;
		font-size: 12pt;
	}

	#mapdiv {
		grid-column: 2;
		background-image: url("../images/section4.svg");
		background-repeat: no-repeat;
		background-size: cover;
		display: flex;
		flex-flow: column;
		align-content: center;
		overflow: visible;
		padding-top: 50px;
		padding-left: 10px;
		padding-right: 10px;
		text-align: center;
		margin-bottom: -15%;
	}

	#map {
		height: max-content;
	}

	#google_map {
		width: 100%;
		padding-bottom: 20px;
	}

	#visit_us {
		color: #fff;
		padding-left: 10px;
		padding-right: 10px;
	}

	#visit_us>h1 {
		margin-bottom: 5%;
		font-size: calc(1.8rem + 1.5vw);
	}

	#socials {
		display: none;
	}

	#message_us {
		position: absolute;
		top: 0;
		left: 0;
		width: 100vw;
		height: 100vh;
		z-index: 2;
		background-color: rgba(50, 62, 152, 0.8);
		display: none;
		justify-content: center;
		align-items: center;
		flex-flow: column;
		color: #fff;
	}

	#message_us>p {
		padding: 0px 15px;
		text-align: center;
	}

	#message_us>.form_elementz {
		margin: 20px 0px;
	}

	#message_us>.form_elementz>label {
		display: block;
		margin-bottom: 5px;
	}

	#message_us>.form_elementz>input {
		width: 100%;
		height: 40px;
		font-size: 17px;
		border: 2px solid #fff;
		background: rgba(255, 255, 255, 0.9);
		color: var(--main-bg-color);
	}

	#message_us>.form_elementz>button {
		width: 100%;
		height: 40px;
		font-size: 17px;
		text-transform: uppercase;
		border: none;
		outline: none;
		background: rgba(255, 255, 255, 0.9);
		color: var(--main-bg-color);
		border-radius: 10px;
		margin-top: 20px;
		margin-left: 50%;
		transform: translate(-50%);
	}

	#message_us>.form_elementz>#add_notes {
		height: 80px;
	}

	#message_us>#close_btn {
		position: absolute;
		top: 40px;
		right: 40px;
		color: #fff;
		font-size: 40px;
		cursor: pointer;
	}

	#close_btn2 {
		position: absolute;
		top: 40px;
		right: 40px;
		color: var(--main-bg-color);
		font-size: 40px;
		cursor: pointer;
	}

	#thank_you {
		height: 100vh;
		width: 100vw;
		display: flex;
		justify-content: center;
		color: var(--main-bg-color);
	}

	footer {
		margin-top: 10%;
		grid-column: 2;
		padding-top: 12px;
		padding-bottom: 12px;
		font-size: 12px;
		text-align: center;
		color: #99cc99;
		background-color: var(--main-bg-color);
	}

	footer>a,
	:visited {
		color: white;
	}
}

/* Computers */
@media screen and (min-width: 991.98px) {
	body {
		width: 100vw;
		height: 100vh;
		display: grid;
		grid-template-columns: auto minmax(992px, 1020px) auto;
		font-family: "Montserrat", sans-serif;
	}

	body::-webkit-scrollbar {
		display: none;
	}

	h1 {
		font-weight: 600;
		font-size: 30px;
	}

	p {
		font-size: 20px;
	}

	a {
		text-decoration: none;
		color: #323e98;
	}

	strong {
		font-weight: bold;
	}

	a:hover {
		cursor: pointer;
	}

	.navwrap {
		grid-column: 2;
		z-index: 0;
		width: 100%;
		height: 100px;
		display: flex;
		align-items: center;
		background-image: url("../images/navbar.svg");
		background-repeat: no-repeat;
		background-size: cover;
	}

	nav {
		position: relative;
		display: flex;
		flex-flow: row;
		align-content: center;
		color: #323e98;
	}

	nav>h1 {
		margin-right: 20px;
		padding-top: 5px;
		font-size: 16pt;
	}

	nav>h1>a {
		text-decoration: none;
		color: #323e98;
	}

	nav>a>img {
		display: none;
	}

	#facebook {
		margin-top: -15px;
	}

	#homebanner {
		z-index: -1;
		grid-column: 2;
		position: relative;
		top: -40px;
		left: 1px;
		width: 99.8%;
		height: 455px;
		background-image: url("../images/slideshowphotos/image_0.jpg");
		background-repeat: no-repeat;
		background-size: cover;
		background-position: center;
		margin-bottom: 10px;
		transition: all 1s ease-out;
	}

	#herobtm {
		z-index: -1;
		grid-column: 2;
		position: relative;
		background-image: url("../images/HeroBtm.svg");
		background-repeat: no-repeat;
		background-size: cover;
		background-position: center;
		width: 110%;
		height: 50px;
		top: -100px;
	}

	#logocontainer {
		margin-top: 10%;
		margin-left: 5%;
	}

	.pcg_gear {
		min-width: 15%;
		max-width: 20%;
		-webkit-animation: spin 20s linear infinite;
		-moz-animation: spin 20s linear infinite;
		animation: spin 20s linear infinite;
	}

	.pcg_words {
		position: relative;
		left: -23%;
		z-index: 1;
		min-width: 15%;
		max-width: 25%;
	}

	@-moz-keyframes spin {
		100% {
			-moz-transform: rotate(360deg);
		}
	}

	@-webkit-keyframes spin {
		100% {
			-webkit-transform: rotate(360deg);
		}
	}

	@keyframes spin {
		100% {
			-webkit-transform: rotate(360deg);
			transform: rotate(360deg);
		}
	}

	#facebook {
		width: 30px;
		height: 30px;
		background-image: url("../images/facebook.svg");
		background-repeat: no-repeat;
		padding-right: 20px;
	}

	#introdiv {
		grid-column: 2;
		position: relative;
		top: -60px;
		background-color: #fff;
		height: 400px;
		width: 100%;
		display: grid;
		grid-template-columns: 10% 35% 10% 35% 10%;
		align-content: center;
		padding-top: 20px;
	}

	#introdiv_jargon {
		grid-column: 2;
		color: #323e98;
	}

	#introdiv_jargon>h1 {
		margin-bottom: 20px;
	}

	#introdiv_jargon>h2 {
		font-size: 18pt;
		font-weight: 500;
		font-style: italic;
	}

	#introdiv_jargon>button {
		color: white;
		background-color: #323e98;
		border: 8px solid #323e98;
	}

	#introdiv_bubble {
		z-index: 2;
		grid-column: 4;
		background-image: url("../images/Reviews.svg");
		background-repeat: no-repeat;
		background-position: center;
		background-size: contain;
		padding: 20px;
		padding-top: 30px;
		color: white;
	}

	#bubgear {
		z-index: 1;
		position: absolute;
		top: 25px;
		height: 157px;
		width: 157px;
		right: 52px;
		opacity: 0.25;
	}

	#introdiv_bubble>h3 {
		font-size: 1.5em;
	}

	#review {
		position: relative;
	}

	#review p {
		display: none;
		position: absolute;
		text-align: center;
	}

	.message_btn {
		border-radius: 10px;
	}

	#servediv {
		grid-column: 2;
		background-image: url("../images/section2.svg");
		background-repeat: no-repeat;
		background-size: cover;
		height: 469px;
		width: 100%;
		display: grid;
		grid-template-columns: 10% 35% 10% 35% 10%;
		align-content: center;
		overflow: visible;
		padding-bottom: 40px;
	}

	#servediv_jargon {
		grid-column: 2;
		color: #fff;
		display: flex;
		justify-content: center;
		flex-direction: column;
		overflow: visible;
		margin-top: 40px;
	}

	#servediv_jargon>h1 {
		margin-bottom: 20px;
	}

	#servediv_img {
		grid-column: 4;
		overflow: visible;
		display: flex;
		justify-content: center;
		margin-top: 40px;
	}

	#servediv_img>img {
		padding-top: 2%;
		width: 75%;
	}

	#biodiv {
		grid-column: 2;
		height: 469px;
		width: 100%;
		display: grid;
		grid-template-columns: 10% 35% 10% 35% 10%;
		align-content: center;
		margin-top: 6vh;
		margin-bottom: 6vh;
	}

	#biodiv_img {
		grid-column: 2;
		display: flex;
		justify-content: center;
		overflow: hidden;
		background-image: url("../images/owners.jpg");
		background-position: center;
		background-size: cover;
		background-repeat: no-repeat;
	}

	#biodiv_jargon {
		grid-column: 4;
		color: var(--main-bg-color);
		display: flex;
		justify-content: center;
		flex-direction: column;
	}

	#biodiv_jargon>h1 {
		margin-bottom: 20px;
	}

	#biodiv_jargon>p {
		margin-bottom: 20px;
		font-size: 12pt;
		line-height: 14pt;
	}

	#mapdiv {
		grid-column: 2;
		background-image: url("../images/section4.svg");
		background-repeat: no-repeat;
		background-size: cover;
		height: 450px;
		width: 100%;
		display: grid;
		grid-template-columns: 10% 35% 10% 35% 10%;
		align-content: center;
		overflow: visible;
		padding-top: 10px;
	}

	#mapdiv>#map {
		grid-column: 2;
	}

	#google_map {
		height: 100%;
		width: 100%;
	}

	#visit_us {
		grid-column: 4;
		color: #fff;
	}

	#visit_us>h1 {
		margin-bottom: 20px;
	}

	#socials {
		grid-column: 2;
		color: #fff;
		margin-top: 40px;
		margin-bottom: 40px;
		display: grid;
		grid-template-columns: 1fr 1fr;
	}

	#socials>div {
		color: var(--main-bg-color);
		align-self: center;
		margin: 0 5% 0 5%;
	}

	#facebook_iframe {
		grid-column: 2;
	}

	#facebook_iframe::-webkit-scrollbar {
		display: none;
	}

	#message_us {
		position: absolute;
		top: auto;
		left: auto;
		width: 100vw;
		height: 100vh;
		z-index: 2;
		background-color: rgba(50, 62, 152, 0.8);
		display: none;
		justify-content: center;
		align-items: center;
		flex-flow: column;
		color: #fff;
	}

	#message_us>p {
		text-align: center;
	}

	#message_us>.form_elementz {
		margin: 20px 0px;
	}

	#message_us>.form_elementz>label {
		display: block;
		margin-bottom: 5px;
	}

	#message_us>.form_elementz>input {
		width: 30vw;
		height: 40px;
		font-size: 17px;
		border: 2px solid #fff;
		background: rgba(255, 255, 255, 0.9);
		color: var(--main-bg-color);
	}

	#message_us>.form_elementz>button {
		width: 20vw;
		height: 40px;
		font-size: 17px;
		text-transform: uppercase;
		border: none;
		outline: none;
		background: rgba(255, 255, 255, 0.9);
		color: #232e98;
		border-radius: 10px;
		margin-top: 20px;
		margin-left: 50%;
		transform: translate(-50%);
	}

	#message_us>.form_elementz>#add_notes {
		height: 80px;
	}

	#message_us>#close_btn {
		position: absolute;
		top: 40px;
		right: 40px;
		color: #fff;
		font-size: 40px;
		cursor: pointer;
	}

	#close_btn2 {
		position: absolute;
		top: 40px;
		right: 40px;
		color: var(--main-bg-color);
		font-size: 40px;
		cursor: pointer;
	}

	#thank_you {
		height: 100vh;
		width: 100vw;
		display: flex;
		justify-content: center;
		color: var(--main-bg-color);
	}

	footer {
		grid-column: 2;
		padding-top: 12px;
		padding-bottom: 12px;
		font-size: 12px;
		text-align: center;
		color: #99cc99;
		background-color: var(--main-bg-color);
	}

	footer>a,
	:visited {
		color: white;
	}
}