/* CSS for about.html, welcome.html, services.html, & order.html */

/* begin global styles */
* {
	box-sizing: border-box;
}

body {
	font-family: Verdana, Arial, Helvetica, sans-serif;
	font-size: 1em;
	color: #000000;
	background-color: #9F9F9F;
	margin: 0;
	padding: 0;
	max-width: 900px;
	min-width: 680px;
	margin: 0 auto;
}
div {
	margin: 0;
	padding: 0;
}
a {
	color: #B86A12;
}
a:link {
	text-decoration: none;
	color: #B86A12;
}
a:visited {
	color: #B86A12;
}
a:hover {
	text-decoration: underline;
	color: #B86A12;
}
a:active {
	text-decoration: underline;
	color: #B86A12;
}

#pagewrapper {
	background-image: -webkit-linear-gradient(top, #DDDD00, #009043);
	background-image: -moz-linear-gradient(top, #DDDD00, #009043);
	background-image: -ms-linear-gradient(top, #DDDD00, #009043);
	background-image: -o-linear-gradient(top, #DDDD00, #009043);
	box-shadow: 1px 1px 2px 1px #5C5C5C;
}
header {
	text-align: center;
	/* padding: 2em 0 2em 0; */
	padding: 4em 0 0 0;
	/* border-bottom: 1px solid #000000; */
	background-image: url(../images/topbanner.jpg);
}
#htitle {
	padding: 0.5em 0 0.5em 0;
	vertical-align: bottom;
	background-image: url(../images/topbanner-title_30.png);
	background-color: #FFFFFF;
}
#htitle h1 {
	margin: 0 0 0 0;
}
nav#hnav {
	margin: 0 auto 0.1em auto;
	padding: 0;
}
aside, #sidewrap {
	float: left;
	width: 30%;
}
#sidebar {
	padding: 8px 24px;
	margin: 16px 20px;
	border: 1px solid #000000;
	border-radius: 10px;
	background-color: #50BF84;
}
#sidebar h3 {
	font-weight: normal;
}
#tag-usidebar {
	padding: 2px 24px 0 24px;
	margin: 0 18px;
	font-weight: bold;
	text-align: center;
}
#tag-usidebar p {
	margin-top: 0;
}
#img-usidebar {
	margin: 0 20px;
	padding: 0 24px 0 20px;
}
#img-usidebar>img {
	width: 100%;
	height: auto;
}
article {
	padding: 10px 28px;
	margin-top: 16px;
	float: right;
	width: 70%;
	background-color: #FFFFFF;
	background-image: url(../images/content-bg-l-15.jpg);
}
footer {
	clear: both;
	text-align: left;
	padding: 10px;
	border-top: 1px solid #000000;
}
footer p:not([id]) {
	margin: 0;
	text-align: right;
}
#jsdate {
	display: inline-block;
	float: left;
	margin: 0;
}
#copy {
	display: inline-block;
	float: right;
	margin: 0;
}
footer hr {
	border-color: #007737;
}
nav#fnav a {
	display: inline-block;
	margin: 0 0.5% 0.4% 0.5%;
}

.fb-like {
	width: 92px;
	margin: 0 89px;
	padding-bottom: 12px;
}

.fullw {
	width: 100% !important;
}
.icaption {
	text-align: center;
	margin: 0.2em 0 0.4em 0;
	font-style: italic;
	font-size: 0.9em;
}
/* end global styles */

