/* Last-Modified: Fri, 26 Aug 2016 12:09:38 GMT [ver: ] */
/* Current-Time:Sat, 27 Aug 2016 02:38:59 -0500*/
/*! HTML5 Boilerplate v4.3.0 | MIT License | http://h5bp.com/ */

/*
 * 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.
 */

/*
==========================================================================
Base styles: opinionated defaults
==========================================================================
*/

/*html,
button,
input,
select,
textarea {
    color: #222;
}*/

html {
    font-size: 1em;
    line-height: 1.4;
}

/*
 * Remove text-shadow in selection highlight: h5bp.com/i
 * These selection rule sets have to be separate.
 * Customize the background color to match your design.
 */

::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

/*
 * A better looking default horizontal rule
 */

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #E1E1E1;
    margin: 1.250em 0;
    padding: 0;
    clear: both;
}

/*
 * Remove the gap between images, videos, audio and canvas and the bottom of
 * their containers: h5bp.com/i/440
 */

audio,
canvas,
img,
video {
    vertical-align: middle;
}

/*
 * Remove default fieldset styles.
 */

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

/*
 * Allow only vertical resizing of textareas.
 */

textarea {
    resize: vertical;
}


/* apply a natural box layout model to all elements */
*, *:before, *:after {
	-moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box;
 }
 
 /*
==========================================================================
GENERAL
==========================================================================
*/

html {
	height: 100%;
}

body {
	font-family: 'Lato', sans-serif;
	font-size: 15px;
	line-height: 22px;
	color: #444444;
	background-color: #F0F0F0;
	background-repeat: repeat-x;
	background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#F0F0F0), to(#F0F0F0)) fixed;
	background: -webkit-linear-gradient(top, #F0F0F0, #F0F0F0) fixed;
	background: -moz-linear-gradient(top, #F0F0F0, #F0F0F0) fixed;
	background: -ms-linear-gradient(top, #F0F0F0, #F0F0F0) fixed;
	background: -o-linear-gradient(top, #F0F0F0, #F0F0F0) fixed;
}

a {
	color: #000000;
	text-decoration: underline;
	-webkit-transition:0.2s color linear;
		-moz-transition:0.2s color linear;
			transition:0.2s color linear;
}

a:hover {
	color: #6E6E6E;
}

h1, h2, h3, h4, h5 {
	color: #444444;
	font-family: 'Lato', sans-serif;
	font-weight: 400;
	text-transform: uppercase;
	line-height:100%;
}

h1 a, h2 a, h3 a, h4 a, h5 a {
	text-decoration: none;
}

h1 {
	font-size: 28px;
}

h1.page-title {
	float: left;
	font-size: 20px;
	width: 100%;
	text-align: center;
	margin-bottom: 60px;
}

h2 {
	font-size: 24px;
}

h3 {
	font-size: 20px;
}

h4 {
	font-size: 16px;
}

h5 {
	font-size: 14px;
}

p {
	line-height: 24px;
	margin-top: 0;
}

img {
	max-width: 100%;
	height: auto;
	border: 0;
	-ms-interpolation-mode: bicubic;
	vertical-align: middle;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
}

.img-left {
	float: left;
	margin-right: 20px;
	margin-bottom: 20px;
}

.text-left {
	text-align: left;
}

.text-right {
	text-align: right;
}

.text-center {
	text-align: center;
}

.margin-none {
	margin-top: 0;
	margin-bottom: 0;
}

.margin-top {
	margin-top: 28px;
}

.margin-right {
	margin-right: 14px;
}

.margin-bottom {
	margin-bottom: 28px;
}

.margin-left {
	margin-left: 14px;
}

.pad-none {
	padding: 0;
}

.pad-top {
	padding-top: 10px;
}

.pad-right {
	padding-right: 10px;
}

.pad-bottom {
	padding-bottom: 10px;
}

.pad-left {
	padding-left: 10px;
}

.error {
	color: #FF0000;
}

.content-left {
	text-align: left;
}

.content-right {
	text-align: right;
}

/*
==========================================================================
STRUCTURE
==========================================================================
*/

#content {
	left: 23.125em;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
}

#content article {
	padding: 3em;
	width: auto;
	max-width: 68em;
	margin-left: auto;
	margin-right: auto;
	position: relative;
	left: 0;
}

.grid { overflow: hidden; text-align: center; }
.grid li { float: left; margin-right: 8px; margin-bottom: 8px !important; display: inline-block; }
.grid img { border: 0; padding: 0; margin: 0 auto; }

/*
==========================================================================
HEADER
==========================================================================
*/

#header {
	position: fixed;
	top: 0;
	left: 50px;
	height: 100%;
	width: 20em;
	padding-top: 3em;
	text-align: center;
	background: #FFFFFF;
	z-index: 5;
	overflow: scroll;
}

#header #logo { 
	width: 85%;
	margin: 0 auto 40px;
}

