#hs-eu-cookie-confirmation {
  display: block;
  visibility: visible;
}
#footer_copyright{
	padding: 20px 0;
	width: 100% !important;
	margin-bottom:0 !important
}
#lastcopyright{
	padding-bottom : 0 !important
}
#lastcopyright .uagb-container-inner-blocks-wrap{
	padding:0 !important;
	width: 100% !important;
}

.wpcf7 input:not([type=file]) {
    background-color: #f5f8fa;
	border: 1px solid #cbd6e2;
    border-radius: 3px;
}

.wpcf7 input {
    display: inline-block;
    width: 90%;
    max-width: 500px;
    height: 40px;
    padding: 9px 10px;
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 16px;
    font-weight: normal;
    line-height: 22px;
    color: #33475b;
    border: 1px solid #cbd6e2;
    border-radius: 3px;
}

.wpcf7 select {
    display: inline-block;
    width: 90%;
    max-width: 500px;
    height: 40px;
    padding: 9px 10px;
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 16px;
    font-weight: normal;
    line-height: 22px;
    color: #33475b;
    border: 1px solid #cbd6e2;
    border-radius: 3px;
}


.wpcf7 input:not([type=image]):not([type=submit]):not([type=button]):not([type=radio]):not([type=checkbox]):not([type=file]) {
    box-sizing: border-box;
    padding: 0 15px;
    min-height: 27px;

}

.wpcf7 input[type=submit] {
   background: #25B072;
   border-color: #25B072;
   color: #ffffff;
   font-size: 12px;
   line-height: 12px;
   font-family: helvetica;
    margin: 0;
    cursor: pointer;
    display: inline-block;
    font-weight: 700;
position: relative;
    text-align: center;
    transition: all .15s linear;
border-radius: 3px;
    border-style: solid;
    border-width: 1px;
padding: 12px 24px;
}

.testimonial-heading h6 {
	color:white !important;
	background-color:#25B072 !important;
}
h5 {
	font-size:22px !important;
}

#testimonial-heading-col  h6 , h5 {
	color: #25B072 !important;
}

.card-style {
	 background-color: white;
    border-radius: 40px;
    box-shadow: 10px 10px 40px 0px rgba(0,0,0,0.5);
    padding:15px;
	
	
}

#newsletter_input {
	margin-left: 10px;
  margin-right: 10px;
  width: 90%;
}

#newsletter_btn {
	width: 100px;
  margin-left: 10px;
	margin-bottom: 10px;
}
h1 {
    opacity: 1 !important;
}

#ast-scroll-top {
	display: hidden;
	visibility: collapse;
}

.footer-textarea {
	width: 100% !important;
	max-width: min(565px, 100%) !important;
	height: 6em !important;
	box-sizing: border-box !important;
}

.enquiry-textarea {
	width: 100% !important;
	max-width: 474px !important;
	height: 6em !important;
	box-sizing: border-box !important;
}
.enquiry-submit {
	max-width: 100% !important;
	width: 100% !important;
}
.footer-select {
	max-width: 100% !important;
}

.footer-submit {
	max-width: 100% !important;
	width: 100% !important;
}

.wpcf7 input:not([type=submit]), .wpcf7 select, .wpcf7 textarea {
	padding: 0.35rem !important;
}


.wpcf7 p {
	margin-bottom: 0.35rem !important;
}

.hf-chat-launcher-container {
	z-index: 100 !important;
}

.hf-chat-launcher-container .hf-chat-launcher{
	padding: 0px !important;
}

.hf-chat-launcher-container .hf-chat-expand-btn {
	color: black !important;
}

.hf-chat-launcher-container .hf-survey-close {
	top: 16px !important;
  right: 5px !important;
	font-weight: bold !important;
}
.section .banner-home .section-light{
	display:none;
}

@media screen and (max-width: 767px) {
.ast-single-entry-banner {
    max-height: 400px !important;
}
}

@media screen and (min-width: 1024px) {
.ast-single-entry-banner {
    height: 577px !important;
}
}

/* === Impact mobile footer fix 2026-09-30b === */
/* Stronger: kill Astra footer grid fixed widths, section max-width 460px,
   container-inner ~635px, social/enquire/rec badges, inline width:540px.
   Keep centered. Do NOT edit Astra theme files. */
html, body {
  max-width: 100% !important;
  overflow-x: hidden !important;
}
#page {
  max-width: 100% !important;
  overflow-x: hidden !important;
}

