/*

Theme Name: Pro - Progression Studios
Theme URI: http://progressionstudios.com/
Author: Progression Studios
Author URI: http://themeforest.net/user/ProgressionStudios
Description: Progression Custom WordPress Theme
Version: 1.1
License: GNU General Public License version 3.0
License URI: http://www.gnu.org/licenses/gpl-3.0.html
Tags: right-sidebar, custom-menu, editor-style, featured-images, full-width-template, theme-options, translation-ready
Text Domain: progression

*/


/*
=============================================== 01. HTML5 ✰ BOILERPLATE RESET FILE ===============================================
*/
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; }
html { font-size: 100%; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }
html, button, input, select, textarea { font-family: sans-serif; color: #222; }
body { margin: 0; font-size: 1em; line-height: 1.4; }
a:focus { outline: thin dotted; }
a:hover, a:active { outline: 0; }
abbr[title] { border-bottom: 1px dotted; }
b, strong { font-weight: bold; }
blockquote { margin: 1em 40px; }
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; }
pre, code, kbd, samp { font-family: monospace, serif; _font-family: 'courier new', monospace; font-size: 1em; }
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%; }
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
sup { top: -0.5em; }
sub { bottom: -0.25em; }
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; }
img { border: 0; -ms-interpolation-mode: bicubic; vertical-align: middle; }
svg:not(:root) { overflow: hidden; }
figure { margin: 0; }
form { margin: 0; }
fieldset { border: 0; margin: 0; padding: 0; }
label { cursor: pointer; }
legend { border: 0; *margin-left: -7px; padding: 0; white-space: normal; }
button, input, select, textarea { font-size: 100%; margin: 0; vertical-align: baseline; *vertical-align: middle; }
button, input { line-height: normal; }
button, input[type="button"], input[type="reset"], input[type="submit"] { cursor: pointer; -webkit-appearance: button; *overflow: visible; }
button[disabled], input[disabled] { cursor: default; }
input[type="checkbox"], input[type="radio"] { box-sizing: border-box; padding: 0; *width: 13px; *height: 13px; }
input[type="search"] { -webkit-appearance: textfield; -moz-box-sizing: content-box; -webkit-box-sizing: content-box; box-sizing: content-box; }
input[type="search"]::-webkit-search-decoration, input[type="search"]::-webkit-search-cancel-button { -webkit-appearance: none; }
button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }
textarea { overflow: auto; vertical-align: top; resize: vertical; }
input:valid, textarea:valid {  }
input:invalid, textarea:invalid { background-color: #f0dddd; }
table { border-collapse: collapse; border-spacing: 0; }
td { vertical-align: top; }
.chromeframe { margin: 0.2em 0; background: #ccc; color: black; padding: 0.2em 0; }
.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; }
.hidden { display: none !important; visibility: hidden; }
.visuallyhidden { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; }
.visuallyhidden.focusable:active, .visuallyhidden.focusable:focus { clip: auto; height: auto; margin: 0; overflow: visible; position: static; width: auto; }
.invisible { visibility: hidden; }
.clearfix:before, .clearfix:after { content: ""; display: table; }
.clearfix:after { clear: both; }
.clearfix { *zoom: 1; }
.lt-ie8 .clearfix {visibility:hidden; width:0;height:0; clear:both;}
.sticky, .gallery-caption, .bypostauthor {}


/*
=============================================== 02. COLORS AND FONTS ===============================================
*/
/* -------------------- A. LOGO WIDTH -------------------- */
body #logo, body #logo img { width:136px;  max-width:100%; }



/* -------------------- B. BACKGROUND COLORS -------------------- */
#header-top {background:#f23511; height:4px; width:100%; margin-bottom:60px; }


/* -------------------- C. FONT COLORS -------------------- */
a {color:#f23511;}
a:hover {color:#f23511;}



/* -------------------- D. FONT FAMILIES -------------------- */
body, .sf-menu, #bread-crumb, input.wpcf7-submit, input#mc-embedded-subscribe, #mc_embed_signup label {
	font-family:'Maven Pro', sans-serif;
}

.page-title-sub, #page-title h2 {
	font-family: 'Montserrat', sans-serif;
}


/*
=============================================== 03. PRIMARY STYLES ===============================================
*/
/* -------------------- A. DEFAULT STYLES -------------------- */
body {
	font-size: 13px; line-height: 1.4; 
	color:#7f7f7f;
	background:#ffffff;
}
body a img, body a {outline:none !important; text-decoration:none;}
p {padding-top:0px; margin:0px;}
p, ul, ol {margin-bottom: 20px;}
#sidebar ul, #sidebar ol {margin-bottom:15px;}
ul, ol {margin-left:0px; padding-left:16px;}
img {max-width: 100%;height: auto;  width:auto;}
video, audio {max-width:100%;}
.alignnone, .alignleft, .alignright, .aligncenter {max-width:100% !important;}
h1, h2, h3, h4, h5, h6 {color:#343434; margin:0px; padding:0px; line-height:1.1; font-weight:900;}
h1 {font-size:53px; font-weight:900; margin-bottom:0px; line-height:1;}
h2 {font-size:55px; font-weight:700; margin-bottom:15px; }
h3 {font-size:30px; margin-bottom:15px; }
h4 {font-size:17px; text-align:center; text-transform:uppercase; margin-bottom:38px; padding-bottom:38px; background:url(images/heading-divider.png) bottom center no-repeat; }
h5 {font-size:16px; text-transform:uppercase; margin-bottom:18px; }
h6 {font-size:17px; font-weight:400; margin-bottom:10px;  }
hr {background:transparent; border-bottom:1px solid #e1e1e1; border-top:none; margin:20px 0px;}
ul.checkmark, ul.arrow {padding-left:0px;}
ul.checkmark li, ul.arrow li {list-style:none; padding-left:18px;}
ul.checkmark li {background:url(images/checkmark.png) 0px 2px no-repeat;}
ul.arrow li {background:url(https://progressionstudios.com/wp-content/themes/progression/images/sidebar-arrow.png) -4px 0px no-repeat;}
.alignright {float:right; margin:0 0 10px 20px;}
.alignleft {float:left; margin:0px 20px 10px 0px;}
.aligncenter {text-align:center;  margin:0px auto 10px auto; display:block; }
blockquote {background:url(images/blockquote.png) 0px 0px no-repeat; padding-left:40px; font-style:italic; line-height:1.8;}
pre {border:1px solid #ddd; padding:7px 15px; background:#fff; overflow:auto; word-wrap: break-word; line-height:14px; margin-bottom:15px;}


/* -------------------- B. CSS3 TRANSITIONS -------------------- */
a, .featured-image-portfolio .hover-title, span.button, input.wpcf7-submit, input#mc-embedded-subscribe  { 
	-webkit-transition-duration: 200ms;
	-webkit-transition-property:border, color, background, opacity;
	-webkit-transition-timing-function: ease-in-out;
	-moz-transition-duration: 200ms;
	-moz-transition-property:border, color, background, opacity;
	-moz-transition-timing-function: ease-in-out;
	-o-transition-duration: 200ms;
	-o-transition-property:border, color, background, opacity;
	-o-transition-timing-function: ease-in-out;
	transition-duration: 200ms;
	transition-property: border,color, background, opacity;
}

.flex-control-paging li a, p.stars a {-webkit-transition-duration: 0ms !important; -moz-transition-duration: 0ms !important; -o-transition-duration: 0ms !important; transition-duration: 0ms !important;}



/*
=============================================== 04. MAIN CONTAINERS ===============================================
*/
/* -------------------- A. HEADER STYLES -------------------- */
header {font-size:14px; padding-bottom:110px; position:relative; width:100%; z-index:15; }

body h1#logo {  position:absolute; z-index:22; left:50%; margin:0px; margin-left:-68px;  padding:0px; border:none;  }
body #logo img { height: auto; opacity:1 !important; filter:alpha(opacity=100);}
body #logo a:hover img { opacity:1 !important; filter:alpha(opacity=100);}

#page-title {background-color:#323232;}


/*** NAVIGATION STYLES ***/
#navigation { float:left; position:relative; z-index:15; }
#navigation-continue {float:right; position:relative; z-index:15;}

header ul {
	list-style:none;
	margin:0px;
	padding:0px;
	display:block;
}

header ul li {
	margin:0px;
	padding:0px 20px;
	display:inline-block;
}

header ul li a {color:#8d8d8d; padding-bottom:2px;}
header ul li.menu-item-type-custom a, header ul li a:hover {color:#f23511;}

header ul li.current-menu-item a, header ul li.current-portfolio_type-ancestor a, header ul li.current-portfolio-ancestor a { border-bottom:1px solid #e9e9e9;}

header #navigation ul { text-align:right; padding-top:50px;  padding-right:260px;}
header #navigation-continue ul { text-align:left; padding-top:50px;  padding-left:260px; }

#navigation { width:50%; background:url(images/divider-nav.png) 328px 61px no-repeat; }
#navigation-continue { width:50%; background:url(images/divider-nav.png) 100px 61px no-repeat; }



/* -------------------- B. MAIN CONTAINER STYLES -------------------- */
.width-container { width:1140px; margin: 0 auto;}
#main {padding-bottom:80px;}


body.home #page-title {padding:0px;}
#page-title {
	padding:75px 0px;
}	
#page-title h2 {
	color:#ffffff; 
}

.page-title-sub {
	color:#aaaaaa;
	font-size:17px;
	font-weight:400;
	width:60%;
}

/*
=============================================== 05. PAGE STYLES ===============================================
*/
#feature-boxes {
	padding:80px 0px 60px 0px;
	text-align:center;
}
#feature-boxes h5 {text-align:center;}
#feature-boxes img {
	width:72px;
	margin-bottom:25px;
}


#feature-works {
	background:#f6f6f6;
	padding:75px 0px 65px 0px;
}

.portfolio-homepage {
	float:left;
	min-height:5px;
	width:47%;
	margin:5px 1.5% 50px 1.5%;
}


#start-project {
	padding-top:80px;
	text-align:center;
	max-width:50%;
	margin:0 auto;
}
#start-project  p {padding-bottom:10px;}


#services-highlight {
	text-align:center;
	padding:75px 0px 65px 0px;
}
#services-highlight  img {
	width:130px;
	margin-bottom:15px;
}
#services-highlight h4 {
	color:#fff;
	background:url(images/heading-divider-light.png) bottom center no-repeat; 
}

