/*
 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
*/

/* Header Contact */

div.Phone {
	display: inline-block;
	margin-right: 60px;
}

div.Email {
	display: inline-block;
	text-transform: Uppercase;
}

.site-header a {
	text-decoration: none;
	font-family: Open Sans, serif;
	font-size: 20px;
}

.site-header a:hover {
	text-decoration: underline;
}

.site-header a:hover {
    text-decoration: none;
}

.header-widget {
   padding-left: 20px;
}


/* Main Menu */

.main-navigation .main-nav ul li[class*="current-menu-"] > a, .main-navigation .main-nav ul li:not([class*="current-menu-"]):hover {
    font-weight: 700;
	text-decoration: underline 3px;
    text-underline-offset: 4px;
}

.main-navigation ul ul li:hover {
	background: #000;
	text-decoration: none!important;
}

.main-navigation .main-nav ul ul li a {
    font-size: 16px;
	  text-decoration: none!important;
}

.main-navigation .main-nav ul ul li a:hover {
	  font-weight: 700;
	  color: #a8a6a1!important;
}

.main-navigation .main-nav ul ul li[class*="current-menu-"] > a {
	background: #000;
	color: #a8a6a1;
}

.main-navigation .main-nav ul ul li:not([class*="current-menu-"]):hover > a, .main-navigation .main-nav ul ul li:not([class*="current-menu-"]):focus > a, .main-navigation .main-nav ul ul li.sfHover:not([class*="current-menu-"]) > a {
    font-weight: 700;
}


   .main-navigation .main-nav ul li a {
    padding-left: 5px;
    padding-right: 5px;
}


.main-navigation ul ul li:hover {
    background: #000;
    text-decoration: none !important;
}


.menu-item-has-children ul .dropdown-menu-toggle {
    padding-top: 10px;
    padding-bottom: 10px;
    margin-top: -11px;
}



@media(min-width: 768px) {
    .main-navigation .main-nav {
        flex: 1;
    }

    #site-navigation.nav-align-center .main-nav>ul {
        justify-content: space-between;
    }
}


/* Hero Image */

h2.hbupro-hero-banner-title {
    font-family: Cormorant Garamond, serif;
	font-weight: 400;
}

a.hbupro-black {
    color: #fff !important;
	background: #1f2e3f;
	font-family: Open Sans, sans-serif;
}

body.home .hbupro-hero-banner-wrp-1 .hbupro-hero-banner {
    box-shadow: inset 0 15px 9px 0 rgb(0 0 0 / 0.2);
	min-height: 685px;
}

body.page-id-505 .hbupro-hero-banner-wrp-1 .hbupro-hero-banner, body.page-id-507 .hbupro-hero-banner-wrp-1 .hbupro-hero-banner {
    box-shadow: inset 0 15px 9px 0 rgb(0 0 0 / 0.2);
	min-height: 593px;
}

.hbupro-hero-banner-wrp-1 .hbupro-hero-banner h2.hbupro-hero-banner-title {
    letter-spacing: -1.3px;
    font-weight: 400;
}

.hbupro-hero-banner-wrp-1 .hbupro-hero-banner-inner {
    padding: 200px 0px 150px 0px!important;
}


.hbupro-hero-banner-links {
    clear: both;
    margin-top: 25px;	
}


.hbupro-hero-banner-links a.hbupro-button {
    padding: 12px 50px;
	margin-right: 0;
}

.hbupro-text-center {
    text-align: center;
    margin-top: -20px;
}

div.hbupro-hero-banner-sub-title h2 {
	color: #fff;
	letter-spacing: -1.3px;
	font-size: 30px;
}

/* Meet The Team hero image */

div.PhoneB {
	display: inline-block;
	margin-right: 60px;
	font-size: 28px;
	margin-top: 20px;
}

div.EmailB {
	display: inline-block;
	font-size: 28px;
	margin-top: 20px;
}

div.PhoneB a, div.EmailB a {
	color: #fff;
}


div.HeroTeamBannerWrap {
    background: url(/wp-content/uploads/2026/07/Meet-The-Team-Banner-Dark.jpg) center top no-repeat;
    background-size: cover;
	box-shadow: inset 0 15px 9px 0 rgb(0 0 0 / 0.2);
	padding: 20px;
    min-height: 458px;
	display: flex;
	align-items: center;
}


