/*
Theme Name: Roof Child
Theme URI: http://themeforest.net/user/VictorThemes
Description: Roof Child Theme
Author: VictorThemes
Author URI: http://themeforest.net/user/VictorThemes/portfolio
Template: roof
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: one-column, two-columns, left-sidebar, right-sidebar, custom-menu, featured-images, post-formats, theme-options, translation-ready
Text Domain: roof-child
*/

/* ================================
   Custom CSS
================================ */

body {
	font-size: 14px;
	line-height: 1.42857143;	
}

/* Headings */
h1, .h1 { font-size: 36px; }
h2, .h2 { font-size: 30px; }
h3, .h3 { font-size: 24px; }
h5, .h5 { font-size: 14px; }

@media(max-width: 767px){
	h1, .h1 { font-size: 30px; }
	h2, .h2 { font-size: 22px; }
	h3, .h3 { font-size: 18px; }
}

/* Utility */
.hidden { display: none; visibility: hidden; }

/* Navigation */
.navbar-nav > li:last-child > .dropdown-menu { left: 0; }

/* ================================
   Other Social Links
================================ */
ul#other-social { margin-top: 20px; }
ul#other-social li {
	width: 50%;
	height: 66px;
	display: block;
	float: left;
	text-align: center;
}
ul#other-social li a {
	display: block;
	text-align: center;
	background: #333;
	transition: all 350ms ease;
}
ul#other-social li a:hover { opacity: 0.7; }
ul#other-social li a.bbb {
	width: 100px;
	height: 51px;
	background: url('https://provenroofing.com/wp-content/uploads/bbb-min.png');
}
ul#other-social li a.gaf {
	width: 100px;
	height: 50px;
	background: url('https://provenroofing.com/wp-content/uploads/gaf-min.png');
}
ul#other-social li a.angies-list {
	width: 100px;
	height: 40px;
	background: url('https://provenroofing.com/wp-content/uploads/angies-list-min.png');
}
ul#other-social li a.yelp {
	width: 80px;
	height: 40px;
	background: url('https://provenroofing.com/wp-content/uploads/yelp-min.png');
}
ul#other-social li a span { display: none; }

/* ================================
   Related Posts
================================ */
#related-posts { 
	margin-top: 80px;
    padding-left: 15px;
    padding-right: 15px; 
}

#related-posts h3.title-related {
	font-family: Raleway;
	font-size: 30px;
	font-weight: 700;
	color: #232323;
	margin-bottom: 40px;
}

#related-posts ul#related-posts-list li { text-align: center; }

#related-posts ul#related-posts-list li a {
	min-height: 310px;
	display: block;
	border: 1px solid #e2e8f0;
}

#related-posts ul#related-posts-list li a div.roof-picture { background: #000; }

#related-posts ul#related-posts-list li a div.roof-picture img {
	width: 100%;
	transition: all 0.5s ease;
}

#related-posts ul#related-posts-list li a:hover div.roof-picture img { opacity: 0.7; }

#related-posts ul#related-posts-list li a h3.titles {
	font-family: "Raleway", Arial, sans-serif;
	font-size: 16px;
	font-weight: 600;
	color: #000;
	margin-top: 21px;
	padding: 0 21px;
}

#related-posts ul#related-posts-list li a:hover h3.titles { color: #ba1f24; }

#related-posts ul#related-posts-list li a h4.views {
	font-family: "Open Sans", Arial, sans-serif;
	font-size: 14px;
	color: #888;
 	font-weight: 400;
}

#related-posts ul#related-posts-list li a:hover h4.views { color: #ba1f24; }

@media( max-width: 767px ){
	#related-posts ul#related-posts-list li{
		margin-bottom:30px;
	}
	#related-posts ul#related-posts-list li:last-child{
		margin-bottom:0;
	}
}

@media( min-width:992px ){
	#related-posts ul#related-posts-list li a div.roof-picture img {
		min-height: 177px;
		max-height: 177px;
		object-fit: cover;
	}
}
 
/* ================================
   FAQ Accordion
================================ */
.faq-accordion > div > div { padding-top: 18px; }

.faq-accordion h3 {
	display: block;
	padding: 26px 40px 25px 0;
	background: 0 0;
	font-weight: 700;
	font-size: 16px;
	letter-spacing: .5px;
	text-transform: initial;
	border-bottom: 1px solid #f4f4f4;
	position: relative;
	cursor: pointer;
	text-transform: uppercase;
}

