/************************************************************************************
 * Variables
 ***********************************************************************************/
:root {
	--spacer: 1rem;
	--font-size: 1em;
	--letter-spacing: 0.0625em;
	
	--spacer-_16x: calc(var(--spacer) / 16);
	--spacer-_8x: calc(var(--spacer) / 8);
	--spacer-_4x: calc(var(--spacer) / 4);
	--spacer-_2x: calc(var(--spacer) / 2);
	--spacer-0-5x: calc(var(--spacer) * 0.5);
	--spacer-0-75x: calc(var(--spacer) * 0.75);
	--spacer-1-25x: calc(var(--spacer) * 1.25);
	--spacer-1-5x: calc(var(--spacer) * 1.5);
	--spacer-2x: calc(var(--spacer) * 2.0);
	--spacer-4x: calc(var(--spacer) * 4.0);
	
	--color: default;
	--color-white: 255, 255, 255;
	--color-lightgrey: 239, 239, 239;
	--color-lightbrown: 211, 202, 187;
	--color-charcoal: 55, 55, 55;
	--color-black: 0, 0, 0;
	--color-blue: 58, 147, 201;	
	--color-green: 39, 166, 139;
	--color-violet: 103, 114, 182;
	--color-red: 255, 46, 66;
	
	--color-yellow: 248, 164, 53;
	--color-grapefruit: 226, 86, 100; 
}

/************************************************************************************
 * Global Properties
 ***********************************************************************************/
