/*
Theme Name: Roofing Installation
Theme URI: https://www.theclassictemplates.com/products/roofing-installation
Author: classictemplate
Author URI: https://www.theclassictemplates.com/
Description: Roofing Installation is a modern, feature-rich, and SEO-optimized theme built specifically for roofing installation, roof repair service, commercial roofing companies, residential roofers, and home improvement professionals, offering strong support for housetop projects and premium materials like engineered hardwoods where applicable in construction and renovation services. With a clean, retina-ready, mobile-responsive design, it ensures perfect performance across desktops, tablets, and smartphones. Developed with secure, lightweight, and optimized code, it guarantees fast loading speed, smooth navigation, and better visibility in search engines. The theme includes customizable sections to display services, team members, pricing plans, testimonials, FAQs, and project portfolios—allowing businesses to showcase roofing expertise effectively. Strategic Call-to-Action (CTA) buttons and an engaging homepage banner help drive leads, estimates, quote requests, and inquiries. Integration with WooCommerce supports online bookings, service payments, and roofing material sales, while Contact Form 7 facilitates easy client communication. Built on a Bootstrap framework, it offers design flexibility with pre-built shortcodes and layout options. It also supports essential plugins like Yoast SEO, Rank Math, The Events Calendar, and Smash Balloon for optimization, scheduling, and social media integration. Additional features like schema-ready structure, translation readiness, mobile friendliness, and cross-browser compatibility make it ideal for global audiences. Whether you’re a local contractor, roofing agency, construction firm, or home improvement specialist, the Roofing Installation theme provides a professional, high-performing, and easy-to-customize platform to promote roofing services, boost credibility, and attract more clients online.
Version: 0.3.3
Tested up to: 6.9
Requires PHP: 5.6
Requires at least: 5.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: roofing-installation
Tags: blog, photography, portfolio, one-column, two-columns, three-columns, four-columns, grid-layout, left-sidebar, right-sidebar, custom-logo, post-formats, featured-images, full-width-template, custom-colors, editor-style, flexible-header, footer-widgets, wide-blocks, custom-header, translation-ready, custom-background, custom-menu, sticky-post, threaded-comments, rtl-language-support, theme-options

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.

Roofing Installation WordPress Theme has been created by classictemplate (theclassictemplates.com), 2025.
Roofing Installation WordPress Theme is released under the terms of GNU GPL
*/

*{
  margin:0;
  padding:0;
}
:root {
  --first-theme-color: #D13F18;
  --second-theme-color: #1C1F2A;
}  
body{
  margin:0;
  padding:0;
  font-size:15px;
  color: #000000;
  font-family: "Montserrat", sans-serif;
  -moz-box-sizing:border-box;
  -webkit-box-sizing:border-box;
  box-sizing:border-box;
  overflow-x: hidden !important;
  overflow-y: scroll !important;
  background-color: #ffffff;
}
img{
  border:none;
  margin:0;
  padding:0;
  height:auto;
  max-width:100%;
}
a{
  color: #000000;
  text-decoration:none;
  word-wrap: break-word;
  cursor: pointer;
}
a:hover{
  color:#000000;
  text-decoration:none;
}
ol,ul{
  margin:0;
  padding:0;
}
.wp-caption,
.wp-caption-text,
.sticky,
.gallery-caption,
.aligncenter{
  margin:0;
  padding:0;
  max-width:100% !important;
}
.sticky{
  background: #ededed;
}
.entry-content ol li,
.entry-content ul li{
  margin-left:15px;
}
.entry-content a, .contentsecwrap a{
  text-decoration: underline;
}
ul li ul,
ul li ul li ul,
ol li ol, ol li ol li ol{
  margin-left:10px;
}
h1,h2,h3,h4,h5,h6{
  color: #000000;
  word-wrap: break-word;
  line-height: 1.1;
}
h1{
  font-size:32px;
}
h2{
  font-size:30px;
}
h3{
  font-size:24px;
}
h4{
  font-size:20px;
}
h5{
  font-size:18px;
}
h6{
  font-size:14px;
}
:hover{
  transition-duration: 0.5s;
}
.clear{
  clear:both;
}
.alignnone{
  width:100% !important;
}
img.alignleft, .alignleft{
  float:left;
  margin:0 15px 0 0;
  padding:5px;
  border:1px solid #cccccc;
}
img.alignright, .alignright{
  float:right;
  margin:0 0 0 15px;
  padding:5px;
  border:1px solid #cccccc;
}
.left{
  float:left;
}
.right{
  float:right;
}
#comment-nav-above .nav-previous,
#comment-nav-below .nav-previous{
  float:none !important;
  margin:10px 0;
}
h2#reply-title {
  padding-top: 20px;
}
ol.comment-list li{
  list-style:none;
  margin-bottom:5px;
}
.comment-content p {
  color: #3A3A3A;
}
p{
  color: #3A3A3A;
}
.woocommerce nav.woocommerce-pagination ul, .single-product.woocommerce div.product div.images .woocommerce-product-gallery__image--placeholder{
  border: none;
}
.woocommerce nav.woocommerce-pagination ul li a, .woocommerce nav.woocommerce-pagination ul li a:hover{
  background: var(--first-theme-color);
  color: #ffffff;
  padding: 10px 12px;
}
.woocommerce nav.woocommerce-pagination ul li span.current{
  background: #ffffff;
  color: var(--first-theme-color) !important;
  padding: 10px 12px;
}
.woocommerce nav.woocommerce-pagination ul li .page-numbers{
  font-weight: 700;
  border: 1px solid var(--first-theme-color);
}
.woocommerce-page p{
  color: #000000;
}
.woocommerce-account .woocommerce-notices-wrapper + h2{
  text-align: center;
  margin-bottom: 20px;
}
.woocommerce-account .woocommerce-form.woocommerce-form-login{
  width: 60%;
  margin: 0 auto;
}
.single-product .product_meta{
  margin-top: 20px;
}
.single-product .woocommerce-product-gallery__wrapper img{
  height: 500px !important;
  width: 500px !important;
}
.boxlayout{
  width: 1140px;
  margin: 0 auto;
  background-color: #fff;
  position: relative;
  box-shadow: 0 -8px 8px #8e8e8e;
}
.single-post .comment-respond .comment-form-cookies-consent,
.woocommerce.single-product #reviews .comment-form-cookies-consent{
  display: flex;
  gap: 10px;
  align-items: flex-start;
}
.single-post .comment-respond .comment-form-cookies-consent input{
  margin-top: 5px;
}

/* Wishlist */
.wishlist_table.mobile{
  padding-left: 0;
}
.wishlist_table.mobile table{
  width: auto;
}
.wishlist_table.mobile li{
  padding: 15px;
  border: 1px solid #000000;
}
.cart.wishlist_table .additional-info-wrapper{
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 10px;
}
ul.shop_table.cart.wishlist_table.wishlist_view.responsive.mobile{
  display: grid;
  grid-template-columns: 2fr 50%;
  gap: 10px;
}
.wishlist_table.images_grid li .item-details table.item-details-table td.label, .wishlist_table.mobile li .item-details table.item-details-table td.label, .wishlist_table.mobile li table.additional-info td.label, 
.wishlist_table.modern_grid li .item-details table.item-details-table td.label{
  font-size: 16px !important;
  font-weight: 500;
}
.wishlist_table.mobile li .item-details table.item-details-table td,.wishlist_table.mobile li .additional-info .value{
  font-size: 14px !important;
  padding: 0 0 0 10px !important;
  font-family: "Montserrat", sans-serif;
  vertical-align: middle !important;
}
.wishlist_table .product-name a,
.wishlist_table .product-price,
.wishlist_table .product-stock-status .wishlist-in-stock{
  font-size: 18px;
  font-weight: 600;
}
.wishlist_table.mobile li .item-wrapper .product-thumbnail,
.wishlist_table.mobile li .item-wrapper .item-details{
  display: block;
  width: 100%;
}
.wishlist_table.mobile li .item-wrapper .item-details .item-details-table .label{
  padding: 0 !important;
  width: auto !important;
}
.wishlist_table .product-add-to-cart a,
.wishlist_table.mobile li .additional-info-wrapper .product-add-to-cart{
  margin-bottom: 0 !important;
}

