/*
Theme Name: New Prolific
Description: Child theme for blankslate theme
Template: blankslate
*/

/*
#interiorContent.noSidebar {
    width: 100%;
    margin: 0 auto;
    float: none;
    display: table;
}
*/

/********************************************************************************* CUSTOM */


.homeIllust {
    padding: 10px 60px !important;
    max-width: 300px !important;
}

.electIllust {
	padding:10px 60px !important;
}

.slick-slider .slide {
    background-position: right center !important;
}

.electOptions {
    padding: 5% 10% !important;
}

#rightNav #headerSocial {
    margin: 13px 10px !important;
}

#headerBox {
	padding:2% 5% !important;
}

a#snapAppointments-button-0 {
    z-index: 9999;
}

.noPadding {
	padding:0 !important;
}

/********************************************************************************* DEFAULTS */


.homeIntroText {
    margin-top: -30px;
    margin-bottom: 30px;
}

.socialAnchor {
	padding: 19px 0 0 !important;
}

.contentLayer {
    padding: 4% 5%;
}

.footerLayer .thirdcolumnBox img {
    width: 100%;
    height: auto;
}

#footerLinks img {
    height: 70px;
    width: auto;
    padding: 0 10px;
}

.alignright {
    float: right;
}

.slick-slider .slide {
    background-position: right center !important;
}

/********************************************************************************* DEFAULTS */


.headerLayer.contentLayer {
    background-size: cover;
    background-position: center center;
}

.contentInNav {
    display: table;
    float: none;
    width: 100%;
    text-align: center;
}


#navInContentBox .headerLayer.contentLayer {
    padding: 0;
}

#navInContentBox #headerBox {
	padding-bottom: 0;
}

#navInContentBox #navBox2 .menu-main-container {
    float: none !important;
    clear: both;
    width: auto !important;
    margin: 0 auto;
    display: table;
}

.button1 {
    padding: 10px;
    display: inline-block;
}

.button {padding:10px 20px;}

.whitetext {
	color:white !important;
}

#homeServicesButton {
    float: left;
    width: 100%;
    text-align: center;
    padding: 40px 20px;
    border: 8px solid #f19231;
    color: #f19231;
    border-radius: 20px;
    font-family: 'open sans';
    text-decoration: none;
    font-weight: bold;
    font-size: 14px;
}

#homeServicesButton h3 {
    font-size: 25px;
    margin-top: 5px;
    margin-bottom: 0;
}

/********************************************************************************* DEFAULTS */

html {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
*, *:before, *:after {
  -webkit-box-sizing: inherit;
  -moz-box-sizing: inherit;
  box-sizing: inherit;
}

body {padding: 0; margin: 0;}

#bodyBG {width:100%; float: left;}

.coverBG { background-size: cover !important;}
#bodyBG.repeatxBG { background-repeat: repeat-x !important; background-size: 50% !important;}

#bodyBox.ninesixty { max-width: 960px; margin:0 auto;}
#bodyBox.twelvehundred { max-width: 1200px; margin:0 auto;}
	
.container {
    margin: 0 auto;
}

a {
	color:inherit;
}

p {
	margin:0 0 20px;
}

p:last-child {
    margin-bottom: 0 !important;
}

h1, h2, h3, h4 {
	margin:0 0 15px;
}

.gallery-item {
    padding: 5px;
}

.gallery-item img {
    width: 100%;
    height: auto;
    padding: 0px;
    border:0px !important;
}



/********************************************************************************* HEADER */

#headerBox {
    float: left;
    width: 100%;
    background-size: cover;
    background-position: center center;
}

#headerLogo {
	float: left;
	padding:0 !important;
}

#headerLogo.smallSplit {
	display: none !important;
}

#headerBox.center #headerLogo {
    margin: 0 auto 15px;
    display: block;
}

#headerLogo img {
	width:100%;
}

a#headerLogo:hover {
    background: none !important;
}

#topHeaderContent {
    float: right;
}

.center #topHeaderContent {
    margin: 0 auto;
    float: none;
    display: table;
}

#navBox1 {
    float: right;
    width: auto;
    clear: right;
    margin-top:30px;
}

.center #navBox1 {
    margin: 0 auto;
    display: table;
    float: none;
    width: auto;
    padding: 0 20px 0;
    clear:both;
}

#navBox1 li.menu-item-has-children {
	position: relative;
}