html {
	scroll-behavior: smooth;
	overflow-y: scroll;
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

* {
	padding: 0;
	margin: 0;
}

body {
	overflow-y: initial;
	max-width: 1000px;
	margin-left: auto;
	margin-right: auto;
	font: 400 1em "Open Sans";
}

img {
	display: block;
}

h1, h2, h3, h4, h5, h6 {
	font-family: "Roboto";
}

p {
	text-align: justify;
}

.responsive-image {
	max-width: 100%;
	height: auto;
}

a {
	text-decoration: none;
	color: rgb(var(--color-black));
	transition: color 0.25s ease;
}

a:hover,
.active-a {
	text-decoration: none;
	color: rgb(var(--color-red));
}

::selection {
	color: rgb(var(--color-white));
	background-color: rgba(var(--color-charcoal), 0.75);
}
::moz-selection {
	color: rgb(var(--color-white));
	background-color: rgba(var(--color-charcoal), 0.75);
}

.form-consent-notice {
	font-size: calc(var(--font-size) * 0.75);
}

.color-white {
	--color: 255, 255, 255;
}
.color-lightgrey {
	--color: 239, 239, 239;
}
.color-lightbrown {
	--color: 211, 202, 187;
}
.color-charcoal {
	--color: 55, 55, 55;
}
.color-black {
	--color: 0, 0, 0;
}
.color-blue {
	--color: 58, 147, 201;
}
.color-green {
	--color: 39, 166, 139;
}
.color-violet {
	--color: 103, 114, 182;
}
.color-red {
	--color: 235, 28, 77;
}
.color-yellow {
	--color: 248, 164, 53; 
}
.color-grapefruit {
	--color: 226, 86, 100; 
}
/************************************************************************************
 * Common to All Pages
 ***********************************************************************************/
/* Top Nav */
.top-nav {
	display: flex;
	justify-content: flex-end;
	/*flex-wrap: wrap;*/
	align-items: center;
	font-size: calc(var(--font-size) * 0.85);
	height: var(--spacer-4x); /* Alternatively, use Top and Bottom Margins */
}
.top-nav > ul {
	display: inherit;
	list-style: none;
	/*align-items: center;*/
}
.top-nav > ul > li {
	margin-left: var(--spacer-1-5x);
}
.call-to-action > a {
	border: var(--spacer-_16x) rgb(var(--color-black)) solid;
	padding: var(--spacer-_2x);
	transition: all 0.25s ease;
}
.call-to-action > a:hover {
	background-color: rgb(var(--color-violet));
	border-color: rgb(var(--color-violet));
	color: rgb(var(--color-white));
}

/* Header Section */
.header-section {
	position: relative;
}
.header-content {
	position:absolute;
	z-index: 2;
	top: 0;
	width: 100%;
	height: calc(var(--spacer) * 6.25);
	
	display: flex;
	justify-content: space-between;
	
	padding-left: var(--spacer-4x);
	padding-right: var(--spacer-4x);
	align-items: center;
}
.header-content > ul {
	display: inherit;
	list-style: none;
}
.header-content > ul > li {
	margin-left: var(--spacer-1-5x);
}
.header-content > ul > li > a {
	color: rgb(var(--color-white));
	transition: padding 0.25s ease;
	font-weight: 600;
}
.header-content > ul > li > a:hover,
.active-header-a {
	border: var(--spacer-_8x) rgb(var(--color-white)) solid;
	border-radius: var(--spacer-_4x);
	padding: var(--spacer-_2x);
}

/* Banner Text */
.hero-banner-content {
	position: absolute;
	z-index: 2;
	top: 55%;
	left: calc(var(--spacer) * 4.0);
	transform: translateY(-45%);
	color: rgb(var(--color-white));
}
.hero-banner-content > h1 {
	font-weight: 400;
	font-size: calc(var(--font-size) * 2.25);
}

/* Common Header Image Overlay */
.common-header-image-overlay {
	background-image: linear-gradient(to right, rgba(var(--color-blue), 1.0), rgba(var(--color-green), 1.0));
	position: absolute;
	z-index: 1;
	top: 0; right: 0; bottom: 0; left: 0;
}

/* Intro Section */
.intro-section {
	background-color: rgb(var(--color));
	padding: var(--spacer-4x) var(--spacer-4x);
}
.intro-section > h1 {
	font-weight: 400;
	font-size: calc(var(--font-size) * 1.75);
	letter-spacing: var(--letter-spacing);
	text-align: center;
	margin-bottom: var(--spacer-1-5x);
}

/* Footer Section */
.footer {
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-size: calc(var(--font-size) * 0.85);
	height: var(--spacer-4x); /* Alternatively, use Top and Bottom Margins */
}
.footer > .copy-large {
	display: block;
}
.footer > .copy-small {
	display: none;
}
.footer > ul {
	display: inherit;
	list-style: none;
}
.footer > ul > li {
	margin-left: var(--spacer-1-5x);
}

form > input,
form > select {
	height: 55px;
}

/************************************************************************************
 * Index Page
 ***********************************************************************************/
/* Root Container */
.index-root-container {
	display: grid;
	grid-template-rows: repeat(7, auto); 
	/*grid-gap: var(--spacer);*/
}

/* Hero Overlay */
.index-hero-image-overlay {
	background-image: linear-gradient(to right, rgba(var(--color-violet), 0.85), rgba(var(--color-red), 0.35));
	position: absolute;
	z-index: 1;
	top: 0; right: 0; bottom: 0; left: 0;
}

/* Explore Section */
.explore-section {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
}
.explore-grid-item {
	background-color: rgba(var(--color), 1.0);
	color: rgb(var(--color-white));
	padding: var(--spacer-4x) var(--spacer-4x);
}
.explore-grid-item > h1 {
	font-weight: 400;
	font-size: calc(var(--font-size) * 2.0);
	letter-spacing: var(--letter-spacing);
	text-align: center;
	margin-bottom: var(--spacer-1-5x);
}
.explore-grid-item > p {
	margin-bottom: var(--spacer-2x);
}
.explore-grid-item > a {
	display: block;
	padding: var(--spacer);
	border: var(--spacer-_8x) rgb(var(--color-white)) solid;
	border-radius: var(--spacer-_4x);
	color: rgb(var(--color-white));
	text-align: center;
	font-weight: 600;
	letter-spacing: var(--letter-spacing);
	transition: all 0.25s ease;
}
.explore-grid-item > a:hover {
	color: rgb(var(--color));
	background-color: rgb(var(--color-white));
}

/* Testimonials Section */
.testimonials-section {
	background-color: rgb(var(--color));
	padding: var(--spacer-4x) var(--spacer-4x);
}
.testimonials-slides-container {
	position: relative;
}
.testimonials-slides {
	display: none;
}
.testimonials-slides > *:nth-child(1),
.testimonials-slides > *:nth-child(2),
.testimonials-slides > *:last-child {
	margin-bottom: var(--spacer-1-5x);
}
.testimonials-slides > h3 {
	font-weight: 400;
	font-size: calc(var(--font-size) * 1.2);
}
.testimonials-selector-container {
	
}
.testimonials-selector {
	cursor: pointer;
	height: var(--spacer-0-75x);
	width: var(--spacer-0-75x);
	border: var(--spacer-_8x) rgb(var(--color-charcoal)) solid;
	margin-right: var(--spacer-0-5x);
	border-radius: 50%;
	display: inline-block;
	transition: background-color 0.25s ease;
}
.testimonials-selector:hover,
.active-selector {
	background-color: rgb(var(--color-charcoal));
}

/* Callback Request Section */
/* Common to Index, Solutions and Contact Page */
.callback-request-section {
	background-color: rgb(var(--color));
	color: rgb(var(--color-white));
	padding: var(--spacer-4x) var(--spacer-4x);
}
.callback-request-section > h1 {
	font-weight: 400;
	font-size: calc(var(--font-size) * 1.75);
	letter-spacing: var(--letter-spacing);
	text-align: center;
	margin-bottom: var(--spacer-1-5x);
}
.callback-request-section > form {
	margin-top: var(--spacer-2x);
	margin-bottom: var(--spacer);
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-gap: var(--spacer);
}
.callback-request-section > form > * {
	padding: var(--spacer);
	background-color: rgb(var(--color-charcoal));
	color: rgb(var(--color-white));
	border: var(--spacer-_8x) rgb(var(--color-white)) solid;
	border-radius: var(--spacer-_4x);
	font-family: "Open Sans";
	font-size: calc(var(--font-size) * 0.85);
}
.callback-request-section > form > .button {
	font-weight: 600;
	letter-spacing: var(--letter-spacing);
	transition: all 0.25s ease;
	cursor: pointer;
}
.callback-request-section > form > .button:hover {
	color: rgb(var(--color-charcoal));
	background-color: rgb(var(--color-white));
}
.callback-request-section > form > textarea {
	grid-column: 1 / 3;
}
.callback-request-section > form > ::placeholder {
	color: rgb(var(--color-white));
	opacity: 1;
}
.callback-request-section > form > ::-ms-input-placeholder {
	color: rgb(var(--color-white));
	opacity: 1;
}

/************************************************************************************
 * Solutions Page
 ***********************************************************************************/
/* Root Container */
.solutions-root-container {
	display: grid;
	grid-template-rows: repeat(6, auto); 
	/*grid-gap: var(--spacer);*/
}

/* Hero Overlay */
.solutions-hero-image-overlay {
	background-image: linear-gradient(to right, rgba(var(--color-blue), 0.85), rgba(var(--color-green), 0.55));
	position: absolute;
	z-index: 1;
	top: 0; right: 0; bottom: 0; left: 0;
}

/* Solutions Section */
.solutions-section {
	margin-top: var(--spacer-2x);
	margin-bottom: var(--spacer-2x);
	
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-template-rows: repeat(5, auto);
	grid-gap: var(--spacer-2x);
}
.solutions-grid-item:first-child {
	grid-column: 1 / 3;
	grid-row: 1 / 2;
}
.solutions-grid-item:nth-child(2) {
	grid-column: 1 / 3;
	grid-row: 2 / 3;
}
.solutions-grid-item {
	--v-offset: calc(var(--spacer) * 0.125);
	--blur: calc(var(--v-offset) * 2.0);
	box-shadow: 0 var(--v-offset) var(--blur) 0 rgba(var(--color-charcoal), 0.1), 0 var(--v-offset) var(--blur) 0 rgba(var(--color-charcoal), 0.1);
	border-bottom-left-radius: var(--spacer-_4x);
	border-bottom-right-radius: var(--spacer-_4x);
}
.solution-header {
	position: relative;
}
.solution-header-overlay {
	background-color: rgba(var(--color-charcoal), 0.75);
	position: absolute;
	z-index: 1;
	top: 0; right: 0; bottom: 0; left: 0;
}
.solution-header-content {
	position: absolute;
	z-index: 2;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	color: rgb(var(--color-white));
}
.solution-header-content > h2 {
	font-weight: 400;
	font-size: calc(var(--font-size) * 1.45);
	letter-spacing: var(--letter-spacing);
	text-align: center;
}
.solution-content {
	padding: var(--spacer-2x) var(--spacer-4x);
}

/************************************************************************************
 * Support Page
 ***********************************************************************************/
/* Root Container */
.support-root-container {
	display: grid;
	grid-template-rows: repeat(6, auto); 
	/*grid-gap: var(--spacer);*/
}

/* Hero Overlay */
.support-hero-image-overlay {
	background-image: linear-gradient(to right, rgba(var(--color-blue), 0.55), rgba(var(--color-charcoal), 0.25));
	position: absolute;
	z-index: 1;
	top: 0; right: 0; bottom: 0; left: 0;
}

/* Support Section */
.support-section {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
}
.support-grid-item {
	background-color: rgba(var(--color), 1.0);
	color: rgb(var(--color-white));
	padding: var(--spacer-4x) var(--spacer-4x);
}
.support-grid-item > h1 {
	font-weight: 400;
	font-size: calc(var(--font-size) * 1.75);
	letter-spacing: var(--letter-spacing);
	text-align: center;
	margin-bottom: var(--spacer-1-5x);
}
.support-grid-item > a {
	display: block;
	padding: var(--spacer);
	border: var(--spacer-_8x) rgb(var(--color-white)) solid;
	border-radius: var(--spacer-_4x);
	color: rgb(var(--color-white));
	text-align: center;
	font-weight: 600;
	letter-spacing: var(--letter-spacing);
	transition: all 0.25s ease;
	margin-bottom: var(--spacer-2x);
}
.support-grid-item > a:hover {
	color: rgb(var(--color));
	background-color: rgb(var(--color-white));
}
.support-grid-item > p > a {
	color: rgb(var(--color-white));
}
.support-grid-item > p > a:hover {
	color: rgb(var(--color-black));
}

/* E-mail Support Section */
.email-support-section {
	background-color: rgb(var(--color-lightgrey));
	color: rgb(var(--color-black));
	padding: var(--spacer-4x) var(--spacer-4x);
}
.email-support-section > h1 {
	font-weight: 400;
	font-size: calc(var(--font-size) * 1.75);
	letter-spacing: var(--letter-spacing);
	text-align: center;
	margin-bottom: var(--spacer-1-5x);
}
.email-support-section > form {
	margin-top: var(--spacer-2x);
	margin-bottom: var(--spacer);
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-gap: var(--spacer);
}
.email-support-section > form > * {
	padding: var(--spacer);
	background-color: rgb(var(--color-lightgrey));
	color: rgb(var(--color-black));
	border: var(--spacer-_8x) rgb(var(--color-black)) solid;
	border-radius: var(--spacer-_4x);
	font-family: "Open Sans";
	font-size: calc(var(--font-size) * 0.85);
}
.email-support-section > form > textarea {
	grid-column: 1 / 3;
}
.email-support-section > form > .button {
	font-weight: 600;
	letter-spacing: var(--letter-spacing);
	transition: all 0.25s ease;
	cursor: pointer;
}
.email-support-section > form > .button:hover {
	color: rgb(var(--color-white));
	background-color: rgb(var(--color-black));
}
.email-support-section > form > ::placeholder {
	color: rgb(var(--color-black));
	opacity: 1;
}
.email-support-section > form > ::-ms-input-placeholder {
	color: rgb(var(--color-black));
	opacity: 1;
}

/************************************************************************************
 * Contact Page
 ***********************************************************************************/
/* Root Container */
.contact-root-container {
	display: grid;
	grid-template-rows: repeat(6, auto); 
	/*grid-gap: var(--spacer);*/
}

/* Hero Overlay */
.contact-hero-image-overlay {
	background-image: linear-gradient(to right, rgba(var(--color-charcoal), 0.85), rgba(var(--color-violet), 0.45));
	position: absolute;
	z-index: 1;
	top: 0; right: 0; bottom: 0; left: 0;
}

/* Address Section */
.address-section {
	display: grid;
	grid-template-columns: 1fr 2fr;
	grid-gap: var(--spacer-2x);
	background-color: rgb(var(--color));
	padding: var(--spacer-4x) var(--spacer-4x);
}
.address-section > h1 {
	font-weight: 400;
	font-size: calc(var(--font-size) * 1.75);
	letter-spacing: var(--letter-spacing);
	text-align: center;
	grid-column: 1 / 3;
}
.st-address-section {
	display: flex;
	flex-direction:column;
	justify-content: space-between;
}
.st-address-section h3 {
	font-weight: 400;
	font-size: calc(var(--font-size) * 1.4);
}
.address-section > #google-map {
	background-color: rgb(var(--color));
	height: calc(var(--spacer) * 25.0);
}

