/* -----------------------------------------------------------------------------------------------------
File Author:	Ryan Marincovich (ryan.marincovich@3plains.com)
Date Created:   2016.06.14
Client:         3Plains
File Purpose:	Framework style sheet
Revisions:
-------------------------------------------------------------------------------------------------------- 
CONTENTS
	- Global
	- Links/Buttons
	- Text
	- Images
	- Framework Header
	- Navigation
	- Framework Body
	- Framework Footer
	- Home
	- Common page / index
	- Modules
	- Form Inputs
	- Forms
	- Form Alerts
	- Site Map
*/

/* TRANSITIONS CONTROLS
body {
	transition: all .3s linear; 
    -webkit-transition: all .3s linear;
} */

/* ==>  Global  ---------------------------------------------------------------------------------------- */
html { font-size: 62.5%; }
body {
	min-width: 75%;
	font-family: Helvetica, Arial, sans-serif;
	height: 100%;
}
*[class*=rel] { position: relative; }
* {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
img {
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
}
#Body > nav {
	position: absolute;
	top: 0;
	right: 0;
	width: 80%;
	float: left;
	z-index: 100;
}
#Body > nav { display: none; }
#Body div#slide {
	width: 100%;
	display: block;
	top: 0;
	z-index: 9000;
}
#Body.reveal div#slide { right: 0; }
#Body.reveal div#slide,
#Body div#slide {
	transition:all .3s linear; 
    -webkit-transition:all .3s linear;
}

/* ==>  Links/Buttons ---------------------------------------------------------------------------------------- */
a, 
a:visited { text-decoration: none; }
a:hover, 
a:active,
a:focus { text-decoration: underline; }
a.opposite, 
a:visited.opposite { text-decoration: underline; }
a.button:hover, 
a.button:active,
a.button:focus,
a.opposite:hover, 
a.opposite:active,
a.opposite:focus { text-decoration: none; }
a.button p { padding: 8px 0 5px; }
a.button,
input[type=submit] { min-height: 50px; }
a.button { 
	padding: 12px 20px 8px;
	display: inline-block;
}
input[type=submit] { padding: 0 20px; }
.row a.button,
.details a.button {
	text-align: center;
    text-decoration: none;
	display: inline-block;
}
input[type=submit].small {
	height: 30px;
	min-height: 30px;
	padding: 0 5px;
}
/* remove pushbutton appearance from safari/chrome on mobile and restore to designed look */
input[type="submit"],
button { -webkit-appearance: inherit; }

/* ==>  Text ---------------------------------------------------------------------------------------- */
p.centered-text { text-align: center; }
*.no-records {
	padding: 20px 0 !important;
	text-align: center;
	clear: both;
}
div[class^=gutters] { 
	width: 100%;
	max-width: 720px;
	padding: 0; 
	margin: 0 auto;
	display: block;
}
#Primary div[class^=gutters] { padding: 0 0 25px; }
div.padded { padding: 25px 10px 10px; }

/* ==>  Images ---------------------------------------------------------------------------------------- */
img.float-right { float: right; }
img.float-left { float: left; }
div[id^=image] { position: relative; }
img[class^=scale] {
    width: 100%;
	max-width: 100%;
	height: auto !important;
	margin: 0 auto;
	padding: 0;
}
div#Big img.home {
	max-width: 100%;
	height: auto !important;
	margin: 0 auto;
	padding: 0;
}
div.imageWrap {
	max-width: 50%;
	padding: 7px 0 20px 35px;
	float: right;
}
div.imageWrap img {
	max-width: 100%;
	height: auto !important;
	float: left;
}

/* ==>  Framework Header ---------------------------------------------------------------------------------------- */
#NavWrap.top-anchor {
	position: fixed;
	top: 0;
	z-index: 9999;
}	
header { width: 100%; }
header > .wrap { 
	clear: both;
	position: relative; 
}
header > div#NavWrap { 
	float: left;
	position: relative;
}