/*post formate*/
.format-gallery .wp-block-gallery, .format-video figure{
  margin-bottom: 15px;
}
/* Text meant only for screen readers. */
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  word-wrap: normal !important;
}
.screen-reader-text:focus {
  background-color: #eee;
  clip: auto !important;
  clip-path: none;
  color: #444;
  display: block;
  font-size: 1em;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000; /* Above WP toolbar. */
}
a:focus,input[type='submit']:focus,input[type='search']:focus,textarea:focus,input[type='name']:focus,input[type='email']:focus,.toggle-nav button:focus,a.close-button:focus,#commentform input#email:focus, #commentform input#url:focus,#commentform input#author:focus, #commentform textarea:focus, #commentform input#eazycfc_captcha:focus{
	outline: -webkit-focus-ring-color auto 1px;
}
.main-nav ul.sub-menu li a:focus, .main-nav ul ul a:focus{
  border:2px solid var(--first-theme-color);
  outline: none;
}
.main-nav a:focus, .search-box button:focus, .search-outer button.search-close:focus, .header-bg .top-search input.search-submit:focus, .header-bg .top-search .woocommerce-product-search button:focus{
  border:2px solid var(--first-theme-color);
  outline: none;
}
input:focus{
  border:2px solid #ffffff;
}
.textwidget p a,.entry-content p a,.entry-summary a,.widget_block p a,.widget_block h1 a,.widget_block h2 a,.widget_block h3 a,.widget_block h4 a,.widget_block h5 a,.widget_block h6 a{
  text-decoration: underline !important;
}
.comment-content p a, .description p a {
  text-decoration: underline !important;
}
.single-post .entry-content p{
  color: #3A3A3A;
}
/* = wide block css
-------------------------------------- */
.single-post .alignfull, .single-post .alignwide {
  margin-left: 0 !important;
  margin-right: 0 !important;
}
/*block css*/
.site-main .alignfull, .site-main .alignwide{
  margin-left: 0 !important;
  margin-right: 0 !important;
  margin-bottom: 20px;
}
.site-main .alignfull img{
  width: 100% !important
}
.site-main .alignnone, .site-main .aligncenter{
  width: auto !important;
}
.site-main .alignleft{
  margin-right: 10px;
}
.postsec-list .wp-block-button a:hover, .site-main .wp-block-button a:hover,
.site-main .wp-block-button.is-style-outline .wp-block-button__link:not(.has-background):hover,
.postsec-list .wp-block-button.is-style-outline .wp-block-button__link:not(.has-background):hover{
  background: var(--first-theme-color) !important;
  color: #ffffff !important;
}
.postsec-list .wp-block-button.is-style-squared a, .site-main .wp-block-button.is-style-squared a{
  border-radius: 0px !important;
}
.postsec-list .wp-block-button__link, .site-main .wp-block-button__link{
  background: var(--first-theme-color);
  color:#ffffff !important;
  border-radius: 30px;
  font-weight: 500 !important;
}
.site-main .wp-block-button.is-style-outline a, .postsec-list .wp-block-button.is-style-outline a{
  background:none;
  border:1px solid var(--first-theme-color);
  color: #fff !important;
}
.site-main img.alignleft, .site-main .alignleft, .site-main img.alignright, .site-main .alignright,
.postsec-list img.alignleft, .postsec-list .alignleft, .postsec-list img.alignright, .postsec-list .alignright{
  border:none;
}
.tags a {
  text-decoration: none!important;
  font-weight: 400;
  color: #ffffff !important;
  background: var(--first-theme-color);
  box-shadow: 0 1px 0 rgb(0 0 0 / 8%);
  text-shadow: none;
  line-height: 3.5;
  padding: 8px;
  margin: 5px;
  border-radius: 5px;
  font-size: 15px;
}
.tags a:hover{
  background-color: #000000;
  color: #fff !important;
}
.modal-content{
  background: transparent;
  border: 0;
}
.modal-dialog{
  pointer-events: all;
}
.modal-body{
  padding: 0;
}
#myModal, .modal-open {
  padding: 0 !important;
}
.modal-open{
  overflow-y: scroll;
}
body.admin-bar .closepop{
  top:30px;
}

/*scroll to top*/
#button{
  background: var(--first-theme-color);
  color: #ffffff;
  cursor: pointer;
  width: fit-content;
  padding: 5px;
  padding-top: 22px;
  height: 60px;
  aspect-ratio: 1;
  text-align: center;
  position: fixed;
  border-radius: 50%;
  bottom: 60px;
  right: 20px;
  -moz-border-radius: 0;
  font-size: 15px;
  font-weight: 700;
  display: none;
  opacity: 1 !important;
  z-index: 999;
}

/* Progress Bar */
#progress-bar {
  position: fixed;
  top: 0;
  left: 0;
  width: 0%;
  height: 5px;
  background: var(--first-theme-color);
  z-index: 9999;
}

