/*
 Theme Name:   GeneratePress Child
 Theme URI:    https://generatepress.com
 Description:  Default GeneratePress child theme
 Author:       Tom Usborne
 Author URI:   https://tomusborne.com
 Template:     generatepress
 Version:      0.1
*/

/*
 * Media Queries
 * 
 * Mobile only 
@media (max-width: 768px) {}
 *
 * Tablet and above
@media (min-width: 769px) {}
 *
 * Tablet only 
@media (min-width: 769px) and (max-width: 1024px) {}
 *
 * Tablet and smaller 
@media (max-width: 1024px) {}
 *
 * Desktop only 
@media (min-width: 1025px) {}
*/

.cf:before,
.cf:after {
    content: " ";
    display: table;
}

.cf:after {
    clear: both;
}

a.no-underline,
.no-underline a {
    text-decoration: none;
}

.text-balance {
    text-wrap: balance;
}

.text-pretty {
    text-wrap: pretty;
}

.flex,
a.flex {
	display: flex;
}

/* header */

.inside-header {
	position: relative;
}

.site-logo {
	position: absolute;
    z-index: 10;
    top: 0;
    left: 20px;
}

.top-header a.button {
	background-color: rgba(0, 0, 0, 0);
    color: #0086d4;
}

.top-header a.button:hover,
.top-header a.button:focus {
	background-color: #0086d4;
    color: #fff;
}

.nav-locations::before {
	aspect-ratio: 1 / 1;
	content: '';
	background-image: url(/wp-content/uploads/2025/10/location_on_24dp_E3E3E3_FILL0_wght400_GRAD0_opsz24.svg);
	background-repeat: no-repeat;
	position: absolute;
	left: 14px;
	top: 14px;
	height: 24px;
	width: 24px;
}

li.nav-locations > a.gb-menu-link {
	padding-left: 44px;
	padding-right: 24px;
}

#menu-primary-menu .nav-primary a {
	background-color: #d41f28;
	border-radius: 40px;
	color: #fff;
	margin-left: 12px;
	padding-left: 32px;
	padding-right: 32px;
}

#menu-primary-menu .nav-primary a:hover,
#menu-primary-menu .nav-primary a:focus {
	background-color: #c5001b;
}

#site-navigation .menu-bar-items {
	display: none;
}

#mobile-menu-control-wrapper {
	display: none;
}

.site-header {
	min-height: 94px;
}

@media (max-width: 768px) {
	.site-header .header-image {
		max-width: 140px;
	}	
}

@media (min-width: 769px) {
	.main-navigation .main-nav ul li.menu-item-has-children > a {
		padding-right: 20px;
	}
	
	li.menu-item-has-children .dropdown-menu-toggle {
		display: none
	}
}

@media (min-width: 1122px) {
	.inside-header {
		display: grid;
		justify-items: flex-end;
	}
}

/* slideout menu */

#generate-slideout-menu {
	background-image: linear-gradient(0deg, rgba(255, 255, 255, 0) 0%, #eaf2f7 100%);
}

#generate-slideout-menu .nav-primary {
	padding-left: 20px;
	padding-right: 20px;
}

#generate-slideout-menu .nav-primary a {
	background-color: #d41f28;
    border-radius: 40px;
    color: #fff;
	margin-top: 10px;
	text-align: center;
	width: 100%;
}

/* hero video */

.hero-bg {
	position: relative;
}

.background-video {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: 1;
}

video[poster] {
    object-fit: cover;
    width: 100%;
    height: 100%;
}

.video-hero-content {
	position: relative;
	z-index: 5;
}

.hero-text-shadow {
	color: #fff;
	text-shadow: 2px 2px 6px rgba(0, 0, 0, 0.6);
}

.hero-text-shadow-1 {
	color: #fff;
	text-shadow: 2px 2px 6px rgba(0, 0, 0, 0.6);
}

@media (max-width: 767px) {
	.page h1.hero-text-shadow-1 {
		font-size: 44px;
	}
}

/* services grid */

.services-item-heading {
	text-wrap: pretty;
}

/* how we treat module */

a.how-buttons {
	display: flex;
}

/* business reviews bundle */

.rpi-content .rpi-card-inner {
	background-color: #fff;
}

@media (max-width: 768px) {
	r-p rp-dots {
		display: none;
	}
}

/* blog */

.blog .post-image img {
	object-fit: cover;
	height: 330px;
	width: 100%;
}