/* ==>  Navigation ---------------------------------------------------------------------------------------- */
#mobileNav, #dropSearch { display: none; }
nav {
	float: left;
	position: relative;
	z-index: 500;
}
nav > ul > li {
	height: 100%;
	padding: 0;
	float: left;
	z-index: 500;
	position: relative;
}
nav > ul > li a.global {
	height: 100%;
	padding: 0;
	float: left;
}
nav > ul > li:hover a.global, 
nav > ul > li:active a.global, 
nav > ul > li:focus a.global,
nav > ul > li.on a.global { 
	text-decoration: none;
	transition: all .3s linear; 
    -webkit-transition: all .3s linear;
}
nav > ul > li a.global > p { 
	float: left;
	position: relative;
}
header nav > ul > li > div.drop {
	position: absolute;
	padding: 0;
	margin: 0;
	visibility: hidden;
	opacity: 0;
	transition: visibility 0s linear 0.2s, opacity 0.2s linear;
	-webkit-transition: visibility 0s linear 0.2s, opacity 0.2s linear;
	z-index: 800 !important;
}
nav > ul > li > div.drop {
	width: 100%;
	margin: 0;
	float: left;
}
nav > ul > li ul {
	width: 100%;
	padding: 5px;
	margin: 0;
	float: left;
}
header nav > ul > li:hover div, 
header nav > ul > li:active div, 
header nav > ul > li:focus div { 
	visibility: visible;
	opacity: 1;
	transition-delay: 0s;
	-webkit-transition-delay: 0s;
}
nav > ul li ul li {
	width: 100%;
	float: left;
}
nav > ul li ul li a {
	width: 100%;
	margin: 0;
	float: left;
}
header nav > ul li ul li a:hover, 
header nav > ul li ul li a:active, 
header nav > ul li ul li a:focus {
	text-decoration: none;
}
nav > ul li ul li p { float: left; }
nav a.sticky-home p,
#NavWrap .sticky-home { display: none; }
@media only screen and (min-width : 630px) {
	#NavWrap.top-anchor .sticky-home { display: block; }
}

/* ==>  Framework Body ---------------------------------------------------------------------------------------- */
header, 
#content, 
footer { min-width: 320px; }
.wrap {
	/* IF RESTRICTING WIDTH
	width: 70%;
	max-width: 1200px;*/
	/* IF FULL WIDTH */
	width: 100%;
	max-width: 100%;
	margin: 0 auto;
}
#Page.wrap {
	width: 100%;
	max-width: 1024px;
}
#content {
	width: 100%;
	text-align: left;
	min-height: 200px;
}
#content .wrap {
	padding: 0 0 40px; 
	clear: left;
}
#content #Page { 
	padding: 35px 20px 150px;
	clear: both;
}
#content #Page .section {
	width: 100%;
	padding: 30px 0 0;
	float: left;
}
#content #Page #BlogComments { margin: 15px 0 0; }
#content #PrimaryCols, 
#content #SectionCustom {
	width: 100%;
	padding: 0;
	float: left;
}
#Breadcrumb {
	width: 100%;
	min-height: 50px;
	padding: 0 0 5px;
}
#Breadcrumb ul { 
	padding: 9px 0 0 20px;
	margin: 0; 
}
#Breadcrumb ul li { 
	padding: 6px 5px 6px 0;
	display: inline-block;
}
@media (pointer:coarse) {
	#Breadcrumb ul li p,
	#Breadcrumb ul li a { padding: 0 5px; }
}
#Breadcrumb ul li.divider { padding-right: 3px; } 

/* ==>  Framework Footer ---------------------------------------------------------------------------------------- */
footer {
	width: 100%;
	padding: 0 0 30px;
	clear: left;
	text-align: center;
}
footer .connect {
	width: 100%;
	padding: 20px 0 25px;
	float: left;
}
footer .connect .signup {
	width: 400px;
	padding: 0 15px;
	margin: 0 auto;
	display: block;
}
footer .connect .signup h5 {
	width: 100%;
	padding: 0 0 10px;
	float: left;
	text-align: center;
}
footer .connect .signup label {
	padding: 5px 15px 0 0;
	float: left;
}
footer .connect .signup input[type=email] { 
	width: 240px;
	float: left;
}
footer .connect .signup input[type=submit].small { float: right; }
@media only screen and (max-width : 450px) {
	footer .connect .signup { width: 100%; }
	footer .connect .signup input[type=email] { width: 150px; }
}
footer > h2 {
	padding: 20px 0 0;
	clear: both;
}
footer div.box {
	width: 100%;
	max-width: 100%;
	margin: 0 auto;
	padding: 15px;
	display: block;
}
footer .split p { padding: 0; }
footer .split .box p { padding: 0 0 2px; }
footer .split .box p.links { padding: 20px 0; }
footer p.links a { padding: 0 15px; }

