/*
 * HTML5 Boilerplate
 *
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 *
 * Detailed information about this CSS: h5bp.com/css
 *
 * ==|== normalize ==========================================================
 */


/* =============================================================================
   HTML5 display definitions
   ========================================================================== */

article, aside, details, figcaption, figure, footer, header, hgroup, nav, section { display: block; }
audio, canvas, video { display: inline-block; *display: inline; *zoom: 1; }
audio:not([controls]) { display: none; }
[hidden] { display: none; }


/* =============================================================================
   Base
   ========================================================================== */

/*
 * 1. Correct text resizing oddly in IE6/7 when body font-size is set using em units
 * 2. Prevent iOS text size adjust on device orientation change, without disabling user zoom: h5bp.com/g
 */

html { font-size: 100%; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }

html, button, input, select, textarea { font-family: sans-serif; }

body { margin: 0; font-size: 1em; line-height: 1.4; }

/*
 * Remove text-shadow in selection highlight: h5bp.com/i
 * These selection declarations have to be separate
 * Also: hot pink! (or customize the background color to match your design)
 */

::-moz-selection { background: #557695; color: #fff; text-shadow: none; }
::selection { background: #557695; color: #fff; text-shadow: none; }


/* =============================================================================
   Links
   ========================================================================== */

a { color: #00e; }
a:visited { color: #551a8b; }
a:hover { color: #06e; }
a:focus { outline: thin dotted; }

/* Improve readability when focused and hovered in all browsers: h5bp.com/h */
a:hover, a:active { outline: 0; }


/* =============================================================================
   Typography
   ========================================================================== */

abbr[title] { border-bottom: 1px dotted; }

b, strong { font-weight: bold; }

dfn { font-style: italic; }

hr { display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0; }

ins { background: #ff9; color: #000; text-decoration: none; }

mark { background: #ff0; color: #000; font-style: italic; font-weight: bold; }

/* Redeclare monospace font family: h5bp.com/j */
pre, code, kbd, samp { font-family: monospace, serif; _font-family: 'courier new', monospace; font-size: 1em; }

/* Improve readability of pre-formatted text in all browsers */
pre { white-space: pre; white-space: pre-wrap; word-wrap: break-word; }

q { quotes: none; }
q:before, q:after { content: ""; content: none; }

small { font-size: 85%; }

/* Position subscript and superscript content without affecting line-height: h5bp.com/k */
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
sup { top: -0.5em; }
sub { bottom: -0.25em; }


/* =============================================================================
   Lists
   ========================================================================== */

ul, ol { margin: 1em 0; padding: 0 0 0 40px; }
dd { margin: 0 0 0 40px; }
nav ul, nav ol { list-style: none; list-style-image: none; margin: 0; padding: 0; }


/* =============================================================================
   Embedded content
   ========================================================================== */

/*
 * 1. Improve image quality when scaled in IE7: h5bp.com/d
 * 2. Remove the gap between images and borders on image containers: h5bp.com/i/440
 */

img { border: 0; -ms-interpolation-mode: bicubic; vertical-align: middle; }

/*
 * Correct overflow not hidden in IE9
 */

svg:not(:root) { overflow: hidden; }


/* =============================================================================
   Figures
   ========================================================================== */

figure { margin: 0; }


/* =============================================================================
   Forms
   ========================================================================== */

.ashworth-form { margin: 0; }
.ashworth-form fieldset { border: 0; margin: 0; padding: 0; }

/* Indicate that 'label' will shift focus to the associated form element */
.ashworth-form label { cursor: pointer; }

/*
 * 1. Correct color not inheriting in IE6/7/8/9
 * 2. Correct alignment displayed oddly in IE6/7
 */

.ashworth-form legend { border: 0; *margin-left: -7px; padding: 0; white-space: normal; }

/*
 * 1. Correct font-size not inheriting in all browsers
 * 2. Remove margins in FF3/4 S5 Chrome
 * 3. Define consistent vertical alignment display in all browsers
 */

.ashworth-form button,
.ashworth-form input, 
.ashworth-form select, 
.ashworth-form textarea { font-size: 100%; margin: 0; vertical-align: baseline; *vertical-align: middle; }

/*
 * 1. Define line-height as normal to match FF3/4 (set using !important in the UA stylesheet)
 */

.ashworth-form button, 
.ashworth-form input { line-height: normal; }

/*
 * 1. Display hand cursor for clickable form elements
 * 2. Allow styling of clickable form elements in iOS
 * 3. Correct inner spacing displayed oddly in IE7 (doesn't effect IE6)
 */

.ashworth-form button, 
.ashworth-form input[type="button"], 
.ashworth-form input[type="reset"], 
.ashworth-form input[type="submit"] { cursor: pointer; -webkit-appearance: button; *overflow: visible; }

/*
 * Re-set default cursor for disabled elements
 */

.ashworth-form button[disabled], 
.ashworth-form input[disabled] { cursor: default; }

/*
 * Consistent box sizing and appearance
 */

.ashworth-form input[type="checkbox"], 
.ashworth-form input[type="radio"] { box-sizing: border-box; padding: 0; *width: 13px; *height: 13px; }
.ashworth-form input[type="search"] { -webkit-appearance: textfield; -moz-box-sizing: content-box; -webkit-box-sizing: content-box; box-sizing: content-box; }
.ashworth-form input[type="search"]::-webkit-search-decoration, 
.ashworth-form input[type="search"]::-webkit-search-cancel-button { -webkit-appearance: none; }

/*
 * Remove inner padding and border in FF3/4: h5bp.com/l
 */

.ashworth-form button::-moz-focus-inner, 
.ashworth-form input::-moz-focus-inner { border: 0; padding: 0; }

/*
 * 1. Remove default vertical scrollbar in IE6/7/8/9
 * 2. Allow only vertical resizing
 */

.ashworth-form textarea { overflow: auto; vertical-align: top; resize: none; }

/* Colors for form validity */
.ashworth-form input:valid, 
.ashworth-form textarea:valid {  }
.ashworth-form input:invalid, 
.ashworth-form textarea:invalid { background-color: #f0dddd; }


/* =============================================================================
   Tables
   ========================================================================== */

table { border-collapse: collapse; border-spacing: 0; }
td { vertical-align: top; }


/* =============================================================================
   Chrome Frame Prompt
   ========================================================================== */

.chromeframe { margin: 0.2em 0; background: #ccc; color: black; padding: 0.2em 0; }

/* =============================================================================
   Sticky Footer Solution
   by Steve Hatcher 
   http://stever.ca
   http://www.cssstickyfooter.com
   ========================================================================== */

* {margin:0;padding:0;} 
/* must declare 0 margins on everything, also for main layout components use padding, not 
vertical margins (top and bottom) to add spacing, else those margins get added to total height 
and your footer gets pushed down a bit more, creating vertical scroll bars in the browser */

html, body {height:100%;}
#wrap {min-height:100%;}

#main {
	overflow:visible;
	padding-bottom: 30px; /* must be same height as the footer */
}

body.logged-in #main {
  overflow:visible;
}

#footer {
	position: relative;
	margin-top: -30px; /* negative value of footer height */
	height: 30px;
	clear:both;
} 

#footer .slant .slantinner {
  margin-bottom: 0;
  padding-bottom: 0;
}

/*Opera Fix*/
body:before {
	content:"";
	height:100%;
	float:left;
	width:0;
	margin-top:-32767px;
}

/* ==|== primary styles =====================================================
   Author:
   ========================================================================== */
* {
	margin:0;
	padding:0;
}
html {
	width:100%;
	height:100%;
	background: url('/img/metaltexture.jpg') repeat;
}
body {
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-size: 12px;
	font-weight: normal;
	color: #333; 
	width:100%;
	height:100%;
	background-image: url('/img/vignette.png');
	background-size: 100% 100%;
}
h1, h2, h3, h4, h4 {
	color: #566c81;
}
p {
	margin: 0 0 1em 0;
	line-height: 1.7em;
}
blockquote { 
	text-transform: uppercase;
	line-height: 2em;
	color: #666;
	font-weight: 200;
	font-size: 14px;
	padding:0 0 2em 0;
}
header hgroup {
	width:90%;
	max-width:1100px;
	margin: 2.5% auto 1.5% auto;
}
header hgroup h1 {
	float:left;
	background: url('/img/logo.png') no-repeat;
	width:712px;
	height:100px;
	text-indent: -9999px;
	display: block;
}
header hgroup h2 {
	float: left;
	font-size: 15px;
	font-weight: 400;
	color: #ccc;
	text-transform: uppercase;
	letter-spacing: 1px;
	padding:60px 0 0 0;
	color: #535353;
	text-shadow: 0px 1px 1px #d4d4d4;
    filter: dropshadow(color=#d4d4d4, offx=0, offy=1);
}

#content {
	width:90%;
	max-width:1100px;
	margin: 0 auto;
	padding:2em 0 2em 0;
}
#content p, #content li {
	color: #666;
	font-size: 14px;
}
#content img {
	max-width: 100%;
	-webkit-box-shadow:  0px 1px 1px 0px rgba(0, 0, 0, 0.5);
    box-shadow:  0px 1px 1px 0px rgba(0, 0, 0, 0.5);
/*    opacity: .9;*/
    margin-bottom: 2em;
    -webkit-transition: opacity 300ms ease;
	   -moz-transition: opacity 300ms ease;
        -ms-transition: opacity 300ms ease;
         -o-transition: opacity 300ms ease;
		    transition: opacity 300ms ease;
}
#content img:hover {
	opacity: 1;
}
.alignleft {
	float:left;
	margin:0 2em 2em 0;
}
.alignright {
	float:right;
	margin:0 0 2em 2em;
}
#content img.alignleft, 
#content img.alignright {
  max-width: 50%;
}

article h2 {
	font-size: 48px;
	font-weight: 100;
	text-transform: uppercase;
	padding:.2em 0 .2em 0;
	display: block;
	clear: both;
}
h2.bordertop {
  border-top:1px solid #939da5;
}
.rightcol {
	float:right;
	width:22.5%;
}
.leftcol {
	float:left;
	width:72.5%;
}
.rightcol {
	float:right;
}
.rightcol img {
	float:left;
	margin:0 0 2em 0;
}
#footer {
	color: #ccc;
}
/* =============================================================================
   Slanted edges
   ========================================================================== */