#services-highlight  h6 {color:#ffffff;}

#service-list {
	background:#f6f6f6;
	padding:75px 0px 35px 0px;
}

#service-list .grid2column-progression {
	margin-bottom:30px;
}

#service-list h5 {
	margin-bottom:12px;
}

.service-icon {
	width:55px;
	float:left;
	padding-bottom:30px;
}


#contact-page-container {padding-top:70px;}

#map-contact {width:100%; height:425px; }
#map-contact img {max-width:none; height: auto; }



/*
=============================================== 06. FOOTER STYLES ===============================================
*/
footer {text-align:center; background:#000; color:#fff;  padding:45px 0px 45px 0px;}







/*
=============================================== 09. PORTFOLIO STYLES ===============================================
*/

.featured-image-portfolio {
	position:relative;
}

.featured-image-portfolio a.hover-title {
	z-index:2; 
	opacity:0; 
	filter:alpha(opacity=0); 
	position:absolute; 
	top:0px; 
	left:0px; 
	text-align:center;
	width:100%; 
	height:100%;
	background:#232323;
	background:rgba(0, 0, 0, 0.5)
}

.featured-image-portfolio a.hover-title:hover {opacity:1; filter:alpha(opacity=100);}

.featured-image-portfolio .button {
	top:50%;
	position:relative;
	margin-top:-20px;
}



/*
=============================================== 10. DEFAULT GRID ===============================================
*/
.grid2column-progression, .grid3column-progression, .grid3columnbig-progression, .grid4column-progression, .grid4columnbig-progression {float:left; margin-right:3%; min-height:2px; }
.grid2column-progression { width: 48.5%;}
.grid3column-progression {width: 31.3%;  }
.lt-ie8 .grid3column-progression {width: 31%;  }
.grid3columnbig-progression {width:65.4%;}
.grid4column-progression {width: 22.7%;  }
.lt-ie8 .grid4column-progression {width: 22%;  }
.grid4columnbig-progression {width:73.8%; }

body .lastcolumn-progression {margin-right:0% !important;}

/* Footer Widget Columns */
footer .footer-2-column .widget, footer .footer-3-column .widget, footer .footer-4-column .widget {float:left; margin-left:1%; margin-right:1%; min-height:2px;}
footer .footer-2-column .widget { width: 48%; }
footer .footer-3-column .widget { width: 31%; }
footer .footer-4-column .widget {width: 23%;}



/*
=============================================== 11. BUTTON STYLES ===============================================
*/
body a.button, span.button, body input.wpcf7-submit, body input#mc-embedded-subscribe {
	text-decoration:none; line-height:1; cursor: pointer; display:inline-block; 
	width:auto;
	margin-right:0px;
	padding:18px 24px;
	font-size:14px;
	color:#aaaaaa;
	border:1px solid #dcdcdc;
	margin-right:8px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
}
body a.button:hover {
	color:#777777;
	border:1px solid #a0a0a0;
}

