/*======================================
Theme Name: Roofing Divi Child Theme
Theme URI: https://roofing.duogeeks.com/
Description: Best roofing Divi child theme for large website, use it for your project or for client website.
Version: 1.0
Author: Divi Awesome
Template: Divi
======================================*/


/* You can add your own CSS styles here. Use !important to overwrite styles if needed. */

/*------------------------ 
 *------------------------ 
 *--------- PAGES --------
 *------------------------
 *------------------------*/



/*
 * 
 * --------- BLOG PAGE PAGINATION ---------
 * 
 */

/** Removing Top Border Of Pagination **/
.wp-pagenavi {
	text-align:center;
    border-top: 0px;
}

/** Color change of Page numbers **/
.wp-pagenavi a, .wp-pagenavi span {
    color: #000;
}

/** Active Page Number Styling **/
.wp-pagenavi span.current {
    color: #ffffff!important;
    background-color: #EB3747;
    padding: 10px 17px;
    border-radius: 30px;
}
.wp-pagenavi a:hover{
	color: #EB3747!important;
}

/** Other Numbers Styling **/
.wp-pagenavi a {
    background-color: #F7F7F7;
	padding: 10px 17px;
    border-radius: 30px;
}


/*
 * 
 * --------- GALLERY PAGE ---------
 * 
 */

/** Pagination Styling - No Top Border **/
.et_pb_gallery .et_pb_gallery_pagination {
    border-top: 0px;
}

/** Active Pagination **/
.et_pb_filterable_portfolio .et_pb_portofolio_pagination ul li a.active, .et_pb_gallery .et_pb_gallery_pagination ul li a.active {
    color: #fff;
    background-color: #F25742;
    padding: 10px 16px;
    border-radius: 30px;
}

/** Default Pagination **/
.et_pb_gallery .et_pb_gallery_pagination ul li a {
    color: #000;
    padding: 10px 16px;
    background-color: #f7f7f7;
    border-radius: 30px;
    font-weight: bold;
}

/** Center Align Pagination **/
.et_pb_gallery .et_pb_gallery_pagination ul {
    text-align: center;
}

/* Gallery Hover Effect Rotate and Scale*/

/**Normal State**/
@media (min-width: 981px){
.et_pb_gallery_grid .et_pb_gallery_item img {
    transition: .5s ease-in-out;
}
}

/** Hover State **/
@media (min-width: 981px){
.et_pb_gallery_grid .et_pb_gallery_item img:hover {
    transform: scale(1.3) rotate(-5deg);
    transition: .5s ease-in-out;
}
}


/*
 * 
 * --------- PORTFOLIO PAGE - PORTFOLIO AND FILTERABLE PORTFOLIO ---------
 * 
 */

/** Active Pagination **/
.et_pb_filterable_portfolio .et_pb_portofolio_pagination ul li a.active {
    color: #fff;
    background-color: #EB3747;
    padding: 10px 16px;
    border-radius: 30px;
}

/** Default Pagination **/
.et_pb_filterable_portfolio .et_pb_portofolio_pagination ul li a {
    color: #000;
    padding: 10px 16px;
    background-color: #f7f7f7;
    border-radius: 30px;
    font-weight: bold;
}

/** Center Align Pagination **/
.et_pb_filterable_portfolio .et_pb_portofolio_pagination ul {
    text-align: center;
}

/** Pagination Styling - No Top Border **/
.et_pb_filterable_portfolio .et_pb_portofolio_pagination {
    border-top: 0px;
}

/** Three Column Portfolio **/
@media only screen and ( min-width: 981px ) {
 
	.three-column .et_pb_grid_item {
		width: 30.333% !important;
		margin: 0 2.5% 2.5% 0 !important;
	}
	 
		.three-column .et_pb_grid_item:nth-child(3n) {
		margin-right: 0 !important;
	}
	 
		.three-column .et_pb_grid_item:nth-child(4n+1) {
		clear: unset !important;
	}
 
}


/*  Portfolio Filter Styling   */

/** Default **/
.et_pb_filterable_portfolio .et_pb_portfolio_filters li a {
    color: #FD9C26;
    font-weight: 700;
    padding: 10px 20px;
    border: 0px;
	background: #f7f7f7;
}