/* Contacts Section */
.contacts-section {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-gap: var(--spacer-2x);
	background-image: linear-gradient(to right, rgba(var(--color-yellow), 1.0), rgba(var(--color-grapefruit), 1.0));
	padding: var(--spacer-4x) var(--spacer-4x);
	color: rgb(var(--color-white));
}

.contacts-section > h1 {
	font-weight: 400;
	font-size: calc(var(--font-size) * 1.75);
	letter-spacing: var(--letter-spacing);
	text-align: center;
	/*margin-bottom: var(--spacer-1-5x);*/
	grid-column: 1 / 4;
}
.contacts-section > a {
	display: block;
	padding: var(--spacer);
	border: var(--spacer-_8x) rgb(var(--color-white)) solid;
	border-radius: var(--spacer-_4x);
	color: rgb(var(--color-white));
	text-align: center;
	font-weight: 600;
	letter-spacing: var(--letter-spacing);
	transition: all 0.25s ease;
	/*margin-bottom: var(--spacer-2x);*/
}
.contacts-section > a:hover {
	color: rgb(var(--color-black));
	background-color: rgb(var(--color-white));
}

/************************************************************************************
 * Employee Login Page
 ***********************************************************************************/
/* Root Container */
.employee-login-root-container {
	display: grid;
	grid-template-rows: repeat(4, auto); 
	/*grid-gap: var(--spacer);*/
}