div.HeroInnerBannerWrap {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
	text-align: center;
}

h1.TeamTitle {
	font-size: 100px;
    line-height: 1.2;
    color: #fff;
}

/* Curved Images */

.aligncenter {
    border-radius: 35px;
}

.wp-caption img[class*=wp-image-] {
    border-radius: 35px;
}

.wp-caption .wp-caption-text {
    font-size: 100%;
    padding-top: 10px;
    opacity: 1;
    color: #000;
    font-weight: 700;
    font-style: italic;
    text-align: center;
}

/* What We Do Hero Image / Rest of Site */

div.HeroRestofSiteBannerWrap {
    background: url(/wp-content/uploads/2026/07/Children-Hero-Image-Dark.jpg) center top no-repeat;
    background-size: cover;
	box-shadow: inset 0 15px 9px 0 rgb(0 0 0 / 0.2);
	padding: 300px 20px 20px 20px;
    min-height: 409px;
	margin-bottom: 40px;
}

div.HeroRestofSiteBannerWrapPhotos {
    background: url(/wp-content/uploads/2026/07/Children-Hero-Image-Dark-1-1.jpg) center top no-repeat;
    background-size: cover;
	box-shadow: inset 0 15px 9px 0 rgb(0 0 0 / 0.2);
	padding: 300px 20px 20px 20px;
    min-height: 409px;
	margin-bottom: 40px;
}


h1.RestofSiteTitles {
	font-size: 82px;
	font-weight: 700;
    margin-bottom: 0;
    padding-bottom: 0;
	color: #fff;
}

h2.RestofSiteTitles {
	font-size: 50px;
	font-weight: 700;
    margin-bottom: 20px;
    padding-bottom: 0;
	color: #fff;
}



div.HeroInnerRestofSiteBannerWrap {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}

h1.entry-title {
	display: none;
}


body.home h1.entry-title, body.page-id-505 h1.entry-title, body.page-id-1300 h1.entry-title, body.page-id-1302 h1.entry-title, body.page-id-1304 h1.entry-title, body.page-id-1306 h1.entry-title, body.page-id-507 h1.entry-title, body.page-id-37 h1.entry-title {
	display: block;
}


/* Header Testimonial */

div.Testimonial.Home {
    display: flex;
    font-family: "Cormorant Garamond", Sans-serif;
    font-style: normal;
    text-align: center;
    font-size: 32px;
    line-height: 1.2;
    font-weight: 400;
}

div.HomeTestHeaderWrap {
	display: flex;
	flex-direction: row;
	justify-content: space-evenly;
	align-items: center;
	background: #a8a6a1;
	max-width: 1200px;
	color: #fff;
	padding: 30px 15px;
	margin: auto;
	position: relative;
	z-index: 2;
	margin-top: -120px;
}

div.LeftImage {
	display: flex;
}

div.Testimonial {
	display: flex;
font-family: "Cormorant Garamond", Sans-serif;
	font-size: 22px;
	letter-spacing: -1.3px;
	text-align: left;
	line-height: 1.2
	
}

div.RightImage {
	display: flex;
}

span.CompanyName {
	font-size: 22px;
}

 .strong-view.wpmtst-simple .wpmtst-testimonial-inner strong.Bullet::before {
	content: "•";
	font-size: 22px;
	margin-left: -1.0em;
	width: 1.5em;
}

.strong-view.wpmtst-simple .wpmtst-testimonial-inner {
    padding: 0!important;
	font-style: italic;
}


/* Testimonials */

span.readmore-text, a.readmore {
	color: #000!important;
	font-size: 22px;
}

span.readmore-text:hover, a.readmore:hover {
	color: #0894f8!important;
}


div.Testimonial {
    display: flex;
    font-family: "Cormorant Garamond", Sans-serif;
    font-style: italic;
    font-size: 22px;
    line-height: 1.2;
    font-weight: 400;
}


div.content-column.two_fifth.last_column {
	padding-left: 40px;
}

