.ct-section {
width:100%;
background-size:cover;
background-repeat:repeat;
}
.ct-section>.ct-section-inner-wrap {
display:flex;
flex-direction:column;
align-items:flex-start;
}
.ct-div-block {
display:flex;
flex-wrap:nowrap;
flex-direction:column;
align-items:flex-start;
}
.ct-new-columns {
display:flex;
width:100%;
flex-direction:row;
align-items:stretch;
justify-content:center;
flex-wrap:wrap;
}
.ct-link-text {
display:inline-block;
}
.ct-link {
display:flex;
flex-wrap:wrap;
text-align:center;
text-decoration:none;
flex-direction:column;
align-items:center;
justify-content:center;
}
.ct-link-button {
display:inline-block;
text-align:center;
text-decoration:none;
}
.ct-link-button {
background-color: #1e73be;
border: 1px solid #1e73be;
color: #ffffff;
padding: 10px 16px;
}
.ct-image {
max-width:100%;
}
.ct-fancy-icon>svg {
width:55px;height:55px;}
.ct-inner-content {
width:100%;
}
.ct-slide {
display:flex;
flex-wrap:wrap;
text-align:center;
flex-direction:column;
align-items:center;
justify-content:center;
}
.ct-nestable-shortcode {
display:flex;
flex-wrap:nowrap;
flex-direction:column;
align-items:flex-start;
}
.oxy-comments {
width:100%;
text-align:left;
}
.oxy-comment-form {
width:100%;
}
.oxy-login-form {
width:100%;
}
.oxy-search-form {
width:100%;
}
.oxy-tabs-contents {
display:flex;
width:100%;
flex-wrap:nowrap;
flex-direction:column;
align-items:flex-start;
}
.oxy-tab {
display:flex;
flex-wrap:nowrap;
flex-direction:column;
align-items:flex-start;
}
.oxy-tab-content {
display:flex;
width:100%;
flex-wrap:nowrap;
flex-direction:column;
align-items:flex-start;
}
.oxy-testimonial {
width:100%;
}
.oxy-icon-box {
width:100%;
}
.oxy-pricing-box {
width:100%;
}
.oxy-posts-grid {
width:100%;
}
.oxy-gallery {
width:100%;
}
.ct-slider {
width:100%;
}
.oxy-tabs {
display:flex;
flex-wrap:nowrap;
flex-direction:row;
align-items:stretch;
}
.ct-modal {
flex-direction:column;
align-items:flex-start;
}
.ct-span {
display:inline-block;
text-decoration:inherit;
}
.ct-widget {
width:100%;
}
.oxy-dynamic-list {
width:100%;
}
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
			.ct-div-block,
			.oxy-post-content,
			.ct-text-block,
			.ct-headline,
			.oxy-rich-text,
			.ct-link-text { max-width: 100%; }
			img { flex-shrink: 0; }
			body * { min-height: 1px; }
		}            .oxy-testimonial {
                flex-direction: row;
                align-items: center;
            }
                        .oxy-testimonial .oxy-testimonial-photo-wrap {
                order: 1;
            }
            
                        .oxy-testimonial .oxy-testimonial-photo {
                width: 125px;                height: 125px;                margin-right: 20px;
            }
            
                        .oxy-testimonial .oxy-testimonial-photo-wrap, 
            .oxy-testimonial .oxy-testimonial-author-wrap, 
            .oxy-testimonial .oxy-testimonial-content-wrap {
                align-items: flex-start;                text-align: left;            }
            
                                                            .oxy-testimonial .oxy-testimonial-text {
                margin-bottom:8px;font-size: 21px;
line-height: 1.4;
-webkit-font-smoothing: subpixel-antialiased;
            }
            
                                    .oxy-testimonial .oxy-testimonial-author {
                font-size: 18px;
-webkit-font-smoothing: subpixel-antialiased;
            }
                            

                                                .oxy-testimonial .oxy-testimonial-author-info {
                font-size: 12px;
-webkit-font-smoothing: subpixel-antialiased;
            }
            
             
            
                        .oxy-icon-box {
                text-align: left;                flex-direction: column;            }
            
                        .oxy-icon-box .oxy-icon-box-icon {
                margin-bottom: 12px;
                align-self: flex-start;            }
            
                                                                        .oxy-icon-box .oxy-icon-box-heading {
                font-size: 21px;
margin-bottom: 12px;            }
            
                                                                                    .oxy-icon-box .oxy-icon-box-text {
                font-size: 16px;
margin-bottom: 12px;align-self: flex-start;            }
            
                        .oxy-icon-box .oxy-icon-box-link {
                margin-top: 20px;                            }
            
            
            /* GLOBALS */

                                                            .oxy-pricing-box .oxy-pricing-box-section {
                padding-top: 20px;
padding-left: 20px;
padding-right: 20px;
padding-bottom: 20px;
text-align: center;            }
                        
                        .oxy-pricing-box .oxy-pricing-box-section.oxy-pricing-box-price {
                justify-content: center;            }
            
            /* IMAGE */
                                                                                    .oxy-pricing-box .oxy-pricing-box-section.oxy-pricing-box-graphic {
                justify-content: center;            }
            
            /* TITLE */
                                                            
                                    .oxy-pricing-box .oxy-pricing-box-title-title {
                font-size: 48px;
            }
            
                                    .oxy-pricing-box .oxy-pricing-box-title-subtitle {
                font-size: 24px;
            }
            

            /* PRICE */
                                                .oxy-pricing-box .oxy-pricing-box-section.oxy-pricing-box-price {
                                                flex-direction: row;                                            }
            
                                    .oxy-pricing-box .oxy-pricing-box-currency {
                font-size: 28px;
            }
            
                                    .oxy-pricing-box .oxy-pricing-box-amount-main {
                font-size: 80px;
line-height: 0.7;
            }
            
                                    .oxy-pricing-box .oxy-pricing-box-amount-decimal {
                font-size: 13px;
            }
                        
                                    .oxy-pricing-box .oxy-pricing-box-term {
                font-size: 16px;
            }
            
                                    .oxy-pricing-box .oxy-pricing-box-sale-price {
                font-size: 12px;
color: rgba(0,0,0,0.5);
                margin-bottom: 20px;            }
            
            /* CONTENT */

                                                                        .oxy-pricing-box .oxy-pricing-box-section.oxy-pricing-box-content {
                font-size: 16px;
color: rgba(0,0,0,0.5);
            }
            
            /* CTA */

                                                                        .oxy-pricing-box .oxy-pricing-box-section.oxy-pricing-box-cta {
                justify-content: center;            }
            
        
                                .oxy-progress-bar .oxy-progress-bar-background {
            background-color: #000000;            background-image: linear-gradient(-45deg,rgba(255,255,255,.12) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.12) 50%,rgba(255,255,255,.12) 75%,transparent 75%,transparent);            animation: none 0s paused;        }
                
                .oxy-progress-bar .oxy-progress-bar-progress-wrap {
            width: 85%;        }
        
                                                        .oxy-progress-bar .oxy-progress-bar-progress {
            background-color: #66aaff;padding: 40px;animation: none 0s paused, none 0s paused;            background-image: linear-gradient(-45deg,rgba(255,255,255,.12) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.12) 50%,rgba(255,255,255,.12) 75%,transparent 75%,transparent);        
        }
                
                        .oxy-progress-bar .oxy-progress-bar-overlay-text {
            font-size: 30px;
font-weight: 900;
-webkit-font-smoothing: subpixel-antialiased;
        }
        
                        .oxy-progress-bar .oxy-progress-bar-overlay-percent {
            font-size: 12px;
        }
        
        .ct-slider .unslider-nav ol li {border-color: #ffffff; }.ct-slider .unslider-nav ol li.unslider-active {background-color: #ffffff; }.ct-slider .ct-slide {
				padding: 0px;			}
		
                        .oxy-superbox .oxy-superbox-secondary, 
            .oxy-superbox .oxy-superbox-primary {
                transition-duration: 0.5s;            }
            
            
            
            
            
        
        
        
        
            .oxy-shape-divider {
                width: 0px;
                height: 0px;
                
            }
            
            .oxy_shape_divider svg {
                width: 100%;
            }
            .oxy-pro-menu .oxy-pro-menu-container:not(.oxy-pro-menu-open-container):not(.oxy-pro-menu-off-canvas-container) .sub-menu{
box-shadow:px px px px ;}

.oxy-pro-menu .oxy-pro-menu-show-dropdown .oxy-pro-menu-list .menu-item-has-children > a svg{
transition-duration:0.4s;
}

.oxy-pro-menu .oxy-pro-menu-show-dropdown .oxy-pro-menu-list .menu-item-has-children > a div{
margin-left:0px;
}

.oxy-pro-menu .oxy-pro-menu-mobile-open-icon svg{
width:30px;
height:30px;
}

.oxy-pro-menu .oxy-pro-menu-mobile-open-icon{
padding-top:15px;
padding-right:15px;
padding-bottom:15px;
padding-left:15px;
}

.oxy-pro-menu .oxy-pro-menu-mobile-open-icon, .oxy-pro-menu .oxy-pro-menu-mobile-open-icon svg{
transition-duration:0.4s;
}

.oxy-pro-menu .oxy-pro-menu-mobile-close-icon{
top:20px;
left:20px;
}

.oxy-pro-menu .oxy-pro-menu-mobile-close-icon svg{
width:24px;
height:24px;
}

.oxy-pro-menu .oxy-pro-menu-mobile-close-icon, .oxy-pro-menu .oxy-pro-menu-mobile-close-icon svg{
transition-duration:0.4s;
}

.oxy-pro-menu .oxy-pro-menu-container.oxy-pro-menu-off-canvas-container, .oxy-pro-menu .oxy-pro-menu-container.oxy-pro-menu-open-container{
background-color:#ffffff;
}

.oxy-pro-menu .oxy-pro-menu-off-canvas-container, .oxy-pro-menu .oxy-pro-menu-open-container{
background-image:url();
}

.oxy-pro-menu .oxy-pro-menu-off-canvas-container .oxy-pro-menu-list .menu-item-has-children > a svg, .oxy-pro-menu .oxy-pro-menu-open-container .oxy-pro-menu-list .menu-item-has-children > a svg{
font-size:24px;
}

.oxy-pro-menu .oxy-pro-menu-dropdown-links-toggle.oxy-pro-menu-open-container .menu-item-has-children ul, .oxy-pro-menu .oxy-pro-menu-dropdown-links-toggle.oxy-pro-menu-off-canvas-container .menu-item-has-children ul{
background-color:rgba(0,0,0,0.2);
border-top-style:solid;
}

.oxy-pro-menu .oxy-pro-menu-container:not(.oxy-pro-menu-open-container):not(.oxy-pro-menu-off-canvas-container) .oxy-pro-menu-list{
                    flex-direction: row;
               }
.oxy-pro-menu .oxy-pro-menu-container .menu-item a{
                    text-align: left;
                    justify-content: flex-start;
                }
.oxy-pro-menu .oxy-pro-menu-container.oxy-pro-menu-open-container .menu-item, .oxy-pro-menu .oxy-pro-menu-container.oxy-pro-menu-off-canvas-container .menu-item{
                    align-items: flex-start;
                }

            .oxy-pro-menu .oxy-pro-menu-off-canvas-container{
                    top: 0;
                    bottom: 0;
                    right: auto;
                    left: 0;
               }
.oxy-pro-menu .oxy-pro-menu-container.oxy-pro-menu-open-container .oxy-pro-menu-list .menu-item a, .oxy-pro-menu .oxy-pro-menu-container.oxy-pro-menu-off-canvas-container .oxy-pro-menu-list .menu-item a{
                    text-align: left;
                    justify-content: flex-start;
                }

            .oxy-site-navigation {
--oxynav-brand-color:#4831B0;
--oxynav-neutral-color:#FFFFFF;
--oxynav-activehover-color:#EFEDF4;
--oxynav-background-color:#4831B0;
--oxynav-border-radius:0px;
--oxynav-other-spacing:8px;
--oxynav-transition-duration:0.3s;
--oxynav-transition-timing-function:cubic-bezier(.84,.05,.31,.93);
}

.oxy-site-navigation .oxy-site-navigation__mobile-close-wrapper{
text-align:left;
}

.oxy-site-navigation > ul{ left: 0; }
.oxy-site-navigation {
                        --oxynav-animation-name: none; 
                    }

                .oxy-site-navigation > ul:not(.open) > li[data-cta='true']:nth-last-child(1){ 
                    background-color: var(--oxynav-brand-color);
                    transition: var(--oxynav-transition-duration);
                    margin-left: var(--oxynav-other-spacing);
                    border: none;
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true']:nth-last-child(2){ 
                    background: transparent;
                    border: 1px solid currentColor;
                    transition: var(--oxynav-transition-duration);
                    margin-left: var(--oxynav-other-spacing);
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true']:nth-last-child(2):not(:hover) > img{
                    filter: invert(0) !important;
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true']:hover{
                    background-color: var(--oxynav-activehover-color);
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true']:nth-last-child(1) > a{
                    color: var(--oxynav-neutral-color);
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true']:nth-last-child(2) > a{
                    color: var(--oxynav-brand-color);
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true']:hover > a{
                    color: var(--oxynav-brand-color);
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true']:nth-last-child(1) > a::after{
                    color: var(--oxynav-neutral-color);   
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true']:nth-last-child(2) > a::after{
                    color: var(--oxynav-brand-color);   
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true']:hover > a::after{
                    color: var(--oxynav-brand-color);   
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true'] > ul{
                    display: none;
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true'] > button, .oxy-site-navigation > ul:not(.open) > li[data-cta='true'] > ul{
                    display: none;
                }

                .ct-section-inner-wrap, .oxy-header-container{
  max-width: 1120px;
}
body {font-family: 'Montserrat';}body {line-height: 1.6;font-size: 16px;font-weight: 400;color: #404040;}.oxy-nav-menu-hamburger-line {background-color: #404040;}h1, h2, h3, h4, h5, h6 {font-family: 'Montserrat';font-size: 36px;font-weight: 700;}h2, h3, h4, h5, h6{font-size: 30px;}h3, h4, h5, h6{font-size: 28px;}h4, h5, h6{font-size: 20px;}h5, h6{font-size: 18px;}h6{font-size: 16px;}a {color: #0074db;text-decoration: none;}a:hover {text-decoration: none;}.ct-link-text {text-decoration: ;}.ct-link {text-decoration: ;}.ct-link-button {border-radius: 0px;}.ct-section-inner-wrap {
padding-top: 75px;
padding-right: 20px;
padding-bottom: 75px;
padding-left: 20px;
}.ct-new-columns > .ct-div-block {
padding-top: 20px;
padding-right: 20px;
padding-bottom: 20px;
padding-left: 20px;
}.oxy-header-container {
padding-right: 20px;
padding-left: 20px;
}@media (max-width: 992px) {
				.ct-columns-inner-wrap {
					display: block !important;
				}
				.ct-columns-inner-wrap:after {
					display: table;
					clear: both;
					content: "";
				}
				.ct-column {
					width: 100% !important;
					margin: 0 !important;
				}
				.ct-columns-inner-wrap {
					margin: 0 !important;
				}
			}
.atomic-logo:hover{
 opacity:1;
}
.atomic-logo {
 opacity:0.8;
 transition-duration:0.5s;
 transition-timing-function:ease;
 transition-property:all;
}
.atomic-footer-1-column {
}
.atomic-footer-1-column:not(.ct-section):not(.oxy-easy-posts),
.atomic-footer-1-column.oxy-easy-posts .oxy-posts,
.atomic-footer-1-column.ct-section .ct-section-inner-wrap{
display:flex;
flex-direction:column;
justify-content:center;
}
@media (max-width: 767px) {
.atomic-footer-1-column {
 text-align:center;
}
.atomic-footer-1-column:not(.ct-section):not(.oxy-easy-posts),
.atomic-footer-1-column.oxy-easy-posts .oxy-posts,
.atomic-footer-1-column.ct-section .ct-section-inner-wrap{
display:flex;
flex-direction:column;
align-items:center;
}
}

.pc-header {
}
.pc-header .ct-section-inner-wrap {
padding-bottom: 52px;
}
.pc-header:not(.ct-section):not(.oxy-easy-posts),
.pc-header.oxy-easy-posts .oxy-posts,
.pc-header.ct-section .ct-section-inner-wrap{
display:flex;
flex-direction:row;
align-items:center;
}
@media (max-width: 1120px) {
.pc-header {
 background-color:#e73315;
}
}

.pc-header-inner {
 width:100%;
 height:100%;
 padding-top:0px;
 padding-right:0px;
 padding-bottom:0px;
 padding-left:0px;
 text-align:center;
 margin-left:0px;
 margin-top:0px;
 margin-right:0px;
 margin-bottom:0px;
}
.pc-header-inner:not(.ct-section):not(.oxy-easy-posts),
.pc-header-inner.oxy-easy-posts .oxy-posts,
.pc-header-inner.ct-section .ct-section-inner-wrap{
display:flex;
flex-direction:row;
align-items:center;
justify-content:flex-start;
}
@media (max-width: 1120px) {
.pc-header-inner {
 background-color:#dd2727;
 padding-left:0px;
 padding-right:0px;
}
}

@media (max-width: 991px) {
.pc-header-inner {
 text-align:center;
}
.pc-header-inner:not(.ct-section):not(.oxy-easy-posts),
.pc-header-inner.oxy-easy-posts .oxy-posts,
.pc-header-inner.ct-section .ct-section-inner-wrap{
justify-content:space-between;
}
}

.pc-main-menu {
 font-family:'Montserrat';
 margin-top:0px;
 margin-left:0px;
 font-weight:600;
 color:#e73315;
}
.pc-main-menu:not(.ct-section):not(.oxy-easy-posts),
.pc-main-menu.oxy-easy-posts .oxy-posts,
.pc-main-menu.ct-section .ct-section-inner-wrap{
display:flex;
align-content:center;
justify-content:space-between;
}
.pc-main-menu .oxy-pro-menu-list .menu-item, .pc-main-menu .oxy-pro-menu-list .menu-item a{
font-family: 'Montserrat';
color: #22356a;
font-size: 14px;
font-weight: 500;
}

.pc-main-menu .oxy-pro-menu-list .menu-item.menu-item.menu-item.menu-item a:hover, .pc-main-menu .oxy-pro-menu-list .menu-item.menu-item.menu-item.menu-item a:focus-within{
color:#e73315;
background-color:#d8d8d8;
}

@media (max-width: 1120px) {
.pc-main-menu {
 background-color:#ffffff;
}
}

.pc-header-logo {
 margin-right:0px;
 height:80px;
}
.rru-hero-slider {
 slider-remove-padding:yes;
 slider-stretch-slides:yes;
 slider-dots-overlay:yes;
 min-height:70vh;
}
            .rru-hero-slider .unslider {
				padding: 0px;
			}
			.rru-hero-slider .unslider-wrap.unslider-carousel > li {
				padding: 0px;
			}
			.rru-hero-slider .unslider-arrow.next {
				right: 10px;
				z-index: 100;
			}
			.rru-hero-slider .unslider-arrow.prev {
				left: 10px;
				z-index: 100;
			}
        			.rru-hero-slider .unslider .unslider-nav {
			    position: absolute;
			    bottom: 0;
			    left: 0;
			    right: 0;
			    z-index: 100;
			}
					.rru-hero-slider .unslider-wrap {
				display: flex;
			}
			.rru-hero-slider .ct-slide {
				height: 100%;
			}
			.rru-hero-slider .unslider, 
			.rru-hero-slider .oxygen-unslider-container, 
			.rru-hero-slider .unslider-wrap, 
			.rru-hero-slider .unslider-wrap li {
				height: 100%;
			}
		.linkwrapper:hover{
 background-color:#f46413;
}
.linkwrapper {
transform:; width:20%;
 background-color:#ffffff;
 margin-left:0px;
 margin-right:0px;
 height:100%;
 transition-duration:0.8s;
 border-left-color:#dddddd;
 border-left-width:1px;
 border-left-style:solid;
}
.MenuText:hover{
 color:#ffffff;
 font-weight:600;
}
.MenuText {
 font-family:'Montserrat';
 font-weight:600;
 color:#f46413;
 width:100%;
 height:100%;
 border-left-style:solid;
 border-left-color:#f4f4f4;
 border-left-width:1px;
flex: 1 1 0; height: 100%; display: flex !important; align-items: center !important; justify-content: center !important; text-align: center; box-sizing: border-box; padding: 0 12px;
}
.maindiv {
 width:30%;
 margin-right:20px;
 margin-left:20px;
 height:660px;
}
.maindiv:not(.ct-section):not(.oxy-easy-posts),
.maindiv.oxy-easy-posts .oxy-posts,
.maindiv.ct-section .ct-section-inner-wrap{
display:flex;
flex-direction:column;
align-items:center;
justify-content:flex-start;
}
@media (max-width: 991px) {
.maindiv {
 width:90%;
 height:660px;
}
}

@media (max-width: 479px) {
.maindiv {
 margin-bottom:40px;
}
}

.pageedit {
 margin-bottom:30px;
}
.plussign {
background-size: contain; width:0px;
 height:0px;
 min-height:0px;
 min-width:0px;
 background-repeat:no-repeat;
 max-height:0px;
 max-width:0px;
 padding-left:20px;
 padding-top:20px;
 padding-right:20px;
 padding-bottom:20px;
}
.cross:hover{
background-image:url(https://www.roofsrusnorthwest.co.uk/wp-content/uploads/2026/07/Crosswhite.webp); background-color:#f46413;
 transition-duration:0.8s;
 width:50px;
 height:50px;
 min-width:50px;
 max-width:50px;
 min-height:50px;
 max-height:50px;
}
.cross {
background-image:url(https://www.roofsrusnorthwest.co.uk/wp-content/uploads/2026/07/Cross2.webp);background-size: contain; background-repeat:no-repeat;
 width:50px;
 height:50px;
 min-width:50px;
 min-height:50px;
 max-width:50px;
 max-height:50px;
}
.newcross:hover{
background-image:url(https://www.roofsrusnorthwest.co.uk/wp-content/uploads/2026/07/Crosswhite.webp); background-color:#f46413;
 transition-duration:0.8s;
}
.newcross {
background-image:url(https://www.roofsrusnorthwest.co.uk/wp-content/uploads/2026/07/Cross2.webp);background-size: contain; width:60px;
 height:60px;
 min-width:60px;
 min-height:60px;
 max-width:60px;
 max-height:60px;
 transition-duration:0.5s;
 box-shadow:1px 1px 4px 4px rgba(34,53,106,0.08);
}
.rru-projects-grid {
}
.rru-project-card {
background-image:url(https://www.roofsrusnorthwest.co.uk/wp-content/uploads/2026/07/Roof-Installation.webp); padding-left:0px;
 padding-top:0px;
 padding-right:0px;
 padding-bottom:0px;
}
.rru-project-overlay {
}
.rru-project-link {
}
.rru-roof-pattern {
 background-color:#22356a;
}
.bigdiv {
background-image:url(https://www.roofsrusnorthwest.co.uk/wp-content/uploads/2026/07/New-roof-added-in-Southport.webp);background-size: cover; width:50%;
 height:75vh;
 margin-left:0px;
 background-position:50% 0%;
}
.bigdiv:not(.ct-section):not(.oxy-easy-posts),
.bigdiv.oxy-easy-posts .oxy-posts,
.bigdiv.ct-section .ct-section-inner-wrap{
display:flex;
flex-direction:column;
align-items:center;
}
@media (max-width: 1120px) {
.bigdiv {
 height:60vh;
}
}

@media (max-width: 991px) {
.bigdiv {
 width:100%;
 height:80vh;
}
}

@media (max-width: 767px) {
.bigdiv {
 height:60vh;
}
}

@media (max-width: 479px) {
.bigdiv {
 height:60vh;
}
}

.toggle-4860 {
 margin-bottom:10px;
}

        
                .toggle-4860 .oxy-expand-collapse-icon::before,
        .toggle-4860 .oxy-expand-collapse-icon::after {
            background-color: #f46413;        }
        
        .toggle-4860-expanded {
}
.rru-project-label {
}
.toggle-2555 {
}
.toggle-2555-expanded {
}
.rru-accordion {
}
@media (max-width: 767px) {
.rru-accordion {
}
.rru-accordion:not(.ct-section):not(.oxy-easy-posts),
.rru-accordion.oxy-easy-posts .oxy-posts,
.rru-accordion.ct-section .ct-section-inner-wrap{
display:flex;
flex-direction:column;
}
}

.rru-acc-panel {
 margin-bottom:20px;
}
.toggle-3014 {
}
.toggle-3014-expanded {
}
.toggle-9712 {
}
.toggle-9712-expanded {
}
.toggle-7700 {
 padding-bottom:18px;
}
.toggle-7700-expanded {
}
.quote {
 margin-top:20px;
 width:100%;
}
.quote:not(.ct-section):not(.oxy-easy-posts),
.quote.oxy-easy-posts .oxy-posts,
.quote.ct-section .ct-section-inner-wrap{
display:flex;
flex-direction:column;
align-items:center;
}
.rru-contact-form {
 padding-bottom:0px;
 padding-top:0px;
}
.orange-bullets {
}
.rooficons {
 width:200px;
}
.toggle-4224 {
 margin-bottom:20px;
 margin-top:20px;
}
.toggle-4224-expanded {
}
.tile-toggle {
 transition-duration:0.8s;
 transition-delay:0.4s;
}

        
                .tile-toggle .oxy-expand-collapse-icon::before,
        .tile-toggle .oxy-expand-collapse-icon::after {
            background-color: #ffffff;        }
        
        .roof-hero-offset {
background-size: 80% 100%; background-repeat:no-repeat;
}
.roof-hero-offset:not(.ct-section):not(.oxy-easy-posts),
.roof-hero-offset.oxy-easy-posts .oxy-posts,
.roof-hero-offset.ct-section .ct-section-inner-wrap{
display:flex;
}
.picdiiv {
 height:100%;
 border-bottom-style:solid;
 border-bottom-color:#f46413;
 border-bottom-width:6px;
 padding-top:0px;
 padding-right:0px;
 padding-bottom:0px;
 padding-left:0px;
 width:100%;
}
.picdiiv:not(.ct-section):not(.oxy-easy-posts),
.picdiiv.oxy-easy-posts .oxy-posts,
.picdiiv.ct-section .ct-section-inner-wrap{
display:flex;
flex-direction:column;
align-items:center;
justify-content:flex-start;
}
@media (max-width: 1120px) {
.picdiiv {
 width:98%;
}
}

.textdiv {
 width:100%;
 height:100%;
 padding-left:30px;
 padding-top:20px;
 padding-right:30px;
 padding-bottom:20px;
}
.textdiv:not(.ct-section):not(.oxy-easy-posts),
.textdiv.oxy-easy-posts .oxy-posts,
.textdiv.ct-section .ct-section-inner-wrap{
display:flex;
flex-direction:column;
align-items:center;
}
@media (max-width: 1120px) {
.textdiv {
 padding-left:15px;
 padding-right:15px;
 padding-top:15px;
 padding-bottom:15px;
}
.textdiv:not(.ct-section):not(.oxy-easy-posts),
.textdiv.oxy-easy-posts .oxy-posts,
.textdiv.ct-section .ct-section-inner-wrap{
justify-content:flex-start;
}
}

@media (max-width: 767px) {
.textdiv {
 padding-top:0px;
}
}

.patio {
 height:820px;
 padding-left:0px;
 padding-top:0px;
 padding-right:0px;
 padding-bottom:0px;
 border-bottom-style:solid;
 border-bottom-color:#f46413;
 border-bottom-width:6px;
 background-color:#ffffff;
}
.patio:not(.ct-section):not(.oxy-easy-posts),
.patio.oxy-easy-posts .oxy-posts,
.patio.ct-section .ct-section-inner-wrap{
display:flex;
flex-direction:column;
align-items:center;
}
@media (max-width: 1120px) {
.patio {
 margin-bottom:20px;
}
}

@media (max-width: 991px) {
.patio {
 height:900px;
}
}

@media (max-width: 479px) {
.patio {
 height:700px;
}
}

.oxy-close-modal:hover{
background-color :#ffffff;
border: 1px solid #ffffff;
}.oxy-close-modal:hover{
}
.oxy-close-modal {
background-color :#f46413;
border: 1px solid #f46413;
color: #22356a;
padding: 10px 16px;
}.oxy-close-modal {
 font-family:Montserrat;
 margin-bottom:20px;
 button-hover_color:#ffffff;
 font-weight:700;
}
.rru-desktop-menu {
}
.rru-mobile-menu {
}
/* ================================
   HEADER CLS FIX
   Prevents header/top bar changing height after font load
   ================================ */
/* ================================
   TOP CONTACT BAR CLS FIX
   Prevents phone/email bar changing height after font load
   ================================ */

/* Main top contact bar */
#div_block-84-10 {
  height: 40px !important;
  min-height: 40px !important;
  max-height: 40px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  overflow: hidden !important;
}

/* Phone block */
#div_block-87-10 {
  min-height: 28px !important;
  display: flex !important;
  align-items: center !important;
}

/* Email block */
#div_block-91-10 {
  min-height: 28px !important;
  display: flex !important;
  align-items: center !important;
}

/* Phone/email text */
#headline-89-10,
#headline-93-10,
#headline-94-10 {
  line-height: 1.2 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* Top bar icons */
#fancy_icon-88-10,
#fancy_icon-92-10 {
  flex-shrink: 0 !important;
}

/* Mobile top bar */
@media (max-width: 767px) {
  #div_block-84-10 {
    height: 60px !important;
    min-height: 60px !important;
    max-height: 60px !important;
    justify-content: center !important;
  }

  #div_block-87-10,
  #div_block-91-10 {
    min-height: 24px !important;
  }

  
}



/* ================================
   INTRO SECTION CLS FIX
   Fixes layout shift on section-38-12
   ================================ */

#section-38-12 {
  min-height: 330px !important;
  display: flex !important;
  align-items: center !important;
}

#section-38-12 .ct-section-inner-wrap {
  width: 100% !important;
}

#new_columns-94-12 {
  min-height: 260px !important;
  display: flex !important;
  align-items: center !important;
}