header .slant {
	position: absolute;
	right:0;
	width: 20%;
	border-bottom: 30px solid #b9bec3;
    border-left: 30px solid transparent;
    padding:0 10% 0 0;
}
.slantwrap {
	height:250px;
	width:100%;
}
.slantwrap .slant {
	float:left;
	width: 80%;
	padding:2em 0 0 0;
	border-bottom: 250px solid white;
    border-right: 250px solid transparent;
    border-left: none;
    display: block;
}
.slant {
	float:right;
    width: 60%;
    height: 0px;
    border-bottom: 30px solid white;
    border-left: 30px solid transparent;
}
.slantinner {
	padding:6px 5px 0 0;
}
.slantwrap .slantinner {
	padding:1.5em 0 0 25%;
}

/* =============================================================================
   Form elements and buttons
   ========================================================================== */

#content .ashworth-form input[type="submit"],
#content .ashworth-form input[type="button"],
#content .ashworth-form button  { width: auto; background: #5e8597; border: 1px solid #4f7181; -webkit-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.5) inset; -moz-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.5) inset; box-shadow: 0 1px 0 rgba(255, 255, 255, 0.5) inset; color: white; cursor: pointer; display: inline-block; font-family: "Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif; font-size: 14px; font-weight: bold; line-height: 1; margin:.5em; outline: none; padding: 10px 20px 11px; position: relative; text-align: center; text-decoration: none; -webkit-transition: background-color 0.15s ease-in-out; -moz-transition: background-color 0.15s ease-in-out; -o-transition: background-color 0.15s ease-in-out; transition: background-color 0.15s ease-in-out; }