#navBox1 .sub-menu {
    width: 150%;
    right: 0;
    text-align: right;
    position: absolute;
}

.soc-inlineExtra #navBox1 {
    clear: initial;
}

.menu-main-container {
    width: 100%;
}

.menu {
    padding: 0;
    margin: 0;
}

.menu ul {
    margin: 0;
}

.sub-menu {
    float: left;
    position: absolute;
    z-index: 9999;
    max-width: 180px;
    padding: 0;
    display: none;
    width: 100%;
}

.sub-menu li {
    width: 100%;
}

.sub-menu a {
    width: 100%;
    padding: 5% 8% !important;
    float: left;
}

li:hover ul.sub-menu {
    display: block;
}
#headerSocial {
	float: right;
}

#headerSocial .socialAnchor:last-child {
    margin-right: 0;
}

#navBox1 #headerSocial {
    margin: -10px 0 10px;
}

.socInline #headerSocial {
    margin: 0 0 0 15px !important;
    float: right;
}

.socInline .menu-extra-nav-container {
    float: right;
}

.socialAnchor {opacity: .8;}
.socialAnchor:hover {opacity: 1;}

#navBox2 #headerSocial {
	margin:0;
}

.socialAnchor {
	margin: 0 10px 0 0;
	text-decoration: none;
	padding-left:0 !important;
	padding-right:0 !important;
}

.socialAnchor:hover {background:none !important;}

.social-icon {
    width: 20px;
}

#navBox1 li {
    list-style: none;
    clear: none;
	float: right;
    font-size:6px;
    padding:0;
    
}

#navBox1 li a {
	    padding:5px 10px;
	    float: left;

}

ul#menu-main {
    float: right;
    width: 100%;
    padding: 0;
    margin: 0;
}

.centerBar ul#menu-main {
    float: none !important;
    margin: 0 auto !important;
    display: table;
}

#navBox2 ul#menu-main {
    float: left;
    width: auto;
    padding: 0;
    margin: 0;
}

.menu-item a {
	text-decoration:none !important;
	color:black;
	float: left;
}

#splitNavBox {
    float: left;
    width: 100%;
}

#menu-left {
    float: right;
}

.headerNavBox li {
    list-style: none;
    display: inline;
    margin: 10px;
    float: right;
}

#leftNav {
    width: 32.5%;
    margin-top: 48px;
    float: left;
    padding-right: 40px;
}

#rightNav {
    float: right;
    width: 32.5%;
    margin-top: 48px;
    padding-left: 40px;
}

#rightNav #headerSocial {
    float: left;
    margin: 6px;
}

#menu-right {
	float: left;
}

/******************************************** NAV 2 */

#navBox2 {
    float: left;
    width: 100%;
    padding:0 5%;
}

#navBox2 #menu-main-1 {
    margin: 0;
    padding:0;
}

#navBox2 li {
    list-style: none;
    float: left;
}

#navBox2 a {
    padding: 20px;
    float: left;
}

/********************************************************************************* FOOTER */

#footer {
    float: left;
    width: 100%;
    padding: 0 5%;
}

.contentLayer.footerLayer {
    padding: 5% 5%;
}


/********************************************************************************* FLEXIBLE CONTENT */

.floatLeft {float:left !important;}
.floatRight {float: right !important;}
.floatCenter {float: none !important; margin:0 auto;}

/******************************************** CONTENT LAYER */


.contentLayer .column:first-child {
    padding-left: 0px;
}

.contentLayer .column:last-child {
    padding-right: 0px;
}


.contentLayer {
    float: left;
    width: 100%;
    position: relative;
    overflow:hidden;
}

.contentLayer.twothird {
    width: 66.666666% !important;
}

.contentLayer.third {
    width: 33.333333% !important;
}

.contentLayer.coverBG {
    background-size: cover !important;
    background-position: center center !important;
}

.contentLayer.patternBG {
	background-size: initial;
	background-repeat: repeat;
}

.contentLayer.noBG {
	background:none !important;
}

.contentLayer.no-padding {
	padding:0;
}

.contentLayer.extra-padding {
    padding: 5%;
}

.contentLayer.no-top-padding {
    padding: 0 8%;
}

.centerOption {
    float: none !important;
    margin: 0 auto !important;
}

.layerHeader {
    margin: 0 auto 30px;
    max-width: 1200px;
}

.layerBGsmall {
	display: none;
	margin:0;
	width:100%;
}

.edge img {
    display: block;
    margin:0 auto;
}