/* begin styles for the nav bar and bottom nav */
.navbutton {
	margin: 0;
	display: inline-block;
	height: 26px;
	width: 24%;
	padding-top: 4px;
	text-align: center;
	color: #000000;
}
.navbutton, nav#hnav, footer {
	background-image: -webkit-linear-gradient(top, #00B454, #26CA72, #00B454);
	background-image: -moz-linear-gradient(top, #00B454, #26CA72, #00B454);
	background-image: -ms-linear-gradient(top, #00B454, #26CA72, #00B454);
	background-image: -o-linear-gradient(top, #00B454, #26CA72, #00B454);
}
.navbutton:hover {
	background-image: -webkit-linear-gradient(top, #00B454, #36DA82, #00B454);
	background-image: -moz-linear-gradient(top, #00B454, #36DA82, #00B454);
	background-image: -ms-linear-gradient(top, #00B454, #36DA82, #00B454);
	background-image: -o-linear-gradient(top, #00B454, #36DA82, #00B454);
}
.navbutton:active, .navbutton-current, .navbutton-current:hover {
	background-image: -webkit-linear-gradient(top, #00B454, #2BA865, #00B454);
	background-image: -moz-linear-gradient(top, #00B454, #2BA865, #00B454);
	background-image: -ms-linear-gradient(top, #00B454, #2BA865, #00B454);
	background-image: -o-linear-gradient(top, #00B454, #2BA865, #00B454);
}
a.navl-current {
	font-weight: bold;
}
a.navl-current:hover, a.navl-current:active {
	text-decoration: none;
}
/* end styles for the nav bar and bottom nav */

/* begin styles for things on the home page */
#homepagetop {
	border: 1px solid #000000;
}
.homestitle {
	font-style: italic;
}
.ifyes {
	font-size: 1.1em;
	text-align: center;
}
/* end styles for things on the home page */

/* begin styles for things on the about page */
.ecolor {
	color: #F60D0B;
}
.eunder {
	text-decoration: underline;
}
.pcenter {
	text-align: center;
}
.pright {
	text-align: right;
}
.vtop {
	vertical-align: top;
}
.pjust {
	text-align: justify;
}
.fullsize-note {
	font-style: italic;
	margin-top: 0;
	margin-bottom: 6px;
	font-size: 0.9em;
}
.gallery-single {
	margin: 2px 0;
	width: 100%;
	height: auto;
}
.novideo {
	width: 400px;
	text-align: center;
	margin: 0 auto;
	vertical-align: middle;
}
/* end styles for things on the about page */

/* begin styles for things on the products page */
.products {
	list-style: upper-roman;
}
.product {
	padding: 8px 0;
}
.prod-wide {
	padding-bottom: 25px;
}
.prod-narrow {
	padding-bottom: 103px;
}
.subproducts {
	list-style: square;
}
.subproduct {
	padding-top: 10px;
}
.prodimg {
	margin: 10px;
	border-radius: 5px;
	display: block;
	float: right;
}
.side-lastp {
	margin-top: 3em;
	font-weight: bold;
}
/* end styles for things on the products page */

/* begin styles for things on the order page */
/* Global */
.formset {
	margin-bottom: 16px;
}
.formset>legend {
	border: 1px solid #000000;
	border-radius: 4px;
	padding: 4px;
}
.formset>div {
	padding-bottom: 5px;
}
label {
	display: inline-block;
}
label.label-required:after {
	content: " *";
	color: #F60D0B;
}
.pseudolabel {
	margin: 0.5em 0;
}
input {
	padding: 2px;
}
input[required], select[required] {
	border: 1px solid #F60D0B;
}

/* Sidebars */
#order-usidebar {
	padding: 8px 24px;
	margin: 16px 20px;
	border: 1px solid #000000;
	border-radius: 10px;
	background-color: #50BF84;
}
#order-lsidebar {
	padding: 8px 24px;
	margin: 16px 20px;
	border: 1px solid #000000;
	border-radius: 10px;
	background-color: #50BF84;
}
#order-lsidebar blockquote {
	font-style: italic;
	margin-left: 1em;
	margin-right: 1em;
	margin-bottom: 0.3em;
}
.quote-cite {
	text-align: right;
	font-size: 0.9em;
	margin-top: 0.3em;
	margin-bottom: 2em;
}
#order-usidebar h3, #order-lsidebar h3 {
	font-weight: normal;
}

/* Contact */
#contact {
	width: 100%;
}
.label-contact {
	width: 8.8em;
}
.label-contact-addr {
	width: 6em;
}

#contact-name {
	width: 155px;
}
.contact-phone {
	width: 155px;
}
#contact-email {
	width: 155px;
}
#contact-bdate {
	width: 155px;
}
.contact-addr-line {
	width: 200px;
}
#contact-addr-zip {
	width: 58px;
}

/* Prop. address */
#addr {
	width: 100%;
}
.label-addr {
	width: 6em;
}
.addr-line {
	width: 200px;
}
#addr-zip {
	width: 58px;
}
.addr-gpscoords-coord {
	width: 200px;
}