.faq-accordion h3:before {
	content: "[+]";
	position: absolute;
	top: 50%;
	right: 0;
	margin-top: -11px;
	color: #777;
	font-size: 14px;
}

.faq-accordion.active h3:before {
	content: "[-]";
}

.no-result-row { height: auto !important; }
.no-result-row .no-posts-result {
	color: #000;
	font-size: 20px;
	padding: 100px 0;
}

.category-description,
.project-description {
	padding: 0 20px 30px;
	text-align: left;
}

/* MISC */
.tp-simpleresponsive img,
.rev_slider img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* Retina fix */
@media only screen and (-webkit-min-device-pixel-ratio: 1.5),
only screen and (-moz-min-device-pixel-ratio: 1.5),
only screen and (-o-min-device-pixel-ratio: 3/2),
only screen and (min-device-pixel-ratio: 1.5) {
	.retina-logo.sticky-logo { display: inline-block; }
}


/* ================================
   Gravity Forms Styling
================================ */
.gform_wrapper .gform_heading { display: none !important; }

.gform-theme--foundation .gform_fields { row-gap: 27px !important; }

.gform_wrapper input[type="text"],
.gform_wrapper input[type="email"],
.gform_wrapper input[type="password"],
.gform_wrapper input[type="tel"],
.gform_wrapper input[type="search"],
.gform_wrapper input[type="date"],
.gform_wrapper input[type="time"],
.gform_wrapper input[type="datetime-local"],
.gform_wrapper input[type="month"],
.gform_wrapper input[type="url"],
.gform_wrapper input[type="number"],
.gform_wrapper textarea,
.gform_wrapper select,
.form-control {
	width: 100%;
	height: 50px !important;
	padding: 10px 20px;
	background-color: #fff !important;
	color: #888 !important;
	font-family: 'Open Sans', sans-serif !important;
	font-size: 14px !important;
	border: 1px solid #ececec !important;
	border-radius: 0 !important;
	transition: all 0.3s ease !important;
	appearance: none !important;
}

.gform_wrapper input:focus,
.gform_wrapper textarea:focus,
.gform_wrapper select:focus {
	border-color: #d5d5d5 !important;
}

/* Buttons */
.gform_wrapper .gform_footer input[type="submit"].button {
	min-width: 150px !important;
	padding: 15px 24px !important;
	font-family: "Raleway", Arial, sans-serif !important;
	font-weight: 700 !important;
	font-size: 13px !important;
	text-transform: uppercase !important;
	background-color: #ba1f24 !important;
	border: 1px solid transparent !important;
	transition: all 0.3s ease !important;
}
.gform_wrapper .gform_footer input[type="submit"].button:hover {
	background-color: #8d181b !important;
}


.gform-theme--foundation .gfield textarea.large{
 	min-block-size: 140px !important;
}

/* ================================
   Layout & Footer Adjustments
================================ */
body {
	opacity: 1;
	transition: opacity .3s ease-in-out;
	font-display: swap;
}
body.loaded { opacity: 1; }

.roof-footer {
	font-size: 14px;
}
.roof-footer p {
	color: #999;
	font-weight: 600;
	line-height: 1.2;
}
.roof-footer a { line-height: 1.2; }
.roof-footer a.roof-btn { color: #fff !important; }

.roof-widget {
   margin-bottom: 0px;
  	margin-bottom: 0px;
}

@media (min-width:768px) and (max-width: 991px ){
 	.roof-footer [class*="col-"] {
		min-height: 280px;
		width: 50% !important;
		max-width: 50% !important;
		flex: 0 0 50% !important;
 	}
}

/* Get the job done CTA  */
.get-the-job-cta.col-md-6.container{
  margin-left: 0;
}

.blog-info .roof-btn{
	color:#fff !important;
}

.blog-info h2{
	font-weight:700;
	font-size:24px;
}

.blog-date{
	font-family:'Open Sans',sans-serif;
	font-size:24px;
}

.roof-sidenav .current-menu-item a{
  background: #eeb313 !important;
}
/* ================================
   Responsive
================================ */
@media (max-width: 767px) {
	.blog-links-wrap { display: flex; }
	.home .fullwidthbanner-container .rev_slider h2.tp-caption {
		font-size: 18px !important;
	}
}

@media (max-width: 991px) {
	.roof-right-sidebar.roof-main-wrap .roof-content-side,
	.roof-right-sidebar.roof-main-wrap .roof-secondary {
		width: 100%;
		flex: 1 1 100%;
		max-width: 100%;
	}

	.roof-services .roof-picture img {
   	margin: 0 auto;
	}

	#related-posts-list{
		gap: 30px;
	}

	.work-info{
		padding: 15px;
	}
}

