/* Engineering Systems stylesheet */

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}
hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}
abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}
code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}
sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}
button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}
[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}
[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}
fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}
progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}
[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}
[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}
summary{display:list-item}template{display:none}[hidden]{display:none}

/* general hyperlinks*/
a:link, a:active, a:visited
							{
							color: #ee0000;
							text-decoration: none;
							outline:none;
							}

a:hover 			{
							text-decoration: underline;
							}		

/* page layout */	
body 			 		{
							color:#333;
							font: normal 100% 'Poppins', 'Arial', sans-serif;
							background-color:#EAEAEA;
      				}
			
#container		{
							max-width:970px;
							margin:15px auto;
							padding:0 10px;
							background-color:#FFF;
							box-shadow: 0 0 12px #888;	
							overflow:hidden;
							}
					
#header				{padding-top:10px}
							
section				{padding:0;
							/* centre everything by default */ 
							text-align:center;}
							
footer				{
							clear:both;
							padding:10px 0;
							border-top:2px solid #FF4040;
							text-align: center;
							/*font: normal 0.813em "Lucida Grande", Arial, sans-serif;
							line-height:1.5em;*/
							font-size: 0.813em;
							}
							
footer>div		{
							display:inline;
							margin:0 10px;
							white-space:nowrap;
							}

/* allow address in footer to wrap */				
footer>div:first-child{
							white-space:normal;
							}
											
/* left align content within <section> */
section H2, section H3, section H5, section ul, section ol, section p, section label{
							text-align:left;
							}
							
/* masthead*/
div #masthead {
							overflow:hidden;
							}
	
/* menu bar */
nav						{
							font-weight: 600;
							width: 100%;
							}

#menu-toggle {
							display:none;
							}

ul.menu				{
              margin: 5px 0 0 0;	 		/* top margin to position menu below masthead*/
              text-align: center; 		/*set value to "left", "center", or "right"*/
              border: solid #ee0000;
              border-width: 2px 0;
							}

ul.menu li		{
              display:inline;
              white-space:nowrap;
              margin: 0 10px 0 0; /*spacing between each menu link*/
              line-height:25px;
							}

ul.menu li:last-child{
margin:0;						/* no space after last menu item */
}

ul.menu li a{
color: #494949;
padding: 4px 3px; /*top & bottom padding is 4px*/
text-decoration: none;
}

ul.menu li a:hover, ul.menu li a.selected{
              border: solid #ee0000;
              border-width:3px 0;
							color: #000;							
}								
		
/* general text styles used throughout site */

ul,ol 				{
              font-size:0.813em;
							/*line-height: 1.5em;*/
							list-style-position: outside;
              text-indent: 2px;
              padding: 0;
							margin-left: 25px;
							}
							
ul						{
              list-style-type: square;
							}	
							
ul.featurelist li{
							padding-bottom:6px;
							}
			
/* title*/
H1 			 			{
          		font-size: 1.5em;
          		color: #004499;
          		font-weight: 600;
							text-decoration:none;
							margin-top:20px;
							}
	
/* heading*/
H2						{
          		font-size: 1.25em;
          		color: #004499;
          		font-weight: 600;
							text-decoration:none;
							}
	
/* sub-heading*/						
H3						{
							font-size: 1em;
							font-weight:600;
							color: #004499;
							margin-bottom:5px;
							}

/* captions*/
H5						{
							font-size: 1em;
							}

/* subheading to use below H1 title*/				
H4						{
							font-weight:600;
							font-style:italic;
							color:#555;
							font-size:0.938em;
							margin-top:0;
							}
							
/* dashed horizontal line */
hr 						{
              border-width: 1px 0 0 0;
              border-style: dashed;
              border-color: #ccc;
							margin: 5px 0 0 0;
          		}
							
/* standard paragraph text & form labels */											
p, form, div.infobox{
							font-size:0.938em;
							}
	
/* larger bolder intro text*/			
p.intro		   	{
							font-size: 1em;
							margin-bottom:15px;
							font-weight:500;
          		}
							
/* preformatted text for printouts */
pre.printout	{
							padding:8px;
							color:black;
							float:right;
							text-align:left;
							margin:5px 0 5px 15px;
							background-color:#F0F0F0;
							font-size:0.75em;
							clear:right;
							box-shadow: 3px 3px 5px #DDD;
							}
							