/** Hover **/
.et_pb_filterable_portfolio .et_pb_portfolio_filters li a:hover {
    color: #EB3747;
    background-color: #f4f4f4;
}

/** Active Tab **/
.et_pb_filterable_portfolio .et_pb_portfolio_filters li a.active {
    color: #ffffff;
    background-color: #EB3747;
}

/** Active Tab Box Curved **/
.et_pb_filterable_portfolio .et_pb_portfolio_filters li:first-child a {
    border-radius: 3px;
}

/* Portfolio Filterable Hover Effect Rotate and Scale  */

/** Normal State **/
@media (min-width: 981px){
  .et_pb_filterable_portfolio_grid .et_pb_portfolio_item img {
    transition: .5s ease-in-out;
}
}

/** Hover State **/
@media (min-width: 981px){
  .et_pb_filterable_portfolio_grid .et_pb_portfolio_item img:hover {
    transform: scale(1.3) rotate(5deg);
    transition: .5s ease-in-out;
}
}

/*  Portfolio Hover Effect Rotate and Scale  */

/** Normal State **/
@media (min-width: 981px){
  .et_pb_portfolio_grid .et_pb_portfolio_item img {
    transition: .5s ease-in-out;
}
}

/** Hover State **/
@media (min-width: 981px){
  .et_pb_portfolio_grid .et_pb_portfolio_item img:hover {
    transform: scale(1.3) rotate(5deg);
    transition: .5s ease-in-out;
}
}




/*----------------------------------------- 
 *----------------------------------------- 
 *--------- OTHER WEBSITE ELEMETNS --------
 *----------------------------------------- 
 *-----------------------------------------*/



/*
 * 
 * --------- LIGHTBOX STYLING ---------
 * 
 */


/** Lightbox Zoom out cursor change **/
.mfp-zoom-out-cur, .mfp-zoom-out-cur .mfp-image-holder .mfp-close {
    cursor: inherit;
}


/** Lightbox close icon styling **/
.mfp-iframe-holder .mfp-close, .mfp-image-holder .mfp-close {
    font-size: 50px;
    top: -5px;
    opacity: 1;
}

/** Lightbox title hidden **/
.mfp-title {
    display: none;
}

/** Lighbox Counter styling **/
.mfp-counter {
    color: #fff;
    font-size: 16px;
    font-family: sans-serif;
}



/*
 * 
 * --------- THANK YOU CONTACT FORM MESSAGE STYLING ---------
 * 
 */

.et-pb-contact-message {
    font-size: 18px;
    line-height: 1.6em;
    color: black;
    font-family: Poppins;
}


/*
 * 
 * --------- CUSTOM WIDGETS ---------
 * 
 */

/** Sidebar widget titles **/
h4.widgettitle {
    padding: 10px;
    color: white;
    background: linear-gradient(90deg, rgba(235,55,72,1) 35%, rgba(242,87,67,1) 100%);
    border-radius: 3px;
}

/** Sidebar submit button  **/
input#searchsubmit {
    background-color: #1E1E2A!important;
    color: white!important;
	border:0px;
}

/** Sidebar Categories Styling **/
li.cat-item.cat-item {
    color:#000;
	background-color: #f7f7f7;
    padding: 5px 10px;
}

.clearfix {
    padding: 15px 5px;
}

.et_pb_widget ul li {
  background-color:#F7F7F7;
  margin-bottom:0.5em;
  padding: 5px 10px;
  margin: 10px 0px;
}

li.cat-item a {
    width: 88%;
    display: inline-grid;
}

/** Sidebar Tags Styling **/
.tagcloud {
    margin-top: 10px;
}

div#archives-3 ul li a{
	width:88%;
	display:inline-grid;
}



body {
	width: auto!important; 
	overflow-x: hidden!important
} 

.et_pb_column .et_pb_grid_item.et_pb_portfolio_item{
	position:relative;
}
/****************************
 Header 
***************************/
.et_mobile_menu, .et_pb_menu .et_pb_menu__menu>nav>ul>li>ul{
  border-top:3px solid #d624df;
  background:#0f1234;
}

.et-menu li li a{
  padding:10px 0px!important;
	font-size:14px;
}

.et_mobile_menu li {
text-align:left!important;
}
  
.et_mobile_menu li li, .et_mobile_menu li ul {
padding-left:0!important;
}