/* Proj. requirements */
#projreqs {
	width: 100%;
}
.label-projreqs-l {
	width: 16em;
}
.projreqs-container {
	display: inline-block;
}
#projreqs-desc {
	width: 100%;
	height: 6em;
}

/* Schedule a consultation */
#schedule {
	width: 100%;
}
.label-schedule {
	width: 7.5em;
}
#schedule-schdate {
	width: 220px;
}

/* Areas of interest */
#interest {
	width: 100%;
}
.label-interest-l {
	width: 16em;
}
.interest-container {
	display: inline-block;
}

/* Demographics */
#demos {
	width: 100%;
}
.label-demos {
	width: 6em;
}
.label-demos-gender {
	width: 9em;
	vertical-align: top;
}
#demos-gender {
	list-style: none;
	margin-top: 0.5em;
}
#demos-gender li {
	padding-bottom: 0.2em;
}

/* Comments */
#comments {
	width: 100%;
}
#comments-area {
	width: 100%;
	height: 8em;
}

/* Submit */
#submit-reset {
	width: 240px;
	float: right;
}
.dosubmit, .doreset {
	width: 100px;
	height: 35px;
	margin: 8px;
	color: #FFFFFF;
}
.dosubmit {
	background-image: -webkit-linear-gradient(top, #30AA30, #309930);
	background-image: -moz-linear-gradient(top, #30AA30, #309930);
	background-image: -ms-linear-gradient(top, #30AA30, #309930);
	background-image: -o-linear-gradient(top, #30AA30, #309930);
	font-weight: bold;
	font-size: 14px;
}
.doreset {
	background-image: -webkit-linear-gradient(top, #CC4040, #BB4040);
	background-image: -moz-linear-gradient(top, #CC4040, #BB4040);
	background-image: -ms-linear-gradient(top, #CC4040, #BB4040);
	background-image: -o-linear-gradient(top, #CC4040, #BB4040);
	font-weight: bold;
	font-size: 14px;
}
/* end styles for things on the order page */

/* begin styles for things on the form processing page */
.oproc-fvalues {
	border: 1px solid #4F4F4F;
	border-collapse: collapse;
	width: 100%;
	max-width: 100%;
}
.oproc-fieldname {
	width: 30%;
}
.oproc-fieldvalue {
	width: 70%;
}
.oproc-fvalues th, .oproc-fvalues td {
	border: 1px solid #4F4F4F;
}
.oproc-fvalues th {
	padding: 0.5em;
}
.oproc-fvalues td {
	padding: 0.4em;
	overflow-wrap: break-word;
}
.oproc-pre {
	font-family: "Consolas", monospace;
	margin: 0;
	font-size: 1.05em;
	width: 578px;
}
/* end styles for things on the form processing page */

/* begin styles for things on the file list */
#filelist-content {
	padding: 24px;
	width: 100%;
	background-color: #FFFFFF;
	background-image: url(../images/content-bg-l-15.jpg);
}
#filelist-content h2 {
	margin: 0 0 0.5em 0;
}
#filelist-content table {
	width: 100%;
}
#filelist-content th {
	text-align: left;
}

.lsdivider {
	height: 12px;
}
.lsdivider hr {
	margin: 0;
	border-color: #000000;
}
.hoverable:hover {
	background-color: #CFCFCF;
}
.hoverable:active {
	background-color: #80EF94;
}
.filelist-row {
	width: 100%;
	color: #000000;
}

.cticon {
	width: 2%;
	vertical-align: top;
}
.cname {
	width: 24%;
	text-align: left;
}
th.cname {
	vertical-align: bottom;
}
td.cname {
	vertical-align: middle;
}
.cname-head {
	list-style: none;
	margin: 0;
	padding: 0;
}
.cname-head li {
	display: inline-block;
	margin-right: 4px;
}
.cname-head li a {
	vertical-align: bottom;
}
.cmtime {
	width: 18%;
	text-align: left;
}
.cfsize {
	width: 8%;
	text-align: right;
}
.cdesc {
	width: 18%;
}
/* end styles for things on the file list */