.twothirdcolumnBoxEdge.edge {
    width: 66%;
}

.thirdcolumnBoxEdge.edge {
	width:33%;
}

.bottomRightEdge, .bottomLeftEdge, .topRightEdge, .topLeftEdge {
    position: absolute;
    height: 100%;
}

.bottomRightEdge {
    bottom: 0;
    right: 0;
}

.bottomLeftEdge {
	bottom:0;
	left:0;
}

.topRightEdge {
	top:0;
	right:0;
}

.topLeftEdge {
	top:0;
	left:0;
}

.bottomRightEdge img, .bottomLeftEdge img {
    bottom: 0;
    height: 100% !important;
    width: auto !important;
}

.topRightEdge img, .topLeftEdge img {
    top: 0;
    height: 100% !important;
    width: auto !important;
}

.bottomLeftEdge img, .topLeftEdge img {
    bottom: 0;
    height: 100% !important;
    width: auto !important;
    right:0;
    position: absolute;
}


/******************************************** feed */


.list1Thumb {
    float: left;
    width: 30%;
}

.list1Thumb img {
    width: 100%;
    height: auto;
}

.post-title-box {
    float: left;
    width: 100%;
    margin: 0 0 40px;
}

.post-title-content {
    float: left;
    width: 65%;
    margin-left: 5%;
}

.the_date {
    font-size: 12px;
    font-weight: bold;
    color: #CCC;
}

.the_category {
    font-size: 12px;
    font-weight: bold;
    margin-left: 10px;
}

.post-title-box h2 {
    margin: 0 0 5px;
}

.post-title-box a {
    text-decoration: none !important;
    color: black;
}

.excerpt p {
    margin: 5px 0 10px;
}

.columnFeed .post-title-box:last-child {
    margin-top: 0 !important;
}

.columnFeed.no-padding .post-title-box {
    margin: 0px 6% 40px 0;
}

.columnFeed.no-padding .feedTitle {
	margin: 0 0 30px;;
}

/******************************************** button */

.quartercolumnBox.buttonColumn {
    width: 22%;
    margin: 0 2%;
    padding: 0;
}
.thirdcolumnBox.buttonColumn {
	width:34.66%;	
}


.buttonImage {
    width: 100%;
    height: 10vw;
    margin-bottom: 10px;
    background-size: cover;
    float: left;
}

.buttonLink {
	text-decoration: none;
}

.buttonColumn:first-child { margin-left:0px;}
.buttonColumn:last-child { margin-right:0px;}

/******************************************** block */

.blockColumn .blockItem:first-child {
    margin-top: 0;
}

/*
.blockColumn.normal-padding {
    float: left;
    width: 64%;
    padding: 20px 2% 20px !important;
    margin:0;
}

.blockColumn.extra-padding {
    float: left;
    width: 58%;
    padding: 40px 4% 40px !important;
    margin:0;
}
*/

.blockItem {
    float: left;
    width: 100%;
    margin: 0 0 10px;
}

.blockItem.half {
    width: 50%;
}

.blockColumn .half:last-child {
    padding-left: 3% !important;
    width: 47%;
}

/******************************************** slider */

.slide-content {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}

.fullSlider .slide-content {
	width:50%;
}

.slick-slider {
    width: 100%;
    height: auto;
    float: left;
}

.slick-slider .slide {
    padding: 5%;
    width: 100% !important;
    min-height: 350px;
}

.slick-slider img {
    width: 100%;
}

.slide {
    background-size: cover !important;
}

.slide-content.forSmall {
		display: none !important;
		float: left;
}

.slide-content.leftSlideContent {
    float: left;
    padding-left:0;
}

.slide-content.rightSlideContent {
    float: right;
    text-align: right;
    padding-right:0;
}

.slide-content.centerSlideContent {
    float: none;
    margin:0 auto;
    text-align: center;
}

.slide-content.half {
    width: 50%;
}

.slide-content.third {
    width: 33%;
}

#left-arrow {
    position: absolute;
    margin-top: -30px;
    color: white;
    font-weight: bold;
    margin-left: 15px;
}

#right-arrow {
    right: 0;
    position: absolute;
    margin-top: -30px;
    margin-right: 15px;
    color: white;
    font-weight: bold;
}

.slick-dots {
    position: absolute;
    list-style: none;
    text-align: center;
    width: 80%;
    padding: 0;
    margin: -30px 10% 0;
}