.admin-bar #progress-bar {
  top: 32px;
}
@media only screen and (min-width:768px){
  .cursor-point,
  .cursor-point-outline {
      z-index: 1100;
      pointer-events: none;
      position: fixed;
      top: 50%;
      left: 50% ;
      -webkit-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%);
      border-radius: 50%;
      
      -webkit-transition: opacity 0.3s ease-in-out,
      -webkit-transform 0.3s ease-in-out;
      transition: opacity 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
      transition: opacity 0.3s ease-in-out, transform 0.3s ease-in-out;
      transition: opacity 0.3s ease-in-out, transform 0.3s ease-in-out,
      -webkit-transform 0.3s ease-in-out;
  }
  .cursor-point {
      width: 8px;
      height: 8px;
      background-color: var(--first-theme-color);
  }
  .cursor-point-outline {
      width: 30px;
      height: 30px;
      background-color: var(--first-theme-color);
      opacity: 0.4 !important;
  }
}
/* = pre loader css
-------------------------------------- */
#preloader {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #fff;
  z-index: 999999;
}
#status {
  width: 200px;
  height: 200px;
  position: absolute;
  left: 50%;
  top: 50%;
  background-image: url(images/status.gif);
  background-repeat: no-repeat;
  background-position: center;
  margin: -100px 0 0 -100px;
}
/*logo*/
h1.site-title, p.site-title{
  font-size: 30px;
  margin-bottom: 0;
  font-weight: 500;
  color: #ffffff;
}
p.site-title a, h1.site-title a {
  color: #ffffff;
  font-size: 30px;
  text-transform: capitalize;
}
.page-template-template-home-page p.site-title a, .page-template-template-home-page h1.site-title a{
  color: #ffffff;
}
p.site-title{
  line-height: 1.3;
}
.roofing-installation-logo span.site-description{
  font-size: 13px;
  font-weight: 500;
  color:#ffffff;
}
.page-template-template-home-page .roofing-installation-logo span.site-description{
  color: #ffffff;
}
#mySidenav {
  display: inline;
}
.main-nav ul {
  margin: 0;
  padding: 0;
}
.main-nav li {
  display: inline-flex;
  position: relative;
  align-items: center;
  padding: 8px 20px;
}
.main-nav .current-menu-item a{
  border-bottom: 1px solid #ffffff;
}
.main-nav a {
  font-size: 15px;
  display: block;
  text-transform: capitalize;
  color: #ffffff;
  font-weight: 600;
}
.main-nav a:hover{
  color: var(--first-theme-color);
}
.main-nav .sub-menu a{
  color:#111 !important;
}
.main-nav li ul li.current_page_item li a{
  color: #111 !important;
}
.main-nav li ul li.current_page_item a{
  color:#fff !important;
}
.main-nav ul ul li.current_page_item a{
  color: #000000 !important;
}
.page-template-template-home-page li.main-nav .current_page_item{
  color:#ffffff;
  background-color:var(--first-theme-color);
}
.page-template-template-home-page .main-nav .sub-menu .current_page_item a{
  background:none;
}
.main-nav ul.sub-menu .current_page_item a::before,
.main-nav ul.sub-menu .current-menu-item a::before,
.main-nav ul ul .menu-item a:before{
  content: none;
}
.main-nav ul ul .menu-item-has-children > a::after{
  margin-top: 2px;
}
.main-nav .menu-item-has-children > a::after {
  content: '\f107';
  font-family: 'Font Awesome 7 Free';
  font-weight: 900; 
  display: inline-block;
  width: 0;
  height: 0;
  position: absolute;
  top: auto;
  bottom: auto;
  right: auto;
  margin-left: 3px;
  margin-top: 3px;
  transform: translateY(-50%);
  pointer-events: none;
  font-size: 12px;
}
.main-nav .menu-item-has-children.current-menu-parent > a::after,
.main-nav .menu-item-has-children.current-menu-ancestor > a::after,
.main-nav .menu-item-has-children.current_page_parent > a::after {
  transform: translateY(-50%) rotate(0deg);
}
.main-nav ul.sub-menu li a:hover {
  background-color: var(--first-theme-color) !important;
  color: #ffffff !important;
}
.main-nav ul ul {
  position: absolute;
  background: #fff;
  min-width: 250px;
  z-index: 9999;
  top: 98%;
  line-height: 30px;
  opacity: 0;
}
.main-nav ul ul ul {
  left: 100%;
  top: 0%;
}
.main-nav ul ul a {
  color: #1f1f1f;
  border: none;
  padding: 10px;
  margin-bottom: 0;
}
.main-nav ul ul li {
  float: none;
  display: block;
  text-align: left;
  border-left: none;
  border-right: none !important;
  padding: 0;
  border-bottom: solid 1px #f1f1f1;
}
.main-nav li ul {
  border-top: 3px solid var(--first-theme-color);
  box-shadow: 0px 0px 12px -3px rgba(0, 0, 0, 0.4);
}
.main-nav .menu > ul > li.highlight {
  background-color: #006ccc;
}
.main-nav .menu > ul > li.highlight:hover {
  background: transparent;
}
.main-nav .menu-item-has-children:not(.off-canvas):hover > .sub-menu,
.main-nav .menu-item-has-children:not(.off-canvas):focus > .sub-menu,
.main-nav .menu-item-has-children.is-focused:not(.off-canvas) > .sub-menu,
.main-nav .menu-item-has-children:not(.off-canvas)[focus-within] > .sub-menum,
.main-nav .menu-item-has-children:not(.off-canvas):focus-within > .sub-menu {
  opacity: 1;
}
.main-nav ul li:hover > ul {
  opacity: 1;
}
.main-nav li.menu-item-has-children:hover > ul,
.main-nav li.menu-item-has-children:focus > ul,
.main-nav li.menu-item-has-children.focus > ul {
  opacity: 1;
}
.main-nav .sub-menu {
  opacity: 0;
  left: -9999px;
  z-index: 99999;
  width: 200px !important;
}
.main-nav ul.sub-menu li a {
  background: #ffffff !important;
  color: #000 !important;
}
ul.sub-menu ul.sub-menu {
  left: 200px !important;
}
.main-nav .menu-item-has-children:not(.off-canvas):hover > .sub-menu,
.main-nav .menu-item-has-children:not(.off-canvas):focus > .sub-menu,
.main-nav .menu-item-has-children.is-focused:not(.off-canvas) > .sub-menu,
.main-nav .menu-item-has-children:not(.off-canvas)[focus-within] > .sub-menum,
.main-nav .menu-item-has-children:not(.off-canvas):focus-within > .sub-menu {
  display: block;
  left: 0;
  margin-top: 0;
  opacity: 1;
  width: auto;
  min-width: 100%;
}
ul.sub-menu ul.sub-menu {
  left: -9999px;
}
.toggle-nav,
a.close-button {
  display: none;
}
/*page css*/
.page-header {
  margin-bottom: 20px;
}
.page-header h1{
  color: #000000;
  margin-bottom: 10px;
  font-size: 35px;
  word-wrap: break-word;
}
.page-header span, .page-header span a {
  font-size: 18px;
  word-wrap: break-word;
  display: inline;
  margin-bottom: 10px;
}

/* Header */
.main-header .topbar .topbar-text,
.main-header .topbar .top-mail a,
.main-header .topbar .top-phone a{
  color: var(--second-theme-color);
  font-size: 14px;
}
.main-header .topbar .top-mail a:hover,
.main-header .topbar .top-phone a:hover,
.main-header .header-bg .header-social-icons a:hover{
  color: var(--first-theme-color);
}
.main-header .header-bg .header-social-icons a:hover{
  transform: scale(1.2);
}
.main-header .header-bg{
  background-color: var(--second-theme-color);
}

/* Header Image */
.box-image .single-page-img{
  position: relative;
}
.box-image .single-page-img:after{
  content: '';
  position: absolute;
  height: 300px;
  width: 100%;
  background-color: #000000;
  top: 0;
  opacity: 0.5;
}
.box-image {
  position: relative;
}
.box-image .page-header{
  position: absolute;
  bottom: auto;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  margin-bottom: 0;
  width: 100%;
  padding: 10px;
}
.box-image .page-header h2,
.box-image .page-header h1{
  color: #fff;
  text-transform:uppercase;
}
.box-image .page-header .breadcrumb, .box-image .page-header .woocommerce-breadcrumb a, .box-image .page-header .woocommerce-breadcrumb{
  justify-content: center;
  color: #ffffff;
  align-items: center;
}
.box-image .page-header .breadcrumb a, 
.box-image .page-header .breadcrumb span, 
.box-image .page-header .woocommerce-breadcrumb a, 
.box-image .page-header .woocommerce-breadcrumb{
  background-color: transparent;
  margin: 0;
}
.box-image .page-header .entry-title span{
  font-size: 35px;
}
.archive.woocommerce .single-page-img{
  margin-bottom: 20px;
}