#div_block-95-12,
#div_block-96-12 {
  min-height: 260px !important;
}

/* Lock heading line heights so font loading does not resize the section */
#headline-98-12,
#headline-246-12 {
  line-height: 1.2 !important;
  margin-bottom: 0 !important;
}

/* Lock intro paragraph spacing */
#text_block-91-12 {
  line-height: 1.6 !important;
}

/* Mobile/tablet */
@media (max-width: 991px) {
  #section-38-12 {
    min-height: 460px !important;
  }

  #new_columns-94-12,
  #div_block-95-12,
  #div_block-96-12 {
    min-height: auto !important;
  }
}

@media (max-width: 767px) {
  #section-38-12 {
    min-height: 520px !important;
  }
}


/* ================================
   SECTION 38 CLS FIX
   Stabilises intro section under hero
   ================================ */

#section-38-12 {
  min-height: 360px !important;
  display: flex !important;
  align-items: center !important;
}

#section-38-12 .ct-section-inner-wrap {
  width: 100% !important;
}

#new_columns-94-12 {
  min-height: 260px !important;
  display: flex !important;
  align-items: center !important;
}

#div_block-95-12,
#div_block-96-12 {
  min-height: 260px !important;
}

#headline-98-12,
#headline-246-12 {
  line-height: 1.2 !important;
  margin-top: 0 !important;
}