/* Employee Login Section */
.employee-login-section {
	background-color: rgb(var(--color));
	color: rgb(var(--color-black));
	padding: var(--spacer-4x) var(--spacer-4x);
}
.employee-login-section > h1 {
	font-weight: 400;
	font-size: calc(var(--font-size) * 1.75);
	letter-spacing: var(--letter-spacing);
	text-align: center;
	margin-bottom: var(--spacer-1-5x);
}
.employee-login-section > form {
	margin-top: var(--spacer-2x);
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-gap: var(--spacer);
}
.employee-login-section > form > * {
	padding: var(--spacer);
	background-color: rgb(var(--color-lightgrey));
	color: rgb(var(--color-black));
	border: var(--spacer-_8x) rgb(var(--color-black)) solid;
	border-radius: var(--spacer-_4x);
	font-family: "Open Sans";
	font-size: calc(var(--font-size) * 0.85);
}
.employee-login-section > form > .button {
	font-weight: 600;
	letter-spacing: var(--letter-spacing);
	transition: all 0.25s ease;
	cursor: pointer;
}
.employee-login-section > form > .button:hover {
	color: rgb(var(--color-white));
	background-color: rgb(var(--color-black));
}
.employee-login-section > form > ::placeholder {
	color: rgb(var(--color-black));
	opacity: 1;
}
.employee-login-section > form > ::-ms-input-placeholder {
	color: rgb(var(--color-black));
	opacity: 1;
}