/* Banner */
#banner-cat {
  z-index: 1;
}
#banner-cat .banner-bg-img img{
  height: 600px;
  width: 100%;
  border-radius: 5px;
  object-fit: cover;
}
#banner-cat .bannerbox{
  bottom: 30%;
  left: 50%;
  transform: translate(-50%, 50%);
  width: 100%;
}
#banner-cat .banner-overlay{
  background: linear-gradient(0deg, #090A0A 0%, rgba(31, 32, 32, 0.5) 69.81%, rgba(138, 140, 142, 0.1) 100%);
  top: 0;
  height: 100%;
  width: 100%;
  border-radius: 5px;
}
#banner-cat .bannerbox .banner-innr-box{
  width: 60%;
  margin: 0 auto;
}
#banner-cat .bannerbox .banner-title a,
#banner-cat .bannerbox .banner-content,
#banner-cat .bannerbox .bannerbtn a,
#services-section .services-box .services-main-content .post-head a,
#services-section .services-box .services-main-content .services-description,
#services-section .services-box .services-main-content .icon i,
#services-section .services-box .services-main-content .post-head,
.main-header .header-bg .header-social-icons a{
  color: #ffffff;
}
#banner-cat .bannerbox .banner-title{
  font-size: 35px;
  font-weight: 700;
  line-height: 1.3;
}
#banner-cat .bannerbox .bannerbtn{
  position: relative;
  background-color: var(--first-theme-color);
  border-radius: 5px;
  font-weight: 600;
  padding: 10px 30px;
  display: inline-block;
  overflow: hidden;
  transition: background-color 0.8s, color 0.8s;
}
#banner-cat .bannerbox .bannerbtn a{
  position: relative;
  z-index: 2;
}
#banner-cat .bannerbox .bannerbtn:hover a{
  color: var(--first-theme-color);
}
#banner-cat .bannerbox .bannerbtn::before,
#banner-cat .bannerbox .bannerbtn::after{
  content: '';
  position: absolute;
  width: 0;
  height: 100%;
  background-color: rgb(255, 255, 255, 0.5);
  transition: 0.8s;
  z-index: 1;
  top: 0;
}
#banner-cat .bannerbox .bannerbtn::before,
#banner-cat .bannerbox .bannerbtn a::after {
  left: 0;
}
#banner-cat .bannerbox .bannerbtn::after,
#banner-cat .bannerbox .bannerbtn a::before {
  right: 0;
}
#banner-cat .bannerbox .bannerbtn:hover::before,
#banner-cat .bannerbox .bannerbtn:hover::after,
#banner-cat .bannerbox .bannerbtn:hover a::before,
#banner-cat .bannerbox .bannerbtn:hover a::after {
  width: 100%;
}
@keyframes criss-cross-left {
  0% {
    left: -20px;
  }
  50% {
    left: 50%;
  }
  100% {
    left: 50%;
  }
}
@keyframes criss-cross-right {
  0% {
    right: -20px;
  }
  50% {
    right: 50%;
  }
  100% {
    right: 50%;
  }
}
#banner-cat .bannerbox .banner-title,
#banner-cat .bannerbox .banner-content,
#services-section .services-box:hover .services-main-content .services-description,
#services-section .services-box:hover .services-main-content .post-head{
  overflow: hidden;
  display: -webkit-box !important;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
}

/* Services Section */
#services-section{
  min-height: 600px;
}
#services-section:before{
  content: '';
  position: absolute;
  background-color: var(--second-theme-color);
  width: 80px;
  height: 540px;
  top: -8%;
  left: 3%;
  opacity: 0.25;
  transform: rotate(25deg);
  animation: fadeInCustom 1.5s ease-in forwards;
  animation-delay: 0.3s;
}
@keyframes fadeInCustom {
  from {
    opacity: 0;
  }
  to {
    opacity: 0.25;
  }
}
#services-section .blog-bx .services-text{
  color: var(--first-theme-color);
  font-weight: 600;
}
#services-section .blog-bx .services-title{
  font-size: 28px;
  font-weight: 600;
}
#services-section .blog-bx:before{
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 4px;
  height: 100%;
  background-color: var(--first-theme-color);
}
#services-section .services-main-box{
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  grid-template-rows: repeat(1, 1fr);
}
#services-section .services-main-box .services-box .post-thumb img{
  border-radius: 0;
  height: 350px;
  width: 100%;
}
#services-section .services-main-box .services-box{
  overflow: hidden;
}
#services-section .services-box .services-main-content .icon i{
  font-size: 50px;
}
#services-section .services-box:hover .services-main-content .post-head{
  padding: 0 !important;
}
#services-section .services-box .services-main-content .post-head{
  font-weight: 600;
  padding: 15px 12px 15px 55px !important;
}
#services-section .services-box .services-main-content .services-description{
  font-size: 14px;
}
#services-section .services-box .services-main-content .services-btn{
  background-color: #ffffff;
  border-radius: 5px;
  color: var(--first-theme-color);
  padding: 6px 15px;
  font-size: 14px;
  text-decoration: underline;
  margin-top: 8px;
  display: inline-block;
}
#services-section .services-box .services-main-content .icon,
#services-section .services-box .services-main-content .services-description, 
#services-section .services-box .services-main-content .services-btn{
  display: none;
}
#services-section .services-box:hover .services-main-content .icon,
#services-section .services-box:hover .services-main-content .services-description, 
#services-section .services-box:hover .services-main-content .post-head,
#services-section .services-box:hover .services-main-content .services-btn{
  display: inline-block;
}
#services-section .services-box:hover .services-main-content .post-head{
  position: static !important;
}
#services-section .services-box .services-main-content .services-inner-content:after{
  content: '';
  position: absolute;
  background-color: var(--first-theme-color);
  opacity: 0.8;
  clip-path: polygon(18% 0%, 100% 0, 100% 100%, 0% 100%);
  height: 100%;
  width: 100%;
  left: 0;
  bottom: 0;
  z-index: -1;
}
#services-section .services-box .services-main-content .services-inner-content{
  z-index: 1;
}
#services-section .services-box:hover .services-main-content .services-inner-content:after{
  content: none;
}
#services-section .services-box .services-main-content{
  top: auto;
  bottom: 0;
  right: 0;
  transform: none;
  transition: 0.8s ease-in-out;
  width: 100%;
}
#services-section .services-main-box .services-box .post-thumb .service-img-overlay{
  transition: height 0.8s ease-in-out;
  height: 0;
}
#services-section .services-main-box .services-box:hover .post-thumb .service-img-overlay{
  bottom: 0;
  height: 100%;
  width: 100%;
  background-color: var(--second-theme-color);
  opacity: 0.6;
}
#services-section .services-box:hover .services-main-content{
  bottom: auto;
  top: 50%;
  transform: translateY(-50%);
  background-color: transparent;
  padding: 10px !important;
  clip-path: none;
  opacity: 1;
  text-align: center;
}
.woocommerce.single-product .summary.entry-summary .product_title{
  margin-bottom: 16px;
}
.woocommerce.single-product .yith-add-to-wishlist-button-block--single{
  padding: 0 !important;
}
.woocommerce a.yith-wcwl-add-to-wishlist-button,
.woocommerce .related.products a.yith-wcwl-add-to-wishlist-button {
  padding: 8px 15px;
}
.woocommerce .yith-add-to-wishlist-button-block .yith-wcwl-add-to-wishlist-button svg{
  color: #ffffff;
  height: 22px;
  width: 22px;
  margin-right: 5px;
}
.woocommerce .yith-wcwl-add-to-wishlist-button:not(.yith-wcwl-add-to-wishlist-button--themed-button).yith-wcwl-add-to-wishlist-button--added svg{
  color: #ffffff !important;
}
.woocommerce .yith-add-to-wishlist-button-block {
  justify-content: flex-start;
  margin: 7px 0;
}
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-price del{
  margin-right: 6px;
  display: inline-flex;
}
.single-product .summary button.woosw-btn, .single-product .related.products button.woosw-btn, .woocommerce-shop button.woosw-btn, .woosw-popup-content .add_to_cart_inline .added_to_cart, .woosw-list .woosw-item--actions .added_to_cart, .woosw-list .woosw-copy #woosw_copy_btn{
  padding: 7px 15px;
  background: var(--first-theme-color);
  color: #ffffff;
  display: inline-block;
  font-size: 14px;
  text-transform: capitalize;
  border-radius: 4px;
  font-weight: 500;
  text-align: center;
  border: none;
}
.single-product .summary button.woosw-btn:hover, .single-product .related.products button.woosw-btn:hover, .woocommerce-shop button.woosw-btn:hover, .woosw-popup-content .add_to_cart_inline .added_to_cart:hover, .woosw-list .woosw-item--actions .added_to_cart:hover, .woosw-list .woosw-copy #woosw_copy_btn:hover{
  background: #000000;
}
.woosw-list .woosw-copy #woosw_copy_btn{
  margin-left: 10px;
}
.woosw-list .woosw-copy #woosw_copy_url{
  padding: 5px;
}
.woosw-popup-content .add_to_cart_inline .added_to_cart{
  margin-top: 10px;
}
.woosw-list .woosw-item .woosw-item--actions{
  text-align: center;
}
.woosw-list .woosw-item--actions .added_to_cart{
  margin-left: 10px;
}
.woosw-list .woosw-item .woosw-item--actions a.add_to_cart_button, .woosw-list .woosw-item--actions .added_to_cart{
  text-decoration: none !important;
}
.woosw-list table.woosw-items .woosw-item .woosw-item--name a{
  font-size: 20px;
  text-decoration: none;
}

