/* RESET 
------------------------------------------------*/
* { 
    margin: 0;  
    padding: 0;  
    border: 0;  
    outline: 0;  
    background: transparent;  
}

ol, ul {}
blockquote, q {quotes: none;}  
blockquote:before, blockquote:after, q:before, q:after {content: '';}  


/* TEXT/LINK FORMATTING
------------------------------------------------*/

	/* LINKS */
	a:link, a:visited {
		color:#AC0205;
		text-decoration:none;
		-webkit-transition:.25s ease-in-out;
		-ms-transition:.25s ease-in-out; 
		transition:.25s ease-in-out;
		
	}
	a:hover, a:active {
		color:#5B74E5;
		text-decoration:none;
	}

	/* PARAGRAPH/LIST/GENERAL TEXT */
	p, ul, li {font-size: 12px;}

	/* HEADERS */
	h1, h2, h3, h4 ,h5 ,h6 {line-height: normal;}
	h1 {font-size:20px;}
	h2 {font-size:23px; color:#292c76; font-family: 'source_sans_prosemibold';}
	h3 {font-size:25px; color:#292c76; font-family: 'source_sans_prolight_italic';}
	h4 {font-size:16px; color:#292c76; font-family: 'source_sans_prosemibold';}
	h5 {font-size:15px; color:#262525; font-family: 'source_sans_prolight_italic';}
	h6 {font-size:18px; color:#292c76; font-family: 'source_sans_prosemibold'; text-align:center;}


/* GLOBAL SITE FRAMEWORK
------------------------------------------------*/
.clear {clear: both;}
.left {float:left; position:relative;}
.right {float:right; position:relative;}
.center{text-align:center;}

.red {color:#D40004}

.content {width:960px; margin:0 auto;}
.content-full {width:1020px; margin:0 auto;}

.content-home {width:65%; margin:0 auto;}


body {
	margin:0;
	line-height:12px;
	font-family: 'source_sans_proregular';
	background:#ebebeb;
}

::selection {
	color:#fff;
	background: #525ca4;
}
::-moz-selection {
	color:#fff;
	background: #525ca4;
}







/* HEADER
------------------------------------------------*/	
header {
	padding:45px 0 0px 0;
	margin:0 auto;
	background:#f7f7fa;
}	


/* LOGO
------------------------------------------------*/	
.logo {
	z-index:100;
	position:relative;
	
}	

.logo img {
	line-height:0;
	float:left;
	position:relative;
}

.logo h1 {
	float:left;
	position:relative;

	color:#292c76;
	font-size:20px;
	line-height:33px;
	margin:30px 0 0 0;
	text-align:justify;
	
	text-transform:uppercase;
	font-family: 'source_sans_probold';
}

.line-one {background:#F7F7FA; padding:0 3px 0 7%;}
.line-two { padding:0 10px 0 7%; background:url(../siteart/logo-angle.png) no-repeat right;}
.line-three { padding:0 10px 0 7%; background:url(../siteart/logo-angle.png) no-repeat right;}
	

/* STRIPES
------------------------------------------------*/	
.light-stripes {
	height:119px;
	width:100%;
	margin:-94px 0 0 0;
	z-index:5;
	background:url(../siteart/header-bg.png) repeat-x;
}





/*  NAVIGATION
------------------------------------------------*/
#menu-button{display: none;}
nav.mobile {display:none;}

nav.primary {z-index:500; position:relative; margin:0 auto; padding:15px 0; background:#f7f7fa;}
nav.primary ul {display:flex; flex-flow:row wrap; align-items:center; justify-content:space-around; max-width:1165px; margin:0 auto; padding:15px 0;}
nav.primary ul li {margin:0; padding:0; list-style-type:none; }
				
nav.primary ul li a {
	display:block; margin:0; padding:5px 10px;
    font-size:1.35em; line-height:1.25; text-align:center; text-decoration:none; text-transform:uppercase; color:#292c76; border-bottom:5px #f7f7fa solid;	
	cursor:pointer; font-family: 'source_sans_prosemibold', sans-serif; transition:.5s ease-in;	font-weight: 400;
}	

nav.primary ul li a:hover {color: #a0a2d9; border-bottom:5px #cfd2e1 solid;}

/*  SUB NAV
------------------------------------------------*/
nav.primary ul li li {width: 230px;}
nav.primary ul li li a {
	width: 230px; padding:18px 0; font-size:1.2em; line-height:1; text-indent:20px; text-align:left; color:#292c76; border-right:none; border-left:none; border-bottom:none; background: #f7f7fa;
}

nav.primary ul li li a:hover {color:#292c76; border-bottom:none; background:#9EA1CC; -webkit-animation-name:none; animation-name:none;}

/*  NAV DROPDOWNS
------------------------------------------------*/
nav.primary ul ul {display: none; position: absolute; padding:0; box-shadow: 0px 2px 5px 0px rgba(0,0,0,0.25);} 
nav.primary ul ul ul {position: absolute; left: 100%; top:0; margin:0; padding:0;}
nav.primary ul li:hover > ul {display: block; z-index: 500;}
nav.primary ul ul li {float: none; position: relative; margin:0;}




/*  ANNOUNCEMENT BANNER
------------------------------------------------*/
.announcement-banner {margin:0 0 8px 0; padding:2.5% 5%; text-align:center; color:#fff; background:#292c76;}
.announcement-banner span {font-size:28px; font-weight: 700; line-height:1.5; }
.announcement-banner p { font-size:24px; line-height:1.5;}
.announcement-banner a {display:inline-block; padding:12px 15px; font-size:20px; text-transform:uppercase; color:#fff; border: 1px #fff solid;}
.announcement-banner a:hover {color:#292c76; background:#fff;}


/*  SLIDESHOW
------------------------------------------------*/
.cycle-slideshow {background:#292c76;}
.cycle-slideshow .slideImg {width:100%;}
.cycle-slideshow .slideImg img{width:100%;}

.cycle-slideshow .slideImg.slideVideo {
	position: relative; padding-bottom:28.1%; height: 0; overflow: hidden; max-width: 100%;
	background:url('/siteart/slideshow/winchester-annoucnement.jpg') center no-repeat; background-size: cover;
}

.cycle-slideshow .slideImg.slideVideo iframe{position: absolute; top: 0; left: 0; width: 100%; height: 100%; background:url('/siteart/slideshow/winchester-annoucnement.jpg') center no-repeat; background-size: cover; }





/* pager */
.cycle-pager { 
    text-align: center; width: 100%; z-index: 200; position: absolute; bottom: 10px; overflow: hidden;
}
.cycle-pager span { 
    font-family:Arial, Helvetica, sans-serif; font-size: 45px; margin:0 5px 0 0; width: 16px; height: 16px; 
    display: inline-block; color: #dfe0ee; cursor: pointer; 
}
.cycle-pager span.cycle-pager-active {color: #C5D0FE;}
.cycle-pager > * {cursor: pointer;}






.showcaseShow {border:0; float:left;}
/*.cycle-slideshow iframe{width:640px; height:360;}*/



.embed-container { position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; max-width: 100%; }
.embed-container iframe, .embed-container object, .embed-container embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }


/* ADDRESS
------------------------------------------------*/	
address {
	font-style:normal;
	padding:12px 0 !important;
	background:#E7EAF3 !important;
}

address h4 {
	font-size:12px;
	font-weight:100;
	text-transform:uppercase;	
}

address h4 span {
	float:left;
	position:relative;
	padding:0 1.3% 0 0;
	margin:0 1.3% 0 0;
}

address h4 span:last-child {
	border-right:0;	
}

h4 a:link, h4 a:visited {
	color:#5b5ea2 !important;
}

h4 a:hover, h4 a:active {
	color:#292c76 !important;
	text-decoration:none !important;
}

/*  MAIN
------------------------------------------------*/	
.main {
	padding:40px 0;
	background:#f7f7fa;
}

.content-home article {width:calc(100% - 235px);}
.content-home aside {width:200px; margin:0 0 0 35px;}

.demoVideos {display:flex; flex-flow:row wrap; align-items:center; justify-content:center; margin:3.5% auto;}
.demoVideos h3 {width:100%; text-align:center;}

.equipmentCommercial {}
.equipmentCommercial video {width:calc(100% - 16px); max-width:782px; margin:8px; box-sizing: content-box;}
.equipmentDemo {}
.equipmentDemo video {width:100%; max-width:251px; margin:8px;}


/*  ARTICLE
------------------------------------------------*/
article {
	width:95%;
	float:left;
	position:relative;
	margin:0 0 20px 0;
}

article p{
	font-size:18px;
	line-height:28px;
}

article.full {
	width:98%;
	margin:0 0 20px 0;
}

.location {
	width:25%;
	font-size:16px;
	line-height:20px;
	float:left;
	position:relative;
	margin:10px 0 35px 0;
}

.map {
	border:2px #0d1580 solid;
}
.positionlist li{
	    font-size: 18px;
    line-height: 36px;

}
/*  ASIDE
------------------------------------------------*/
aside {
	width:20.6%;
	margin:0 0 0 6.2%;
	float:left;
	position:relative;
}

aside p {
	font-size:16px;
	line-height:18px;
	color:#5f5f5f;	
}

aside img {
	width:100%;	
}







/*  CATEGORIES
------------------------------------------------*/
.category {
	width:21%;
	margin:20px 2%;
	float:left;
	position:relative;	
	background:#f2f3f7;
}

.category-alt {
	width:21%;
	margin:20px 14% !important;
	float:left;
	position:relative;	
	background:#f2f3f7;
}

.category-alt a:link, .category-alt a:visited{
	text-decoration:none;
}

.category-alt a:hover, .category-alt a:active{
	text-decoration:none;
}

.category-alt h6 {
	padding:12px 0;
	background:#E7EAF3;	
}

.category a:link, .category a:visited{
	text-decoration:none;	
}

.category a:hover, .category a:active{
	text-decoration:none;
}

.category img {
	width:100%;		
}

.category h6 {
	padding:5px 0;
	background:#E7EAF3;	
}


/*  RENTALS
------------------------------------------------*/
.rentals {
	margin:0 0 30px 0;
	width:100%;
}

table.rentals {
	border-left:1px solid #525ca4;
}

table.rentals td {
	border:1px solid #525ca4;
	padding:10px 1%;
	text-align:center;
	border-top:none;
	border-left:none;
	width:48%;
	line-height:18px;
}

table.rentals tr:first-child td {
	color:#fff;
	padding:10px 0;
	font-family: 'source_sans_proregular';
	font-size:18px;
	background:#11218C !important;
	border-bottom:none;
}

table.rentals tr:nth-child(odd) td {
	background:#e7eaf3;
}

table.three-column td{
	width:31% !important;
	padding:10px 1%;
}

table.four-column td{
	width:23% !important;
	padding:10px 1%;
}



/*  BROCHURE
------------------------------------------------*/
.brochure {
	margin:0 0% 30px 0;
	width:100%;
	float:left;
	position:relative;
	background:#e7eaf3;
}

.brochure a:link, .brochure a:visited{
	color:#fff;
}

.brochure a:hover, .brochure a:active{
	text-decoration:none;	
}

table.brochure tr:first-child td {
	color:#fff;
	
	text-indent:12px;
	font-family: 'source_sans_proregular';
	font-size:18px;
	background:#11218C !important;
	border-bottom:none;
}

table.brochure tr:first-child td a:link{
	padding:10px 0;
	display:block;
}

table.brochure tr:first-child td a:hover{
	color:#fff;
	background:#9da2c8;
}

table.brochure tr:nth-child(2) td {
	width:50%;
	padding:10px 0;
}

table.brochure tr:nth-child(2) td img{
	width:65%;
	margin:0 37%;
}

table.brochure ul {
	line-height:22px;
	list-style:none;
	text-align:center;
}

table.brochure ul a:link, table.brochure ul a:visited{
	font-size:17px;
	color:#11218C;
	text-decoration:none;
}

table.brochure ul a:hover, table.brochure ul a:active{
	color:#CACDE3;	
}

.odd-row {
	background:#e7eaf3;
}



.hosted-content  #listing-top-information,.hosted-content #listing-bottom-information {font-size:16px; line-height:22px;}



/*  FORMPAGE
------------------------------------------------*/
.form {
	width:94.1%;
	line-height:18px;
}

.form input {
	color:#747474;
	font-size:14px;
	
	padding:8px 5px;
	border:1px solid #8e8d8d;	
	margin:0 0 15px 0;
	
	border-radius:5px;
	-moz-border-radius:5px;
	-webkit-border-radius:5px;
}

.form textarea {
	padding:6px 5px;
	border-radius:5px;
	-moz-border-radius:5px;
	-webkit-border-radius:5px;
	border:1px solid #8e8d8d;
	color:#8e8d8d;
	font-size:12px;
}

 
.form select {
	border-radius:5px;
	-moz-border-radius:5px;
	-webkit-border-radius:5px;
	border:1px solid #8e8d8d;
	color:#8e8d8d;
	vertical-align:middle;
	font-size:12px;
	line-height:normal;
	padding:5px;
}
   
.form input {
    width:95%;
}

.form textarea {
    width:95%;
    height:190px;
}


.form input:focus,
.form textarea:focus,
.form select:focus {
	background:#dedede; 
	color:#112013;
	border:1px solid #2c3626;
	outline-style:none;
	
    border-radius:5px;
    -moz-border-radius:5px;
    -webkit-border-radius:5px;
}


.form input.button,
.form input.button:focus {
	color:#292C76;
    margin:0;
    padding:7px 0;
    border:1px #fff solid;
    border-radius:5px;
    -moz-border-radius:5px;
    -webkit-border-radius:5px;
    font-size:14px;
}
 
.form submit {
	color:#292C76;
	text-transform:uppercase;
	background:#CACDE3;
	width:90%;
	position:relative;
    border:1px #8e8d8d solid;
    border-radius:6px;
    -moz-border-radius:6px;
    -webkit-border-radius:6px;
}

.form input.button, .form input.button:visited {
	width:90% !important;
	margin:0 5% 0 6% !important;
    background:#CACDE3;
	position:relative;
	border:1px #292C76 solid;
	-webkit-transition:.25s ease-in-out;
	-ms-transition:.25s ease-in-out; 
	transition:.25s ease-in-out;
}

.form input.button:hover, .form input.button:active {
	color:#fff;
    background:#9EA1CC;
	margin:0 5% 0 6%;
}


/*  MANU WRAP
------------------------------------------------*/
.manu-wrap {
	padding:45px 0;
	background:#ebecff;
}

.manu-wrap h3 {
	margin:0 0 10px 0.8%;
}


/*  STAFF
------------------------------------------------*/
.staff-wrap {display:flex; flex-flow:row wrap; justify-content: space-around;} 
.staff-member {width:calc(30.333% - 2px); margin:1.5%; padding:0; line-height:1.25; border:1px #292c76 solid; background: #e7eaf3;}
.staff-member p {padding:8px 12px 12px 12px; font-size:.95em;}
.staff-member strong {text-transform:uppercase; color: #292c76; font-family: 'source_sans_prosemibold';}
.staff-member em {display:inline-block; padding:0 0 10px 0; font-family: 'source_sans_prolight_italic';}
.staff-member img {width:100%;}


/*  ASSOCIATIONS
------------------------------------------------*/
.associations-wrap {display:flex; flex-flow:row wrap; align-items:center; justify-content: space-around;} 
.associations {width:30.333%; margin:20px 1.5% 0 1.5%; padding:0;}
.associations img {width:100%;}


/* MANUFACTURERS
------------------------------------------------*/	 
.manu{
	width:13.6%;
	margin:15px 1.5%;
	float:left;
	position:relative;
}

.manu:last-child {
	float:right !important;
	margin:15px auto !important;	
}

.manu a {
	display:block;
	background:#292c76;	
}

.manu img {
	width:100%;	
}

.manu h5 {
	font-size:12px;
}

.last-group {
	width:11.2%;
	margin:15px 1.5%;
}
 
/*  SCROLLING INVENTORY
------------------------------------------------*/
.scrolling-inv {
	padding:45px 0;
	margin:0;
	width:100%;
	overflow:hidden;
	background:#f7f7fa;
}

.scrolling-inv iframe {
	width:100%;
}


/*  FOOTER
------------------------------------------------*/
footer {padding:45px 0; border-top:6px #292c76 solid;}

.divfooter {width:50%; margin:0 auto; line-height:14px; text-align:center;color:#5f606a;}
.footertext{font-size:11px; color:#5f606a;}
a.footerlink:link, a.footerlink:visited, a.footerlink:active{font-size:11px; text-decoration:underline;color:#5f606a;}
a.footerlink:hover {font-size:11px; text-decoration:none; color:#5f606a;}
.smallfootertext{font-size:11px; color:#5f606a;}


/*  RESPONSIVE STYLES
------------------------------------------------*/


@media screen and (max-width: 1250px) {	
	.content-home {width:90%; margin:0 auto;}
	
	.content-home article {width:calc(100% - 235px);}
	.content-home aside {width:200px; margin:0 0 0 35px;}
	.demoVideos {display:flex; flex-flow:row wrap; align-items:center; justify-content:center; float:none; clear:both; margin:0 0 3.5% 0;}
}

@media screen and (max-width: 1185px) {	
	nav.primary{display:none;}
	#menu-button{width:100%; display: block; padding:15px 0; font-size: 1.25em; line-height:60px; position: relative; z-index: 400; background:#f7f7fa;}
	#menu-button a{color:#2d2b71; text-decoration: none; padding:9px 0 0 .8em; font-weight:800;}
	
	nav.mobile ul li .fa-chevron-down {position:absolute; right:10px; margin:17px 0 0 0;}

	nav.mobile {
		display:block;
		position: fixed;
		top: 0;
		left: -285px;
		width: 285px;
		height: 100%;
		z-index: 800;
		overflow:auto;
		background:#333;
	}
	
	/* MENU HEADER SOCIAL MEDIA */
	nav.mobile .social-media {
		position: absolute;
		text-decoration: none;
		vertical-align: top;
		z-index:9999;
		display: inline-block;
		
		top: 15px;
		left: 15px;
		font-size:16px;
		word-spacing:13px;
		color: #ccc !important;
	}
	
	nav.mobile .social-media a:link, nav.mobile .social-media a:visited {color:#ccc; text-decoration:none;}
	nav.mobile .social-media a:hover, nav.mobile .social-media a:active {color:#fff; text-decoration:underline;}
	
	/* MENU HEADER STYLES */
	nav.mobile h3 {	
		color: #ccc;
		padding: 23px 0;
		position: relative;
		font-style:normal;
		font-size: 18px;
		background:#313131;
	}			
	nav.mobile .menu-title {position: absolute; vertical-align: top; top: 16px; right: 47px; text-transform:uppercase; font-size:12px; color: #ccc;}
		
	/* MENU CLOSE 'X' BUTTON */
	nav.mobile .menu-toggle {position: absolute; top: 8px; right: 10px; padding: 6px 9px 5px; display: inline-block; font-weight: 700; font-size: 18px; line-height: 1; color: #ccc; text-decoration: none; vertical-align: top; font-family: Arial, sans-serif;}
	nav.mobile .menu-toggle:hover {color: #fff;}
	
	/* MENU LIST STYLE */
	nav.mobile ul {list-style: none; font-weight: 300; margin:0; padding:0;}
	nav.mobile ul li {color: #999; font-size:15px; border-bottom: 1px solid #303030;}
	
	/* MENU ICONS */
	nav.mobile ul li a i{margin:0 0 0 10px;  color:#E9E9E9;}
	
	/* FIRST LEVEL */
	nav.mobile ul li a {
		color: #999;
		position: relative;
		display: block;
		font-size:15px;
		text-align:right;
		text-decoration: none;
		border-left:4px #333 solid;
		padding: 17px 35px 17px 20px;
		text-shadow: 1px 1px 1px rgba(0,0,0,0.3);
	}
	nav.mobile ul li a:hover {background:rgba(45,45,45,0.5); color: #fff; border-left:4px #575b9f solid;}
	
	/* SECOND LEVEL */
	nav.mobile ul li li:last-child {border:none;}
	nav.mobile ul li li a {color: #ccc; background: #444; border-left:4px #444 solid; padding: 15px 10px 15px 15px;}
	nav.mobile ul li li a:hover {background:rgba(65,65,65,0.5);}
	
	/* THIRD LEVEL */
	nav.mobile ul li li li:last-child {border:none;}
	nav.mobile ul li li li a {color: #ccc; background: #555; border-left:4px #555 solid;}
	nav.mobile ul li li li a:hover {background:rgba(85,85,85,0.5);}
	
	.nav-footer {color:#292929; position:relative; text-align:center; font-size:16px; line-height:16px; padding:15px 0;}
}

@media screen and (max-width: 1020px) {	
	.content {width:94.1%;}
	.content-full {width:95%; margin:0 2.5%;}

	.manu h5 {font-size:13px;}
}

@media screen and (max-width: 975px) {
	.manu-wrap h3 {margin:0 0 10px 1.5%;}
	.manu h5 {font-size:12px;}
}

@media screen and (max-width: 950px) {
	article p{font-size:14px;}

	address h4 {text-align:center; float:none;}
	address h4 span, address h4.right {float:none !important; text-align:center !important; margin:5px 2%; padding:0; width:100% !important;}	
}

@media screen and (max-width: 875px){	
	aside {width:20.6%; margin:0 0 0 5%;}
	aside p {font-size:13px; line-height:16px;}
}

@media screen and (max-width: 830px){
	h2 {font-size:20px;}
	.manu-wrap h3 {margin:0 0 10px 2.5%;}
	.manu{width:20%; margin:15px 2.5%;}
	.last-group {width:20%; margin:15px 2.5%;}
	.last-three {width:20%; margin:15px 6.6% !important;}	
	.category h6 {font-size:16px;}
	.category-alt {width:41%; margin:20px 29% !important;}
	.location {width:48%; font-size: 15px; margin:0 2% 25px 0;}
}

@media screen and (max-width: 800px){
	.category {width:29%; margin:20px 2%;}
	.associations {width:30.3%;}
	.staff-member {width:calc(47% - 2px);}
}

@media screen and (max-width: 750px){
	.manu-wrap h3{font-size:22px;}
	.manu h5 {font-size:9px;}
}

@media screen and (max-width: 660px){
	.category h6 {font-size:14px;}
}

@media screen and (max-width: 600px){
	h2 {font-size:18px;}
	.manu h5 {display:none;}
}

@media screen and (max-width: 575px){
	.category h6 {font-size:12px;}
}

@media screen and (max-width: 565px){	
	.announcement-banner span {font-size:22px; font-weight: 700; line-height:1.5; }
	.announcement-banner p { font-size:22px;}
	
	
	article {width:84%; margin:0 8% 20px 8%;}
	article p{font-size:13px;}
	aside {width:84%; margin:0 8% !important; float:none; text-align:center;}
	aside p {font-size:15px; line-height:18px;}
	
	
	.content-home {width:95%;}
	.content-home article {width:100%; margin:0; float:none;}
	.content-home aside {width:100%; margin:35px 0 !important; float:none;}
	
	.demoVideos {display:flex; flex-flow:row wrap; align-items:center; justify-content:center;}
	.equipmentDemo {width:100%; max-width:251px; margin:8px;}
	/*.equipmentDemo iframe{width:100%; max-width:640px; height:360px;}*/
}

@media screen and (max-width: 515px){
	.logo img {float:none; width:65%; margin:0 17.5%; text-align:center;}
	.light-stripes {display:none;}
	.logo h1 {display:none;}
}

@media screen and (max-width: 500px){
	h2 {font-size:16px;}
	.category {width:46%; margin:20px 2%;}
	.divfooter {width:70%;}
	.category h6 {font-size:10px;}
	.staff-member {width:calc(90% - 2px);}
}

@media screen and (max-width: 400px){
	address h4 {font-size:15px;}
	.manu-wrap h3{font-size:18px;}
	.manu{width:28%;}
	.last-three {width:28%; margin:15px 2.5% !important;}
	.last-one {margin:15px 0% 15px 35.5% !important;}
	.category h6 {font-size:8px;}
	.category-alt {width:60%; margin:20px 20% !important;}
	table.brochure tr:nth-child(2) td:nth-child(1) {display:none;}
	table.brochure tr:nth-child(2) td:nth-child(2) {width:100%; padding:10px 0;}
	table.brochure tr:nth-child(2) td img{display:none;}
	.location {width:98%; text-align:center;}
}

@media screen and (max-width: 360px){
	address h4 {font-size:13px; }
	address h4 span {margin:5px .5%;}
}

@media screen and (max-width: 310px){
	.logo img {width:95%; margin:0 auto;}
	.associations {width:47%;}
	
}