/* ================================
   Roofing Calculator
================================ */
#roofing .rt-bg-white h1{ font-size: 30px; }
#roofing h3.rt-text-4xl { font-size: 22.5px; }
#roofing span.rt-text-gray-700,
#roofing span.rt-text-gray-600 { font-size: 14px; }
#roofing button.rt-bg-red-600 {
	font-size: 11.25px;
	width: 80px;
	height: 25px;
}
#roofing span.rt-rounded-full {
	width: 10px;
	height: 10px;
}

#roofing .square-footage h3.rt-text-2xl{
	font-size:14px;
}

#roofing img.rt-h-20{
	height:auto;
	margin:0 auto;
}

#roofing h1, 
#roofing .rt-text-3xl{
	font-size:18.75px;
}

@media( max-width: 767px ){
	#roofing .rt-bg-white h1{
		font-size:15px;
	}
}

/* ================================
   Page Title
================================ */
.roof-page-title .page-title {
	margin-bottom: 0;
	font-weight: 700;
	letter-spacing: 0.1px;
	font-size: 32px;
}

.roof-page-title {
	background-position: center center !important;
	background-attachment: fixed; 
	transform: translateZ(0);
	will-change: background-position;
}

@media( max-width:767px ){	
	.roof-page-title .page-title {
	  font-size: 20px;
	}
}


/* column Responsive  */
@media (max-width: 991px) {
	[class*="col-md-"] {
		width: 100% !important;
		max-width: 100% !important;
		flex: 0 0 100% !important;
	}

	.single .roof-page-title,
	.page .roof-page-title,
	.page .roof-main-wrap.container,
	.error404 .roof-page-title {
		margin-top: -20px;
	}

	.pl-xs15.vc_column_container>.vc_column-inner{
		padding-left:15px !important;
	}

    .quote > .rt-w-4\/5 {
        width: 80%;
    }

	.quote .rt-flex{
		flex-direction: column;
	}

	.quote .rt-w-full{
		width: 100%;
	}

	.quote img{
		max-height: 5rem;
	}

	.masonry-item, .masonry-item-five .masonry-item{
		width: 50%;
	}
}

@media screen and (max-width: 767px) {
    .roof-masonry .masonry-item.one-fourth, .masonry-item, .masonry-item-three .masonry-item, .masonry-item-five .masonry-item, .roof-masonry .masonry-item.one-half {
        width: 90%;
		margin: 0 auto !important;
		right: 0;
    }

	.featured-projects-section .projects-container .masonry-item{
		width: calc(50% - 15px);
	}

	.featured-projects-section{
		padding-bottom: 70px;
	}   
}

@media screen and (max-width: 479px) {
	.featured-projects-section .projects-container .masonry-item{
		width: 100%;
	  }
}

@media screen and (max-width: 375px) {
    .roof-masonry .masonry-item.one-fourth, .masonry-item, .masonry-item-three .masonry-item, .masonry-item-five .masonry-item, .roof-masonry .masonry-item.one-half {
        width: 100%;
    }
}

.roofing-app-row{
	overflow:auto !important;
}

.roof-consult .pull-left h1 {
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	line-height: 26px;
	text-transform: uppercase;
}

.expert-item.first{
	background:transparent !important;
}

.read-more a,
.expert-item.first .view-more a{
 	color: #BA1F24;
}

.list-services h2 {
	line-height: 1.42857143;
	font-size: 18px;
}

.service-info h5 {
 font-size: 15px;
}

@media (min-width:767px) and (max-width: 1199px) {
  .roof-primary .service-item {
    text-align: left;
  }
}

/* Custom Checkbox  */
.custom-checkbox input[type=checkbox]:focus,
.custom-checkbox input[type=file]:focus,
.custom-checkbox input[type=radio]:focus {
 outline: dotted thin!important;
 outline: 0!important;
 outline-offset: 0px!important;
 box-shadow: none!important;
 border-color: unset!important
}