body #page-title a.button {
	color:#cccccc;
	border:1px solid #cccccc;
}

body #page-title a.button:hover {
	color:#ffffff;
	border-color:#ffffff;
}


body #main a.button.colorful, span.button.colorful, body #main input.wpcf7-submit, body #main input#mc-embedded-subscribe {
	color:#ffffff;
	background:#f23511;
	border:1px solid #f23511;
}



body #main a.button.colorful:hover, body #main input.wpcf7-submit:hover, body #main input#mc-embedded-subscribe:hover {
	background:#de2603;
	border:1px solid #de2603;
}



ul#portfolio-sub-nav {
	margin:60px 0px 45px 0px;
	padding:0px;
	display:block;
	text-align:center;
}

ul#portfolio-sub-nav li {
	margin:0px 0px 5px 0px;
	padding:0px;
	display:inline-block;
}

ul#portfolio-sub-nav a {
	text-decoration:none; line-height:1; cursor: pointer; display:inline-block; 
	width:auto;
	margin-right:0px;
	padding:18px 24px;
	font-size:14px;
	color:#aaaaaa;
	border:1px solid #dcdcdc;
	margin-right:8px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
}

ul#portfolio-sub-nav a:hover, ul#portfolio-sub-nav li.current-cat a {
	color:#ffffff;
	border-color:#f23511;
	background-color:#f23511;
}