#header #logo a {
	color: #333333;
	text-decoration: none;
}

#main-nav ul {
	margin: 0;
	padding: 0;
}

#main-nav ul li {
	list-style: none;
	line-height: 32px;
	list-style: none;
	margin: 0 0 10px;
	font-family: 'Lato', sans-serif;
	text-transform: uppercase;
}

#main-nav ul li a {
	color: #6E6E6E;
	font-size: 14px;
	display: block;
	text-decoration: none;
}

#main-nav ul li a:hover {
	text-decoration: none;
	color: #CCCCCC;
}

#main-nav ul li.selectednavlink a {
	color: #FFFFFF;
	width: 85%;
	margin: 0 auto;
	background: #000000;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;
}

#main-nav ul li.emptynavlink {
	display: none;
}

#header p {
	color: #444444;
}

#header #main-nav select {
	display: none;
}

#header #mobile-nav {
	display: none;
}

#header #social {
	float: left;
	width: 100%;
}

#header #social ul {
	margin: 0;
	padding: 10px 10px 0;
	list-style: none;
}

#header #social ul li {
	display: inline;
	margin: 0;
	padding: 0 2px;
	cursor: pointer;
}

/*#header #social ul li a {
	opacity: .3;
	-webkit-transition:0.2s opacity linear;
		-moz-transition:0.2s opacity linear;
			transition:0.2s opacity linear;
}

#header #social ul li a:hover {
	opacity: 1;
}*/

#header .copyright {
	float: left;
	width: 100%;
	padding: 20px 20px 0;
	font-size: 12px;
}

#header .copyright a {
	color: #444444;
	text-decoration:none;
}

#header .copyright a:hover {
	color: #6E6E6E;
	text-decoration:underline;
}

#faso-tagline {
	color:#444444;
}

#copyright {
	display: none;
	font-size: 12px;
	text-align: center;
	padding-bottom: 10px;
	padding-top: 15px;
}

/*
==========================================================================
PORTFOLIO SECTION
==========================================================================
*/

#portfolio-wrap {
	position: relative;
	padding: 0;
	width: 100%;
	margin: 0 auto;
	display: block;
	padding-top: 10px;
	overflow: hidden;
}

.portfolio-item {
	padding: 0;
	position: relative;
	margin-bottom: 20px;
}

.portfolio-item a {
	text-decoration: none;
}

.portfolio-box {
	position: relative;
	overflow: hidden;
	background: #FFFFFF;
	-webkit-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, .10);
	-moz-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, .10);
	box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, .10);
	padding: 5px;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
}

.portfolio-box img {
	display: block;
	width: 100%;
	height: auto;
	margin-bottom: 10px;
}

.portfolio-caption {
	width: 100%;
	height: 100%;
	display: block;
	text-align: center;
	overflow: hidden;
	padding: 0 10px;
}

.portfolio-caption h3 {
	margin: 0;
	font-size: 14px;
	text-transform: uppercase;
	line-height: 100%;
}

.portfolio-caption p {
	display: block;
	color: #444444;
	font-size: 12px;
	line-height: 12px;
	margin-top: 5px;
	margin-bottom: 0px;
}

#portfolio-nav {
	margin-bottom: 20px;
}

/*
==========================================================================
BLOG
==========================================================================
*/

.blog-fragment {
	margin: 0 auto 20px;
	max-width: 68em;
}

.blog-post h2 {
	margin-bottom: 0px;
}

.comment {
	margin-bottom: 10px;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	padding-top: 10px;
	padding-right: 10px;
	padding-left: 10px;
}

.comment .avatar {
	float: left;
	margin-right: 10px;
}

.comment .comment-content {
	display: inline-block;
	margin-top: 10px;
}

.blog-comment-odd {

}

.blog-comment-even {
	background: #F0F0F0;
}