/* = Page lay out css
-------------------------------------- */
.postsec-list input.search-field,
.postsec-list input.search-submit {
  padding: 11px 10px;
}
.postsec-list .search-form input.search-submit, #sidebar form .wp-block-search__button{
  background: var(--first-theme-color);
  color: #ffffff;
  border: 2px solid var(--first-theme-color);
  font-weight: 700;
  border-radius: 4px;
}
.postsec-list .search-form input.search-submit:hover, #sidebar form .wp-block-search__button:hover{
  background: var(--second-theme-color);
  border-color: var(--second-theme-color);
  color: #ffffff;
}
.contentsecwrap{
  padding:35px 0;
  clear: both;
}
.contentsecwrap p{
  margin-bottom:20px;
}
.type-page .entry-content p {
  color: #3A3A3A;
}
#sidebar aside.widget{
  padding: 20px;
  border-radius: 5px;
}
#sidebar #search .search-submit{
  margin-top: 10px;
}
.listarticle{
  border-radius: 5px;
}
.listarticle h2 a{
  color: #3A3A3A;
  font-size: 30px;
  text-decoration: none;
  word-wrap: break-word;
}
.listarticle h2 a:hover{
  color: var(--first-theme-color);
}
.single_title{
  margin-bottom: 15px;
  font-size: 20px;
}
.post-thumb{
  margin:15px 0;
}
.nav-links .page-numbers{
  border: 1px solid var(--first-theme-color);
  color: var(--first-theme-color) !important;
  padding:10px 15px;
  text-decoration: none;
  font-weight: 700;
}
span.page-numbers.current, .nav-links .page-numbers:hover{
  background: var(--first-theme-color);
  color: #ffffff !important;
}