/**** This hides the sub menu items on mobile ****/
#page-container .mobile_nav li ul.hide {
    display: none !important;
}
/**** This adjusts the positioning and the background transparency of the parent menu item on mobile ****/
#page-container .mobile_nav .menu-item-has-children {
    position: relative;
}
#page-container .mobile_nav .menu-item-has-children > a {
    background: transparent;
}
/**** This styles the icon and moves it to the right ****/
#page-container .mobile_nav .menu-item-has-children > a + span {
    position: absolute;
    right: 0;
    top: 0;
    padding: 10px 20px;
    font-size: 20px;
    font-weight: 700;
    cursor: pointer;
    z-index: 3;
}
/**** Here you can swap out the actual icons ****/
#page-container span.menu-closed:before {
    content: "\4c";
    display: block;
    color: #fff;
    font-size: 16px;
    font-family: ETmodules!important;
}
#page-container span.menu-closed.menu-open:before {
    content: "\4d";
}

/*
 * 
 * --------- HEADER ---------
 * 
 */

.header_v6 .nav li ul {
    border-top: 0px;
	width:280px;
	padding: 0px !important;
}

.header_v6 .et-menu .menu-item-has-children>a:first-child:after {
    font-family: ETmodules;
    content: "\43";
	font-size:17px;
    top: 2px;
}

.header_v6 .nav li li {
    padding: 0px 0px;
}

.header_v6 .et-menu li li {
    padding: 0px 22px;
    width: 100%;
	border-bottom: 1px solid #fff;
		  transition: .5s ease;
}

.header_v6 .et-menu li li:hover {
    padding-left: 30px;
}


.header_v6 .et-menu li li:last-child a{
	border-bottom: 0px;
}

.header_v6 .et-menu li li:hover{
	color:#ffffff !important;
}
.nav ul li a:hover {
    opacity: 1;
}
.header_v6 .nav ul li:hover {
    background-color: #DF5049;
    opacity: 1;
	  transition: .5s ease;
	    padding: 0px 30px!important;
}
/*
 * 
 * --------- BACK TO TOP BUTTON ---------
 * 
 */