.slideArrows {
    opacity: 0;
    cursor: pointer;
    transition: opacity .5s;
}

.slick-slider:hover .slideArrows {
    opacity: 1;
}

.slick-slide {
	text-decoration: inherit;
}

.slick-slider:hover .slick-dots li {
    opacity: 1;
}

.slick-dots li {
    position: relative;
    display: inline-block;
    width: 20px;
    height: 20px;
    padding: 0;
    cursor: pointer;
    opacity: 0;
    transition: opacity .5s;
}

.slick-dots li button {
    font-size: 0;
    line-height: 0;
    display: block;
    width: 20px;
    height: 20px;
    padding: 5px;
    cursor: pointer;
    color: transparent;
    border: 0;
    outline: none;
    background: transparent;
}

.slick-dots li.slick-active button:before {
    opacity: .75;
}

.slick-dots li button::before {
    font-family: slick;
    font-size: 20px;
    line-height: 20px;
    position: absolute;
    top: 0px;
    left: 0px;
    width: 20px;
    height: 20px;
    content: "•";
    text-align: center;
    opacity: 0.25;
    -webkit-font-smoothing: antialiased;
}

/********************************************************************************* COLUMNS */


/******************************************** quarter */

.column {float: left;}

.quartercolumnBox {
    width: 25%;
    float: left;
    padding: 0 2%;
}

.halfcolumnBox {
    width: 50%;
    float: left;
    padding:0 2% 0px;
    overflow: hidden;
}

.halfcolumnBox.no-padding {
	padding:0;
}

.halfcolumnBox.extra-padding {
    padding: 0 10% 5%;
}

.imageBox {
    line-height: 0;
}

.imageBox img {
    width: 100%;
    height: auto;
}

.columnHeadline p {
    margin: 0 0 15px;
}


.thirdcolumnBox {
    float: left;
	width: 33.33%;
    padding: 0 2% 0;
}

.thirdcolumnBox.no-padding {
    padding: 0 0 0;
}

.thirdcolumnBox.extra-padding {
    padding: 0 4% 0;
}

.columnPara.halfcolumnBox {
	width:40%;
	float: left;
	padding:0;
}

.twothirdcolumnBox {
	float: left;
	width:66%
}


.twothirdcolumnBox.no-padding {
    padding: 0;
}

.twothirdcolumnBox.normal-padding {
    float: left;
    padding: 0 2% 0;
}

.twothirdcolumnBox.extra-padding {
    padding: 5% 5%;
}


.fullcolumnBox {
    width: 100%;
    float: left;
    padding: 0 2.5% 0;
}

.fullcolumnBox.no-padding {
    padding: 0px;
}


/******************************* COLUMN BODY */


.columnBody {
    font-family: 'Avenir LT W01_35 Light1475496';
}

.columnBody p {

}

.columnBody h2 {
    margin-bottom: 10px;
}

.columnBody blockquote {
    margin: 0;
    background: #EFEFEF;
    padding: 20px;
}

.columnBody img.aligncenter {
    margin: 0 auto;
    display: block;
    max-width: 100%;
    height: auto;
}
}

.columnBody blockquote ul {
    margin: 0 0 0 15px;
}

.columnBody img {
    padding: 0;
    border: none;
}

.columnBody img.size-full {
	margin:0;
	width: 100%;
    max-width: none;
}

/********************************************************************************* INTERIORS */

#interiorContent {
	width: 67%;
	float: left;
	min-height: 400px;
}

#intBox.shiftHeader #interiorContent, #sidebarBG.shiftHeader {
    margin-top: -100px;
}

#intBox.shiftHeader {
    margin: 0px auto;
}

#interiorHeader.shiftHeader {
padding: 50px 5% 150px;
}

#interiorContent.singlePost {
	padding: 0 0 2%;
}

#interiorContent.noSidebar {
	width:100%;
}
#interiorContent.noSidebar .container {
	float: none;
    margin: 0 auto !important;
}

#interiorHeader {
    float: left;
    width: 100%;
    background-position: center center;
    background-size: cover;
}

#sidebar {
	float: left;
	width: 33%;
	padding: 2%;
}
#sidebarBG {
	float:left;
	width: 100%;
}
.solidColor {
	background-image: none !important;
}
.contain {
	background-size: contain !important;
    background-repeat: no-repeat !important;
    background-size: 33.33333333% !important;
}
.repeatx {
    background-repeat: repeat-x !important;
}