/* label css
---------------------------------------------- */
label{
  margin-bottom: 0;
}
#footer .search-form label, #sidebar .search-form label{
  width: 100%;
}
aside.widget ul, .entry-summary li{
  list-style:none;
}
.listarticle .alignfull, .listarticle .alignwide{
  margin-left: 0;
  margin-right: 0;
}
#recentcomments li{
  background-image:none !important;
}
#recentcomments li a{
  padding-left:0px !important;
}
.textwidget select,table{
  width:100%;
}
nav.navigation.pagination {
  margin: 30px auto;
}
/*--------------------------------------------------------------
## Sidebar Style 
--------------------------------------------------------------*/
#sidebar input[type="text"],
#sidebar input[type="search"],
#footer input[type="search"]{
  border: solid 2px var(--first-theme-color);
  padding: 10px;
  width: 100%;
}
#footer input[type="search"]{
  color: #000000;
  border: 1px solid #ffffff;
}
#footer .search-form input::placeholder{
  color: #000000;
}
#footer input.search-submit{
  background-color: var(--second-theme-color);
  padding: 10px;
  width: 100%;
  border:none;
  font-size: 15px;
  text-transform: uppercase;
  color: #ffffff;
  font-weight: 600;
}
#sidebar input.search-submit,
form.woocommerce-product-search button {
  padding: 14px;
  width: 100%;
  border:none;
  background: var(--first-theme-color);
  font-size: 15px;
  text-transform: uppercase;
  color: #ffffff;
  font-weight: 600;
}
input.search-submit{
  background: var(--first-theme-color);
  color: #ffffff;
  border:none;
  padding: 10px 20px !important;
}
.widget-area .widget::after,
.widget-area .widget::before {
  clear: both;
  content: "";
  display: table;
}
#sidebar .widget-title, #sidebar h1,#sidebar h2,#sidebar h3,#sidebar h4,#sidebar h5,#sidebar h6, #sidebar form label.wp-block-search__label {
  font-size: 28px;
  font-weight: 500;
  padding-bottom: 10px;
  position: relative;
  text-align: left;
  text-transform: capitalize;
  color: #262626;
  font-family: "Montserrat", sans-serif;
}
 .entry-title h2:before{
  content: "\f185";
  display: inline-block;
  font-family: FontAwesome;
  margin-right: 5px;
}
#sidebar ul {
  list-style: outside none none;
  padding: 0;
  margin: 0;
}
#sidebar ul ul {
  border-bottom:none;
  padding-bottom: 0;
}
#sidebar ul li {
  padding: 5px;
  padding-left: 30px;
  padding-top: 5px;
  position: relative;
  color: #000000;
}
#sidebar ul li::before {
  color: var(--first-theme-color);
  content: "\f192";
  display: inline-block;
  font-family: 'Font Awesome 7 Free';
  font-weight: 900;
  font-size: 7px;
  left: 0;
  position: absolute;
  top: 12px;
  margin-left: 2px;
}
#sidebar .widget_nav_menu ul li::before{
  top: 18px;
}
#sidebar .widget a,
#sidebar .widget a:visited {
  color: #000000;
  text-decoration: none;
}
#sidebar .widget_text p a,
#sidebar .wp-block-heading a{
  color: var(--first-theme-color) !important;
}
#sidebar .widget a:hover,
#sidebar .widget a:active {
  color: var(--first-theme-color);
}
#sidebar .widget {
  padding: 20px;
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 0 4px #cfcfcf;
  border-bottom: 3px solid var(--first-theme-color);
  margin-bottom: 30px;
}
#sidebar .widget:hover{
  box-shadow: 0 0 20px #cfcfcf;
}
#sidebar .widget_nav_menu ul li{
  padding: 3px 15px 5px 20px;
}
#sidebar .widget_nav_menu ul li a{ 
  line-height: 2.5;
}
/*Clearing floats css*/
.page-links {
  float: unset !important;
  display: inline-flex;
  gap: 5px;
  align-items: center;
  margin:20px auto;
}
.page-links a, .page-links span{
  padding: 10px 15px;
  background: var(--first-theme-color);
  color: #ffffff;
}
.page-links .post-page-numbers.current, .page-links a:hover{
  background-color: #000000;
  color:#fff;
}
/*calendar widget*/
.widget_calendar {
  text-align: center;
}
.widget_calendar h3{
  text-align: left;
}
.widget_calendar caption {
  background: var(--first-theme-color) none repeat scroll 0 0;
  color: #ffffff;
  padding: 5px;
}
.widget_calendar .pad {
  background: #eeeeee none repeat scroll 0 0;
}
.widget_calendar #today a{
  color: #ffffff;
}
.widget_calendar #today {
  background: var(--first-theme-color) none repeat scroll 0 0;
  color: #ffffff;
}
.widget .tagcloud a {
  background: var(--first-theme-color);
  color: #ffffff !important;
  border: 1px solid var(--first-theme-color);
  display: inline-block;
  font-size: 16px !important;
  line-height: 1.5;
  margin-bottom: 5px;
  padding: 5px 15px;
}
.widget .tagcloud a:hover {
  background-color: #ffffff;
  color: var(--first-theme-color) !important;
  border: 1px solid var(--first-theme-color);
}
.widget_categories li > a,
.widget_archive li > a {
  display: inline-block;
  min-width: 85%;
}
.search-form .search-submit:focus {
  box-shadow: inherit;
  outline: none;
}
dt {
  font-weight: bold;
}
dd {
  margin: 0 1.5em 1.5em;
}
img {
  height: auto;
  max-width: 100%;
}
table {
  margin: 0 0 1.5em;
  width: 100%;
}
td, th {
  border: 1px solid #ddd;
  padding: 5px;
  color:#252525;
}
#footer td, #footer th{
  color: #fff;
}
select {
  width: 100%;
  padding: 5px;
}
#footer .tagcloud a {
  border: solid 1px #fff;
  font-size: 14px !important;
  margin: 2px 0;
  display: inline-block;
  color: #fff !important;
  padding: 5px 10px;
  font-weight: 500;
}
#footer .tagcloud a:hover{
  color: var(--first-theme-color) !important;
  background-color: #ffffff;
  border-color: var(--first-theme-color);
}
.tagcloud a:hover{
  background: var(--first-theme-color);
  border-color: var(--first-theme-color);
  color: #ffffff !important;
}
/*footer*/
#footer ul {
  list-style: none;
  margin: 0;
  padding-left: 0;
}
#footer ul li {
  font-size: 15px;
  padding: 3px 15px 3px 13px;
  position: relative;
  color: #fff;
}
#footer ul li::before {
  color: #fff;
  content: "\f105";
  display: inline-block;
  font-family: 'Font Awesome 7 Free';
  font-weight: 900;
  font-size: 14px;
  left: 0;
  position: absolute;
  top: 3px;
}
#footer a .footer-widget-area {
  float: left;
  padding: 0 25px;
  width: 25%;
}
#footer a,
#footer p {
  color:#fff;
}
#footer h6 {
  color: var(--first-theme-color);
}
#footer .footer-block .widget_text p a, #footer .footer-block .widget_block .wp-block-heading a{
  color: #000000;
}
/*--------------------------------------------------------------
## Posts and pages
--------------------------------------------------------------*/
.postsec-list .listarticle{
  background: #ffffff none repeat scroll 0 0;
  box-shadow: 0 0 4px #cfcfcf;
  padding: 30px;
  position: relative;
  border-radius: 12px;
  margin-bottom: 30px;
}
.postsec-list .listarticle:hover{
  box-shadow: 0 0 20px #cfcfcf;
}
/* = Footer css
------------------------------------------- */
#footer{
  background-color: var(--first-theme-color);
  color: #ffffff;
}
#footer h1, #footer h2,#footer h3,#footer h4,#footer h5,#footer h6 {
  color: #fff;
}
.ftr-4-box{
  width:100%;
  float:left;
  margin:0 4% 2% 0;
  box-sizing:border-box;
  padding:20px;
}
.widget-column-4 {
  margin-right:0px !important;
}
.ftr-4-box h5{
  font-size:28px;
  color:var(--first-theme-color);
  margin-bottom:0;
  border-bottom:1px solid #000000;
  padding-bottom:20px;
}
.ftr-4-box h5 span{
  font-weight:300;
  color: #3dd4e5;
}
.ftr-4-box ul{
  margin:0;
  padding:0;
  list-style:inside disc;
}
.ftr-4-box ul li {
  display:block;
  padding:6px 0;
}
.ftr-4-box ul li a,.ftr-4-box a.readmore span {
  color:#ffffff;
}
.ftr-4-box p{
  margin-bottom:15px;
}
.copywrap {
  font-size: 18px;
  padding: 14px 10px !important;
  background: var(--first-theme-color);
  border-top: 1px solid #ffffff;
}
.copywrap p, .copywrap p a{
  color:#ffffff !important;
  margin-bottom: 0;
  font-weight: 500;
  font-size: 16px;
}
#footer .copywrap a:hover{
  color:#000000;
}
.entry-content .tags a{
  color:#ffffff !important;
}
.entry-content .tags a:hover{
  background-color: var(--second-theme-color);
  color: #ffffff !important;
}

/* Sticky Header */
.is-sticky-on.header-sticky .main-header .header-bg{
  padding: 15px 0 !important;
  margin-bottom: 0 !important;
}
.page-template-template-home-page .is-sticky-on.header-sticky p.site-title a, .page-template-template-home-page .is-sticky-on.header-sticky h1.site-title a{
  -webkit-text-fill-color: #ffffff;
  background: transparent;
}
.is-sticky-on.header-sticky .main-header .topbar,
.page-template-template-home-page .is-sticky-on.header-sticky .main-header .header-bg .logo-box .logo-right-img{
  display: none;
}
.page-template-template-home-page .is-sticky-on.header-sticky .main-header .header-bg .logo-box {
  background-color: #0000;
  box-shadow: unset;
}
.is-sticky-on.header-sticky .main-header{
  position: fixed;
  right:0;
  width: 100%;
  background: var(--second-theme-color);
  z-index: 9;
  border: none;
  box-shadow: 0px 4px 6px 0px #00000040;
  padding: 0;
  margin: 0 !important;
}
.copywrap .copywrap-info{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}
.copywrap .copywrap-info.center-content {
  justify-content: center;
  text-align: center;
}
.search-no-results .search-form label{
	margin-bottom: 2px
}
.search-no-results .entry-title{
  margin-bottom: 15px;
}