.et_pb_scroll_top.et-pb-icon {
  background-image: linear-gradient(120deg, #EB3748, #F15542); /* Color Code*/
  border-radius: 5px;
  padding: 12px;
  margin-right: 15px;
  margin-top:5px;
  transition: .5s ease;
}

.et_pb_scroll_top.et-pb-icon:hover {
  margin-top:-5px;
  transform:scale(1.1);
  transition: .5s ease;
}

/*
 * 
 * ---------CONTCT BUTTON FULL WIDTH---------
 * 
 */

.et_contact_bottom_container {
    WIDTH: 100%;
}
button.et_pb_contact_submit.et_pb_button {
    WIDTH: 100%;
}

/*Home-2 About Image Hover Effects*/
.home-2-about-img{
  overflow:hidden;
  border-radius:15px;
}
.home-2-about-img:before,.home-2-about-img:after{
  content:"";
  display:block;
  background:var(--red);
  width:100%;
  height:15%;;
  position:absolute;
  z-index:2;
  transform: rotate(0deg) scale(1);
  bottom:-18%;
  left:0;
  transition:0.3s ease;
}
.home-2-about-img:after{
  height:20%!important;
  background:var(--white)!important;
  z-index:1!important;
  transition-delay:0.1s;
}
.home-2-about-img:hover:before,.home-2-about-img:hover:after{
  transform: rotate(-5deg) scale(1.2);
  bottom:-30px;
}
/*End of Home-2 About Image Hover Effects*/
/*Home-2 Services Stylings*/

.home-2-services-row .et_pb_column img{
  transition:0.3s ease;
}
.home-2-services-row .et_pb_column:hover img{
  transform:scale(1.2)
}

.home-2-services-row .et_pb_column:before{
  content:"";
  display:block;
  width:100%;
  height:0;
  position:absolute;
  background:linear-gradient(var(--orange),var(--red));
  bottom:0;
  left:0;
  transition:0.3s ease;
}
.home-2-services-row .et_pb_column:hover:before{
  height:100%;
}

/*End of Home-2 Services Styling*/
/*Home-2 Testimonial Slider*/
.home-2-testimonial .et_pb_slide_image{
  width:100%;
  position:relative;
  margin-top:0!important;
}
.home-2-testimonial .et_pb_slide_description{
  width:100%!important;
  text-align:center!important;
  padding-top:10%!important;
}
/*Slider Navigations Testimonial + Hero Secctions*/
.home-2-testimonial a.et-pb-arrow-next, .home-2-testimonial a.et-pb-arrow-prev, .home-2-hero-slider a.et-pb-arrow-next, .home-2-hero-slider a.et-pb-arrow-prev {
    border: 2px solid var(--white);
    border-radius: 50%;
}
.home-2-testimonial a.et-pb-arrow-next:hover, .home-2-testimonial a.et-pb-arrow-prev:hover,  .home-2-hero-slider a.et-pb-arrow-next:hover, .home-2-hero-slider a.et-pb-arrow-prev:hover {
  background-color:var(--red)
}
.home-2-testimonial .et-pb-controllers a, .home-2-hero-slider .et-pb-controllers a {
    transform: scale(2);
    margin: 10px;
    background-color: #fff!important;
    opacity: 0.1;
    border: 1px solid var(--red);
}
.home-2-testimonial .et-pb-controllers a.et-pb-active-control, .home-2-hero-slider .et-pb-controllers a.et-pb-active-control{
  opacity:1;
}
/*End of Home-2 Testimonial Slider*/
/*Home-2 CTA on hover image in Why choose us section*/
.text-display-column .home-2-cta{
  top:0%;
  transition:0.3s ease;
  opacity:0;
}
.text-display-column:hover .home-2-cta{
  visibility:visible!important;
  top:50%;
  opacity:1;
}
.home-2-cta{
  visibility:hidden;
}
.text-display-column .text-display-img:before{
  transition:0.3s;
  content:"";
  display:block;
  position:absolute;
  width:100%;
  height:100%;
  background:#1E1E2A;
  z-index:1;
  opacity:0;
  border-radius:15px;
}
.text-display-column:hover .text-display-img:before{

  opacity:0.5;
}
/*End of CTA Styles Home-2*/
/*Home-2 Button Styling*/
.home-2-button, .home-2-hero-slider a.et_pb_button{
  overflow:visible!important;
  z-index:50!important;
  position:relative!important;
  opacity:1!important
}
.home-2-button:hover:after,.home-2-button:hover:before,  .home-2-cta a.et_pb_button:hover:before,  .home-2-cta a.et_pb_button:hover:after, .home-2-hero-slider a.et_pb_button:hover:before, .home-2-hero-slider a.et_pb_button:hover:after{
  width:50%;
  height:50%;
  border-radius:5px;
   border-color:#EB3748;
  opacity:1!important
}
.home-2-button:after,  .home-2-cta a.et_pb_button:after, .home-2-hero-slider a.et_pb_button:after{
  top:-7px;
  right:-7px;
  border-top:5px solid transparent;
  border-right:5px solid transparent;

}
.home-2-button:after,.home-2-button:before,  .home-2-cta a.et_pb_button:before,  .home-2-cta a.et_pb_button:after, .home-2-hero-slider a.et_pb_button:before, .home-2-hero-slider a.et_pb_button:after{
	content:""!important;
  background:transparent;
  width:20px;
  height:20px;
  border-top-right-radius:5px;
  opacity:1!important;
  z-index:-1!important;
 
}
.home-2-button:before, .home-2-cta a.et_pb_button:before, .home-2-hero-slider a.et_pb_button:before{
  bottom:-7px!important;
  left:25px!important;
	display:block;
  border-bottom:5px solid transparent;
  border-left:5px solid transparent;
  border-bottom-left-radius:5px;
}
.home-2-button.dark-button:hover:after,.home-2-button.dark-button:hover:before{
  border-color:#fff;
}
/*End of Button Hover Effects*/
/*Home-2 Portfolio Stylings*/
.home-2-portfolio h2.et_pb_module_header, .home-2-portfolio p{
  background:var(--red);
}
.home-2-portfolio h2.et_pb_module_header{
  border-radius:10px;
  padding-bottom:15px!important;
  padding-top:15px!important;
}
/*End of Home-2 Portfolio Stylings*/
/*Home-2 Blog Styling*/
.home-2-blogs .entry-featured-image-url{
  overflow:hidden;
  border-radius:10px;
}
.home-2-blogs .et_pb_post .entry-featured-image-url img{
  transition:0.3s ease;
}
.home-2-blogs .et_pb_post:hover .entry-featured-image-url img{
  transform:scale(1.2);
}
.home-2-blogs .et_pb_post{
  position:relative;
}
.home-2-blogs .post-meta{
	position:absolute;
  top:0;
  right:20px;
  width:60px;
  text-align:center;
  background:var(--red);
  border-bottom-right-radius:30px;
  border-bottom-left-radius:30px;
  padding:5px!important;
}
.home-2-blogs a.more-link{
  text-transform:capitalize;
}
/*End of Home-2 Blog Styling*/
.home-3-email .et_pb_newsletter_button_wrap, .home-3-email .et_pb_button{
  width:fit-content;
  float:right;
}

@media only screen and (min-width:600px){
.home-3-email .et_pb_newsletter_button_wrap{
  flex-basis:50%!important;
	}
}
.home-3-email.et_pb_newsletter .et_pb_newsletter_fields{
  width:100%;
  flex-wrap:nowrap;
}
@media  only screen and (max-width:600px){
  .home-3-email.et_pb_newsletter .et_pb_newsletter_fields{
  width:100%;
  flex-wrap:wrap;
}
  .home-3-email .et_pb_newsletter_button_wrap, .home-3-email .et_pb_button{
  width:100%;
}
}
.neomorph-btn{
  box-shadow:  5px 5px 10px #0c0c0f, -5px -5px 10px #222029;
}
.neomorph{
	box-shadow:  10px 10px 12px #141318, -10px -10px 12px #1a1920;
}
.home-3-button:after, .home-3-email .et_pb_button:after{
  display:block!important;
  width:100%!important;
  height:100%!important;
  position:absolute;
  content:""!important;
  background:var(--red)!important;
  opacity:1;
  top:0;
  right:0;
  z-index:-80;
  border-radius:10px;
  transform:scale(0) rotate(25deg);
}
.home-3-button:hover:after,.home-3-email .et_pb_button:hover:after{
  transform:scale(2.5) rotate(25deg);
}
.home-3-button, .home-3-email .et_pb_button{
  overflow:hidden;
}
.home-3-portfolio .et_portfolio_image{
  transform:scale(0.9)
}
.home-3-portfolio .et_pb_portfolio_item{
  background:var(--red);
  box-shadow:  10px 10px 12px #141318,-10px -10px 12px #1a1920;
  border-radius:10px;
  position:relative;
}
.home-3-portfolio .et_pb_portfolio_item:before{
  content:"";
  display:block;
  width:100%;
  height:100%;
  background:#17161c;
  position:absolute;
  border-radius:9px;
  transition:0.3s ease;
}
.home-3-portfolio .et_pb_portfolio_item{
  overflow:visible;
}
.home-3-portfolio .et_pb_portfolio_item:hover:before{
	border-top-left-radius:40px;
  border-bottom-right-radius:40px;
}
.home-3-blogs .et_pb_post{
  background:#17161c;
  box-shadow:  10px 10px 12px #141318,-10px -10px 12px #1a1920;
  transition:0.3s ease!important;
}
.home-3-blogs .et_pb_post:hover{
  background:linear-gradient(var(--orange),var(--red));
}
.home-3-blurb:before{
  content:"";
  display:block;
  width:75px;
  height:75px;
  position:absolute;
  background:var(--red);
  top:0;
  right:0;
  border-bottom-left-radius:10px;
  transition:0.3s ease;
}
.home-3-blurb:hover:before{
  width:100%;
  height:100%;
  transform:rotate(45deg);
}
.home-3-email input, .home-3-email a{
  box-shadow:  5px 5px 10px #0c0c0f, -5px -5px 10px #222029;
}
.home-3-email.red input, .home-3-email.red a{
	box-shadow:  5px 5px 10px #a32828,5px -5px 10px #ff3e3e;
}
.neo-blurb.et_pb_blurb .et_pb_main_blurb_image{
  box-shadow:  5px 5px 10px #0c0c0f, -5px -5px 10px #222029;
  border-radius:50%
}