#text_block-91-12 {
  line-height: 1.6 !important;
}

/* Tablet */
@media (max-width: 991px) {
  #section-38-12 {
    min-height: 460px !important;
  }

  #new_columns-94-12,
  #div_block-95-12,
  #div_block-96-12 {
    min-height: auto !important;
  }
}

/* Mobile */
@media (max-width: 767px) {
  #section-38-12 {
    min-height: 540px !important;
  }
}/* ================================
   ROOFS R US - HERO SLIDER FULL CSS
   Slider stability + arrow controls + text stability
   ================================ */

:root {
  --rru-slider-arrow-size: 80px;
  --rru-slider-orange: #f36412;
  --rru-slider-dark: #111827;
}

/* ================================
   HERO SLIDER CLS STABILITY
   Locks slider, wrappers and slides to prevent layout shift
   ================================ */

.rru-hero-slider,
#slider-3-12 {
  width: 100% !important;
  height: 70vh !important;
  min-height: 560px !important;
  overflow: hidden !important;
  position: relative !important;
}

/* Oxygen / Unslider internal wrappers */
.rru-hero-slider .oxygen-unslider-container,
.rru-hero-slider .unslider,
.rru-hero-slider .unslider-wrap,
.rru-hero-slider .unslider-wrap > li {
  height: 70vh !important;
  min-height: 560px !important;
}