/************************************************************************************
 * Disclaimer Page
 ***********************************************************************************/
/* Root Container */
.disclaimer-root-container {
	display: grid;
	grid-template-rows: repeat(6, auto); 
	/*grid-gap: var(--spacer);*/
}

/* Website Disclaimer Section */
.website-disclaim-section {
	background-color: rgb(var(--color-lightgrey));
	padding: var(--spacer-4x) var(--spacer-4x) var(--spacer-2x) var(--spacer-4x);
}
.website-disclaim-section > h2,
.email-disclaim-section > h2,
.remote-disclaim-section > h2 {
	font-weight: 400;
	font-size: calc(var(--font-size) * 1.45);
	letter-spacing: var(--letter-spacing);
	text-align: left;
	margin-bottom: var(--spacer-1-5x);
}
.website-disclaim-section > p,
.email-disclaim-section > p,
.remote-disclaim-section > p {
	margin-bottom: var(--spacer-2x);
}

/* E-mail Disclaimer Section */
.email-disclaim-section {
	background-color: rgba(var(--color-lightbrown), 0.7);
	padding: var(--spacer-4x) var(--spacer-4x) var(--spacer-2x) var(--spacer-4x);
}

/* Remote Access Liability Disclaimer Section */
.remote-disclaim-section {
	background-color: rgb(var(--color-lightgrey));
	padding: var(--spacer-4x) var(--spacer-4x) var(--spacer-2x) var(--spacer-4x);
}

/************************************************************************************
 * Trademarks Page
 ***********************************************************************************/
/* Root Container */
.trademarks-root-container {
	display: grid;
	grid-template-rows: repeat(4, auto); 
	/*grid-gap: var(--spacer);*/
}

/* Trademarks Section */
.trademarks-section {
	background-color: rgb(var(--color-lightgrey));
	padding: var(--spacer-4x) var(--spacer-4x) var(--spacer-2x) var(--spacer-4x);
}
.trademarks-section > h2 {
	font-weight: 400;
	font-size: calc(var(--font-size) * 1.45);
	letter-spacing: var(--letter-spacing);
	text-align: left;
	margin-bottom: var(--spacer-1-5x);
}
.trademarks-section > p {
	margin-bottom: var(--spacer-2x);
}