@media (max-width: 767px) {
  /* html/body/footer + ALL footer descendants */
  html, body,
  #page,
  #page footer.site-footer,
  #page footer.site-footer *,
  #colophon,
  #colophon * {
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  #page footer.site-footer,
  #page footer.site-footer .site-primary-footer-wrap,
  #page footer.site-footer .site-below-footer-wrap,
  #page footer.site-footer .ast-builder-grid-row-container,
  #page footer.site-footer .ast-builder-grid-row-container-inner,
  #page footer.site-footer .ast-builder-grid-row,
  #page footer.site-footer .ast-builder-footer-grid-columns,
  #page footer.site-footer .site-primary-footer-inner-wrap,
  #page footer.site-footer .site-footer-primary-section-1,
  #page footer.site-footer .site-footer-primary-section-2,
  #page footer.site-footer .site-footer-primary-section-3,
  #page footer.site-footer .site-footer-section,
  #page footer.site-footer .footer-widget-area,
  #page footer.site-footer .footer-widget-area-inner,
  #page footer.site-footer .widget,
  #page footer.site-footer .widget_block {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  /* Kill desktop-ish grid padding that inflates inner width past 375 */
  #page footer.site-footer .site-primary-footer-wrap .ast-builder-grid-row,
  #page footer.site-footer .ast-builder-footer-grid-columns,
  #page footer.site-footer .site-primary-footer-inner-wrap {
    padding-left: 16px !important;
    padding-right: 16px !important;
    gap: 12px !important;
    grid-template-columns: 1fr !important;
  }

  /* Center stacked footer content */
  #page footer.site-footer .site-footer-primary-section-1,
  #page footer.site-footer .site-footer-primary-section-2,
  #page footer.site-footer .site-footer-primary-section-3,
  #page footer.site-footer .footer-widget-area,
  #page footer.site-footer .wp-block-buttons,
  #page footer.site-footer .wp-block-social-links {
    margin-left: auto !important;
    margin-right: auto !important;
    justify-content: center !important;
    text-align: center !important;
  }

  #page footer.site-footer .wp-block-social-links {
    flex-wrap: wrap !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    gap: 8px !important;
  }

  #page footer.site-footer .wp-block-button,
  #page footer.site-footer .wp-block-button__link,
  #page footer.site-footer .wp-block-buttons {
    max-width: 100% !important;
    width: auto !important;
  }

  /* Images / Spectra / accreditation badges (inline width:540px, figure.rec 360px) */
  #page footer.site-footer img,
  #page footer.site-footer figure,
  #page footer.site-footer figure.rec,
  #page footer.site-footer figure.rec img,
  #page footer.site-footer .widget_media_image img,
  #page footer.site-footer .wp-block-image,
  #page footer.site-footer .wp-block-image img,
  #page footer.site-footer .wp-custom-css-f86567a1 img,
  :root #page footer.site-footer .widget_media_image figure.rec img,
  :root #page footer.site-footer :where(figure.rec) img {
    max-width: 100% !important;
    width: 100% !important;
    height: auto !important;
    min-width: 0 !important;
  }

  /* Logo shouldn't stretch full bleed — keep reasonable centered size */
  #page footer.site-footer .wp-image-13138 {
    width: min(244px, 100%) !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  /* Textareas that were 565px */
  .footer-textarea,
  .enquiry-textarea,
  #page footer.site-footer textarea,
  #page footer.site-footer .wpcf7 textarea,
  #page footer.site-footer .wpcf7 input:not([type=submit]):not([type=checkbox]):not([type=radio]),
  #page footer.site-footer .wpcf7 select {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  /* Neutralize transforms that can shift footer content */
  #page footer.site-footer,
  #page footer.site-footer .ast-builder-grid-row-container-inner,
  #page footer.site-footer .site-footer-section {
    transform: none !important;
  }
}

/* === Impact homepage Get In Touch form fix 2026-09-30c === */
/* NOTE: WP Rocket RUCSS was stripping this Additional CSS on cached pages.
   Critical fix also injected via WPCode Header (it-git-2026-09-30d) + CF7 form <style>. */

/* === Impact homepage Get In Touch form fix 2026-09-30d === */
/* Desktop restore: CF7 rows use inline flex-direction:column as RUCSS-safe default;
   restore side-by-side on wide viewports when injected CSS loads. */