/* Individual hero slides */
#slide-4-12,
#slide-336-12,
#slide-11-12 {
  width: 100% !important;
  height: 70vh !important;
  min-height: 560px !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
}

/* Hero content/text boxes */
#div_block-308-12,
#div_block-337-12,
#div_block-316-12 {
  min-height: 400px !important;
}

/* Show slide 1 immediately at real size before unslider.js initializes */
.rru-hero-slider .oxygen-unslider-container:not(.unslider-fade):not(.unslider-horizontal) > ul {
  width: 100% !important;
}

.rru-hero-slider .oxygen-unslider-container:not(.unslider-fade):not(.unslider-horizontal) > ul > li:first-child {
  opacity: 1 !important;
}

/* ================================
   SLIDER ARROW CONTROLS
   ================================ */

/* Base style for both arrow buttons */
.rru-hero-slider .unslider-arrow {
  position: absolute !important;
  top: auto !important;
  bottom: 0 !important;
  transform: none !important;
  z-index: 50;

  width: var(--rru-slider-arrow-size) !important;
  height: var(--rru-slider-arrow-size) !important;

  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;

  background: transparent !important;
  color: transparent !important;

  display: block !important;
  text-decoration: none !important;
  opacity: 1 !important;
  font-size: 0 !important;
  line-height: 0 !important;
  overflow: hidden !important;
}