/* ==>  Home ---------------------------------------------------------------------------------------- */
.slider {
	width: 100%;
	max-width: 100%;
}
#HomeSlide .galleria-theme-classic .galleria-stage { 
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: #000;
}
#HomeSlide .galleria-info-link { display: none; }
/*div#HeroSlide {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 111;
	width: 60%;
	height: 100%;
	z-index: 105;
}
div#HeroSlide div.hero-slide {
	position: absolute;
	left: 0;
	height: 40px;
	background: rgba(255,255,255,0.7);
	border: 2px solid #fff;
	border-radius: 0 5px 5px 0;
	-webkit-border-radius: 0 5px 5px 0;
	cursor: pointer;
	z-index: 150;
	-webkit-animation-name: slideinRight;
	animation-name: slideinRight;
}
div#HeroSlide div.hero-slide p { 
	padding: 5px 20px 0 0; 
	text-align: right;
}
div#HeroSlide div#One {
	top: 20px;
	width: 50%;
	-webkit-animation-duration: 1s;
	animation-duration: 1s;
}
div#HeroSlide div#Two {
	top: 50%;
	width: 70%;
	margin: -20px 0 0;
	-webkit-animation-duration: 1.5s;
	animation-duration: 1.5s;
}
div#HeroSlide div#Three {
	bottom: 20px;
	width: 90%;
	-webkit-animation-duration: 2s;
	animation-duration: 2s;
}
@-webkit-keyframes slideinRight {
	from { margin-left: -200%; }
	to { margin-left: 0; }
}
@keyframes slideinRight {
	from { margin-left: -200%; }
	to { margin-left: 0; }
}*/
div.ctas {
	width: 100%;
	float: left;
}
div.ctas .cta { float: left; }
div.ctas .cta img {
    width: 100%;
	max-width: 100%;
	height: auto !important;
	margin: 0 auto;
}
/* ==>  Common page / index ---------------------------------------------------------------------------------------- */
*[class^=bar] { clear: both; }
*[class^=bar] a.right, 
*[class^=bar] p.right { text-transform: capitalize; }
*[class^=bar] a { font-weight: normal; }
*.bar-head { 
	width: 100%;
	float: left;
	border-radius: 0; 
}
div.bar-head p { float: left; }
*[class^=bar] select {
	margin: 10px 8px 0 0;
	float: right;
}
*[class^=bar] input[type=submit].small { float: right; }
*.bar-head select,
*.bar-head input[type=submit].small { float: left; }
*[class^=bar] img.icon {
	margin: 0;
	padding: 16px 20px 5px;
	float: right;
	background: none;
}
#Rows { 
	padding-top: 0;
	margin: 15px 0 0; 
}
*[class^=targets] > a {
	width: 100%;
	float: left;
}
*[class^=targets] p { font-weight: normal; }
*[class^=targets] a:hover, 
*[class^=targets] a:active, 
*[class^=targets] a:focus { text-decoration: none; }
*[class^=targets] a:hover p[class^=title], 
*[class^=targets] a:active p[class^=title], 
*[class^=targets] a:focus p[class^=title] { text-decoration: underline; }
*[class^=targets] ul li { float: left; }
*[class^=targets] div.data { padding: 0 0 10px; }
*[class^=targets] ul[class~="two"] li { 
	width: 50%; 
	padding: 10px 20px 15px;
	text-align: left;
}
*[class^=targets] ul[class~="two"] > a { 
	width: 100%;
	float: left;
}
*[class^=targets] a.scale img {
	width: 400px;
	height: auto !important;
	max-height: 100%;
	max-width: 100%;
	margin: 0 auto;
	float: none;
	display: block;
}
*[class^=targets] div[class^=row] {
	width: 100%;
	padding: 35px 30px 10px;
	float: left;
}
div.targets {
	width: 100%;
	padding: 0 0 20px;
	float: left;
}
div.targets ul {
	width: 100%;
	padding: 30px 0 0;
	margin: 0;
	float: left;
	list-style: none;
}
div.targets ul > li {
	width: 25%;
	padding: 0 10px;
	float: left;
	text-align: center;
	background: none;
}
div.targets p.title {
	padding: 11px 0 3px;
	text-align: center;
}
div.targets div.row p.title {
	padding: 5px 0 15px;
	text-align: left; 
}
div.targets div.row p.info { padding: 0 0 10px; }
div.targets p.overview { padding: 0 0 20px; }
div.targets div.row a.right { 
	max-width: 45%;
	padding: 0 0 30px 35px;
	float: right; 
}
div.targets div.row a.button {
	width: 200px;
	float: left;
	text-align: center;
}
div.targets div.data { padding: 0 0 25px; }
div.targets div.scalebox {
	width: 100%;
	height: 200px;
	position: relative;
}
div.targets div.scalebox > p {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	max-width: 100%;
	padding: 0;
}
div.targets div.scalebox img {
	width: auto;
	height: auto !important;
	max-height: 180px;
	max-width: 100%;
	margin: 0 auto;
	float: none;
	display: block;
}
div.group {
	width: 100%;
	padding: 20px 0 25px;
	float: left;
}
div.group ul { 
	padding: 0 0 15px 20px; 
	list-style: square outside;
}
div.group ul > li { 
	padding: 0 30px 0 0;
	text-align: left; 
}
div.group ul > li p { display: inline; }
div.group ul[class~="two"] li { padding: 0 20px 0 0; }
*[class^=targets] div[class^=row] img {
	padding: 0 0 30px 35px;
	float: right;
}
.sxs > br { display: none; }
.sxs {
	width: 100%; 
	margin: 0;
	padding: 35px 0 20px;
	float: left;
}
.sxs-inner h2,
.sxs-inner h3,
.sxs-inner h4 { margin: 0; }
.details p img,
.sxs > img,
.sxs p img {
    max-width: 100%;
	height: auto !important;
}
.sxs .image-wrap img {
	max-width: 100%;
	height: auto !important;
	border: 0;
	padding: 0;
	float: right;
}
*[class^=targets] div[class^=row] img {
    max-width: 45%;
	height: auto !important;
	border: 0;
	padding: 0 0 30px 35px;
	float: right;
}
.sxs .image-wrap {
    max-width: 45%;
    padding: 0 0 30px 35px;
    float: right;
}
.image-wrap p { 
    padding: 5px 0 0;
    float: left;
}
div.block.center .image-wrap p { float: none; }
.sxs .sxs-inner { padding: 0; }
.sxs.left .image-wrap {
    padding: 0 0 25px;
	float: left;
}
.sxs.left img {
	padding: 0;
	float: left;
}
.sxs.left .sxs-inner { padding: 0 0 0 50%; }
div.block {
	width: 100%; 
	margin: 0;
	padding: 35px 0 20px;
	float: left;
}
div.block h2,
div.block h3,
div.block h4,
div.block h5,
div.block h6 { margin: 0; }
div.block.center .image-wrap {
    width: 100%;
    padding: 0 0 25px;
}
div.block.center img {
	max-width: 100%;
	height: auto !important;
	margin: 0 auto;
	display: block;
}
@media only screen and (max-width : 750px) {
	.sxs.left .image-wrap,
    .sxs .image-wrap {
        max-width: 100%;
        padding: 0 0 25px;
        float: none;
    }
    .image-wrap p { float: none; }
    .sxs .image-wrap img,
	.sxs.left img,
	.sxs img {
        margin: 0 auto;
		float: none;
		display: block;
    }
	.sxs.left .sxs-inner { padding: 0; }
}