ul.page-numbers {
	margin:10px 0px 0px 0px;
	padding:0px;
	display:block;
	text-align:center;
}

ul.page-numbers li {
	margin:0px 0px 0px 0px;
	padding:0px;
	display:inline-block;
}

ul.page-numbers .page-numbers {
	text-decoration:none; line-height:1; cursor: pointer; display:inline-block; 
	width:auto;
	margin-right:0px;
	padding:14px 18px;
	font-size:13px;
	color:#aaaaaa;
	border:1px solid #dcdcdc;
	margin-right:8px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
}

ul.page-numbers .page-numbers:hover, ul.page-numbers .page-numbers.current {
	color:#ffffff;
	border-color:#f23511;
	background-color:#f23511;
}




/*
=============================================== 11. Portfolio Post STYLES ===============================================
*/
#portfolio-single-post {
	margin-top:80px;
	
}

#portfolio-single-post .lastcolumn-progression {
	font-size:14px;
}

#portfolio-single-post .lastcolumn-progression ul  {
	list-style:circle;
	margin-bottom:40px;
}
#portfolio-single-post .lastcolumn-progression ul li {
	margin-bottom:20px;
}

article.type-portfolio {margin-bottom:30px;}

/*
=============================================== 12. CONTACT FORM STYLES ===============================================
*/

span.required {color:#da5454;}
.wpcf7 {font-size:14px;}
.wpcf7 input, .wpcf7 textarea, #respond textarea, #respond input, #mc_embed_signup input, #mc_embed_signup textarea {
	padding:10px 10px;
	margin-top:2px;
	border-top:1px solid #cecece;
	border-left:1px solid #e6e6e6;
	border-right:1px solid #e6e6e6;
	border-bottom:1px solid #e6e6e6;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	background-color:#f2f2f2;
	font-size:14px;
}
.wpcf7 input.wpcf7-not-valid, .wpcf7 textarea.wpcf7-not-valid {
	border-color:#eab7b7; 
	border-style:dotted;
	background:#fbe8e8;
}
.wpcf7-not-valid-tip {display:none !important;}
.wpcf7 input, #respond input, #mc_embed_signup input {width:50%;}
.wpcf7 textarea, #respond textarea, #mc_embed_signup textarea {width:70%;}



#newsletter-page {
	padding-top:40px;
}


#mc_embed_signup label {
	font-size:14px;
	display:block;
	margin:0px;
	padding-top:20px;
	margin-bottom:-20px;
}


/*
=============================================== 13. FEATURED SLIDER and PAGE TITLE ===============================================
*/
/* -------------------- B. FEATURED SLIDER -------------------- */

header nav {-webkit-font-smoothing: subpixel-antialiased; } /*Fix for Anti-Aliased Movement on sliding with css3 turned on */

 /* Browser Resets */
.flex-container a:active,
.flexslider a:active,
.flex-container a:focus,
.flexslider a:focus  {outline: none;}
.slides,
.flex-control-nav,
.flex-direction-nav {margin: 0; padding: 0; list-style: none;} 

/* FlexSlider Necessary Styles
*********************************/ 
.flexslider {margin: 0; padding: 0;}
.flexslider .slides > li {display: none; -webkit-backface-visibility: hidden;} /* Hide the slides before the JS is loaded. Avoids image jumping */
.flexslider .slides img { display: block; width:100%; }
.flex-pauseplay span {text-transform: capitalize;}