/* Left arrow block - white */
.rru-hero-slider .unslider-arrow.prev {
  left: 0 !important;
  right: auto !important;
  background: #ffffff !important;
}

/* Right arrow block - orange, directly next to left */
.rru-hero-slider .unslider-arrow.next {
  left: var(--rru-slider-arrow-size) !important;
  right: auto !important;
  background: var(--rru-slider-orange) !important;
}

/* Reset any old arrow content */
.rru-hero-slider .unslider-arrow::before,
.rru-hero-slider .unslider-arrow::after {
  content: "" !important;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  width: 20px !important;
  height: 20px !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

/* Left arrow icon - centred */
.rru-hero-slider .unslider-arrow.prev::before {
  border-left: 4px solid var(--rru-slider-dark) !important;
  border-bottom: 4px solid var(--rru-slider-dark) !important;
  transform: translate(-42%, -50%) rotate(45deg) !important;
}

/* Right arrow icon - centred */
.rru-hero-slider .unslider-arrow.next::before {
  border-right: 4px solid #ffffff !important;
  border-bottom: 4px solid #ffffff !important;
  transform: translate(-58%, -50%) rotate(-45deg) !important;
}

/* Hover states */
.rru-hero-slider .unslider-arrow.prev:hover {
  background: var(--rru-slider-orange) !important;
}

.rru-hero-slider .unslider-arrow.prev:hover::before {
  border-left-color: #ffffff !important;
  border-bottom-color: #ffffff !important;
}

.rru-hero-slider .unslider-arrow.next:hover {
  background: var(--rru-slider-orange) !important;
}

.rru-hero-slider .unslider-arrow.next:hover::before {
  border-right-color: #ffffff !important;
  border-bottom-color: #ffffff !important;
}

/* ================================
   HERO TEXT STABILITY
   Prevents small text jumps after font load
   ================================ */

#text_block-304-12,
#text_block-338-12,
#text_block-317-12 {
  line-height: 1.2 !important;
}

