/* Buttons */

.lb {
  white-space: nowrap;
}

button, .wp-element-button {
	background-color: #FFFFFF;
	color: #D79E39 !important;
  border-radius: 0px;
	border: 1px solid #D79E39 !important;
	padding-top: 10px;
	padding-bottom: 10px;
	padding-right: 20px;
	padding-left: 20px;
}


button.wp-block-button__link::after, .wp-block-button .wp-element-button::after {
	content: "»";
  font-style: normal;
  display: inline-block;
  text-decoration: inherit;
	padding-left: 15px;
}

button.bold.wp-block-button__link:before, .wp-block-button.bold .wp-element-button::after {
	font-weight: 900;
}

button:hover, .wp-element-button:hover {
	color: #000000 !important;
	font-weight: normal !important;
}


/* Header */
.header-padding {
	padding-top: 20px !important;
	padding-bottom: 20px;
}

nav a, nav a:visited { 
	text-decoration: none !important;
}

@media screen and (max-width: 825px) {
	.header-padding {
  	flex-direction: column;
		align-items: center;
		align-content: center;
		padding-bottom: 40px;
	}
	
	.header-padding nav {
		padding-right: 0px !important;
		margin-right: 0px !important;
	}
}

@media screen and (max-width: 700px) {
	.header-padding {
		padding-bottom: 20px;
	}
}


@media screen and (max-width: 500px) {
	.custom-logo {
		max-width: 300px !important;
	}
	
	
  .wp-block-navigation.wp-container-2 {
    justify-content: center;
  }

  .wp-block-navigation.items-justified-right {
    --navigation-layout-justification-setting: center;
    --navigation-layout-justify: center;
  }

}

@media screen and (max-width: 400px) {
	.custom-logo {
		max-width: 220px !important;
	}
}

.ht {
	position: absolute !important;
	left: -100000px !important
}


/* Hero section */

.up-115 {
	margin-top: -115px !important;
}

@media screen and (max-width: 1000px) {
	.up-115 {
		margin-top: -60px !important;
	}
}

@media screen and (max-width: 900px) {
	.up-115 {
		margin-top: -60px !important;
	}
}

@media screen and (max-width: 800px) {
	.up-115 {
		margin-top: -30px !important;
	}
}


@media screen and (max-width: 600px) {
	.up-115 {
		margin-top: 0px !important;
	}
}

.max-415 {
	padding-top: 10px !important;
	max-width: 440px !important;
	font-size: 48px;
}

@media screen and (min-width: 900px) {
	.max-415 {
		padding-left: 10px;
	}
}

@media screen and (max-width: 600px) {
	.max-415 {
		font-size: 38px;
		text-align: center;
		margin: 0 auto 20px auto;
	}
}

/* Call Us */


button.call, .call .wp-element-button {
	border-radius: 50px !important;
	color: #444444 !important;
	font-size: 28px;
}

.call-section button.wp-block-button__link::after, .call-section .wp-block-button .wp-element-button::after {
	color: #D79E39 !important;
}

.call-section button:hover, .call-section .wp-element-button:hover {
	background-color: #D79E39 !important;
}

.call-section button.wp-block-button__link::after, .call-section .wp-block-button .wp-element-button::after {
	color: #D79E39 !important;
}


.call-section button.wp-block-button__link:hover::after, .call-section .wp-block-button .wp-element-button:hover::after {
	color: #444444 !important;
}


@media screen and (max-width: 600px) {
	.call {
		margin-bottom: 60px !important;
	}
	
	.call-section p {
		text-align: center !important;
	}
	
	.call-section .call-buttons {
		justify-content: center !important;
	}
}




/* Service card equal-height button alignment */
.services-grid-section .wp-block-jetpack-layout-grid-column {
  display: flex !important;
  flex-direction: column !important;
}
.services-grid-section .service-col-group {
  flex: 1 !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
}

/* =============================================
   Mobile Optimisation – About Page & Global
   ============================================= */

/* Scale down heading on mobile */
@media screen and (max-width: 600px) {
  .wp-block-heading {
    font-size: clamp(1.6rem, 7vw, 2.2rem) !important;
  }
}

/* Improve body text readability on small screens */
@media screen and (max-width: 600px) {
  .wp-block-paragraph,
  .wp-site-blocks p {
    font-size: 1rem !important;
    line-height: 1.7 !important;
  }
}

/* About page: remove top spacer in image column on mobile so image sits closer to text */
@media screen and (max-width: 599px) {
  .wp-block-jetpack-layout-grid .wp-block-spacer {
    height: 0px !important;
  }
}

/* About page: reduce layout grid side padding on mobile */
@media screen and (max-width: 600px) {
  .wp-block-jetpack-layout-grid {
    padding-left: 16px !important;
    padding-right: 16px !important;
    grid-gap: 16px !important;
  }
}

/* Ensure images never overflow their container on any screen */
img {
  max-width: 100%;
  height: auto;
}

/* Navigation: wrap items on small screens so they don't overflow */
@media screen and (max-width: 600px) {
  .wp-block-navigation__container {
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 8px 16px !important;
  }

  .wp-block-navigation-item {
    font-size: 0.9rem !important;
  }
}

/* Ensure full-width alignment blocks don't cause horizontal scroll */
@media screen and (max-width: 600px) {
  .alignwide,
  .alignfull,
  .wp-block-group.alignwide {
    margin-left: 0 !important;
    margin-right: 0 !important;
    max-width: 100% !important;
    overflow-x: hidden;
  }
}

/* Service column alignment fix */
.service-col-group {
	  justify-content: flex-start !important;
}
.service-col-group .wp-block-buttons {
	  margin-top: auto !important;
}
}
}