/* Clearfix for the .slides element */
.slides:after {content: "."; display: block; clear: both; visibility: hidden; line-height: 0; height: 0;} 
html[xmlns] .slides {display: block;} 
* html .slides {height: 1%;}

/* No JavaScript Fallback */
/* If you are not using another script, such as Modernizr, make sure you
 * include js that eliminates this class on page load */
.no-js .slides > li:first-child {display: block;}


/* FlexSlider Default Theme
*********************************/
.flexslider {margin:0px auto; position: relative; zoom: 1; /*  overflow:hidden; */ }
.flex-viewport {max-height: 2000px; -webkit-transition: all 1s ease; -moz-transition: all 1s ease; transition: all 1s ease;}
.loading .flex-viewport {max-height: 300px;}
.flexslider .slides {zoom: 1;}


/* Direction Nav */
.flex-direction-nav {*height: 0;}
.flex-direction-nav a {background-color:#161616;}
.flex-direction-nav a:hover {background-color:#161616;}
.flex-direction-nav a {z-index:46;  width: 54px; height: 54px; margin: -27px 0 0; display: block; background-image: url(images/slider/arrows.png); background-repeat: no-repeat; background-position: bottom left; position: absolute; top: 50%; cursor: pointer; text-indent: -9999px; opacity: 0; -webkit-transition: all .3s ease;  -moz-transition: all .3s ease; transition: all .3s ease;}
.flex-direction-nav .flex-next {background-position: bottom right; right: 0px;  }
.flex-direction-nav .flex-prev {background-position: bottom left;  left: 0px;}
.flexslider:hover .flex-next {opacity: 0.75; }
.flexslider:hover .flex-prev {opacity: 0.75; }
.flexslider:hover .flex-next:hover, .flexslider:hover .flex-prev:hover {opacity: 1;}
.flex-direction-nav .flex-disabled, #carousel-pro .flex-direction-nav .flex-disabled {display:none; opacity: 0!important; filter:alpha(opacity=0); cursor: default;}

#main .flex-direction-nav .flex-next { right: 25px;opacity: 0.75;  }
#main .flex-direction-nav .flex-prev {left: 25px;opacity: 0.75; }


/* Control Nav */
.flex-control-nav { z-index:5; width: 100%; position: absolute; bottom: 30px; text-align: center; }
.flex-control-nav li {margin: 0 2px; display: inline-block; zoom: 1; *display: inline;}
.flex-control-paging li a {width: 20px; height: 20px; display: block; background: url(images/slider/slider-bullets.png) 0px -24px no-repeat;  cursor: pointer; text-indent: -9999px;}
.flex-control-paging li a:hover { background-position:0px -47px; }
.flex-control-paging li a.flex-active {  background-position:0px 0px; cursor: default; }
body #main .flex-control-paging li a { -webkit-transition: none; -moz-transition: none; none; -o-transition: none; }


.flex-control-thumbs {margin: 5px 0 0; position: static; overflow: hidden;}
.flex-control-thumbs li {width: 25%; float: left; margin: 0;}
.flex-control-thumbs img {width: 100%; display: block; opacity: .7; cursor: pointer;}
.flex-control-thumbs img:hover {opacity: 1;}
.flex-control-thumbs .flex-active {opacity: 1; cursor: default;}


.lt-ie9 .flex-direction-nav .flex-prev {opacity: 1; left: 15px;}
.lt-ie9 .flex-direction-nav .flex-next {opacity: 1; right: 15px;}


@media screen and (max-width: 940px) {
  .flex-direction-nav .flex-prev, .flex-direction-nav .flex-next {display:none;}
  #carousel-pro .flex-direction-nav .flex-prev, #carousel-pro .flex-diection-nav .flex-next {display:block;}
}




/* Caption */

.slider-container {padding:100px 50px 115px 50px; }

.slider-container h1 {color:#ffffff;}
.caption-text {
	padding:15px 0px 0px 0px;
	color:#5e5e5e;
	font-size:20px;
}
.caption-text p { padding-bottom:5px; }
.caption-container {padding-top:50px;}

.flexslider .grid2column-progression.lastcolumn-progression img {
	-moz-box-shadow: 5px 14px 40px rgba(0, 0, 0, 0.75);
	-webkit-box-shadow: 5px 14px 40px rgba(0, 0, 0, 0.75);
	box-shadow: 5px 14px 40px rgba(0, 0, 0, 0.75);
}