/********************************************************************************* WIDGETS */


.widget-area ul.xoxo {
    list-style: none;
    padding: 0;
    margin: 0 auto;
}

.widget-container {
    float: left;
    margin-bottom: 30px;
    width:100%;
}

.boxWidget .widget-container {
    padding: 20px;
    margin-bottom: 20px;
}

.boxWidget #sidebarBG {
    background: none;
}

ul.gform_fields {
    list-style: none;
    padding: 0;
    margin-top: 0;
}

.gform_fields input {
    border: none;
    padding: 7%;
    width: 100%;
}

.gform_fields input:focus {
	outline:none;
}

.ginput_container {margin-top:0 !important;}

.gfield_label {display: none !important;}

.gform_button {
    width: 100%;
    border: none;
}

.gform_footer {
    margin: 0 !important;
    padding: 0 !important;
}

.gform_wrapper .top_label .gfield_error .ginput_container {max-width: 100%;}


a.widget_sp_image-image-link img {
    height: auto;
}

/********************************************************************************* INDEX */

img.attachment-thumb {
    float: left;
    width: 30%;
    height: auto;
    margin-right: 7%;
}

.postContent {
    width: 60%;
    float: left;
}

.postBox {
    float: left;
    margin: 0 0 30px;
}

.indexTitle {
	text-decoration: none;
}

.indexTitle h3 {
    margin: 0 0 5px;
    color: inherit;
}

.postBox.noThumb .postContent {
    width: 100%;
}

/******************************************************** INDEX 2 */

.postBox.fullWidth img {
    width: 100%;
    height: auto;
}

.postBox.fullWidth .postContent {
    width: 100%;
    margin: 10px 0 20px;
}

/********************************************************************************* SINGLE */

#comments ul {
    padding: 0;
    list-style: none;
}

#singleBackLink a {
    margin: 0 0 20px;
    float: left;
    text-decoration: none;
    color: rgba(119, 119, 119, 0.51);
    font-size: 14px;
}

section#content {
    clear: both;
}

#postThumbnail img {
    width: 100%;
    height: auto;
}

/********************************************************************************* RESPONSIVE */

@media screen and (max-width: 800px) {
	.contentLayer.normal-padding {
	    width: 100%;
	    padding: 8%;}
	
    .quartercolumnBox {
	    width: 50%;}
	.quartercolumnBox.buttonColumn {
    	width: 46%;}
    .buttonColumn {
	    margin:0 2% !important;
    }
    .buttonImage {
		height:17vw;
	}
	

}

@media screen and (max-width: 650px) {
	.contentLayer.shiftBG {
	    background-image: none !important;}
	.edge {width:100% !important; position: relative;}
	.edge img {position: relative; width: 100% !important; 
		max-width: 300px; margin: 0 auto; height:auto;}
	.layerBGsmall {
		display: block;}
	.contentLayer.cutBottomPadding {
	    padding-bottom: 0 !important;}
/*
	.contentLayer {
		background-image:none !important;}
*/
	.halfcolumnBox {width:100% !important; text-align: center; margin:0 !important;}
	
	.twothirdcolumnBox {
	    width: 100% !important;
	    margin: 0 auto 15px !important;
	    max-width: 550px;
	    overflow: auto;}
	.thirdcolumnBox {
	    width: 100%;
	    margin: 0 auto 15px !important;
	    max-width: 550px;
	    }	    
	.blockItem.half {
		width: 100% !important;}
	.blockColumn .half:last-child {
		padding:0 !important;}
	.list1Thumb {
	    width: 100%;}
	.post-title-box {
	    text-align: center;}
    .post-title-content {
	    float: left;
	    width: 100%;
	    margin: 5% 0 0;}
    .slide-content {
	    display: none;
	    width: 100% !important;
		padding:5% !important;
		text-align: center;
		color: white !important;}
	.slide-content.forSmall {
		display: block !important;
		}
	.slide-content h1, .slide-content h2, .slide-content h3, .slide-content h4 {color:white !important;}
	.slick-slider .slide {}
	.imageBox img {
    width: 100%;
    height: auto;
    max-width: 350px;
    margin: 0 auto;
    display: block;
}
.bottomRightEdge, .bottomLeftEdge, .topRightEdge, .topLeftEdge {position: relative;}
	.bottomRightEdge, .bottomLeft Edge {margin-bottom:0 !important;}
	
}