/* product page layout*/
div.product		{
							padding:12px 0;
							overflow:hidden;
							text-align:left;
							}
							
div.product img{
							float:right;
							border: 1px solid #ccc;
							padding: 3px;
							margin:  0 5px 0 20px;
							box-shadow: 3px 3px 4px #ddd;
							}
							
							
div.product>a {
              font-weight: 600;
              font-size: 0.938em;
							font-size: 1em;
}

div.product:not(:last-child) {
    border-bottom: 1px dashed #bbb;
}
							
/* information highlight box */
div.infobox		{
							margin:0 5px;
							border-color:#004499;
							border-style:solid;
							border-width:1px 1px 1px 4px;
							padding:5px 10px;
							text-align:left;
							}
							
/* article source references */
span.ref			{
							vertical-align: super;
							font-size:0.813em;
							}	
							
ol.sources li	{
					 		margin-left:10px;
					 		margin-bottom:0.813em;
							}	
					
/* page anchor nagigation links */
ul.pagenav		{
							list-style-type:none;
							text-align:center;
							}		
							
ul.pagenav li	{
					 		display:inline;
							font-weight:600;
							}	
							
ul.pagenav li+li:before {
    			 		content: " | ";
							}

/* file lists with icons */							
ul.filelist		{
							margin:0;
							list-style-type: none;
							font-size:0.938em;
							}

ul.filelist li{			
							padding:0;	
							background-repeat:no-repeat;
							background-position:0 50%; 
							padding:10px 0 10px 40px;
							font-weight:500;
	 				 		}

ul.filelist li.large
							{	
							font-size:1.2em;	
							}					

ul li.pdf			{background-image: url(images/pdficon.png)}
ul li.exe			{background-image: url(images/exeicon.png)}

ul li.nopad		{
	 						padding-top:4px;
							padding-bottom:4px;
							}
							
.plusminus:before		
							{
              content: "";
              display: block;
              background: url('images/plusminus.png') no-repeat;
							margin:5px 5px 0 0;
              width: 10px;
              height: 10px;
              float: left;
              }
					
.minus:before
							{
							background-position:-10px;
							}
							
/* images inside slider */
.slider img		{
							padding: 5px;
							margin: 0 5px;
							border: 1px solid #CCCCCC;
							}
							
div.slider:before {
              content: "";
              position: absolute;
              z-index: 1;
              bottom: 0;
              left: 0;
              pointer-events: none;
              background-image: linear-gradient(to left, rgba(255,255,255,0), rgba(255,255,255, 1) 100%);
              width: 200px;
              height: 215px;
            }
						
div.slider:after {
              content: "";
              position: absolute;
              z-index: 1;
              bottom: 0;
              right: 0;
              pointer-events: none;
              background-image: linear-gradient(to right, rgba(255,255,255,0), rgba(255,255,255, 1) 100%);
              width: 200px;
              height: 215px;
            }						
						
							
/* right-hand image with padding around it */
img.rhimage		{
							float:right;
							padding:10px;
							clear:right;
							}

div.img-caption	 {
							 border: 1px solid #CCCCCC;
							 padding: 6px 6px 3px 6px; 
							 box-shadow: 3px 3px 5px #DDD;
							 }
							 
div.inlineimgs > div.img-caption{
							 display:inline-block;
							 margin:0 5px 10px 5px;
							 }					

.img-caption img{
							 vertical-align:middle;
							 margin-bottom: 3px;
							 display:block;
							 }
							 
.img-caption p {
						 	 text-align:center;
						 	 color:#555;
							 font: 0.688em Arial, sans-serif;
							 font-style:italic;
							 margin:6px 0 3px 0;
						 	 }

.right 				 {
							 margin: 0 0 10px 10px;
							 float:right;
							 }
							 
.right:last-child, .right clear{
							clear:right;
							}
	 
.left 				 {
							 margin: 0 30px 10px 0;
							 float:left;
							 }
							 
.centre				 {
							 display: inline-block;
							 margin: 5px 10px;
							 }

.left:first-child{
							clear:left;
							}		
										 
/* scaled images */
img.scaled		{
							max-width:100%;
							height:auto;
							}
													
/*div.centre	{
						display:block;
						margin:0 auto;
						}*/
						
p.centre		{
						text-align:center;
						}
						
/* image viewer popup*/
.mfp-title {
					 	font-size:0.875em;
}
						