.custom-checkbox .gfield_checkbox {
 display: inline-block!important
}

.custom-checkbox .gfield_checkbox .gchoice {
 float: left!important;
 min-width: 190px!important;
 padding: 13px 20px!important;
 margin: 0 0 20px -1px!important;
 background: #fff!important;
 border: 1px solid #e7e7e7!important
}

.custom-checkbox .gfield_checkbox .gchoice.checkbox-icon-checked {
 background: #f7f7f7!important
}

.custom-checkbox input[type=checkbox],.custom-checkbox input[type=radio] {
 margin: 0!important;
 border: 1px solid #878787!important;
 width: 13px!important;
 height: 13px!important;
 text-align: center
}

.custom-checkbox input[type=checkbox]:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)) {
 border-radius: 2px!important
}

.custom-checkbox .checkbox-icon-checked input[type=checkbox],.custom-checkbox .checkbox-icon-checked input[type=file],.custom-checkbox .checkbox-icon-checked input[type=radio] {
 background-color: #0075ff!important;
 border-color: #0075ff!important;
 text-align: center
}

.custom-checkbox .checkbox-icon-checked input[type=checkbox]::before,.custom-checkbox .checkbox-icon-checked input[type=file]::before,.custom-checkbox .checkbox-icon-checked input[type=radio]::before {
 color: #fff!important;
 font-size: 11px;
 line-height: 14px
}

.custom-checkbox .gfield_checkbox .gchoice {
 align-items: center!important
}

.custom-checkbox input[type=checkbox]::before,.custom-checkbox input[type=radio]::before {
 width: 13px!important;
 height: 13px!important
}

.custom-checkbox .gfield_checkbox .gchoice label {
 font-family: Raleway,sans-serif!important;
 font-weight: 500!important;
 font-size: 13px!important;
 padding: 0!important;
 margin-left: 5px!important;
}

.benefit-info h4,
.benefit-info h4 a{
 	font-size: 20px !important;
}

.roof-works nav.custom-pagination .page-numbers.current{
	font-weight:700;
}

.roof-btn{
	color:#fff;
}

.roof-btn:hover, 
.roof-btn:focus{
	color:#fff;
}

.roof-primary .service-info h5{
	font-size:15px;
}

.complexity .rt-mb-6{
	margin-bottom: 0;
}

.roof-google-map{
	height: 300px; 
	margin-bottom: 40px !important;
}

.roof-404-error form{
	margin-bottom: 30px;
}

.roof-404-error form #searchsubmit{
	color: #fff;
}

.roof-404-error .btn-container {
	margin-top: 15px;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	flex-wrap: wrap;
}

.featured-projects-section{
	margin-top: 50px;
  }
  .featured-projects-section h3{
	margin-bottom: 30px;
  }
  .featured-projects-section .projects-container{
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 20px;
	flex-wrap: wrap;
  }
  .featured-projects-section .projects-container .masonry-item{
	height: -webkit-fill-available;
	width: calc(25% - 15px);
  }
  .featured-projects-section .projects-container.slick-initialized{
	margin: 0 -10px;
  }
  .featured-projects-section .projects-container.slick-initialized .masonry-item{
	margin: 0 10px;
  }
  .featured-projects-section .projects-container .work-list{
	height: 100%;
  }

.featured-projects-section .projects-container .masonry-item .roof-align-container{
	text-align: center;
  }
  .featured-projects-section .projects-container .roof-picture{
	height: 100%;
  }
  .featured-projects-section .projects-container .roof-picture img{
	width: 100%;
	height: 100%;
	object-fit: cover;
  }
  .featured-projects-section .slick-track{
	display: flex !important;
  }
  .featured-projects-section .slick-dots{
	position: absolute;
	bottom: -50px;
	display: flex;
	justify-content: center;
	align-items: center;
	max-width: 300px;
	left: 0;
	right: 0;
	margin: auto;
  }
  .featured-projects-section .slick-dots .slick-dots{
	max-width: 100%;
	bottom: 9px;
  }
  .featured-projects-section .slick-dots li.slick-active button:before {
	color: #ba1f24 !important;
  }
  .featured-projects-section .slick-slider .slick-arrow{
	bottom: 0;
	top: unset;
  }