.social-buttons { float:left; margin: 0 0 20px !important; padding-left: 0; list-style:none; float:left; }
.social-buttons li { float:left; display: inline; padding-right: 10px; }
.social-buttons li a { text-decoration: none !important; border: none; }
.social-buttons img { border: none !important; }

/*
==========================================================================
FOOTER
==========================================================================
*/

#footer {
	width: auto;
	max-width: 68em;
	margin-left: auto;
	margin-right: auto;
	position: relative;
	left: 0;
	overflow: hidden;
	padding: 48px 48px 36px;
	color: #6E6E6E;
	/*background: rgba(0, 0, 0, .25);*/
	background: #F0F0F0;
	clear: both;
}

#footer a {
	color: #333333;
}

#footer a:hover {
	color: #999999;
}

#footer ul {
	margin: 0; padding: 0;
}

#footer li {
	list-style: none;
	line-height: 16px;
	margin-bottom: 10px;
}

#footer .widget {
	display: block;
	padding-right: 10px;
	padding-left: 10px;
	padding-bottom: 20px;
	float: left;
	width: 25%;
	min-height: 175px;
}

#footer .widget h4 {
	margin-top: 0px;
}
.sm-icon {
	width: 49px;
	height: 49px;
}

/*
==========================================================================
FORMS
==========================================================================
*/

.contactForm {
	width: 100%;
	float: left;
	margin-bottom: 30px;
}

input[type="text"], input[type="password"], textarea {
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	border: 1px solid #FFFFFF;
	color: #444444;
	background: #FFFFFF;
	font-family: 'Lato', sans-serif;
	font-size: 15px;
	margin-bottom: 20px;
	padding: 10px;
	width: 100%;
}

input[type="submit"] {
	font-size: 14px;
	letter-spacing: 1px;
	border: 0;
	background: #DDDDDD;
	color: #666666;
	padding: 8px 20px;
	text-transform: uppercase;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;
	-webkit-transition:0.2s all linear;
		-moz-transition:0.2s all linear;
			transition:0.2s all linear;
}

input[type="submit"]:hover {
	background: #FFFFFF;
	color: #666666;
	cursor: pointer;
}

input:focus, textarea:focus {
    outline:none;
}

.placeholder { color: #444444; }

::-webkit-input-placeholder {
   color: #444444;
}

:-moz-placeholder { /* Firefox 18- */
   color: #444444;  
}

::-moz-placeholder {  /* Firefox 19+ */
   color: #444444;  
}

:-ms-input-placeholder {  
   color: #444444;  
}

.contactForm p {
	margin-bottom: 0px;
}

/*
==========================================================================
TABLES
==========================================================================
*/

table {
	width: 100%;
}

table th, table td {
	padding: 10px 5px 9px;
	/*line-height: 30px;*/
	text-align: left;
}

table td {
	vertical-align: top;
	/*background-color: #F0F0F0;*/
	color: #444444;
	font-family: 'Lato', sans-serif;
}

/*
==========================================================================
PAGINATION
==========================================================================
*/

.pagination {
	width: 100%;
	padding-top: 15px;
	padding-bottom: 15px;
}

.pagination ul {
	display: inline-block !important;
	margin: 0;
	padding-left: 0;
}

.pagination ul li {
	float: left;
	list-style: none;
}

.pagination ul li a {
	padding: 4px 10px;
	margin-right: 4px;
	background: #F0F0F0;
	color: #333333;
	text-decoration: none;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
}

.pagination ul li a:hover {
	background: #F0F0F0;
	color: #CCCCCC;
}

.pagination ul li a.current {
	background: #F0F0F0;
	color: #333333;
}
 
 /*
==========================================================================
GRID
==========================================================================
*/

.row {
	margin: 0 auto 20px;
	max-width: 68em;
}

*[class*='col-'] {
	float: left;
	padding: 0 10px;
	/*position: relative;*/
}

.col-1-1 { float: none; }
.col-1-2 { width: 50%; }
.col-1-3 { width: 33.33333%; }
.col-2-3 { width: 66.66666%; }
.col-1-4 { width: 25%; }
.col-3-4 { width: 75%; }
.col-1-5 { width: 20%; }
.col-2-5 { width: 40%; }
.col-3-5 { width: 60%; }
.col-4-5 { width: 80%; }
 
/*
==========================================================================
SALVATTORE
==========================================================================
*/

@media screen and (max-width: 480px){

	#portfolio-wrap[data-columns]::before {
		content: '1 .column.size-1of1';
	}
	
}