#content .ashworth-form input[type="submit"]:hover,
#content .ashworth-form input[type="button"]:hover,
#content .ashworth-form button:hover {color: white; background-color: #2284a1;}

#content .ashworth-form input[type="submit"]:active,
#content .ashworth-form input[type="button"]:active,
#content .ashworth-form button:active { -webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2) inset; -moz-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2) inset; box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2) inset; }

#content .ashworth-form input[type="submit"]:focus,
#content .ashworth-form input[type="button"]:focus,
#content .ashworth-form button:focus { -webkit-box-shadow: 0 0 4px #2ba6cb, 0 1px 0 rgba(255, 255, 255, 0.5) inset; -moz-box-shadow: 0 0 4px #2ba6cb, 0 1px 0 rgba(255, 255, 255, 0.5) inset; box-shadow: 0 0 4px #2ba6cb, 0 1px 0 rgba(255, 255, 255, 0.5) inset; color: white; }

#content .ashworth-form input[type=text],
#content .ashworth-form input[type=password],
#content .ashworth-form textarea {
	background: #fafafa;
	-moz-box-shadow: inset 0 1px 1px rgba(0,0,0,0.1);
	-webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,0.1);
	box-shadow: inset 0 1px 1px rgba(0,0,0,0.1);
	border: 1px solid #ddd;
	color: #888;
	-moz-border-radius: 2px;
	border-radius: 2px;
	font-size: 14px;
	height: 22px;
	line-height: 1.2em;
	max-width: 98%;
}
#content .ashworth-form input[type=text]:focus,
#content .ashworth-form textarea:focus {
	color: #373737;
}