blockquote {
    border-left: 0;
    padding: 0;
    font-size: 22px;
	font-family: "Cormorant Garamond", Sans-serif;
    font-style: italic;
    margin: 0;
	line-height: 1.2;
    font-weight: 400;
}

blockquote strong {
	font-weight: 900;
	color: #000;
	font-size:50px;
	
}

/* Page Button */

a.InlineButton {
	color: #1f2e3f;
	font-family: sans-serif;
	font-size: 17px;
	letter-spacing: 2.2px;
	text-decoration: underline 1px;
    text-underline-offset: 10px;
}


a.InlineButton:hover {
	color: #0894f8;
}

/* Links */

div.elements a:hover {
	color: #0894f8!important;
}


/* Pages */

body.home .content-column.two_fifth.last_column {
	margin-top: 100px;
}

strong, b {
	font-weight: 700;
	color: #000;
}

body.home h1.entry-title {
	display: none;
}

.entry-content:not(:first-child), .entry-summary:not(:first-child), .page-content:not(:first-child) {
    margin-top: 0;
}

div.entry-content h2, h1.entry-title {
	font-size: 82px;
	margin-left: -20px;
  	padding-bottom: 0;
	position: relative;
	z-index: 0;
}

div.entry-content p {
	position: relative;
	z-index: 1;
}

p {
    margin-bottom: 0.9em;
}

.strong-view.wpmtst-simple .strong-content {
    margin: 0!important;
}

ol {
    list-style: lower-roman!important;
}

ol, ul {
    margin: 0 0 1.5em 1.5em;
}

/* Questions & Answers */

.ui-state-default {
border-bottom: 1px solid #383838!important;
border-radius: 0!important;
	border-left: 0!important;
	border-right: 0!important;
	border-top: 0!important;
}

/* Why Choose Us? */

h3.SidebarWidgetTitle {    
	font-size: 45px !important;
    font-weight: 600;
    margin-bottom: 20px;
}

ul.Widget li {    
	font-size: 22px;
	line-height: 1.2;
	margin-bottom: 10px;
}

ul.Widget {
	list-style: none;
	padding-left: 0;
	margin: 20px;
}

.Widget li::before {
	content: "🠆";
	color: #000;
	margin-left: -1.0em;
	width: 1.5em;
}




/* Posts */

body.single-post h4 {
	font-weighT; 700;
	color: #000;
	font-size: 34px;
}

body.blog .site-main {
    margin: 60px;
}

h2.entry-title a {
    color: #000;
	font-weight: 700;
}

/* Contact Form */

div.GreyStripe {
    background: #e9effb;
    padding: 0 20px;
    width: 100%;
}

.content-column.one_half{
	padding-right: 10px;
}

textarea {
	height: 150px;
}

[type=submit] {
	background-color: #1f2f3f;
	border: 1px solid #1f2f3f;
	color: #fff;
	width: 100%;
	font-size: 26px;
}

input[type=email], input[type=tel], input[type=text], select, textarea {
	font-size: 20px;
	padding: .5rem 1rem;
	border-radius: 3px;
	border: 2px solid #999;
	width: 100%;
}

select {
	padding: .6rem 1rem!important;
}

input[type=text]:focus, input[type=email]:focus, input[type=tel]:focus, select:focus, textarea:focus {
    border: 2px solid #000;
}

[type=submit]:hover {
    background-color: #1f2f3f;
}

div.last_column {
	padding-right: 0!important;
}

@media (max-width: 600px) {
    .content-column.one_half{
	padding-right: 0;
}

}

/* Grey Stripe */

div.GreyStripe {
	background: #e9effb;
	padding: 100px 20px;
	width: 100%;
}

div.GreyStripe2 {
    background: #e9effb;
    padding: 0 20px;
    width: 100%;
}

div.CarouselWrap {
	max-width: 1200px;
	margin: auto;
	display: flex;
	flex-direction: row;
  align-items: flex-start;
}

div.GreyWrap {
	max-width: 1200px;
	margin: auto;
	padding: 0 20px;
	display: flex;
	align-items: center;
}

div.TwoThirdL {
	max-width: 66.6%;
	float: left;
	padding-right: 50px;
}