#text_block-309-12,
#text_block-339-12,
#text_block-318-12 {
  line-height: 1.35 !important;
}

/* ================================
   TABLET
   ================================ */

@media (max-width: 991px) {
  :root {
    --rru-slider-arrow-size: 64px;
  }

  .rru-hero-slider,
  #slider-3-12,
  .rru-hero-slider .oxygen-unslider-container,
  .rru-hero-slider .unslider,
  .rru-hero-slider .unslider-wrap,
  .rru-hero-slider .unslider-wrap > li,
  #slide-4-12,
  #slide-336-12,
  #slide-11-12 {
    height: 65vh !important;
    min-height: 520px !important;
  }

  .rru-hero-slider .unslider-arrow::before,
  .rru-hero-slider .unslider-arrow::after {
    width: 16px !important;
    height: 16px !important;
  }

  .rru-hero-slider .unslider-arrow.prev::before {
    border-left-width: 3px !important;
    border-bottom-width: 3px !important;
  }

  .rru-hero-slider .unslider-arrow.next::before {
    border-right-width: 3px !important;
    border-bottom-width: 3px !important;
  }
}

/* ================================
   MOBILE
   ================================ */

@media (max-width: 767px) {
  :root {
    --rru-slider-arrow-size: 52px;
  }

  .rru-hero-slider,
  #slider-3-12,
  .rru-hero-slider .oxygen-unslider-container,
  .rru-hero-slider .unslider,
  .rru-hero-slider .unslider-wrap,
  .rru-hero-slider .unslider-wrap > li,
  #slide-4-12,
  #slide-336-12,
  #slide-11-12 {
    height: 560px !important;
    min-height: 560px !important;
  }

  #div_block-308-12,
  #div_block-337-12,
  #div_block-316-12 {
    min-height: 360px !important;
  }

  .rru-hero-slider .unslider-arrow::before,
  .rru-hero-slider .unslider-arrow::after {
    width: 14px !important;
    height: 14px !important;
  }

  .rru-hero-slider .unslider-arrow.prev::before {
    border-left-width: 3px !important;
    border-bottom-width: 3px !important;
  }

  .rru-hero-slider .unslider-arrow.next::before {
    border-right-width: 3px !important;
    border-bottom-width: 3px !important;
  }
}
/* ================================
   ROOFS R US PROJECT GRID
   Images only until hover / tap
   ================================ */

:root {
  --rru-project-orange: #f36412;
}

/* Main grid wrapper */
.rru-projects-grid {
  width: 100% !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  grid-auto-rows: 380px !important;
  gap: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Row 1: 2/4 + 1/4 + 1/4 */
.rru-projects-grid > .rru-project-card:nth-child(1) {
  grid-column: span 2 !important;
}

.rru-projects-grid > .rru-project-card:nth-child(2) {
  grid-column: span 1 !important;
}

.rru-projects-grid > .rru-project-card:nth-child(3) {
  grid-column: span 1 !important;
}

/* Row 2: 1/4 + 1/4 + 2/4 */
.rru-projects-grid > .rru-project-card:nth-child(4) {
  grid-column: span 1 !important;
}

.rru-projects-grid > .rru-project-card:nth-child(5) {
  grid-column: span 1 !important;
}

.rru-projects-grid > .rru-project-card:nth-child(6) {
  grid-column: span 2 !important;
}

/* Each project card */
.rru-project-card {
  position: relative !important;
  min-height: 380px !important;
  height: 100% !important;
  overflow: hidden !important;

  display: flex !important;
  align-items: stretch !important;
  justify-content: stretch !important;

  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;

  color: #ffffff !important;
  text-decoration: none !important;
  isolation: isolate !important;
  cursor: pointer !important;
}

/* Light normal image tint */
.rru-project-card::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: rgba(0, 20, 45, 0.08) !important;
  z-index: 1 !important;
  pointer-events: none !important;
}