/* ==>  Modules ---------------------------------------------------------------------------------------- */
div.hours {
	width: 32%;
	padding: 0 0 30px;
	float: right;
}
div.hours .box {
	width: 100%;
	padding: 0 0 5px;
}
div.hours .box p { padding: 12px 15px 5px; }
#Showcase {
	width: 100%;
	padding: 0 0 30px;
	float: left;
}
#Showcase .gallery { padding: 0; }
#Showcase .right {
	width: 35%;
	float: right;
}
#Showcase .right .att-row {	padding: 0 10px 10px; }
#Showcase .right .att-row p { padding: 0 0 5px; }
#Showcase .right .att-row p.label { 
	padding: 10px 0 5px;
	text-transform: capitalize;
}
#Showcase .left {
	width: 61%;
	float: left;
}
#Showcase .left .details { width: 96%; }
#Showcase .imageWrap {
	width: 100%;
	max-width: 100%;
	padding: 0;
	float: left;
}
#Showcase .imageWrap img { 
	max-width: 100%;
	height: auto;
	margin: 0 auto;
	float: none;
}
div.sub-title { padding: 0 0 20px; }
div[class^=widget] {
	max-width: 100%;
	padding: 15px 0 10px;
	clear: both;
	text-align: center;
}
.paging-bar { 
	width: 100%;
	min-height: 50px;
	float: left;
}
.paging-bar > div { padding: 10px; }
.paging-bar > div.count { 
	width: 25%;
	padding: 13px 0 12px 10px;
	float: left;
}
.paging-bar > div.count p { padding: 0; }
.pagination {
	width: 70%;
	padding: 10px 0;
	float: right;
	text-align: right;
}
.pagination a,
.pagination > p { margin: 0 0 0 5px; }
.paging-bar p,
.pagination a { display: inline-block; }
.pagination p { 
	min-width: 40px;
	padding: 8px 5px 6px;
	text-align: center;
}
.pagination p.ellipsis {
	min-width: 10px;
	padding: 3px 2px 1px;
}
#MediaGallery {
	width: 100%;
	max-width: 800px;
	padding: 0;
	margin: 10px auto 30px;
	clear: both;
}
#MediaGallery #gallery .galleria-image-nav { top: 35%; }
#MediaGallery div.thumbs {
	width: 96%;
	padding: 10px 0 0;
	margin: 0 auto;
	overflow-x: auto;
	overflow-y: hidden;
}
#MediaGallery div.thumbs > div { 
	width: auto;
	height: 120px;
	white-space: nowrap;
}
div.thumbs div.block {
	padding: 5px 5px 0;
	display: inline-block;
	position: relative;
	cursor: pointer;
	*display: inline;
}
div.thumbs div.block div.link { 
	float: left; 
	position: relative;
}
div.thumbs div.block img[class*=thumb] { 
	max-width: 120px;
	height: auto;
	float: left;
}
div.thumbs div.block img.icon {
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: 400;
}
div.thumbs div.block p.source {
	position: absolute;
	right: 2px;
	bottom: 2px;
	padding: 0 5px 2px;
	z-index: 400;
}
#MediaGallery div.target {
	width: 100%;
	max-width: 100%;
	margin: 0 auto;
	padding: 0;
}
#MediaGallery div.target > div { width: 100%; }
#MediaGallery div.target > div #videoContentDetail, 
#MediaGallery div.target > div #videoYouTube {
	padding: 0;
	clear: none;
}
#MediaGallery div.target > div #gallery { 
	width: 100%;
	padding: 0;
	position: relative;
}
#MediaContent > p { padding: 10px 10px 5px; }
#MediaDetail {
	width: 100%;
	max-width: 960px;
	margin: 0 auto;
	padding: 10px 0 30px;
}
.inline-vid-wrapper {
	width: 100%;
	padding: 0 0 35px;
}
.EmbeddedVideo {
	height: 0;
	padding: 30px 0 56.25%;
	overflow: hidden;
	position: relative;
}
.EmbeddedVideo iframe, 
.EmbeddedVideo embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* ==>  Form Inputs ---------------------------------------------------------------------------------------- */
input[type=text], 
input[type=password], 
textarea, 
select, 
input[type=email], 
input[type=tel], 
input[type=search] { 
	min-height: 30px;
	float: left; 
}
@media (pointer:coarse) {
	input[type=text], 
	input[type=password], 
	textarea, 
	input[type=email], 
	input[type=tel], 
	input[type=search] { min-height: 40px; }
}
#recaptcha_widget_div input[type=text] { min-height: 0; }
select { height: 30px; }
@media (pointer:coarse) {
	input[type=submit].small { padding: 0 10px; }
}
*[class^=bar] input[type=submit].small { margin: 10px 10px 0 0; }
input[type=text], 
input[type=password], 
input[type=email], 
input[type=tel] {
	padding: 4px 2px;
	margin: 0;
}
textarea {
	width: 100%;
	height: 100px;
	padding: 3px 1%;
	margin: 0;
}
input[type=checkbox], 
input[type=radio] {
	width: 14px;
	height: 14px;
	margin: 7px 10px 0;
	float: left;
}
select { margin: 2px 0 0; }
input[type=text], 
input[type=email], 
input[type=tel], 
select { width: 240px; }
input.short { width: 150px; }
input.shorter { width: 110px; }
input.security { width: 86px; }
label { cursor: pointer; }