@media (min-width: 769px) {
  body.home #page footer.site-footer #wpcf7-f10107-o1 form.wpcf7-form > div.it-git-row,
  body.home #page footer.site-footer .wpcf7[data-wpcf7-id="10107"] form.wpcf7-form > div.it-git-row {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    gap: 10px !important;
    width: 100% !important;
    max-width: 100% !important;
  }
  body.home #page footer.site-footer #wpcf7-f10107-o1 form.wpcf7-form > div.it-git-row > label,
  body.home #page footer.site-footer .wpcf7[data-wpcf7-id="10107"] form.wpcf7-form > div.it-git-row > label,
  body.home #page footer.site-footer #wpcf7-f10107-o1 form.wpcf7-form > div.it-git-row > p,
  body.home #page footer.site-footer .wpcf7[data-wpcf7-id="10107"] form.wpcf7-form > div.it-git-row > p {
    flex: 1 1 0 !important;
    width: auto !important;
    max-width: 50% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }
}

/* Homepage only (body.home). Stack CF7 inline flex rows; fix labels;
   constrain form + below-footer link strip. Desktop 2-col unchanged. */
@media (max-width: 768px) {
  body.home #page footer.site-footer #wpcf7-f10107-o1,
  body.home #page footer.site-footer #wpcf7-f10107-o1 form.wpcf7-form,
  body.home #page footer.site-footer .site-footer-primary-section-3 .wpcf7 {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    overflow-x: hidden !important;
  }

  /* Stack First/Last + Email/Mobile flex rows (inline display:flex) */
  body.home #page footer.site-footer #wpcf7-f10107-o1 form.wpcf7-form > div[style*="display: flex"],
  body.home #page footer.site-footer #wpcf7-f10107-o1 form.wpcf7-form > div[style*="display:flex"] {
    display: flex !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    gap: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  body.home #page footer.site-footer #wpcf7-f10107-o1 form.wpcf7-form > div[style*="display: flex"] > p,
  body.home #page footer.site-footer #wpcf7-f10107-o1 form.wpcf7-form > div[style*="display:flex"] > p,
  body.home #page footer.site-footer #wpcf7-f10107-o1 form.wpcf7-form > div[style*="display: flex"] > label,
  body.home #page footer.site-footer #wpcf7-f10107-o1 form.wpcf7-form > div[style*="display:flex"] > label {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 auto !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  /* Contact Type fixed height was clipping; allow auto */
  body.home #page footer.site-footer #wpcf7-f10107-o1 form.wpcf7-form > div[style*="height: 72px"],
  body.home #page footer.site-footer #wpcf7-f10107-o1 form.wpcf7-form > div[style*="height:72px"] {
    height: auto !important;
    min-height: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  /* Labels left/normal (footer section was text-align:center) */
  body.home #page footer.site-footer #wpcf7-f10107-o1,
  body.home #page footer.site-footer #wpcf7-f10107-o1 label,
  body.home #page footer.site-footer #wpcf7-f10107-o1 p,
  body.home #page footer.site-footer #wpcf7-f10107-o1 .wpcf7-form-control-wrap {
    text-align: left !important;
  }

  body.home #page footer.site-footer #wpcf7-f10107-o1 input:not([type=submit]):not([type=checkbox]):not([type=radio]):not([type=hidden]),
  body.home #page footer.site-footer #wpcf7-f10107-o1 select,
  body.home #page footer.site-footer #wpcf7-f10107-o1 textarea,
  body.home #page footer.site-footer #wpcf7-f10107-o1 .wpcf7-form-control-wrap,
  body.home #page footer.site-footer #wpcf7-f10107-o1 .footer-select,
  body.home #page footer.site-footer #wpcf7-f10107-o1 .footer-textarea,
  body.home #page footer.site-footer #wpcf7-f10107-o1 .footer-submit {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  /* Below-form green location / copyright link strip */
  body.home #page footer.site-footer .site-below-footer-wrap,
  body.home #page footer.site-footer .site-below-footer-wrap .ast-builder-grid-row,
  body.home #page footer.site-footer .site-below-footer-wrap .ast-footer-copyright,
  body.home #page footer.site-footer .site-below-footer-wrap .ast-builder-html-element,
  body.home #page footer.site-footer .site-below-footer-wrap p {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
  }

  body.home #page footer.site-footer .site-below-footer-wrap a,
  body.home #page footer.site-footer .ast-footer-copyright a {
    white-space: normal !important;
  }
}



