/*
Theme Name: Porto Child
Theme URI: https://www.portotheme.com/wordpress/porto
Author: P-THEMES
Author URI: https://www.portotheme.com/
Description: Porto Responsive WordPress + eCommerce Theme.
Version: 1.1
Template: porto
License: Commercial
License URI: http://themeforest.net/licenses/regular_extended
Tags: woocommerce, corporate, ecommerce, responsive, blue, black, green, white, light, dark, red, two-columns, three-columns, four-columns, left-sidebar, right-sidebar, fixed-layout, responsive-layout, custom-menu, editor-style, featured-images, flexible-header, full-width-template, microformats, post-formats, rtl-language-support, sticky-post, theme-options, translation-ready, accessibility-ready
*/

/*************** ADD YOUR CUSTOM CSS HERE  ***************/


body, h1, h2, h3, h4, h5, p
{
	font-family: "sofia-pro", sans-serif!important;
}

#nav-panel .accordion-menu li.menu-item > a, #nav-panel .accordion-menu > li.menu-item > a, #nav-panel .accordion-menu .arrow, #nav-panel .menu-custom-block a, #nav-panel .accordion-menu > li.menu-item > .arrow {

    letter-spacing: 1px;
		font-family: "sofia-pro", sans-serif!important;
	    font-weight: 900;
}
h1, h2, h3, h4, h5, p
{
	letter-spacing:0px;
}

h2, h2 strong
{
	font-weight:900;
}

#header .main-menu > li.menu-item > a, #header .main-menu .narrow li.menu-item > a {
    font-size: 20px;
    font-weight: 900;
    text-transform: none;
    line-height: 20px;
    color: #000000;
      padding: 2px 16px 4px 16px;
}

 #header .main-menu .narrow li.menu-item > a 
{
    line-height: 48px;
}
 #header .main-menu .narrow li.menu-item > a 
{
	   font-size: 17px;
}

.main-content {

    padding-bottom: 7px;
}

.mega-menu.menu-flat-border>li.menu-item>a {
    border-right: 2px solid rgb(223 23 28);
}

.intro-row
{
	margin-top:92px;
	margin-bottom:92px!important;
}
.intro-row 
{
	background:#df171c;
	position:relative;
	z-index:3;
	margin-right:-80px;
	padding:30px;
}


	.intro-row h1, .home h2, h2 {
    font-size: 65px;
    line-height: 70px;
}

.intro-row strong
{
	color:#fff;
}
#header .main-menu>li.menu-item.active>a {
    background-color: initial;
    color: #df171c;
}
.banner-row
{
	background-size:70%;
}

.banner-row {
    background-size: 60% !important;
    background-position: right !important;
}

/*
.intro-row::after {
    content: '';
    position: absolute;
    right: -243px;
    top: 50%;
    transform: translateY(-50%);
    height: 100%;
    width: 33%;
    background-image: url(https://melaineb82.sg-host.com/wp-content/uploads/2024/04/blue-triangle-right.svg);
    background-size: cover;
    background-repeat: no-repeat;
}*/


.intro-row {
    position: relative;
    background-color: #df171c;
    padding: 20px;
    width: 187%;
    height: 100%;
    clip-path: polygon(0 0, calc(100% - 145px) 0, 100% 50%, calc(100% - 145px) 100%, 0 100%);
}

.text-col.right
{
	padding-left:5%;
}

h2 strong
{
	color:#df171c;
}

.vc_general.vc_btn3, .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern, .vc_btn3.vc_btn3-color-grey.vc_btn3-style-flat, .vc_btn3.vc_btn3-color-grey.vc_btn3-style-3d, .vc_btn3.vc_btn3-color-grey.vc_btn3-style-outline, .vc_general.vc_btn3:hover {
    border-color: #000;
    color: #fff!important;
    border: solid 3px #000;
    padding: 4px 30px;
    border-radius: 0px;
    background-color: transparent!important;
    font-size: 20px;
	letter-spacing:1.5px;
	padding-top:2px;
	font-weight:900;
}

.red .vc_general.vc_btn3
{
	   border: solid 3px #df171c;
}

.red.black .vc_general.vc_btn3
{
	color:#000!important;
}

.vc_general.vc_btn3
{
	text-transform:uppercase;
}

#footer {
    background-color: #df171c;
	padding-top:62px;
	color:#fff;
}