@media screen and (min-width: 481px) and (max-width: 959px) {

	#portfolio-wrap[data-columns]::before {
		content: '2 .column.size-1of2';
	}
	
}

@media screen and (min-width: 960px) {

	#portfolio-wrap[data-columns]::before {
		content: '3 .column.size-1of3';
	}
	
}

.column { float: left; padding-left: 10px; padding-right: 10px; }
.size-1of1 { width: 100%; }
.size-1of2 { width: 50%; }
.size-1of3 { width: 33.333%; }

/*
==========================================================================
Helper classes
==========================================================================
*/

.ir {
    background-color: transparent;
    border: 0;
    overflow: hidden;
    /* IE 6/7 fallback */
    *text-indent: -9999px;
}

.ir:before {
    content: "";
    display: block;
    width: 0;
    height: 150%;
}

.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,
.row:before,
.row:after {
    content: " "; /* 1 */
    display: table; /* 2 */
}

.clearfix:after,
.row:after {
    clear: both;
}

.clearfix,
.row {
    *zoom: 1;
}

/*
==========================================================================
MEDIA QUERIES
==========================================================================
*/

@media screen and (max-width: 60em) {

	#footer .widget {
		width: 50%;
	}
	
	#footer .widget {
		min-height: 235px;
	}
	
	.blog-fragment .col-1-2 {
		float: none;
		width: 100%;
	}
	
}

@media screen and (max-width: 48em) {

	#header {
		left: 0;
	}
	
	#content {
		left: 20em;
	}
	
}

@media screen and (max-width: 40em) {
	
	#content {
		left: 0;
	}
	
	#content article {
		padding-top: 15em;
	}
	
	#header {
		position: relative;
		left: 0;
		width: 100%;
		float: none;
		text-align: center;
		padding: 0;
		overflow: hidden;
	}
	
	#header #logo {
		width: 100%;
		margin-top: 20px;
		margin-bottom: 20px;
		padding-right: 20px;
		padding-left: 20px;
	}
	
	#header #main-nav {
		display: none;
	}
	
	#header #mobile-nav {
		display: block;
		margin-bottom: 20px;
	}
	
	#header #social {
		width: 100%;
		margin-bottom: 20px;
	}
	
	#header #social ul {
		padding: 0;
	}
	
	#header #social ul li {
		width: 26px;
	}
	
	#header .copyright {
		display: none;
	}
	
	h1.page-title {
		margin-top: 40px;
	}
	
	.content-left {
		text-align: center;
	}

	.content-right {
		text-align: center;
	}
	
	#copyright {
		display: block;
	}
	
	input[type="text"], textarea {
		width: 100%;
	}
	
	.pagination {
		text-align: center;
	}
	
	#footer .widget {
		width: 100%;
		text-align: center;
		min-height: 0;
	}
	
	.grid li { float: none; }
	
	*[class*='col-'] {
		float: none;
		width: 100%;
	}
	/**[class*='col-']:not(.collapse-none).pad-right,
	*[class*='col-']:not(.collapse-none).pad-left {
		padding-right: 0;
		padding-left: 0;
	}*/
}

/*
==========================================================================
Print styles.
Inlined to avoid required HTTP connection: h5bp.com/r
==========================================================================
*/

@media print {
    * {
        background: transparent !important;
        color: #000 !important; /* Black prints faster: h5bp.com/s */
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    a[href]:after {
        content: " (" attr(href) ")";
    }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    /*
     * Don't show links for images, or javascript/internal links
     */

    .ir a:after,
    a[href^="javascript:"]:after,
    a[href^="#"]:after {
        content: "";
    }

    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;
    }
}
#widget-email-input {
	border: 2px solid #FFFFFF;
}
#widget-email-input:focus {
	border: 2px solid #FFFFFF;
	color: #444444;
	background: #FFFFFF;
}								
		/*reduce contact comment box size - added 3/30 cf*/
.faso-contact-input-comments {height: 100px;}

/*move page heading bar up and make narrower*/
#page-title {height: 40px; position: relative; top:30px; }
/*move page heading text up to fit in new bar size*/
#page-title h1 {line-height: 45px;}

p {margin:0px;padding:0px;} 

/*remove place holder for main page picture*/
.main-image-mainpagepicture {display:none;}