/*
 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
*/

html, body {
  height: 100%;
  margin: 0;
}

/* Make the page a flex column */
body {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

/* These are siblings of the footer in your HTML — keep them natural height */
#masthead,
#page,
#site-wrap {
  flex: 0 0 auto;
}

/* IMPORTANT: remove margin-top:auto; and let the footer grow */
.site-footer {
  flex: 1 0 auto;          /* this makes footer expand */
  margin-top: 0 !important; /* overrides your old rule */
  display: flex;
  flex-direction: column;
  width: 100%;
}

/* Your footer’s visible background is on this inner block — make it stretch too */
.site-footer .gb-element-6e8a5bd2 {
  flex: 1 0 auto;
  display: flex;
  flex-direction: column;
}

/* Optional: if you want footer content pinned to the bottom of the expanded area */
.site-footer .gb-element-6e8a5bd2 {
  justify-content: flex-end;
}

.site-header {
	margin-bottom: 40px;
}

/* spacing between nav items */
.main-nav ul li {
   margin-left: 20px;
}

/* nav items background color */
.main-nav ul li a {
	border: solid 2px transparent;
  padding-left: 10px !important;
  padding-right: 10px !important;
	background-color: rgba(0, 0, 0, 0.3);
}

/* current nav item border */
.main-nav ul .current-menu-item a {
  border: solid 2px #ffffff;
}

#generate-slideout-menu.is-open .menu-item a {
	background-color: rgba(0, 0, 0, 0.0);
}

#generate-slideout-menu.is-open .menu-item.current_page_item a {
	 border: solid 2px transparent;
	
}


.is-style-default.line {
	border-top: 1px solid;
	width: 97%;
	margin: 20px auto 20px auto;
}

.contact_lines.is-style-default.email {
	border-top: 1px solid;
	width: 20%;
	margin: 20px auto 20px auto;
}

.contact_lines.is-style-default.map {
	border-top: 1px solid;
	width: 90%;
	margin: 20px auto 20px auto;
}

.gm-style-iw.gm-style-iw-c, .gm-style-iw.gm-style-iw-c a {
	color: #222 !important;
}


.cls_contact input, textarea {
	border-radius: 0px !important;
	font-size: 14px !important;
	background-color: rgba(255, 255, 255, 0.7) !important;
	border: solid 1px transparent !important;
	font-weight: bold !important;
	color: #051f52 !important;
}

.cls_contact #wpforms-640-field_5-question {
	color: #fff !important;
}

#wpforms-640-field_5-container {
	text-align: right;
}

.cls_contact_button {
	border-radius: 0px !important;
	background: #fff !important;
	color: #222 !important;
	font-family: Fenix, serif !important;
	text-transform: uppercase !important;
}

.wpforms-submit-container {
	text-align: right;
}


.slideout-navigation.do-overlay .slideout-exit {
    display: none !important;
}


#generate-slideout-menu .main-nav {
	margin-top: 60px;
}


.main-navigation.mobile-menu-control-wrapper img {
  display: inline-block;
  transform: rotate(0deg);
  transform-origin: center;
}

.slide-opened .main-navigation.mobile-menu-control-wrapper img {
  display: inline-block;
  transform: rotate(90deg);
  transform-origin: center;
}






@media only screen and (max-width: 450px) {
  .contact_lines.is-style-default.email {
	border-top: 1px solid;
	width: 10%;
 }
	
}

@media only screen and (max-width: 1024px) {
	.site-logo {
    max-width: 230px;
 }
	.has-inline-mobile-toggle .mobile-menu-control-wrapper {
    display: flex;
    flex-wrap: wrap;
    z-index: 100009;
}

	
}