#content .ashworth-form .a-form-row:before, 
#content .ashworth-form .a-form-row:after { content: ""; display: table; }
#content .ashworth-form .a-form-row:after { clear: both; }
#content .ashworth-form .a-form-row { *zoom: 1; }
#content .ashworth-form .a-form-row {
	display: block;
	clear: both;
	width:70%;
	max-width:400px;
	margin:0 0 8px 0;
	padding:0 10px;
    height:0px;
    border-bottom: 30px solid white;
    border-right: 30px solid transparent;
}
#content .ashworth-form .message {
	max-width:600px;
	border-bottom: 150px solid white;
    border-right: 150px solid transparent;
}
#content .ashworth-form .a-form-row * {
	float:left;
}
#content .ashworth-form .a-form-row label {
	line-height: 28px;
	margin: 0 10px 0 0;
	color: #666;
	text-transform: uppercase;
}
#content .ashworth-form .a-form-row input,
#content .ashworth-form .a-form-row textarea {
	margin: 3px 0;
        padding: 0px;
	background: #fff;
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
	box-shadow: none;
	border: none;
}
#content .ashworth-form .a-form-row textarea {
	margin:5px 0 0 0;
	width:335px;
	height:140px;
}

#content .ashworthContactInfo {
  margin-bottom: 10px;
}

#content .contact-info .slant {
  text-align: left;
}

#content .contact-info .contact-text {
  width: 35%;
  float:left;
  padding:10px;
}

#content .contact-info .contact-text h3 {

}

#content .contact-info iframe {
  float: left;
}

/* =============================================================================
   News page / masonary
   ========================================================================== */
   
.masonry article {
	float:left;
	width:275px;
}
.masonry article img {
	width:255px;
	margin:0 auto 1em auto;
}
.masonry .feature {
	width: 550px;
}
.masonry .feature img {
	width: 540px;
}
.masonry article h2 {
	border-top:1px solid #939da5;
	width:93%;
	font-size:35px;
}
.masonry article p {
	width:93%;
}
.isotope,
.isotope .isotope-item {
  -webkit-transition-duration: 0.8s;
     -moz-transition-duration: 0.8s;
      -ms-transition-duration: 0.8s;
       -o-transition-duration: 0.8s;
          transition-duration: 0.8s;
}

.isotope {
  -webkit-transition-property: height, width;
     -moz-transition-property: height, width;
      -ms-transition-property: height, width;
       -o-transition-property: height, width;
          transition-property: height, width;
}

.isotope .isotope-item {
  -webkit-transition-property: -webkit-transform, opacity;
     -moz-transition-property:    -moz-transform, opacity;
      -ms-transition-property:     -ms-transform, opacity;
       -o-transition-property:         top, left, opacity;
          transition-property:         transform, opacity;
}   



/* ==|== media queries ======================================================
   EXAMPLE Media Query for Responsive Design.
   This example overrides the primary ('mobile first') styles
   Modify as content requires.
   ========================================================================== */
   