/* Orange overlay hidden by default */
.rru-project-card::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: rgba(243, 100, 18, 0.9) !important;
  opacity: 0 !important;
  visibility: hidden !important;
  z-index: 2 !important;
  pointer-events: none !important;
  transition: opacity 0.35s ease, visibility 0.35s ease !important;
}

/* Text overlay hidden by default */
.rru-project-overlay {
  position: relative !important;
  z-index: 5 !important;

  width: 100% !important;
  height: 100% !important;
  min-height: 380px !important;
  padding: 56px 42px 42px 56px !important;
  box-sizing: border-box !important;

  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;

  background: transparent !important;

  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateY(18px) !important;
  transition: opacity 0.35s ease, visibility 0.35s ease, transform 0.35s ease !important;
}

/* Prevent Oxygen element backgrounds showing */
.rru-project-overlay,
.rru-project-overlay * {
  background: transparent !important;
}

/* Label */
.rru-project-label {
  margin: 0 0 10px 0 !important;
  color: #ffffff !important;
  font-family: Montserrat, sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  text-transform: uppercase !important;
  letter-spacing: 1.4px !important;
}

/* Heading */
.rru-project-title,
.rru-project-overlay h1,
.rru-project-overlay h2,
.rru-project-overlay h3,
.rru-project-overlay .ct-headline {
  margin: 0 0 12px 0 !important;
  color: #ffffff !important;
  font-family: Montserrat, sans-serif !important;
  font-size: 28px !important;
  font-weight: 700 !important;
  line-height: 1.1 !important;
}

/* Find out more */
.rru-project-link {
  margin: 0 !important;
  color: #ffffff !important;
  font-family: Montserrat, sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
}

/* Smaller text on 1/4 cards */
.rru-projects-grid > .rru-project-card:nth-child(2) .rru-project-overlay,
.rru-projects-grid > .rru-project-card:nth-child(3) .rru-project-overlay,
.rru-projects-grid > .rru-project-card:nth-child(4) .rru-project-overlay,
.rru-projects-grid > .rru-project-card:nth-child(5) .rru-project-overlay {
  padding: 42px 26px 26px 34px !important;
}

.rru-projects-grid > .rru-project-card:nth-child(2) .rru-project-title,
.rru-projects-grid > .rru-project-card:nth-child(3) .rru-project-title,
.rru-projects-grid > .rru-project-card:nth-child(4) .rru-project-title,
.rru-projects-grid > .rru-project-card:nth-child(5) .rru-project-title,
.rru-projects-grid > .rru-project-card:nth-child(2) .ct-headline,
.rru-projects-grid > .rru-project-card:nth-child(3) .ct-headline,
.rru-projects-grid > .rru-project-card:nth-child(4) .ct-headline,
.rru-projects-grid > .rru-project-card:nth-child(5) .ct-headline {
  font-size: 20px !important;
  line-height: 1.15 !important;
}

.rru-projects-grid > .rru-project-card:nth-child(2) .rru-project-label,
.rru-projects-grid > .rru-project-card:nth-child(3) .rru-project-label,
.rru-projects-grid > .rru-project-card:nth-child(4) .rru-project-label,
.rru-projects-grid > .rru-project-card:nth-child(5) .rru-project-label {
  font-size: 11px !important;
  letter-spacing: 1.2px !important;
}

/* Desktop hover state */
.rru-project-card:hover::after {
  opacity: 1 !important;
  visibility: visible !important;
}

.rru-project-card:hover .rru-project-overlay {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(0) !important;
}

/* Tablet */
@media (max-width: 991px) {
  .rru-projects-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-auto-rows: 320px !important;
  }

  .rru-projects-grid > .rru-project-card:nth-child(1),
  .rru-projects-grid > .rru-project-card:nth-child(2),
  .rru-projects-grid > .rru-project-card:nth-child(3),
  .rru-projects-grid > .rru-project-card:nth-child(4),
  .rru-projects-grid > .rru-project-card:nth-child(5),
  .rru-projects-grid > .rru-project-card:nth-child(6) {
    grid-column: span 1 !important;
  }

  .rru-project-card,
  .rru-project-overlay {
    min-height: 320px !important;
  }

  .rru-project-overlay {
    padding: 38px 28px 28px 38px !important;
  }

  .rru-project-title,
  .rru-project-overlay h1,
  .rru-project-overlay h2,
  .rru-project-overlay h3,
  .rru-project-overlay .ct-headline {
    font-size: 24px !important;
  }
}

/* Mobile */
@media (max-width: 767px) {
  .rru-projects-grid {
    grid-template-columns: 1fr !important;
    grid-auto-rows: 280px !important;
  }

  .rru-project-card,
  .rru-project-overlay {
    min-height: 280px !important;
  }

  /* Normal mobile state: image only */
  .rru-project-card::after {
    opacity: 0 !important;
    visibility: hidden !important;
  }

  .rru-project-overlay {
    opacity: 0 !important;
    visibility: hidden !important;
    transform: translateY(18px) !important;
    padding: 34px 24px 24px 34px !important;
  }

  /* Mobile tap / press / focus state */
  .rru-project-card:hover::after,
  .rru-project-card:active::after,
  .rru-project-card:focus::after,
  .rru-project-card:focus-within::after {
    opacity: 1 !important;
    visibility: visible !important;
  }

  .rru-project-card:hover .rru-project-overlay,
  .rru-project-card:active .rru-project-overlay,
  .rru-project-card:focus .rru-project-overlay,
  .rru-project-card:focus-within .rru-project-overlay {
    opacity: 1 !important;
    visibility: visible !important;
    transform: translateY(0) !important;
  }

  .rru-project-title,
  .rru-project-overlay h1,
  .rru-project-overlay h2,
  .rru-project-overlay h3,
  .rru-project-overlay .ct-headline {
    font-size: 22px !important;
  }
}.orange-bullets ul li::marker {
    color: #f5741a;
    font-size: 1.15em;
}/* Contact Form 7 - Roofs R Us contact form styling */