.servicespage strong
{
	color:#000;
}

#header .main-menu > li.menu-item.active:hover > a, #header .main-menu > li.menu-item:hover > a {
    background-color: transparent;
    color: #df171c;
}

.legals p, .legals a
{
	font-size:12px;
	line-height:18px;
	    color: #ffffffa6!important;
	    letter-spacing: 1px;
}

.red-row
{
	margin-top:-70px;
	background: rgb(223,23,16);
background: linear-gradient(180deg, rgba(223,23,16,1) 0%, rgba(223,23,28,1) 71%, rgba(255,255,255,0) 71%, rgba(255,252,252,0) 100%);
	    padding-bottom: 52px;
}

.home .red-row
{

	    padding-bottom: 0px;
}

.high-z
{
	position:relative;
	z-index:5;
}

.whitebold strong
{
	color:#fff;
}

.white p, .white h1, .white h2, .white li
{
	color:#fff;
}

#footer h3
{
	font-size:36px;
}

.custom-html .vc_btn3-container 
{
    margin-top: 20px;
	
}


.custom-html .vc_btn3-container  a, .custom-html .vc_btn3-container  a:hover
{
	color:#000!important;
	font-weight:900;
	font-size: 18px;
}

.red .vc_general.vc_btn3:hover {
   color:#df171c;
}

.porto-ibanner-desc {
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.5522584033613445) 0%, rgba(0, 0, 0, 0.2189250700280112) 82%, rgba(0, 0, 0, 0) 100%, rgba(0, 0, 0, 0) 100%);
}

.porto-ibanner .porto-ibanner-desc {
    padding: 35px;
    top: auto;
    height: auto;
    bottom: 0;
}

.porto-ibanner-desc h3
{
	color:#fff;
}

.desc {
    max-height: 0;
    overflow: hidden;
    transition: max-height .8s;
}
.porto-ibanner-desc a, .porto-ibanner-desc a:hover {
    color: #ffffff;
    background-color: transparent;
    border-radius: 0px;
    text-transform: none;
    border: 0px;
    border-bottom: solid #ffffff 1px;
    font-size: 14px;
    padding: 0px;
    letter-spacing: 1px;
    font-weight: 400;
}
.home-banner .porto-ibanner:hover .desc {
    max-height: 300px;
}

.home-banner p { letter-spacing: -0.05em; }
.home-banner .porto-ibanner { cursor: default; }
.home-banner .porto-ibanner-content { text-align: left; font-size: 1em; font-weight: 600; }
.home-banner .porto-ibanner-desc { padding: 35px; top: auto; height: auto; bottom: 0; }
.home-banner .porto-ibanner-content h3 { color: #fff; font-size: 25px; font-weight: 700; line-height: 1.4; margin-bottom: 10px; }
.home-banner .porto-ibanner-content h6 { color: rgba(255, 255, 255, .8); font-weight: 300; margin-bottom: 5px; }
.home-banner .btn { margin-top: 1rem; }
.home-banner .desc { max-height: 0; overflow: hidden; transition: max-height .8s; }
.home-banner .porto-ibanner:hover .desc { max-height: 300px; }

.porto-ibanner-content
{
	text-align:center!important;
}

div.vc_gitem-zone 
{
	background-color: #df171c !important;
}

.vc_gitem-zone-mini h3 {
    color: #fff;
    font-size: 25px !important;
    text-transform: uppercase;
    font-weight: 300;
}


.vc_btn3.vc_btn3-color-juicy-pink, .vc_btn3.vc_btn3-color-juicy-pink.vc_btn3-style-flat {
    color: #fff;
    background-color: transparent;
    border: solid 2px white;
    border-radius: 0px;
    text-transform: uppercase;
    padding-top: 5px;
}

.vc_gitem-zone
{
	padding:10px;
}

.red-black .vc_btn3.vc_btn3-color-grey
{
	    color: #000;
    border: solid 3px #df171c;
}

.blog-posts .post .entry-title {
    font-size: 2.5em;
}

 article.post-title-simple .entry-title a:not(:hover) {
    color: #df171c;
}


.contactblock p {
    display: flex;
      align-items: flex-start;
	color:#fff;
	    font-weight: 900;
}
.contactblock img
{
	margin-right:10px;
}


.bg-pic
{
	min-height:350px;
}


.page-id-21 .main-content 
{
    padding-bottom: 0px;
}

.text-sm {
    font-size: 18px!important;
}

.page-id-21 h2, .page-id-21 h4
{
	
}
.page-id-21 h2, .servicespage h2
{
    font-size: 45px;
    line-height: 50px;
	
}

.servicespage h2
{
	color:#000;
}
.nf-form-fields-required
{
	display:none;
}
.nf-form-content button, .nf-form-content input[type=button], .nf-form-content input[type=submit] {
    background: #df171c!important;

}

.btn-default.btn
{
    border: solid 3px #df171c;
    color: #000;
    font-weight: 900;
    font-size: 18px!important;
}


#header .mobile-toggle {
    color: #ffffff;
    background-color: #df171c;
    border-radius: 0px;
    border: 2px solid #df171c;
}