@media only screen and (max-width: 1500px) { 
	header hgroup h1 {
		float:none;
		padding:0;
	}  
	header hgroup h2 {
		float:none;
		padding:0;
	}
   .slantwrap .slantinner {
		padding:1.5em 0 0 15%;
	}
}	
@media only screen and (max-width: 1300px) {

	/*header hgroup {
	margin:5% 0 10px 0;
	}
	header hgroup h1 {
 		float:none;
		margin:0 auto;
	}*/
	#mainmenu .inner {width:94%;}
	.slantwrap .slant {width:65%;}
	.slantwrap .slantinner {
		padding:1.5em 0 0 7%;
	}	

}
@media only screen and (max-width: 800px) {
  	
  	header hgroup h2 {
		float:none;
		margin:0 auto;
	}
 	header hgroup h1 {
 		float:none;
		background-image: url('/img/logo.png');
		background-size:356px 50px;
		width:356px;
		height:50px;
	}
	header .slant {width:30%;}
	#mainmenu {height:30px;opacity:1;}
	#mainmenu .menu {padding:6px 0 0 5%;}
	article h2 {
		text-align: center;
		font-size: 35px;
	}
	.alignleft,
	.alignright {
		float:none;
		display: block;
		margin:0 auto 2em auto;
	}
	.slantwrap {height: auto;}
	.slantwrap .slant {
		float:none;
		width:100%;
		position: relative;
		left:0;
		text-align: center;
		height: auto;
		border-bottom: none;
    	border-right: none;
    	border-left: none;
	}
	.slantwrap .slantinner {
		padding: 1.5em 5% 0 5%
	}
	
}

@media only screen and (max-width: 600px) {

	header .slant {
		width:auto;
		border-bottom: none;
		border-left:none;
		padding:0 5% 0 0;
	}
	.slant {width:auto;}
	.rightcol,
	.leftcol {
		float:none;
		width:100%;
	}
	.rightcol img {
		margin:0 0 1em 2em;
	}
	
}

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

	.rightcol img {
		float:none;
		display: block;
		margin:0 auto 1em auto;
	}

}

@media only screen and (-webkit-min-device-pixel-ratio: 2) {
	
	header hgroup h1 {
		background-image: url('/img/logo.png');
		background-size:356px 50px;
		width:356px;
		height:50px;
	}
	
}

/* ==|== non-semantic helper classes ========================================
   Please define your styles before this section.
   ========================================================================== */

/* For image replacement */
.ir { display: block; border: 0; text-indent: -999em; overflow: hidden; background-color: transparent; background-repeat: no-repeat; text-align: left; direction: ltr; *line-height: 0; }
.ir br { display: none; }

/* Hide from both screenreaders and browsers: h5bp.com/u */
.hidden { display: none !important; visibility: hidden; }

/* Hide only visually, but have it available for screenreaders: h5bp.com/v */
.visuallyhidden { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; }

/* Extends the .visuallyhidden class to allow the element to be focusable when navigated to via the keyboard: h5bp.com/p */
.visuallyhidden.focusable:active, .visuallyhidden.focusable:focus { clip: auto; height: auto; margin: 0; overflow: visible; position: static; width: auto; }

/* Hide visually and from screenreaders, but maintain layout */
.invisible { visibility: hidden; }

/* Contain floats: h5bp.com/q */
.clearfix:before, .clearfix:after { content: ""; display: table; }
.clearfix:after { clear: both; }
.clearfix { *zoom: 1; }


/* ==|== print styles =======================================================
   Print styles.
   Inlined to avoid required HTTP connection: h5bp.com/r
   ========================================================================== */

@media print {
  * { background: transparent !important; color: black !important; box-shadow:none !important; text-shadow: none !important; filter:none !important; -ms-filter: none !important; } /* Black prints faster: h5bp.com/s */
  a, a:visited { text-decoration: underline; }
  a[href]:after { content: " (" attr(href) ")"; }
  abbr[title]:after { content: " (" attr(title) ")"; }
  .ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after { content: ""; }  /* Don't show links for images, or javascript/internal links */
  pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
  thead { display: table-header-group; } /* h5bp.com/t */
  tr, img { page-break-inside: avoid; }
  img { max-width: 100% !important; }
  @page { margin: 0.5cm; }
  p, h2, h3 { orphans: 3; widows: 3; }
  h2, h3 { page-break-after: avoid; }
}