/************************************************************************************
 * Browser Compatibility Page
 ***********************************************************************************/
/* Root Container */
.browser-comp-root-container {
	display: grid;
	grid-template-rows: repeat(4, auto); 
	/*grid-gap: var(--spacer);*/
}

/* Browser Compatibility Section */
.browser-comp-section {
	background-color: rgb(var(--color-lightgrey));
	padding: var(--spacer-4x) var(--spacer-4x) var(--spacer-2x) var(--spacer-4x);
}
.browser-comp-section > h2 {
	font-weight: 400;
	font-size: calc(var(--font-size) * 1.45);
	letter-spacing: var(--letter-spacing);
	text-align: left;
	margin-bottom: var(--spacer-1-5x);
}
.browser-comp-section > p {
	margin-bottom: var(--spacer-2x);
}

/************************************************************************************
 * FSR Page
 ***********************************************************************************/
/* Root Container */
.fsr-root-container {
	display: grid;
	grid-template-rows: repeat(4, auto); 
	/*grid-gap: var(--spacer);*/
}

/* PHP Response Section */
.php-response-section {
	background-color: rgb(var(--color-lightgrey));
	padding: var(--spacer-4x) var(--spacer-4x) var(--spacer-4x) var(--spacer-4x);
}
.php-response-section > h2 {
	font-weight: 400;
	font-size: calc(var(--font-size) * 1.45);
	letter-spacing: var(--letter-spacing);
	text-align: left;
	margin-bottom: var(--spacer-1-5x);
}

/* Field Service Report Section */
.fsr-section {
	background-color: rgb(var(--color));
	color: rgb(var(--color-black));
	padding: var(--spacer-4x) var(--spacer-4x);
}
.fsr-section > h1,
.fsr-section > form > h1 {
	font-weight: 400;
	font-size: calc(var(--font-size) * 1.75);
	letter-spacing: var(--letter-spacing);
	text-align: center;
	margin-bottom: var(--spacer-1-5x);
}
.fsr-section > form > h1 {
	grid-column: 1 / 3;
	margin-top: var(--spacer-2x);
}
.fsr-section > form > h2 {
	font-weight: 400;
	font-size: calc(var(--font-size) * 1.45);
	letter-spacing: var(--letter-spacing);
	text-align: left;
	grid-column: 1 / 2;
}

.fsr-section > form {
	margin-top: var(--spacer-2x);
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-gap: var(--spacer);
}
.fsr-section > form > input,
.fsr-section > form > select,
.fsr-section > form > textarea {
	padding: var(--spacer);
	background-color: rgb(var(--color-lightgrey));
	color: rgb(var(--color-black));
	border: var(--spacer-_8x) rgb(var(--color-black)) solid;
	border-radius: var(--spacer-_4x);
	font-family: "Open Sans";
	font-size: calc(var(--font-size) * 0.85);
}
.fsr-section > form > input,
.fsr-section > form > select {
	/* Currently Made Global */
	/* See form > input and form > select */
}
.fsr-section > form > textarea {
	grid-column: 1 / 3;
}
.fsr-section > form > .button {
	font-weight: 600;
	letter-spacing: var(--letter-spacing);
	transition: all 0.25s ease;
	cursor: pointer;
}
.fsr-section > form > .button:hover {
	color: rgb(var(--color-white));
	background-color: rgb(var(--color-black));
}
.fsr-section  > form > ::placeholder {
	color: rgb(var(--color-black));
	opacity: 1;
}
.fsr-section  > form > ::-ms-input-placeholder {
	color: rgb(var(--color-black));
	opacity: 1;
}
/************************************************************************************
 * Post-submit Page
 ***********************************************************************************/
/* Root Container */
.post-submit-root-container {
	display: grid;
	grid-template-rows: repeat(4, auto); 
	/*grid-gap: var(--spacer);*/
}

/* Post-submit Response Section */
.post-submit-response-section {
	background-color: rgb(var(--color-lightgrey));
	padding: var(--spacer-4x) var(--spacer-4x) var(--spacer-4x) var(--spacer-4x);
}
.post-submit-response-section > h2 {
	font-weight: 400;
	font-size: calc(var(--font-size) * 1.45);
	letter-spacing: var(--letter-spacing);
	text-align: left;
	margin-bottom: var(--spacer-1-5x);
}