/* clear floated elements */
.clear	 		{
						clear:both;
						}
							
/* form container */		
#contact			{
							max-width:800px;
							margin:0 auto;
							text-align:left;
							}	
		
/* form label */					
#contact>label{
							width:40%;
              float:left;
							clear:left;
              margin-bottom:12px;
							text-align:right;
							padding-top:5px;
              padding-right:30px;
							}

/* right-hand column form controls */							
#contact>input[type=text],#contact>input[type=email],#contact>input[type=tel],#contact>textarea
				 			{
              width:45%;
              float:left;
              margin-bottom:18px;
							border:#ee0000 1px solid;
							padding:6px;
          		background-color:#FFFFFF;
          		font-size:0.938em;
							box-shadow:2px 2px 6px #BBB;
    					}
										
#contact>input[type=text],#contact>input[type=email],#contact>input[type=tel]		
              {
							Height: 20px;
							}					
									
		
/* no outline on buttons when clicked */					
input:focus,select:focus,textarea:focus,button:focus
							{
    					outline: none;
							}

					
/* right-hand subgroup */						
#contact fieldset	
				 			{
							float:left;
							width:55%;
							border:0;
							padding:0;
							margin:5px 0 0 0;
							}							

/* right-hand inputs in subgroup */						
#contact fieldset>input[type=checkbox]
				 			{
							float: left;
							margin-top:4px;
							}					

#contact fieldset>label
				 			{
    					display:block;
							margin: 0 0 15px 20px;
							}
							
#contact button
				 			 {
							 clear:both;
							 border: 0;
							 background-color: #ee0000;
							 color: white;
							 margin: 20px;
							 padding: 8px 10px 8px 10px;
							 font-weight: 600;
							 border-radius: 5px;
							 }
							 
#contact button:hover
				 			{
							background-color:#FF5050;
							}

/* required field labels */						
label.required
							{
							font-weight:600;
							}

/* responsive media queries */
@media only screen and (max-width: 1000px){
ul.menu li		{
      				margin: 0 5px 0 0; /*reduce spacing between each menu link*/
      				}
							
#container		{
							margin:0;
							padding:0 8px;
							box-shadow:none;
							}	
							
div.slider:before, div.slider:after 
							{
							background-image:none;
							}		
}

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

div.product img{
							margin: 0 5px 5px 15px;
							}

#menu-toggle	{
							display:block;
              font-size:16px;
							background-color:#ee0000;
							color:#FFF;
							margin-top:8px;
							padding:4px 3px;
							position:relative;
							line-height:21px;
							}
							
#menu-toggle span	{		
						 padding-left:8px;
						 }					
				
/* menu icon */	
#menu-toggle div{
						 background-image: url(images/menu-icon.png);
             background-repeat: no-repeat;
						 position:absolute;
						 height:24px;
						 width:24px;
						 right:5px;
						 top:5px;
						 }	
						 
ul.menu				{
              text-align: left;
              border: 0;
							background-color:#ee0000;
							margin-top:0;
							display:none;
							}

ul.menu li{
              display:block;
              font-size:16px;
							margin:0;
							border-top:1px dashed #FFF;
							}
							
ul.menu li:first-child {
    					border-top: 1px solid white;
							}

ul.menu li a	{
					 		display:block;
              color: #FFF;
							padding-left:8px;
							}

ul.menu li a:hover, ul.menu li a.selected{
              border: 0;
							color: #333;			
							}
}

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

/*#masthead img	{
							height:0;
							width:0;
							}
							
#masthead			{
							background-image: url(images/masthead-small.png);
							background-repeat:no-repeat;
							height:56px;
							width:100%;
							}		*/									
}

@media only screen and (max-width: 630px){								
					
#contact			{width:90%;}
#contact>input[type=text],#contact>input[type=email],#contact>input[type=tel],#contact>textarea,#contact fieldset{float:none;width:100%;}
#contact>label{float:none;display:block;text-align:left;width:100%;}

pre.printout	{font-size:0.625em;}

.left, .right	{
			 				float:none;
							display:inline-block;
							margin: 5px;
							}

div.product		{
							padding-bottom:0;
							}
							
hide-small		{
							display:none;
							}		
}

/* slideToggle may add display:none to menu, so override this on larger screens*/
@media only screen and (min-width: 901px){
#menu-content	{
							display:block !important;
							}