/* Contact Form 7 - Roofs R Us contact form styling */

:root {
    --rru-orange: #f36412;
    --rru-blue: #001e49;
    --rru-blue-soft: #12376b;
    --rru-white: #ffffff;
    --rru-light-grey: #f7f7f7;
}

/* Make the full form fill the parent div */
.rru-contact-form,
.rru-contact-form .wpcf7,
.rru-contact-form .wpcf7 form,
.rru-contact-form .wpcf7 p,
.rru-contact-form .wpcf7-form-control-wrap {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
}

/* Apply site font to the full form */
.rru-contact-form .wpcf7,
.rru-contact-form .wpcf7 form,
.rru-contact-form .wpcf7 input,
.rru-contact-form .wpcf7 textarea,
.rru-contact-form .wpcf7 select,
.rru-contact-form .wpcf7 label {
    font-family: 'Montserrat', Arial, sans-serif;
}

/* Labels */
.rru-contact-form .wpcf7 form label {
    color: var(--rru-blue);
    font-weight: 600;
    width: 100%;
    display: block;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

/* Text fields, email, phone etc */
.rru-contact-form .wpcf7 input[type="text"],
.rru-contact-form .wpcf7 input[type="email"],
.rru-contact-form .wpcf7 input[type="tel"],
.rru-contact-form .wpcf7 input[type="url"],
.rru-contact-form .wpcf7 input[type="number"],
.rru-contact-form .wpcf7 input[type="date"] {
    width: 100%;
    min-height: 60px;
    padding: 14px 16px;
    border-radius: 0;
    border: 2px solid var(--rru-blue);
    background: var(--rru-white);
    color: var(--rru-blue);
    box-sizing: border-box;
    font-size: 16px;
    font-weight: 500;
    outline: none;
    transition: border-color 0.25s ease, box-shadow 0.25s ease;
}

/* Dropdown list */
.rru-contact-form .wpcf7 select {
    width: 100%;
    min-height: 60px;
    padding: 14px 16px;
    border-radius: 0;
    border: 2px solid var(--rru-blue);
    background: var(--rru-white);
    color: var(--rru-blue);
    box-sizing: border-box;
    font-family: 'Montserrat', Arial, sans-serif;
    font-size: 15px;
    font-weight: 500;
    cursor: pointer;
    outline: none;
    transition: border-color 0.25s ease, box-shadow 0.25s ease;
}

/* Dropdown before and after selection */
.rru-contact-form .wpcf7 select:invalid,
.rru-contact-form .wpcf7 select:valid {
    background: var(--rru-white);
    color: var(--rru-blue);
}

/* Dropdown options */
.rru-contact-form .wpcf7 select option {
    font-family: 'Montserrat', Arial, sans-serif;
    font-size: 15px;
    background: var(--rru-white);
    color: var(--rru-blue);
}

/* Message box */
.rru-contact-form .wpcf7 textarea {
    width: 100%;
    min-height: 170px;
    padding: 14px 16px;
    border-radius: 0;
    border: 2px solid var(--rru-blue);
    background: var(--rru-white);
    color: var(--rru-blue);
    box-sizing: border-box;
    font-size: 16px;
    font-weight: 500;
    resize: vertical;
    outline: none;
    transition: border-color 0.25s ease, box-shadow 0.25s ease;
}

/* Focus state */
.rru-contact-form .wpcf7 input[type="text"]:focus,
.rru-contact-form .wpcf7 input[type="email"]:focus,
.rru-contact-form .wpcf7 input[type="tel"]:focus,
.rru-contact-form .wpcf7 input[type="url"]:focus,
.rru-contact-form .wpcf7 input[type="number"]:focus,
.rru-contact-form .wpcf7 input[type="date"]:focus,
.rru-contact-form .wpcf7 textarea:focus,
.rru-contact-form .wpcf7 select:focus {
    border-color: var(--rru-orange);
    box-shadow: 0 0 0 2px rgba(243, 100, 18, 0.18);
}

/* Placeholder text */
.rru-contact-form .wpcf7 input::placeholder,
.rru-contact-form .wpcf7 textarea::placeholder {
    color: var(--rru-blue-soft);
    opacity: 0.75;
    font-family: 'Montserrat', Arial, sans-serif;
}

/* Full-width send button */
.rru-contact-form .wpcf7 input[type="submit"] {
    width: 100%;
    min-height: 60px;
    border-radius: 0;
    background: var(--rru-orange);
    color: var(--rru-white);
    border: 2px solid var(--rru-orange);
    cursor: pointer;
    font-size: 16px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    transition: background 0.25s ease, border-color 0.25s ease, color 0.25s ease;
}

/* Button hover */
.rru-contact-form .wpcf7 input[type="submit"]:hover {
    background: var(--rru-blue);
    border-color: var(--rru-blue);
    color: var(--rru-white);
}

/* Spacing between form fields */
.rru-contact-form .wpcf7 p {
    margin-bottom: 18px;
}

/* Remove excess margin from final paragraph */
.rru-contact-form .wpcf7 p:last-of-type {
    margin-bottom: 0;
}

/* Validation/error messages */
.rru-contact-form .wpcf7-not-valid-tip {
    color: var(--rru-orange);
    font-size: 14px;
    margin-top: 6px;
    font-family: 'Montserrat', Arial, sans-serif;
    font-weight: 600;
}

/* Response message */
.rru-contact-form .wpcf7-response-output {
    color: var(--rru-blue);
    border: 2px solid var(--rru-orange);
    background: rgba(243, 100, 18, 0.08);
    font-family: 'Montserrat', Arial, sans-serif;
    margin: 20px 0 0 0;
    padding: 14px 16px;
}

/* Spinner */
.rru-contact-form .wpcf7-spinner {
    background-color: var(--rru-orange);
}

/* Mobile */
@media (max-width: 767px) {
    .rru-contact-form .wpcf7 input[type="text"],
    .rru-contact-form .wpcf7 input[type="email"],
    .rru-contact-form .wpcf7 input[type="tel"],
    .rru-contact-form .wpcf7 input[type="url"],
    .rru-contact-form .wpcf7 input[type="number"],
    .rru-contact-form .wpcf7 input[type="date"],
    .rru-contact-form .wpcf7 select {
        min-height: 56px;
        font-size: 15px;
    }

    .rru-contact-form .wpcf7 textarea {
        min-height: 150px;
        font-size: 15px;
    }

    .rru-contact-form .wpcf7 input[type="submit"] {
        min-height: 56px;
        font-size: 15px;
    }
}.rru-mobile-menu {
  display: none;
}

@media (max-width: 991px) {
  .rru-desktop-menu {
    display: none;
  }

  .rru-mobile-menu {
    display: flex;
  }
}