#footer .widget_calendar #today {
  background: #ffffff none repeat scroll 0 0;
}
#footer .widget_calendar #today a{
  color: var(--first-theme-color);
}
/* Sticky Copyright */
.sticky-copyright.active-sticky {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 999;
  transition: bottom 0.4s;
  box-shadow: 0px 0px 8px #000000;
}
/* Mobile Portrait View */
@media screen and (max-width: 1000px){
  body.admin-bar.page-template-template-home-page .search-close{
    top: 36px;
  }
  .main-nav li ul li.current_page_item li a {
    color: #ffffff !important;
  }
  p.site-title a, h1.site-title a{
    font-size: 23px;
  }
  .main-nav ul ul, .main-nav .sub-menu{
    opacity: 1;
    width: auto;
  }
  .page-template-template-home-page .main-nav .current_page_item a{
    color: var(--first-theme-color);
  }
  .main-nav .current_page_item a::before{
    content: none;
  }
  .roofing-installation-logo span.site-description{
    font-size: 12px;
  }
  .main-nav ul ul li{
    margin-bottom: 0;
  }
  .page-template-template-home-page .main-nav a,.main-nav ul.sub-menu li a{
    color: #fff !important;
    text-align: center;
    padding-left: 0;
    background-color: transparent !important;
  }
  .main-nav ul.sub-menu li a{
    padding-left: 0;
  }
  .page-template-template-home-page .sidenav .main-nav{
    background-color: #0000;
  }
  .main-nav ul{
    text-align: left;
  }
  .main-nav ul.sub-menu li a:focus, .main-nav ul ul a:focus,.main-nav a:focus{
    border:2px solid #fff;
    outline: none;
  }
  .main-nav li ul{
    border:none;
    box-shadow: none;
    border-top: none !important;
  }
  .main-nav .sub-menu li{
    border-bottom: none;
  }
  .toggle-nav button {
    font-weight: 400;
    border: none;
    font-size: 14px;
    padding: 8px 25px;
    color: #000000;
    display: inline-block;
    background: #ffffff;
    border-radius: 25px;
    position: relative;
    z-index: 1;
  }
  .sidenav {
    height: 100%;
    width: 100%;
    position: fixed !important;
    z-index: 99999; 
    left: 0;
    top: -110%;
    overflow-x: hidden; 
    transition: 0.5s top ease-in-out;
    overflow-y: scroll;
    background: #000;
    visibility: hidden; 
    opacity: 0.9;
  }
  .main-nav ul li a:hover{
    color: #fff;
  }
  .main-nav li {
    padding: 0 15px;
    display: block;
    border-bottom: none;
    border-right: none;
    height: auto;
  }
  body.show-main-menu .sidenav{
    visibility: visible;
    top: 0;
    transition: 0.5s top ease-in-out;
    background: #000 !important;
  }
  .sidenav .close-button {
    margin-bottom:30px !important;
    font-size: 36px; 
    display: block !important;
    color: #fff; 
    padding: 10px !important;
    text-align: center;
    margin-top: 25px;
  }
  .sidenav #site-navigation {
    width: 100%; 
    margin-top: 45px;
  }
  .toggle-nav span{
    font-size:30px; 
    cursor:pointer; 
    text-align: right;
  }
  .main-nav ul ul li,.menubar .nav ul li{
    display: block;
    text-align: center !important;
  }
  .toggle-nav{
    display: block;
  }
  .main-nav li.current_page_item a{
    color: #ffffff;
  }
  .main-nav ul li a{
    padding: 8px;
    text-decoration: none;
    font-size: 15px;
    color: #fff;
    display: block;
    float: none;
    margin: 5px 0;
    border-right: none; 
    text-align: center;
  }
  .main-nav .menu-item-has-children > a::after{
    margin-top: 0;
  }
  .main-nav ul li ul li a:before{
    content:"\00BB \00a0";
  }
  .main-nav ul.sub-menu a:hover{
    color:#000000;
  }
  .main-nav ul ul{
    position: static; 
    width: 100%; 
    background: transparent;
    border-top-width: 0px; 
    border-bottom-width: 0px;
    box-shadow: none; 
  }
  .main-nav ul ul a{
    border-bottom: none; 
    padding-left: 40px;
  }
  .main-nav ul ul li.current_page_item a {
    color: #ffffff !important;
  }
  .main-nav ul ul ul.sub-menu a{
    padding-left: 0;
  }
  #mySidenav {
    text-align: left; 
    display: inline;
  }
  .main-menu {
    padding: 0em;
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .main-nav ul.sub-menu>li>a:before {
    content: unset;
  }
  .main-nav ul.sub-menu>li>a:hover:before{
    opacity: 0;
    left: 0px;
    width: 0px;
  }
  .page-template-template-home-page .main-nav .current_page_item a, .main-nav .current_page_item a, .main-nav .current_page_item a:hover{
    background:none;
  }
}
@media screen and (max-width: 599px){
  .admin-bar .is-sticky-on{
    top: 0px;
  }
}
@media screen and (max-width: 600px){
  .is-sticky-on.header-sticky .main-header{
    top: 0;
  }
}
@media screen and (max-width: 767px) {
  .main-header .topbar .top-main-text, 
  .main-header .topbar .top-mail, 
  .main-header .topbar .top-phone{
    margin-bottom: 8px;
  }
  .main-header .header-bg .logo-box .roofing-installation-logo{
    text-align: center;
  }
  .main-header .header-bg .logo-box .roofing-installation-logo, .main-header .header-bg .main-menu-box{
    margin-bottom: 12px;
  }
  .main-header .header-bg{
    padding: 12px 0;
  }
  #banner-cat .banner-bg-img img{
    height: 500px;
  }
  #banner-cat .bannerbox .banner-innr-box{
    width: 100%;
  }
  #banner-cat .bannerbox .banner-title{
    font-size: 30px;
  }
  #banner-cat .bannerbox{
    bottom: 50%;
  }
  #services-section .blog-bx .services-title{
    font-size: 25px;
  }
  #services-section:before, #services-section .blog-bx:before{
    content: none;
  }
  #services-section .services-main-box{
    grid-template-columns: repeat(1, 1fr);
    grid-template-rows: repeat(5, 1fr);
  }
  #services-section .services-main-box .services-box .post-thumb .service-img-overlay{
    bottom: 0;
    height: 100%;
    width: 100%;
    background-color: var(--second-theme-color);
    opacity: 0.6;
  }
  #services-section .services-box .services-main-content{
    bottom: auto;
    top: 50%;
    transform: translateY(-50%);
    background-color: transparent;
    padding: 10px !important;
    clip-path: none;
    opacity: 1;
  }
  #services-section .services-box .services-main-content .icon, #services-section .services-box .services-main-content .services-description, #services-section .services-box .services-main-content .services-btn {
    display: inline-block;
  }
  #services-section .services-box .services-main-content .services-inner-content:after{
    content: none;
  }
  #services-section .services-box .services-main-content .post-head{
    padding: 0 !important;
  }
  #services-section .services-box .services-main-content .services-inner-content{
    text-align: center;
  }
  #services-section .services-box .services-main-content .services-description,
  #services-section .services-box .services-main-content .post-head{
    overflow: hidden;
    display: -webkit-box !important;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
  }
  .woocommerce-account .woocommerce-form.woocommerce-form-login{
    width: 100%;
  }
  .wishlist_table .product-add-to-cart a{
    padding: 8px 8px !important;
  }
  #footer .footer-widget{
    text-align: center;
  }
  #footer ul li{
    width: 100%;
    text-align: center;
    margin: 0 auto;
    padding: 6px 0;
  }
  #footer ul li::before{
    content: none;
  }
  .single-product .woocommerce-product-gallery__wrapper img{
    width: 100% !important;
    height: auto !important;
  }
  .woocommerce ul.products li{
    width: 100% !important;
  }
  .wpcf7 input[type="text"],
  .wpcf7 input[type="tel"],
  .wpcf7 input[type="email"],
  .wpcf7 textarea {
    width: 100%;
  }
  .ftr-4-box{
    width: 100%;
  }
  .boxlayout{
    width: 270px;
  }
  .admin-bar .page-template-template-home-page .header.sticky-head, .admin-bar .sticky-head{
    top:0;
  }
  .page-template-template-home-page .product-cart .cart-count{
    background: var(--first-theme-color);
    color: #ffffff;
  }
  ul.shop_table.cart.wishlist_table.wishlist_view.responsive.mobile{
    grid-template-columns: 100%;
  }
  .sidenav .close-button{
    margin-bottom: 20px !important; 
  }
  .admin-bar .page-template-template-home-page .header.main.sticky-head, .admin-bar .main.sticky-head{
    top: 0;
  }
  tr.wc-block-cart-items__row {
    gap: 0.4em;
  }
  td.wc-block-cart-item__total{
    padding-left: 0px !important;
  }
  li.wc-block-grid__product{
    max-width:100% !important;
    float:none;
  }
  .woocommerce-cart .wp-block-woocommerce-empty-cart-block li.wc-block-grid__product{
    max-width: 100% !important;
    margin: 0 8.8% 2.992em 0;
  }
  .header.main.sticky-head{
    position: static;
    box-shadow:none;
  }
  .header.main.sticky-head{
    position: static;
    transform: none;
  }
  #sidebar{
    margin-top: 30px;
  }
  .copywrap .copywrap-info{
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
  }
  .copywrap .copywrap-info p,
  .copywrap .footer-social {
    flex: 1 1 100%; 
    justify-content: center;
    align-items: center;
  }
  .copywrap .footer-social{
    margin-top: 10px;
  }
}
@media screen and (min-width: 768px) and (max-width: 991px) {
  #banner-cat .banner-bg-img img{
    height: 500px;
  }
  #banner-cat .bannerbox .banner-innr-box{
    width: 100%;
  }
  #banner-cat .bannerbox{
    bottom: 35%;
  }
  #services-section:before{
    height: 400px;
  }
  #services-section .blog-bx .services-title{
    font-size: 26px;
  }
  #services-section .services-main-box {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: repeat(3, 1fr);
    gap: 8px;
  }
  #services-section .services-box .services-main-content .services-description,
  #services-section .services-box .services-main-content .post-head{
    overflow: hidden;
    display: -webkit-box !important;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
  }
  #services-section .services-main-box .services-box:nth-child(1){
    grid-column: span 2 / span 2;
  }
  #services-section .services-main-box .services-box:nth-child(2){
    grid-column: span 2 / span 2;
    grid-column-start: 3;
  }
  #services-section .services-main-box .services-box:nth-child(3){
    grid-column: span 2 / span 2;
    grid-row-start: 2;
  }
  #services-section .services-main-box .services-box:nth-child(4){
    grid-column: span 2 / span 2;
    grid-column-start: 3;
    grid-row-start: 2;
  }
  #services-section .services-main-box .services-box:nth-child(5){
    grid-column: span 2 / span 2;
    grid-column-start: 2;
    grid-row-start: 3;
  }
  #services-section .services-main-box .services-box .post-thumb .service-img-overlay{
    bottom: 0;
    height: 100%;
    width: 100%;
    background-color: var(--second-theme-color);
    opacity: 0.6;
  }
  #services-section .services-box .services-main-content{
    bottom: auto;
    top: 50%;
    transform: translateY(-50%);
    background-color: transparent;
    padding: 10px !important;
    clip-path: none;
    opacity: 1;
  }
  #services-section .services-box .services-main-content .icon, #services-section .services-box .services-main-content .services-description, #services-section .services-box .services-main-content .services-btn {
    display: inline-block;
  }
  #services-section .services-box .services-main-content .services-inner-content:after{
    content: none;
  }
  #services-section .services-box .services-main-content .post-head{
    padding: 0 !important;
  }
  #services-section .services-box .services-main-content .services-inner-content{
    text-align: center;
  }
  .woocommerce-cart .wp-block-woocommerce-empty-cart-block li.wc-block-grid__product{
    max-width: 50% !important;
    margin: 0 1.8% 2.992em 0;
  }
  .toggle-nav button{
    font-size: 15px;
    padding: 5px 25px;
  }
  p.site-title a, h1.site-title a, h1.site-title, p.site-title {
    font-size: 20px;
  }
  .single-product .woocommerce-product-gallery__wrapper img{
    width: 100% !important;
    height: auto !important;
  }
  .is-sticky-on.mobile.sticky-head{
    top: 40px;
  }
  .admin-bar .page-template-template-home-page .header.sticky-head, .admin-bar .sticky-head{
    top: 47px;
  }
  .admin-bar .page-template-template-home-page .header.main.sticky-head, .admin-bar .main.sticky-head{
    top:42px;
  }
  .boxlayout{
    width: 650px;
  }
  .ftr-4-box{
    display: inline-grid;
    float: none;
  }
  tr.wc-block-cart-items__row {
    gap: 1em;
  }
  li.wc-block-grid__product{
    max-width: 48% !important;
    float: left;
    clear: both;
    margin: 0 1% 2.992em;
    flex: 1 0 48% !important;
  }
  .woocommerce ul.products li.product {
    width: 48% !important;
    margin: 0 6px 2.992em;
  }
}
@media screen and (min-width: 992px) and (max-width: 1199px) {
  #banner-cat .bannerbox .banner-innr-box{
    width: 90%;
  }
  #services-section:before{
    height: 440px;
  }
  #services-section .services-box .services-main-content .post-head{
    padding: 12px 12px 12px 95px !important;
  }
  #services-section .services-main-box {
    display: grid;
    grid-template-columns: repeat(8, 1fr);
    grid-template-rows: repeat(3, 1fr);
  } 
  #services-section .services-main-box .services-box:nth-child(1){
    grid-column: span 4 / span 4;
  }
  #services-section .services-main-box .services-box:nth-child(2){
    grid-column: span 4 / span 4;
    grid-column-start: 5;
  }
  #services-section .services-main-box .services-box:nth-child(3){
    grid-column: span 4 / span 4;
    grid-row-start: 2;
  }
  #services-section .services-main-box .services-box:nth-child(4){
    grid-column: span 4 / span 4;
    grid-column-start: 5;
    grid-row-start: 2;
  }
  #services-section .services-main-box .services-box:nth-child(5){
    grid-column: span 4 / span 4;
    grid-column-start: 3;
    grid-row-start: 3;
  }
  .related.products .product-content .product-btn,
  .woocommerce-shop .product-content .product-btn{
    width: 90px;
  }
  .related.products .product-content .product-btn a,
  .woocommerce-shop .product-content .product-btn a{
    font-size: 25px;
    margin-left: 30px;
  }
  .woocommerce-cart .wp-block-woocommerce-empty-cart-block li.wc-block-grid__product{
    max-width: 21.75% !important;
  }
  p.site-title a, h1.site-title a, h1.site-title, p.site-title {
    font-size: 20px;
  }
  .main-nav a, .main-nav .menu-item-has-children > a::after{
    font-size: 12px;
  }
  .main-nav .menu-item-has-children > a::after{
    margin-top: 2px;
  }
  .admin-bar .page-template-template-home-page .header.sticky-head, .admin-bar .sticky-head{
    top: 32px;
  }
  .admin-bar .page-template-template-home-page .header.main.sticky-head, .admin-bar .main.sticky-head{
    top: 30px;
  }
  tr.wc-block-cart-items__row {
    gap: 1em;
  }
}
@media screen and (min-width: 1200px) and (max-width: 1399px){
  #banner-cat .bannerbox .banner-innr-box{
    width: 80%;
  }
  #services-section:before{
    height: 440px;
  }
  #services-section .services-main-box{
    gap: 10px !important;
  }
  p.site-title a, h1.site-title a, h1.site-title, p.site-title {
    font-size: 25px;
  }
}
@media screen and (min-width: 1400px) and (max-width: 1699px){
  #banner-cat .bannerbox .banner-innr-box{
    width: 70%;
  }
  #services-section:before{
    height: 480px;
  }
}
@media screen and (min-width: 1400px){
  .single-product.woocommerce-page div.product div.summary{
    width: 52%;
  }
}
@media screen and (min-width:1600px) and (max-width:1900px){
  .container{
    max-width: 1520px;
  }
}
@media screen and (min-width:1920px) {
  .container{
    max-width: 1620px;
  }
}