/* ==>  Forms ---------------------------------------------------------------------------------------- */
.form-text { 
	width: 100%; 
	padding: 20px 3%;
	float: left; 
}
div[class^=form-row] label span { float: left; }
.form-wrapper {
	width: 100%;
	padding: 0 15%;
	margin: 0 auto;
	clear: both;
}
#MainForm {
	width: 65%;
	padding: 0;
	float: left;
	clear: none;
}
#CommentForm { padding-top: 40px; }
fieldset {
	width: 100%;
	max-width: 100%;
	padding: 10px 15px;
	float: left;
}
fieldset p { padding: 0 10px 10px; }
div[class^=form-row] {
	width: 100%;
	padding: 0 0 5px;
	float: left;
}
div[class^=form-row].discounts {
	padding: 5px 10px 7px 0;
	margin: 5px 0 10px;
	background: #e5f4ff;
	border: 1px solid #00f;
    color: #00f;
}
div.check-row { 
	padding: 5px 20px 20px 27%;
	float: left;
}
div.form-row-bottom { padding: 15px 0; }
div[class^=form-row] p { padding: 3px 0 0 0; }
div[class^=form-row] p.field-link {
	padding: 4px 0 0 10px;
	float: left;
}
div[class^=form-row] p.check-label { padding: 6px 0 0 35px; }
div[class^=form-row] > label {
	width: 35%;
	padding: 10px 20px 0 10px;
	text-align: right;
	float: left;
	position: relative;
}
div[class^=form-row] > label span {
	position: absolute;
	top: 7px;
	right: 10px;
}
div[class^=form-row] > label.check {
	width: auto;
	padding: 0;
	text-align: left;
}
div[class^=form-row] div.sub-row {
	width: 100%;
	padding: 10px 0 0;
	float: left;
}
div[class^=form-row] label.divider { 
	width: auto; 
	padding: 2px 10px 0; 
	float: left;
}
div[class^=form-row] p.field-divider {
	padding: 4px 10px 0;
	float: left;
}
div[class^=form-row] div.field {
	width: 65%;
	padding: 5px 0;
	float: left;
}
div[class^=form-row] ul {
	width: 100%;
	padding: 0;
	float: left;
}
div[class^=form-row] ul.two li {
	width: 50%;
	float: left;
}
div.spam-box {
	width: 280px;
	padding: 10px 10px 10px;
	float:left;
	background: #e5e5e5;
	border: 1px solid #666;
	-webkit-border-radius: 5px;
    border-radius: 5px;
}
div[class^=form-row] div.spam-box p { 
	padding: 5px 10px 0 0;
	float: left; 
}
div.spam-box input[type=text] { 
	width: 25px; 
	float: right;
}
div[class^=form-row] p.submit-alt {
	padding: 15px 0;
	text-align: center;
}
#recaptcha_table input[type=text] { 
	width: 140px !important;
	padding: 0; 
	float: none; 
}
.form-button {
	margin: 0 auto;
	display: block;
}
/* ==>  Form Alerts ---------------------------------------------------------------------------------------- */
div[class^=form-row] p.error { display: none; }
div.form-row-error p.error {
	color: #fff;
	margin: 0;
	padding: 5px 10px 0 0;
	text-align: left;
	clear: left;
	display: block;
}
div.form-row-error div.field { 
	background: #f00;
	border: 1px solid #f00;
	-webkit-border-radius: 4px;
    border-radius: 4px;
}
div.form-row-error input[type=text], 
div.form-row-error input[type=password], 
div.form-row-error textarea, 
div.form-row-error select, 
div.form-row-error input[type=email], 
div.form-row-error input[type=tel], 
div.form-row-error input[type=search] { border: 1px solid #f00; }
.alert-confirm,
.alert-error {
	min-height: 60px;
	padding: 9px;
	margin: 0 0 20px;
	clear: both;
}
.alert-confirm {
	border: 1px solid #390;
	background: #dafbca url(/images/alert-success.png) 9px 9px no-repeat;
}
.alert-error {
	border: 1px solid #f00;
	background: #ffe3e3 url(/images/alert-error.png) 9px 9px no-repeat;
}
.alert-confirm p, 
.alert-error p {
	padding: 8px 0 0 50px;
	color: #000;
}
/* ==>  Site Map ---------------------------------------------------------------------------------------- */
#errorSiteMap {
	width: 100%;
	padding: 10px 0 0;
	float: left;
}
div.sm-section {
	margin: 0;
	padding: 0 0 15px;
	clear: left;
}
div.sm-section p { padding: 0; }
ul.site-map p.meta { padding-top: 3px; }
div.sm-section div.pages { 
	margin: 0;
	padding: 0 0 0 25px;
}
div.sm-section p.page { padding: 15px 0 0 0; }
div.sm-section p.page a { font-weight: normal; }
.form-wrapper input[type=submit] { 
	min-width: 150px; 
	text-align: center;
}
.form-wrapper input[type=submit].flex {
	width: auto;
	padding: 0 15px; 
}