.footer .share-links a, .footer-top .share-links a {
    background: #ffffff;
    color: #df171c;
    border-radius: 50%;
	  font-size: 16px;
}

.footer .share-links a:not(:hover), .footer-top .share-links a:not(:hover) {
    background: #ffffff;
    color: #df171c;
    font-size: 16px;
}

.share-links
{
    text-align: center;
}

.flexcont
{
display: flex;
    justify-content: flex-start; 
    align-items: center;
}


.flexcont .wpb_wrapper
{
display: flex;
    justify-content: flex-start; 
    align-items: center;
}

.flexcont p
{
padding-left:15px!important;
}
.redbold strong {
    color: #df1713;
}

.building-row h2
{
    font-size: 38px;
    line-height: 44px;
}



@media only screen and (max-width: 1369px)
{
	.header-row.container
	{
		max-width:100%;
	}
}



@media only screen and (max-width: 1097px)
{
	#header .main-menu > li.menu-item > a {
    font-size: 17px;
    padding: 2px 12px 4px 12px;
}
.intro-row h1, .home h2 {
    font-size: 47px;
    line-height: 51px;
}
	
	.intro-row {
    width: 232%;
  
}
}


@media only screen and (max-width: 767px)
{
.home-banner .porto-ibanner-content h3 {
    color: #fff;
    font-size: 40px;
    line-height: 45px;
  
}
	
	.banner-col1, .banner-col2
	{
		width:48%;
	}
	
	.banner-row
	{
	background-image: url(https://www.jgpmaintenance.co.uk/wp-content/uploads/2024/07/AdobeStock_432792582.jpg?id=26) !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
}
	
	.banner-col2
	{
		display:none!important;
	}
	
		.banner-col1 .wpb_text_column
	{
		padding-right:60px;
	}
.intro-row {

    background-color: #df171cb0;
	}
	
	.hide767
	{
		display:none!important;
	}
	
	.porto-ibanner > img {

    height: 275px;
	}
	
	.vc-gitem-zone-height-mode-auto
	{
		  height: 275px;
	}
	
	.left-mob
	{
		text-align:left!important;
	}
	
	.vc_btn3.vc_btn3-color-grey, .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern, .vc_btn3.vc_btn3-color-grey.vc_btn3-style-flat, .vc_btn3.vc_btn3-color-grey.vc_btn3-style-3d, .vc_btn3.vc_btn3-color-grey.vc_btn3-style-outline, .vc_btn3.vc_btn3-color-grey:hover {

    font-size: 14px;
 
}
	.large-offset
	{
		height:38px!important;
	}
	
.share-links
{
	padding-left:initial;
}
	
}


@media only screen and (max-width: 480px)
{
.custom-html .vc_btn3-container {

    display: none;
}
	
	    .intro-row {
        width: 251%;
    }
	
	    .intro-row h1, .home h2, h2 {
        font-size: 39px;
        line-height: 44px;
    }
	
	    .home-banner .porto-ibanner-content h3 {
       
        font-size: 32px;
        line-height: 34px;
    }
	
.servicespage h2 {
    font-size: 37px;
    line-height: 43px;
}
}

#nav-panel .accordion-menu .arrow {
text-align: right;
width: 100%!important;
}

#side-nav-panel .accordion-menu .arrow {
right: 5px;
width: 100%;
text-align: right;
float: right;
}

.servicespage strong {
    color: #fff;
}

.footer .share-links {
    text-align: left;
}