/*
 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) {}
*/

.font-serif {
	font-family: Gilda Display, serif;
}

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

.cf:after {
    clear: both;
}

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

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

a.hover-underline:hover,
a.hover-underline:focus,
.hover-underline a:hover,
.hover-underline a:focus {
    text-decoration: underline;
}

a.underline-only {
    text-decoration: none;
}

.underline-only:hover .underline-this,
.underline-only:focus .underline-this {
    text-decoration: underline;
}

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

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

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

.font-bold,
.font-bold a {
	font-weight: 700 !important;
}

@media (max-width: 768px) {
	.lg-br {
		display: none;
	}
}

/* site navigation */

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

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

nav.slideout-navigation .main-nav {
	margin-bottom: 16px;
}

@media (max-width: 768px) {
	.inside-header {
		justify-content: center;
	}	
}

@media (min-width: 769px) {
	#site-navigation {
		margin-top: 24px;
	}
}

/* secondary-navigation */

@media (min-width: 769px) {
	.secondary-navigation {
		margin-bottom: -40px;
		position: relative;
		pointer-events: none;
	}

	.secondary-navigation a {
		pointer-events: all;
	}

	.secondary-navigation .nav-phone {
		padding-left: 10px;
		position: relative;
	}

	.secondary-navigation .nav-phone::before {
		content: "";
		background-image: url(/wp-content/uploads/2024/10/image-3.png);
		position: absolute;
		left: 0;
		top: 10px;
		height: 20px;
		width: 20px;
	}
}

/* hover-card */

.hover-card-active * {
	position: relative;
	z-index: 5;
}

@media (min-width: 1025px) {	
	.hover-card-active {
		position: absolute;
		opacity: 0;
		transition: opacity 300ms ease-in-out;
	}

	.hover-card:hover .hover-card-active,
	.hover-card:focus-within .hover-card-active {
		opacity: 1;
	}
}

/* footer-map */

#footer-map {
	height: 50vh;
	min-height: 700px;
	width: 100%;
}

.gm-style-iw-chr {
	display: none;
}

.gm-style-iw-d {
	padding-top: 16px;
}

.map-iw {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.map-top-container img.map-office {
	max-width: 100%;
	width: 320px;
}

.map-bottom-container {
	align-items: center;
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 0;
}

.gm-style img.map-logo {
	max-width: 100%;
	width: 160px;
}

.map-address,
.map-phone {
	align-self: flex-start;
	font-size: 17px;
	line-height: 1.3em;
	padding: 0;
}

.map-address a {
	display: inline-block;
	margin-top: 4px;
	font-weight: 600;
}

@media (min-width: 769px) {
	.map-iw {
		flex-direction: row;
		gap: 28px;
	}

	.map-bottom-container {
		gap: 24px;
	}
	
	.gm-style img.map-logo {
		margin-left: 20px;
		width: 132px;
	}
}

/* contact us page */

.page-id-369 .hero-book-appointment {
	display: none;
}

/* video background */

.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: 1px 1px 5px rgba(0, 0, 0, 0.7);
}

@media (max-width: 767px) {
	.page .hero-text-shadow-1 {
		text-shadow: 1px 1px 3px rgba(0, 0, 0, 1);
	}
}