div.TwoThirdL span a {
	  color: #1f2e3f;
	  text-decoration: none;
}

/* Grey Stripe Reported Cases */

.one_half {
    width: 50%;
    padding-right: 40px;
}

.one_half.last {
    width: 50%;
    padding-right: 0;
}

@media (max-width: 786px) {
    .one_half, .one_half.last {
        float: none;
		width: 100%;
		padding-right: 0;
    }
}



/* White Footer Stripe */

div.OneThird {
	max-width: 33.3%;
	float: left;
}

div.TwoThird {
	max-width: 66.6%;
	float: left;
	padding-left: 70px;
}


div.WhiteStripeWrap {
	max-width: 1200px;
	margin: auto;
	padding: 60px 20px;
}

h2.Header {
	font-size: 82px;
	margin-left: -20px;
  margin-bottom: -10px;
	padding-bottom: 0;
	position: relative;
	z-index: 0;
}

p.Block {
	position: relative;
	z-index: 1;
}

/* Carousel */

.metaslider.ms-theme-databold .flexslider .caption-wrap .caption {
    padding: 20px!important;
    top: 50%;
    left: 60px;
    transform: translateY(-50%);
    position: absolute;
    width: 100%!important;
    background: transparent!important;
    box-shadow: none!important;
    color: #333;
    z-index: 2;
}

#metaslider-id-1640 .flexslider .caption-wrap {
    background: rgba(0, 0, 0, 0)!important;
}

.metaslider.ms-theme-blend .flexslider ul.slides .caption-wrap .caption {
    bottom: 70%!important;
    color: #fff!important;
    font-size: 17px!important;
    position: relative!important;
	padding: 7px!important;
}

div.caption h2  {
	margin-bottom: 0;
	line-height: 1.1!important;
	font-size: 28px;
}

.metaslider .caption-wrap {
  line-height: 1em!important;
	opacity: 1!important;
}

.metaslider.ms-theme-blend .flexslider:not(.filmstrip) ul.flex-direction-nav a.flex-prev {
    right: 45px!important;
}

.metaslider.ms-theme-blend .flexslider:not(.filmstrip) ul.flex-direction-nav a {
    bottom: 8px!important;
}

.metaslider.ms-theme-blend .flexslider:not(.filmstrip) ul.flex-direction-nav a.flex-next {
    right: 5px!important;
}

div.Title {
	padding-right: 50px;
}

.metaslider .flexslider .flex-next:focus, .metaslider .flexslider .flex-prev:focus {
    outline: 0!important;
}

.metaslider.ms-theme-databold .flexslider .caption-wrap .caption {
     left: 24px!important;
}

.slides li:focus-within {
    outline: 0!important;
}


/* Footer Widgets */

div.site-footer h2 {
	color: #fff;
}

div.footer-widget-2 a {
	text-decoration: none;
	word-break: break-all;
}

div.footer-widget-2 h2 {
	margin-bottom: 0;
}

figcaption {
	font-size: 15px;
	color: #a8a6a1;
}

div.footer-widget-1 h2 {
	font-size: 32px;
}

div.footer-widget-1 h2.Address {
	font-size: 35px;
}

.inside-footer-widgets {
    display: flex;
    align-items: center;
}

/* Media Queries */

@media (max-width: 786px) {
    div.three_fifth, .two_fifth {
    width: 100%;
    float: none;
}
div.content-column.two_fifth.last_column {
    padding-left: 0!important;
}
	div.OneThird, div.TwoThird, div.TwoThirdL  {
    width: 100%;
	max-width: 100%!important;
    float: none!important;
}

	div.TwoThird {
   padding-left: 0!important;
   padding-top: 20px;
}
	div.TwoThirdL {
   padding-right: 0!important;
   padding-bottom: 40px;
}
	div.GreyWrap {
    flex-direction: column;
}
}


@media (max-width: 768px) {
    .main-navigation .main-nav {
        flex: 0;
    }
	.site-header .header-widget {
        font-size: 18px;
        word-break: break-all;
    }
}



@media (max-width: 480px) {
	
	 div.CarouselWrap {
    flex-direction: column;
    align-items: flex-start;
}
}

  