/* ============================================================
   HMJ — Header and navigation CSS
   ============================================================ */

:where(.wp-site-blocks *:focus){outline-width:2px;outline-style:solid}

/* Header phone buttons */
header.wp-block-template-part .wp-block-button.is-style-outline .wp-block-button__link {
  color: #2b2b2b !important;
  border: 1px solid #2b2b2b;
  background-color: transparent !important;
  transition: background-color 250ms ease, color 250ms ease, border-color 250ms ease;
}
header.wp-block-template-part .wp-block-button.is-style-outline .wp-block-button__link:hover,
header.wp-block-template-part .wp-block-button.is-style-outline .wp-block-button__link:focus-visible {
  background-color: #2b2b2b !important;
  border-color: #2b2b2b;
  color: #ffffff !important;
}
@media (prefers-reduced-motion: reduce) {
  header.wp-block-template-part .wp-block-button.is-style-outline .wp-block-button__link {
    transition: none;
  }
}

/* Header Contact Us buttons */
header.wp-block-template-part .wp-block-button.is-style-fill .wp-block-button__link {
  box-sizing: border-box;
  width: 127.6px;
  text-align: center;
  color: #ffffff !important;
  background-color: #3A89C3 !important;
  border: 1px solid #3A89C3;
  transition: background-color 250ms ease, color 250ms ease, border-color 250ms ease;
}
header.wp-block-template-part .wp-block-button.is-style-fill .wp-block-button__link:hover,
header.wp-block-template-part .wp-block-button.is-style-fill .wp-block-button__link:focus-visible {
  background-color: #ffffff !important;
  color: #3A89C3 !important;
  border-color: #3A89C3;
}
@media (prefers-reduced-motion: reduce) {
  header.wp-block-template-part .wp-block-button.is-style-fill .wp-block-button__link {
    transition: none;
  }
}

/* Site navigation links: left-to-right underline */
.wp-site-blocks .wp-block-navigation .wp-block-navigation-item__content {
  color: #2b2b2b !important;
  text-decoration: none !important;
  background-image: linear-gradient(#3A89C3, #3A89C3);
  background-repeat: no-repeat;
  background-position: left bottom;
  background-size: 0% 1px;
  transition: color 250ms ease, background-size 250ms ease;
}
.wp-site-blocks .wp-block-navigation .wp-block-navigation-item__content:hover,
.wp-site-blocks .wp-block-navigation .wp-block-navigation-item__content:focus-visible {
  color: #3A89C3 !important;
  text-decoration: none !important;
  background-size: 100% 1px;
}
@media (prefers-reduced-motion: reduce) {
  .wp-site-blocks .wp-block-navigation .wp-block-navigation-item__content {
    transition: none;
  }
}

/* HMJ brand typography: locally hosted Montserrat 400, 500, 700 */
body, .editor-styles-wrapper {
 --wp--preset--font-family--body: "Montserrat", sans-serif;
 --wp--preset--font-family--heading: "Montserrat", sans-serif;
 font-family: "Montserrat", sans-serif;
 font-weight: 400;
}
.wp-site-blocks :is(h1,h2,h3,h4,h5,h6,p,a,li,dt,dd,blockquote,figcaption,label,input,textarea,select,button,table,caption,.wp-block-site-tagline,.wp-block-button__link),
.editor-styles-wrapper :is(h1,h2,h3,h4,h5,h6,p,a,li,dt,dd,blockquote,figcaption,label,input,textarea,select,button,table,caption,.wp-block-site-tagline,.wp-block-button__link) {
 font-family: "Montserrat", sans-serif !important;
}
.wp-site-blocks :is(p,li,dt,dd,figcaption,input,textarea,select,table,caption),
.editor-styles-wrapper :is(p,li,dt,dd,figcaption,input,textarea,select,table,caption) { font-weight: 400 !important; }
.wp-site-blocks :is(h1,h2,h3,h4,h5,h6,strong,b,.wp-block-site-title,.wp-block-site-title a,.wp-block-button__link,button,input[type="submit"]),
.editor-styles-wrapper :is(h1,h2,h3,h4,h5,h6,strong,b,.wp-block-site-title,.wp-block-site-title a,.wp-block-button__link,button,input[type="submit"]) { font-weight: 700 !important; }
.wp-site-blocks :is(.wp-block-navigation,.wp-block-navigation a,.wp-block-site-tagline,label),
.editor-styles-wrapper :is(.wp-block-navigation,.wp-block-navigation a,.wp-block-site-tagline,label) { font-weight: 500 !important; }

/* HMJ proportional sticky header */
header.wp-block-template-part:has(.hmj-header-shell){position:sticky;top:var(--hmj-admin-offset,0px);z-index:100;background:#fff}
.hmj-header-shell{box-sizing:border-box;container-type:inline-size}
header .hmj-header-shell{transition:height 250ms ease,padding-top 250ms ease,padding-bottom 250ms ease}
header .hmj-header-shell .wp-block-site-logo img{height:auto;transition:width 250ms ease;object-fit:contain}
header.hmj-header-measuring .hmj-header-shell,header.hmj-header-measuring .wp-block-site-logo img{transition:none!important}
header.hmj-header-ready .hmj-header-shell{height:var(--hmj-full-height)}
header.hmj-header-compact .hmj-header-shell{height:var(--hmj-compact-height);padding-top:10px!important;padding-bottom:10px!important}
header.hmj-header-compact .hmj-header-row{height:100%;flex-wrap:nowrap;align-items:center}
header.hmj-header-compact .hmj-header-brand{gap:0;flex-shrink:0}
header.hmj-header-compact .wp-block-site-logo img{width:var(--hmj-compact-logo)!important;height:auto!important}
header .hmj-header-shell a:focus-visible,header .hmj-header-shell button:focus-visible{outline:3px solid #3A89C3;outline-offset:4px}
@container (min-width:600px) and (max-width:1100px){header.hmj-header-compact .hmj-header-row{display:grid;grid-template-columns:auto 1fr;grid-template-rows:1fr 1fr;column-gap:20px;row-gap:4px}header.hmj-header-compact .hmj-header-brand{grid-column:1;grid-row:1 / 3}header.hmj-header-compact .hmj-header-nav{grid-column:2;grid-row:1;justify-self:end}header.hmj-header-compact .hmj-desktop-header-buttons{grid-column:2;grid-row:2;justify-self:end}}
@media(max-width:900px){header.hmj-header-compact .hmj-header-shell{padding-left:24px!important;padding-right:24px!important}header.hmj-header-compact .hmj-header-row{gap:12px}header.hmj-header-compact .wp-block-navigation__responsive-container-open{display:flex}header.hmj-header-compact .wp-block-navigation__responsive-container:not(.is-menu-open){display:none}header.hmj-header-compact .wp-block-navigation__responsive-container.is-menu-open{position:fixed;inset:0;z-index:100000}}
@media(prefers-reduced-motion:reduce){header .hmj-header-shell,header .hmj-header-shell .wp-block-site-logo img{transition:none!important}}

/* Header styling shared with the Gutenberg canvas */
.editor-styles-wrapper .hmj-header-shell .wp-block-site-logo img{height:auto;object-fit:contain}
.editor-styles-wrapper .hmj-header-shell .wp-block-button.is-style-outline .wp-block-button__link{color:#2b2b2b!important;border:1px solid #2b2b2b;background:transparent!important}
.editor-styles-wrapper .hmj-header-shell .wp-block-button.is-style-fill .wp-block-button__link{box-sizing:border-box;width:127.6px;text-align:center;color:#fff!important;background:#3A89C3!important;border:1px solid #3A89C3}
.editor-styles-wrapper .hmj-header-shell :is(a,button):focus-visible{outline:3px solid #3A89C3;outline-offset:4px}
@media(max-width:599px){.editor-styles-wrapper .hmj-header-shell .hmj-desktop-header-buttons{display:none!important}}

/* Mobile header menu buttons, relocated from content blocks. */
@media (max-width:599px){header.wp-block-template-part .hmj-desktop-header-buttons{display:none!important}}
.hmj-mobile-menu-buttons{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.hmj-mobile-menu-buttons .wp-block-button__link{box-sizing:border-box;width:127.6px;text-align:center;transition:background-color 250ms,color 250ms,border-color 250ms}
.hmj-mobile-menu-buttons .is-style-outline .wp-block-button__link{border:1px solid #2b2b2b;color:#2b2b2b!important;background:#fff!important}
.hmj-mobile-menu-buttons .is-style-outline .wp-block-button__link:hover,.hmj-mobile-menu-buttons .is-style-outline .wp-block-button__link:focus-visible{background:#2b2b2b!important;color:#fff!important;border-color:#2b2b2b}
.hmj-mobile-menu-buttons .is-style-fill .wp-block-button__link{border:1px solid #3a89c3;color:#fff!important;background:#3a89c3!important}
.hmj-mobile-menu-buttons .is-style-fill .wp-block-button__link:hover,.hmj-mobile-menu-buttons .is-style-fill .wp-block-button__link:focus-visible{background:#fff!important;color:#3a89c3!important;border-color:#3a89c3}

/* Tablet header: logo and actions above navigation, including Gutenberg. */
@media (min-width:600px) {
 @container (min-width:480px) and (max-width:1050px) {
 .hmj-header-shell .hmj-header-row {display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;grid-template-rows:auto auto!important;align-items:center;column-gap:16px!important;row-gap:16px!important;height:auto!important}
 .hmj-header-shell .hmj-header-brand {grid-column:1!important;grid-row:1!important;min-width:0}
 .hmj-header-shell .hmj-header-brand .wp-block-site-logo img {width:clamp(180px,40cqw,315px)!important;max-width:100%;height:auto!important}
 .hmj-header-shell .hmj-header-nav {display:contents!important}
 .hmj-header-shell .hmj-desktop-header-buttons {grid-column:2!important;grid-row:1!important;justify-self:end;display:flex!important;flex-wrap:nowrap!important;gap:12px}
 .hmj-header-shell .hmj-desktop-header-buttons .wp-block-button__link {white-space:nowrap}
 .hmj-header-shell .hmj-header-nav > .wp-block-navigation {grid-column:1 / -1!important;grid-row:2!important;justify-self:center;justify-content:center!important;width:100%}
 .hmj-header-shell .hmj-header-nav > .wp-block-navigation .wp-block-navigation__container {justify-content:center!important;flex-wrap:nowrap!important}
 .hmj-header-shell .hmj-header-nav > .wp-block-navigation .wp-block-navigation-item__label {white-space:nowrap}
 .hmj-header-shell .wp-block-navigation__responsive-container-open {display:none!important}
 .hmj-header-shell .wp-block-navigation__responsive-container:not(.is-menu-open) {display:block!important}
 }
}
@media (min-width:600px) and (max-width:1199px) {
 header.hmj-header-ready .hmj-header-shell,header.hmj-header-compact .hmj-header-shell {height:auto!important}
}

/* Desktop header: navigation centred in the space between brand and actions. */
@container (min-width:1051px) {
 .hmj-header-shell .hmj-header-row {display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;grid-template-rows:auto!important;column-gap:24px!important;align-items:center}
 .hmj-header-shell .hmj-header-brand {grid-column:1!important;grid-row:1!important}
 .hmj-header-shell .hmj-header-nav {display:contents!important}
 .hmj-header-shell .hmj-header-nav > .wp-block-navigation {grid-column:2!important;grid-row:1!important;justify-self:stretch;justify-content:center!important;width:100%;min-width:0}
 .hmj-header-shell .hmj-header-nav > .wp-block-navigation .wp-block-navigation__responsive-container-content {justify-content:center!important;align-items:center!important}
 .hmj-header-shell .hmj-header-nav > .wp-block-navigation .wp-block-navigation__container {justify-content:center!important;flex-wrap:nowrap!important}
 .hmj-header-shell .hmj-header-nav > .wp-block-navigation .wp-block-navigation-item__label {white-space:nowrap}
 .hmj-header-shell .hmj-desktop-header-buttons {grid-column:3!important;grid-row:1!important;justify-self:end;flex-wrap:nowrap!important}
 .hmj-header-shell .hmj-desktop-header-buttons .wp-block-button__link {white-space:nowrap}
}

/* Migrated page CSS: sitemap */
.hmj-page-directory{padding:0;list-style:none;margin-inline:auto;width:100%;max-width:var(--wp--style--global--content-size,38.75rem);box-sizing:border-box;}
.hmj-page-directory>li{margin:0 0 2rem;padding:0 0 2rem;border-bottom:1px solid #ddd;}
.hmj-page-directory h2{font-size:1.35em;line-height:1.35;margin:0 0 1rem;overflow-wrap:anywhere;}
.hmj-page-directory p{margin:.45em 0;overflow-wrap:anywhere;}
.hmj-page-directory a{color:#2b2b2b!important;text-decoration:none!important;background-image:linear-gradient(#3a89c3,#3a89c3);background-repeat:no-repeat;background-position:left bottom;background-size:0% 1px;transition:color 250ms,background-size 250ms;}
.hmj-page-directory a:hover,.hmj-page-directory a:focus-visible{color:#3a89c3!important;background-size:100% 1px;}
.hmj-page-directory>li.hmj-service-listing{margin-left:10px;}


/* ============================================================
   HMJ — Footer CSS
   ============================================================ */

/* Footer email link — public site and editor canvas */
.hmj-footer-shell a[href^="mailto:"] {
  color: #2b2b2b !important;
  text-decoration: none !important;
  background-image: linear-gradient(#3A89C3, #3A89C3);
  background-repeat: no-repeat;
  background-position: left bottom;
  background-size: 0% 1px;
  transition: color 250ms ease, background-size 250ms ease;
}
.hmj-footer-shell a[href^="mailto:"]:hover,
.hmj-footer-shell a[href^="mailto:"]:focus-visible {
  color: #3A89C3 !important;
  background-size: 100% 1px;
}
@media (prefers-reduced-motion: reduce) {
  .hmj-footer-shell a[href^="mailto:"] {
    transition: none;
  }
}

/* Footer phone buttons */
footer.wp-block-template-part .wp-block-button.is-style-outline .wp-block-button__link {
  color: #2b2b2b !important;
  border: 1px solid #2b2b2b;
  background-color: transparent !important;
  transition: background-color 250ms ease, color 250ms ease, border-color 250ms ease;
}
footer.wp-block-template-part .wp-block-button.is-style-outline .wp-block-button__link:hover,
footer.wp-block-template-part .wp-block-button.is-style-outline .wp-block-button__link:focus-visible {
  background-color: #2b2b2b !important;
  border-color: #2b2b2b;
  color: #ffffff !important;
}
@media (prefers-reduced-motion: reduce) {
  footer.wp-block-template-part .wp-block-button.is-style-outline .wp-block-button__link {
    transition: none;
  }
}

/* Footer Contact Us buttons */
footer.wp-block-template-part .wp-block-button.is-style-fill .wp-block-button__link {
  box-sizing: border-box;
  width: 127.6px;
  text-align: center;
  color: #ffffff !important;
  background-color: #3A89C3 !important;
  border: 1px solid #3A89C3;
  transition: background-color 250ms ease, color 250ms ease, border-color 250ms ease;
}
footer.wp-block-template-part .wp-block-button.is-style-fill .wp-block-button__link:hover,
footer.wp-block-template-part .wp-block-button.is-style-fill .wp-block-button__link:focus-visible {
  background-color: #ffffff !important;
  color: #3A89C3 !important;
  border-color: #3A89C3;
}
@media (prefers-reduced-motion: reduce) {
  footer.wp-block-template-part .wp-block-button.is-style-fill .wp-block-button__link {
    transition: none;
  }
}

/* Desktop footer: equal proportional outer spaces and centre space. */
@media (min-width: 1024px) {
 .hmj-footer-shell { padding-left: 0 !important; padding-right: 0 !important; }
 .hmj-footer-shell > .hmj-footer-columns { display: grid !important; grid-template-columns: 5.618% 24.944% 5.618% 58.202% 5.618%; gap: 0 !important; width: 100%; max-width: none !important; margin-left: 0 !important; margin-right: 0 !important; }
 .hmj-footer-columns > .wp-block-column { min-width: 0; margin: 0 !important; }
 .hmj-footer-columns > .wp-block-column:first-child { grid-column: 2; }
 .hmj-footer-columns > .wp-block-column:nth-child(2) { grid-column: 4; }
}

/* Migrated block CSS: footer — is-style-logos-only */
:root :where(.hmj-footer-shell .wp-social-link) { transition: transform .1s ease, color .1s ease; }
:root :where(.hmj-footer-shell .wp-social-link:hover) { color: #2B2B2B !important; }
:root :where(.hmj-footer-shell .wp-social-link:focus-within) { color: #2B2B2B !important; }

/* Gutenberg canvas: footer — is-style-logos-only */
.editor-styles-wrapper .hmj-footer-shell .wp-social-link { transition: transform .1s ease, color .1s ease; }
.editor-styles-wrapper .hmj-footer-shell .wp-social-link:hover { color: #2B2B2B !important; }
.editor-styles-wrapper .hmj-footer-shell .wp-social-link:focus-within { color: #2B2B2B !important; }


/* ============================================================
   HMJ — Homepage CSS
   ============================================================ */

/* Homepage: six service buttons fill their columns */
.hmj-home-services > .wp-block-columns > .wp-block-column > .wp-block-buttons,
.hmj-home-services > .wp-block-columns > .wp-block-column > .wp-block-buttons > .wp-block-button { width: 100%; }
.hmj-home-services > .wp-block-columns > .wp-block-column > .wp-block-buttons > .wp-block-button > .wp-block-button__link { display: block; box-sizing: border-box; width: 100%; text-align: center; }

/* Homepage service button colour transition */
.hmj-home-services > .wp-block-columns > .wp-block-column > .wp-block-buttons > .wp-block-button > .wp-block-button__link {
 color: #ffffff !important;
 background-color: #3A89C3 !important;
 border: 1px solid #3A89C3;
 transition: background-color 250ms ease, color 250ms ease, border-color 250ms ease;
}
.hmj-home-services > .wp-block-columns > .wp-block-column > .wp-block-buttons > .wp-block-button > .wp-block-button__link:hover,
.hmj-home-services > .wp-block-columns > .wp-block-column > .wp-block-buttons > .wp-block-button > .wp-block-button__link:focus-visible {
 background-color: #ffffff !important;
 color: #3A89C3 !important;
 border-color: #3A89C3;
}
@media (prefers-reduced-motion: reduce) {
 .hmj-home-services > .wp-block-columns > .wp-block-column > .wp-block-buttons > .wp-block-button > .wp-block-button__link { transition: none; }
}

/* HMJ homepage service icons */
.hmj-home-services > .wp-block-columns > .wp-block-column > h3.is-style-asterisk::before { content: ""; display: block; width: 40px; height: 40px; margin: 0 0 16px; background-color: transparent; background-repeat: no-repeat; background-position: left center; background-size: contain; clip-path: none; }
.hmj-home-services > .wp-block-columns:nth-child(3) > .wp-block-column:nth-child(1) > h3.is-style-asterisk::before { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%233A89C3%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M15%2021v-8a1%201%200%200%200-1-1h-4a1%201%200%200%200-1%201v8%22%2F%3E%3Cpath%20d%3D%22M3%2010a2%202%200%200%201%20.709-1.528l7-6a2%202%200%200%201%202.582%200l7%206A2%202%200%200%201%2021%2010v9a2%202%200%200%201-2%202H5a2%202%200%200%201-2-2z%22%2F%3E%3C%2Fsvg%3E"); }
.hmj-home-services > .wp-block-columns:nth-child(3) > .wp-block-column:nth-child(2) > h3.is-style-asterisk::before { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%233A89C3%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20width%3D%228%22%20height%3D%224%22%20x%3D%228%22%20y%3D%222%22%20rx%3D%221%22%20ry%3D%221%22%2F%3E%3Cpath%20d%3D%22M16%204h2a2%202%200%200%201%202%202v14a2%202%200%200%201-2%202H6a2%202%200%200%201-2-2V6a2%202%200%200%201%202-2h2%22%2F%3E%3Cpath%20d%3D%22m9%2014%202%202%204-4%22%2F%3E%3C%2Fsvg%3E"); }
.hmj-home-services > .wp-block-columns:nth-child(3) > .wp-block-column:nth-child(3) > h3.is-style-asterisk::before { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%233A89C3%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m15%2012-9.373%209.373a1%201%200%200%201-3.001-3L12%209%22%2F%3E%3Cpath%20d%3D%22m18%2015%204-4%22%2F%3E%3Cpath%20d%3D%22m21.5%2011.5-1.914-1.914A2%202%200%200%201%2019%208.172v-.344a2%202%200%200%200-.586-1.414l-1.657-1.657A6%206%200%200%200%2012.516%203H9l1.243%201.243A6%206%200%200%201%2012%208.485V10l2%202h1.172a2%202%200%200%201%201.414.586L18.5%2014.5%22%2F%3E%3C%2Fsvg%3E"); }
.hmj-home-services > .wp-block-columns:nth-child(5) > .wp-block-column:nth-child(1) > h3.is-style-asterisk::before { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%233A89C3%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20fill%3D%22%233A89C3%22%20stroke%3D%22none%22%20d%3D%22M19%2016H22L12%207L2%2016H5L12%209.69L19%2016M7%208.81V7H4V11.5L7%208.81Z%22%2F%3E%3C%2Fsvg%3E"); }
.hmj-home-services > .wp-block-columns:nth-child(5) > .wp-block-column:nth-child(2) > h3.is-style-asterisk::before { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%233A89C3%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M10%204%208%206M17%2019v2M2%2012h20M7%2019v2M9%205%207.621%203.621A2.121%202.121%200%200%200%204%205v12a2%202%200%200%200%202%202h12a2%202%200%200%200%202-2v-5%22%2F%3E%3C%2Fsvg%3E"); }
.hmj-home-services > .wp-block-columns:nth-child(5) > .wp-block-column:nth-child(3) > h3.is-style-asterisk::before { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%233A89C3%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M20%2013c0%205-3.5%207.5-7.66%208.95a1%201%200%200%201-.67-.01C7.5%2020.5%204%2018%204%2013V6a1%201%200%200%201%201-1c2%200%204.5-1.2%206.24-2.72a1.17%201.17%200%200%201%201.52%200C14.51%203.81%2017%205%2019%205a1%201%200%200%201%201%201z%22%2F%3E%3Cg%20transform%3D%22translate(6.5%206.5)%20scale(.46)%22%3E%3Cpath%20d%3D%22M14.7%206.3a1%201%200%200%200%200%201.4l1.6%201.6a1%201%200%200%200%201.4%200l3.106-3.105c.32-.322.863-.22.983.218a6%206%200%200%201-8.259%207.057l-7.91%207.91a1%201%200%200%201-2.999-3l7.91-7.91a6%206%200%200%201%207.057-8.259c.438.12.54.662.219.984z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E"); }

/* Homepage service icons: brand colour hover transition */
.hmj-home-services > .wp-block-columns:nth-child(3) > .wp-block-column:nth-child(1) > h3.is-style-asterisk::before { --hmj-icon-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%233A89C3%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M15%2021v-8a1%201%200%200%200-1-1h-4a1%201%200%200%200-1%201v8%22%2F%3E%3Cpath%20d%3D%22M3%2010a2%202%200%200%201%20.709-1.528l7-6a2%202%200%200%201%202.582%200l7%206A2%202%200%200%201%2021%2010v9a2%202%200%200%201-2%202H5a2%202%200%200%201-2-2z%22%2F%3E%3C%2Fsvg%3E"); }
.hmj-home-services > .wp-block-columns:nth-child(3) > .wp-block-column:nth-child(2) > h3.is-style-asterisk::before { --hmj-icon-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%233A89C3%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20width%3D%228%22%20height%3D%224%22%20x%3D%228%22%20y%3D%222%22%20rx%3D%221%22%20ry%3D%221%22%2F%3E%3Cpath%20d%3D%22M16%204h2a2%202%200%200%201%202%202v14a2%202%200%200%201-2%202H6a2%202%200%200%201-2-2V6a2%202%200%200%201%202-2h2%22%2F%3E%3Cpath%20d%3D%22m9%2014%202%202%204-4%22%2F%3E%3C%2Fsvg%3E"); }
.hmj-home-services > .wp-block-columns:nth-child(3) > .wp-block-column:nth-child(3) > h3.is-style-asterisk::before { --hmj-icon-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%233A89C3%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m15%2012-9.373%209.373a1%201%200%200%201-3.001-3L12%209%22%2F%3E%3Cpath%20d%3D%22m18%2015%204-4%22%2F%3E%3Cpath%20d%3D%22m21.5%2011.5-1.914-1.914A2%202%200%200%201%2019%208.172v-.344a2%202%200%200%200-.586-1.414l-1.657-1.657A6%206%200%200%200%2012.516%203H9l1.243%201.243A6%206%200%200%201%2012%208.485V10l2%202h1.172a2%202%200%200%201%201.414.586L18.5%2014.5%22%2F%3E%3C%2Fsvg%3E"); }
.hmj-home-services > .wp-block-columns:nth-child(5) > .wp-block-column:nth-child(1) > h3.is-style-asterisk::before { --hmj-icon-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%233A89C3%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20fill%3D%22%233A89C3%22%20stroke%3D%22none%22%20d%3D%22M19%2016H22L12%207L2%2016H5L12%209.69L19%2016M7%208.81V7H4V11.5L7%208.81Z%22%2F%3E%3C%2Fsvg%3E"); }
.hmj-home-services > .wp-block-columns:nth-child(5) > .wp-block-column:nth-child(2) > h3.is-style-asterisk::before { --hmj-icon-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%233A89C3%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M10%204%208%206M17%2019v2M2%2012h20M7%2019v2M9%205%207.621%203.621A2.121%202.121%200%200%200%204%205v12a2%202%200%200%200%202%202h12a2%202%200%200%200%202-2v-5%22%2F%3E%3C%2Fsvg%3E"); }
.hmj-home-services > .wp-block-columns:nth-child(5) > .wp-block-column:nth-child(3) > h3.is-style-asterisk::before { --hmj-icon-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%233A89C3%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M20%2013c0%205-3.5%207.5-7.66%208.95a1%201%200%200%201-.67-.01C7.5%2020.5%204%2018%204%2013V6a1%201%200%200%201%201-1c2%200%204.5-1.2%206.24-2.72a1.17%201.17%200%200%201%201.52%200C14.51%203.81%2017%205%2019%205a1%201%200%200%201%201%201z%22%2F%3E%3Cg%20transform%3D%22translate(6.5%206.5)%20scale(.46)%22%3E%3Cpath%20d%3D%22M14.7%206.3a1%201%200%200%200%200%201.4l1.6%201.6a1%201%200%200%200%201.4%200l3.106-3.105c.32-.322.863-.22.983.218a6%206%200%200%201-8.259%207.057l-7.91%207.91a1%201%200%200%201-2.999-3l7.91-7.91a6%206%200%200%201%207.057-8.259c.438.12.54.662.219.984z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E"); }
.hmj-home-services > .wp-block-columns > .wp-block-column > h3.is-style-asterisk::before{background-image:none!important;background-color:#3A89C3;-webkit-mask-image:var(--hmj-icon-mask);mask-image:var(--hmj-icon-mask);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:left center;mask-position:left center;-webkit-mask-size:contain;mask-size:contain;mask-mode:alpha;transition:background-color 250ms ease}
.hmj-home-services > .wp-block-columns > .wp-block-column > h3.is-style-asterisk:hover::before{background-color:#2B2B2B}
@media(prefers-reduced-motion:reduce){.hmj-home-services > .wp-block-columns > .wp-block-column > h3.is-style-asterisk::before{transition:none}}

/* Homepage and header styles relocated from content blocks */

.hmj-home-services > .wp-block-columns > .wp-block-column > .wp-block-buttons > .wp-block-button > .wp-block-button__link {
 color: #ffffff !important;
 background-color: #3A89C3 !important;
 border: 1px solid #3A89C3;
 border-radius: .33rem;
 padding: .6rem 1rem;
 font-family: "Montserrat", sans-serif !important;
 font-size: .9rem;
 font-weight: 700 !important;
 line-height: 1.55;
 text-align: center;
 text-decoration: none;
 transition: background-color 250ms ease, color 250ms ease, border-color 250ms ease;
}
.hmj-home-services > .wp-block-columns > .wp-block-column > .wp-block-buttons > .wp-block-button > .wp-block-button__link:hover,
.hmj-home-services > .wp-block-columns > .wp-block-column > .wp-block-buttons > .wp-block-button > .wp-block-button__link:focus-visible {
 background-color: #ffffff !important;
 color: #3A89C3 !important;
 border-color: #3A89C3;
}
@media (prefers-reduced-motion: reduce) {
 .hmj-home-services > .wp-block-columns > .wp-block-column > .wp-block-buttons > .wp-block-button > .wp-block-button__link { transition: none; }
}

/* Homepage: equal-height responsive services grid, shared with Gutenberg. */
.hmj-services-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); grid-auto-rows: 1fr; gap: var(--wp--preset--spacing--30) var(--wp--preset--spacing--40); align-items: stretch; }
.hmj-services-grid > .hmj-service-card { display: flex; flex-direction: column; gap: 16px; min-width: 0; margin: 0; height: 100%; box-sizing: border-box; }
.hmj-services-grid > .hmj-service-card > * { margin: 0; }
.hmj-services-grid > .hmj-service-card > .wp-block-buttons { margin-top: auto !important; padding-top: 8px; width: 100%; }
.hmj-services-grid .wp-block-button { width: 100%; }
.hmj-services-grid .wp-block-button__link { display: flex; align-items: center; justify-content: center; box-sizing: border-box; width: 100%; min-height: 3.4em; color: #ffffff !important; background-color: #3A89C3 !important; border: 1px solid #3A89C3; border-radius: .33rem; padding: .6rem 1rem; font-family: Montserrat, sans-serif !important; font-size: .9rem; font-weight: 700 !important; line-height: 1.55; text-align: center; text-decoration: none; transition: background-color 250ms, color 250ms, border-color 250ms; }
.hmj-services-grid .wp-block-button__link:hover, .hmj-services-grid .wp-block-button__link:focus-visible { background-color: #ffffff !important; color: #3A89C3 !important; }
.hmj-services-grid h3.is-style-asterisk::before { content: '' !important; display: block; width: 40px; height: 40px; margin: 0 0 16px; background-image: none !important; background-color: #3A89C3; clip-path: none; -webkit-mask-image: var(--hmj-icon-mask); mask-image: var(--hmj-icon-mask); -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-position: left center; mask-position: left center; -webkit-mask-size: contain; mask-size: contain; transition: background-color 250ms; }
.hmj-services-grid h3.is-style-asterisk:hover::before { background-color: #2B2B2B; }
.hmj-services-grid > .hmj-service-card:nth-child(1) > h3 { --hmj-icon-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%233A89C3%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M15%2021v-8a1%201%200%200%200-1-1h-4a1%201%200%200%200-1%201v8%22%2F%3E%3Cpath%20d%3D%22M3%2010a2%202%200%200%201%20.709-1.528l7-6a2%202%200%200%201%202.582%200l7%206A2%202%200%200%201%2021%2010v9a2%202%200%200%201-2%202H5a2%202%200%200%201-2-2z%22%2F%3E%3C%2Fsvg%3E"); }
.hmj-services-grid > .hmj-service-card:nth-child(2) > h3 { --hmj-icon-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%233A89C3%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20width%3D%228%22%20height%3D%224%22%20x%3D%228%22%20y%3D%222%22%20rx%3D%221%22%20ry%3D%221%22%2F%3E%3Cpath%20d%3D%22M16%204h2a2%202%200%200%201%202%202v14a2%202%200%200%201-2%202H6a2%202%200%200%201-2-2V6a2%202%200%200%201%202-2h2%22%2F%3E%3Cpath%20d%3D%22m9%2014%202%202%204-4%22%2F%3E%3C%2Fsvg%3E"); }
.hmj-services-grid > .hmj-service-card:nth-child(3) > h3 { --hmj-icon-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%233A89C3%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m15%2012-9.373%209.373a1%201%200%200%201-3.001-3L12%209%22%2F%3E%3Cpath%20d%3D%22m18%2015%204-4%22%2F%3E%3Cpath%20d%3D%22m21.5%2011.5-1.914-1.914A2%202%200%200%201%2019%208.172v-.344a2%202%200%200%200-.586-1.414l-1.657-1.657A6%206%200%200%200%2012.516%203H9l1.243%201.243A6%206%200%200%201%2012%208.485V10l2%202h1.172a2%202%200%200%201%201.414.586L18.5%2014.5%22%2F%3E%3C%2Fsvg%3E"); }
.hmj-services-grid > .hmj-service-card:nth-child(4) > h3 { --hmj-icon-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%233A89C3%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20fill%3D%22%233A89C3%22%20stroke%3D%22none%22%20d%3D%22M19%2016H22L12%207L2%2016H5L12%209.69L19%2016M7%208.81V7H4V11.5L7%208.81Z%22%2F%3E%3C%2Fsvg%3E"); }
.hmj-services-grid > .hmj-service-card:nth-child(5) > h3 { --hmj-icon-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%233A89C3%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M10%204%208%206M17%2019v2M2%2012h20M7%2019v2M9%205%207.621%203.621A2.121%202.121%200%200%200%204%205v12a2%202%200%200%200%202%202h12a2%202%200%200%200%202-2v-5%22%2F%3E%3C%2Fsvg%3E"); }
.hmj-services-grid > .hmj-service-card:nth-child(6) > h3 { --hmj-icon-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%233A89C3%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M20%2013c0%205-3.5%207.5-7.66%208.95a1%201%200%200%201-.67-.01C7.5%2020.5%204%2018%204%2013V6a1%201%200%200%201%201-1c2%200%204.5-1.2%206.24-2.72a1.17%201.17%200%200%201%201.52%200C14.51%203.81%2017%205%2019%205a1%201%200%200%201%201%201z%22%2F%3E%3Cg%20transform%3D%22translate(6.5%206.5)%20scale(.46)%22%3E%3Cpath%20d%3D%22M14.7%206.3a1%201%200%200%200%200%201.4l1.6%201.6a1%201%200%200%200%201.4%200l3.106-3.105c.32-.322.863-.22.983.218a6%206%200%200%201-8.259%207.057l-7.91%207.91a1%201%200%200%201-2.999-3l7.91-7.91a6%206%200%200%201%207.057-8.259c.438.12.54.662.219.984z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E"); }
@media (max-width: 1023px) { .hmj-services-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 599px) { .hmj-services-grid { grid-template-columns: minmax(0, 1fr); } }
@media (prefers-reduced-motion: reduce) { .hmj-services-grid .wp-block-button__link, .hmj-services-grid h3.is-style-asterisk::before { transition: none; } }

/* Homepage introduction: tablet and mobile text alignment, including Gutenberg. */
@media (max-width: 1023px) {
 .hmj-home-intro-columns h2 { text-align: center !important; }
 .hmj-home-intro-columns p { text-align: left !important; }
}

/* Homepage partners: centred heading above a tablet two-column grid and mobile single column. */
@media (max-width: 1023px) {
 .hmj-home-services .wp-block-columns:has(> .wp-block-column > .partners) { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px clamp(8px, 2vw, 20px); width: 100%; align-items: center !important; }
 .hmj-home-services .wp-block-columns:has(> .wp-block-column > .partners) > .wp-block-column { min-width: 0; width: auto; margin: 0 !important; }
 .hmj-home-services .wp-block-columns:has(> .wp-block-column > .partners) > .wp-block-column:first-child { grid-column: 1 / -1; }
 .hmj-home-services .wp-block-columns:has(> .wp-block-column > .partners) h2 { text-align: center !important; margin: 0; }
 .hmj-home-services .wp-block-columns:has(> .wp-block-column > .partners) .partners { margin: 0 auto !important; max-width: 100%; box-sizing: border-box; padding: 5px !important; }
 .hmj-home-services .wp-block-columns:has(> .wp-block-column > .partners) .partners img { display: block; max-width: 100%; height: auto; margin: 0 auto; }
}

@media (max-width: 599px) {
 .hmj-home-services .wp-block-columns:has(> .wp-block-column > .partners) { grid-template-columns: minmax(0, 1fr); }
 .hmj-home-services .wp-block-columns:has(> .wp-block-column > .partners) .partners { width: 200px; }
}

/* Migrated block CSS: home — hmj-home-hero-title */
:root :where(.hmj-home-hero-title) { position: relative; width: calc(100% + var(--wp--style--root--padding-left, 0px) + var(--wp--style--root--padding-right, 0px)); min-width: 0; max-width: none; display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); grid-template-rows: repeat(4, minmax(0, 1fr)); gap: 20px; padding: 36px; box-sizing: border-box; aspect-ratio: 1380 / 752; min-height: 620px; isolation: isolate; container-type: inline-size; overflow: hidden; }
:root :where(.hmj-home-hero-title > .wp-block-image) { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0 !important; z-index: 0; }
:root :where(.hmj-home-hero-title > .wp-block-image img) { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
:root :where(.hmj-home-hero-title::before) { content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none; background: linear-gradient(135deg, rgba(0,0,0,.62), rgba(0,0,0,.4) 50%, rgba(0,0,0,.66)); }
:root :where(.hmj-home-hero-title > h1) { grid-column: 1 / 5; grid-row: 1 / 3; align-self: start; z-index: 2; margin: 0 !important; padding: 0; max-width: none; color: #fff !important; font-size: clamp(22px, 4cqw, 54px); font-weight: 700; line-height: 1.15; text-align: left; text-wrap: balance; text-shadow: 0 2px 6px rgba(0,0,0,.5); }
:root :where(.hmj-home-hero-title > p) { grid-column: 3 / 7; grid-row: 2 / 4; align-self: end; z-index: 2; margin: 0 !important; max-width: none; color: #fff !important; font-size: clamp(16px, 2.1cqw, 28px); font-weight: 500; line-height: 1.5; text-align: right; text-wrap: pretty; text-shadow: 0 2px 6px rgba(0,0,0,.5); }

/* Gutenberg canvas: home — hmj-home-hero-title */
.editor-styles-wrapper .hmj-home-hero-title { position: relative; width: calc(100% + var(--wp--style--root--padding-left, 0px) + var(--wp--style--root--padding-right, 0px)); min-width: 0; max-width: none; display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); grid-template-rows: repeat(4, minmax(0, 1fr)); gap: 20px; padding: 36px; box-sizing: border-box; aspect-ratio: 1380 / 752; min-height: 620px; isolation: isolate; container-type: inline-size; overflow: hidden; }
.editor-styles-wrapper .hmj-home-hero-title > .wp-block-image { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0 !important; z-index: 0; }
.editor-styles-wrapper .hmj-home-hero-title > .wp-block-image img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.editor-styles-wrapper .hmj-home-hero-title::before { content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none; background: linear-gradient(135deg, rgba(0,0,0,.62), rgba(0,0,0,.4) 50%, rgba(0,0,0,.66)); }
.editor-styles-wrapper .hmj-home-hero-title > h1 { grid-column: 1 / 5; grid-row: 1 / 3; align-self: start; z-index: 2; margin: 0 !important; padding: 0; max-width: none; color: #fff !important; font-size: clamp(22px, 4cqw, 54px); font-weight: 700; line-height: 1.15; text-align: left; text-wrap: balance; text-shadow: 0 2px 6px rgba(0,0,0,.5); }
.editor-styles-wrapper .hmj-home-hero-title > p { grid-column: 3 / 7; grid-row: 2 / 4; align-self: end; z-index: 2; margin: 0 !important; max-width: none; color: #fff !important; font-size: clamp(16px, 2.1cqw, 28px); font-weight: 500; line-height: 1.5; text-align: right; text-wrap: pretty; text-shadow: 0 2px 6px rgba(0,0,0,.5); }

/* Keep Gutenberg image sizing aligned with the public hero. */
.editor-styles-wrapper .hmj-home-hero-title > .wp-block-image img { width:100%!important; height:100%!important; object-fit:cover; }

/* Migrated block CSS: home — partners-row */
:root :where(.partners-row .partners) { padding: 10px; box-sizing: border-box; }

/* Gutenberg canvas: home — partners-row */
.editor-styles-wrapper .partners-row .partners { padding: 10px; box-sizing: border-box; }

/* Homepage service-button height supplied by the central JavaScript snippet. */
.hmj-services-grid[data-hmj-equal-buttons] .wp-block-button__link{height:var(--hmj-service-button-height,auto)!important;box-sizing:border-box;white-space:normal;display:flex;align-items:center;justify-content:center;}



/* About Us hero — approved homepage proportions, public site and Gutenberg. */
.hmj-home-hero-title.hmj-about-hero { width:calc(100% + var(--wp--style--root--padding-left, 0px) + var(--wp--style--root--padding-right, 0px)); max-width:none; height:min(54.493vw,calc(100svh - 230px)); min-height:min(320px,calc(100svh - 230px)); aspect-ratio:1380 / 752; margin-left:calc(-1 * var(--wp--style--root--padding-left, 0px))!important; margin-right:calc(-1 * var(--wp--style--root--padding-right, 0px))!important; padding:clamp(20px,2.67vw,36px); }
.hmj-home-hero-title.hmj-about-hero::before { background:none!important; }
.hmj-home-hero-title.hmj-about-hero > .wp-block-image img { width:100%!important; height:100%!important; object-fit:cover; object-position:center 62%; }
.hmj-home-hero-title.hmj-about-hero > p { grid-area:3 / 3 / 5 / 7; align-self:end; padding-bottom:0; font-weight:400; }
@container (max-width:600px) { .hmj-home-hero-title.hmj-about-hero > p { grid-column:1 / -1; } }

/* ============================================================
   HMJ — Forms CSS
   ============================================================ */

/* Contact Us: name, email and telephone fields */
:is(#nf-field-1, #nf-field-2, #nf-field-5) {
 box-sizing: border-box;
 height: 30px;
 min-height: 30px;
 border: 0;
 border-bottom: 1px solid #2B2B2B;
 border-radius: 0;
}

/* Contact Us: Message field bottom border */
#nf-field-3 { border: 0; border-bottom: 1px solid #2B2B2B; border-radius: 0; }

/* Contact Us: input and placeholder text size */
:is(#nf-field-1, #nf-field-2, #nf-field-5, #nf-field-3),
:is(#nf-field-1, #nf-field-2, #nf-field-5, #nf-field-3)::placeholder { font-size: 14px; }

/* Contact form: rounded paper plane glides on hover */
#nf-field-4-wrap .nf-field-element { position: relative; display: inline-block; width: auto; max-width: 100%; }
#nf-field-4 { box-sizing: border-box; min-height: 44px; max-width: 100%; padding: 10px 48px 10px 18px; cursor: pointer; font-family: "Montserrat", sans-serif; font-size: 14px; }
#nf-field-4-wrap .nf-field-element::after { content: ""; pointer-events: none; position: absolute; right: 17px; top: calc(50% - 10px); width: 20px; height: 20px; background: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%233A89C3%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M21.4%202.6a1%201%200%200%200-1.08-.22L3.2%209.1a1%201%200%200%200%20.03%201.87l6.22%202.24%202.24%206.22a1%201%200%200%200%201.87.03l8.06-15.77a1%201%200%200%200-.22-1.09ZM9.45%2013.21%2016%207%22%2F%3E%3C%2Fsvg%3E") center / contain no-repeat; transition: transform 250ms ease; }
#nf-field-4-wrap .nf-field-element:has(#nf-field-4:hover)::after,
#nf-field-4-wrap .nf-field-element:has(#nf-field-4:focus-visible)::after { transform: translate(4px, -4px); }
@media (prefers-reduced-motion: reduce) { #nf-field-4-wrap .nf-field-element::after { transition: none; transform: none !important; } }

/* Discuss Your Project: match Contact Us button colours */
#nf-field-4 { color: #ffffff !important; background-color: #3A89C3 !important; border: 1px solid #3A89C3; border-radius: 4px; transition: background-color 250ms ease, color 250ms ease, border-color 250ms ease; }
#nf-field-4:hover, #nf-field-4:focus-visible { background-color: #ffffff !important; color: #3A89C3 !important; border-color: #3A89C3; }
#nf-field-4-wrap .nf-field-element::after { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23ffffff%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M21.4%202.6a1%201%200%200%200-1.08-.22L3.2%209.1a1%201%200%200%200%20.03%201.87l6.22%202.24%202.24%206.22a1%201%200%200%200%201.87.03l8.06-15.77a1%201%200%200%200-.22-1.09ZM9.45%2013.21%2016%207%22%2F%3E%3C%2Fsvg%3E"); }
#nf-field-4-wrap .nf-field-element:has(#nf-field-4:hover)::after,
#nf-field-4-wrap .nf-field-element:has(#nf-field-4:focus-visible)::after { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%233A89C3%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M21.4%202.6a1%201%200%200%200-1.08-.22L3.2%209.1a1%201%200%200%200%20.03%201.87l6.22%202.24%202.24%206.22a1%201%200%200%200%201.87.03l8.06-15.77a1%201%200%200%200-.22-1.09ZM9.45%2013.21%2016%207%22%2F%3E%3C%2Fsvg%3E"); }
@media (prefers-reduced-motion: reduce) { #nf-field-4 { transition: none; } }

/* Service form presentation relocated from page content; scoped to the six existing forms. */
main .nf-form-cont:where(#nf-form-6-cont, #nf-form-4-cont, #nf-form-7-cont, #nf-form-3-cont, #nf-form-2-cont, #nf-form-5-cont) .ninja-forms-field { font-family: "Montserrat", sans-serif; }
main .nf-form-cont:where(#nf-form-6-cont, #nf-form-4-cont, #nf-form-7-cont, #nf-form-3-cont, #nf-form-2-cont, #nf-form-5-cont) :is(.textbox-wrap input:not([type="submit"]), .email-wrap input, .phone-wrap input) { box-sizing: border-box; height: 30px; min-height: 30px; border: 0; border-bottom: 1px solid #2B2B2B; border-radius: 0; }
main .nf-form-cont:where(#nf-form-6-cont, #nf-form-4-cont, #nf-form-7-cont, #nf-form-3-cont, #nf-form-2-cont, #nf-form-5-cont) .textarea-wrap textarea { border: 0; border-bottom: 1px solid #2B2B2B; border-radius: 0; }
main .nf-form-cont:where(#nf-form-6-cont, #nf-form-4-cont, #nf-form-7-cont, #nf-form-3-cont, #nf-form-2-cont, #nf-form-5-cont) :is(.textbox-wrap input:not([type="submit"]), .email-wrap input, .phone-wrap input, .textarea-wrap textarea), main .nf-form-cont:where(#nf-form-6-cont, #nf-form-4-cont, #nf-form-7-cont, #nf-form-3-cont, #nf-form-2-cont, #nf-form-5-cont) :is(.textbox-wrap input:not([type="submit"]), .email-wrap input, .phone-wrap input, .textarea-wrap textarea)::placeholder { font-size: 14px; }
main .nf-form-cont:where(#nf-form-6-cont, #nf-form-4-cont, #nf-form-7-cont, #nf-form-3-cont, #nf-form-2-cont, #nf-form-5-cont) .submit-wrap .nf-field-element { position: relative; display: inline-block; width: 320px; max-width: 100%; transition: width 300ms ease; }
main .nf-form-cont:where(#nf-form-6-cont, #nf-form-4-cont, #nf-form-7-cont, #nf-form-3-cont, #nf-form-2-cont, #nf-form-5-cont) .submit-wrap input[type="submit"] { box-sizing: border-box; min-height: 44px; max-width: 100%; width: 100%; text-align: left; padding: 10px 48px 10px 18px; cursor: pointer; font-family: "Montserrat", sans-serif; font-size: 14px; color: #ffffff !important; background-color: #3A89C3 !important; border: 1px solid #3A89C3; border-radius: 4px; transition: background-color 250ms ease, color 250ms ease, border-color 250ms ease; }
main .nf-form-cont:where(#nf-form-6-cont, #nf-form-4-cont, #nf-form-7-cont, #nf-form-3-cont, #nf-form-2-cont, #nf-form-5-cont) .submit-wrap input[type="submit"]:hover, main .nf-form-cont:where(#nf-form-6-cont, #nf-form-4-cont, #nf-form-7-cont, #nf-form-3-cont, #nf-form-2-cont, #nf-form-5-cont) .submit-wrap input[type="submit"]:focus-visible { background-color: #ffffff !important; color: #3A89C3 !important; border-color: #3A89C3; }
main .nf-form-cont:where(#nf-form-6-cont, #nf-form-4-cont, #nf-form-7-cont, #nf-form-3-cont, #nf-form-2-cont, #nf-form-5-cont) .submit-wrap .nf-field-element::after { content: ""; pointer-events: none; position: absolute; right: 17px; top: calc(50% - 10px); width: 20px; height: 20px; background: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23ffffff%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M21.4%202.6a1%201%200%200%200-1.08-.22L3.2%209.1a1%201%200%200%200%20.03%201.87l6.22%202.24%202.24%206.22a1%201%200%200%200%201.87.03l8.06-15.77a1%201%200%200%200-.22-1.09ZM9.45%2013.21%2016%207%22%2F%3E%3C%2Fsvg%3E") center / contain no-repeat; transition: transform 250ms ease; }
main .nf-form-cont:where(#nf-form-6-cont, #nf-form-4-cont, #nf-form-7-cont, #nf-form-3-cont, #nf-form-2-cont, #nf-form-5-cont) .submit-wrap .nf-field-element:has(input[type="submit"]:hover)::after, main .nf-form-cont:where(#nf-form-6-cont, #nf-form-4-cont, #nf-form-7-cont, #nf-form-3-cont, #nf-form-2-cont, #nf-form-5-cont) .submit-wrap .nf-field-element:has(input[type="submit"]:focus-visible)::after { transform: translate(4px, -4px); background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%233A89C3%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M21.4%202.6a1%201%200%200%200-1.08-.22L3.2%209.1a1%201%200%200%200%20.03%201.87l6.22%202.24%202.24%206.22a1%201%200%200%200%201.87.03l8.06-15.77a1%201%200%200%200-.22-1.09ZM9.45%2013.21%2016%207%22%2F%3E%3C%2Fsvg%3E"); }
@media (hover: hover) and (pointer: fine) { main .nf-form-cont:where(#nf-form-6-cont, #nf-form-4-cont, #nf-form-7-cont, #nf-form-3-cont, #nf-form-2-cont, #nf-form-5-cont) .submit-wrap .nf-field-element:hover { width: 480px; } }
@media (prefers-reduced-motion: reduce) { main .nf-form-cont:where(#nf-form-6-cont, #nf-form-4-cont, #nf-form-7-cont, #nf-form-3-cont, #nf-form-2-cont, #nf-form-5-cont) .submit-wrap .nf-field-element { transition: none; } main .nf-form-cont:where(#nf-form-6-cont, #nf-form-4-cont, #nf-form-7-cont, #nf-form-3-cont, #nf-form-2-cont, #nf-form-5-cont) .submit-wrap input[type="submit"] { transition: none; } main .nf-form-cont:where(#nf-form-6-cont, #nf-form-4-cont, #nf-form-7-cont, #nf-form-3-cont, #nf-form-2-cont, #nf-form-5-cont) .submit-wrap .nf-field-element::after { transition: none; transform: none !important; } }
main .nf-form-cont:where(#nf-form-7-cont) .submit-wrap .nf-field-element { width: 300px; }
main .nf-form-cont:where(#nf-form-7-cont) .submit-wrap .nf-field-element::after { right: 17px; }
@media (hover: hover) and (pointer: fine) { main .nf-form-cont:where(#nf-form-7-cont) .submit-wrap .nf-field-element:hover { width: 450px; } }
main .nf-form-cont:where(#nf-form-3-cont) .submit-wrap .nf-field-element { width: 218.046875px; }
main .nf-form-cont:where(#nf-form-3-cont) .submit-wrap .nf-field-element::after { right: 17px; }
@media (hover: hover) and (pointer: fine) { main .nf-form-cont:where(#nf-form-3-cont) .submit-wrap .nf-field-element:hover { width: 327.0703125px; } }
main .nf-form-cont:where(#nf-form-2-cont) .submit-wrap .nf-field-element { width: 320px; }
main .nf-form-cont:where(#nf-form-2-cont) .submit-wrap .nf-field-element::after { right: 19px; }
@media (hover: hover) and (pointer: fine) { main .nf-form-cont:where(#nf-form-2-cont) .submit-wrap .nf-field-element:hover { width: 480px; } }
main .nf-form-cont:where(#nf-form-5-cont) .submit-wrap .nf-field-element { width: 300px; }
main .nf-form-cont:where(#nf-form-5-cont) .submit-wrap .nf-field-element::after { right: 17px; }
@media (hover: hover) and (pointer: fine) { main .nf-form-cont:where(#nf-form-5-cont) .submit-wrap .nf-field-element:hover { width: 450px; } }

/* Keep Ninja Forms block previews at the actual column width. */
.editor-styles-wrapper .nf-iframe-overlay { width: 100%; }
.editor-styles-wrapper .nf-iframe-overlay iframe { display: block; width: 100%; min-width: 100%; height: 650px; }

/* Ninja Forms renders a full site shell inside its Gutenberg preview. Remove only that preview shell. */
html:has(body.home.page-id-128 #nf-form-6-cont):not(:has(.hmj-home-services)) {margin-top:0!important;}
body.home.page-id-128:has(#nf-form-6-cont):not(:has(.hmj-home-services)) {margin:0;padding:0;background:transparent;}
body.home.page-id-128:has(#nf-form-6-cont):not(:has(.hmj-home-services)) :is(#wpadminbar,header,footer,.vue-app),
body.home.page-id-128:has(#nf-form-6-cont):not(:has(.hmj-home-services)) main > :not(.entry-content) {display:none!important;}
body.home.page-id-128:has(#nf-form-6-cont):not(:has(.hmj-home-services)) :is(.wp-site-blocks,main,.entry-content) {padding:0!important;margin:0!important;max-width:none!important;}
body.home.page-id-128:has(#nf-form-6-cont):not(:has(.hmj-home-services)) #nf-form-6-cont {max-width:none!important;width:100%;margin:0;}

/* Bathroom form inherits the shared website form presentation. */
.hmj-bath-form {min-width:0;padding:0;background:transparent;border:0;border-radius:0;}
.hmj-bath-form iframe[title="nf-preview-form-6"] {width:100%!important;height:625px!important;min-height:625px;}

/* Migrated page CSS: contact */
/* Discuss Your Project: mouse-hover expansion only */
#nf-field-4-wrap .nf-field-element { width: 218.046875px; max-width: 100%; transition: width 300ms ease; }
#nf-field-4 { width: 100%; text-align: left; }
@media (hover: hover) and (pointer: fine) {
 #nf-field-4-wrap .nf-field-element:hover { width: 327.0703125px; }
}
@media (prefers-reduced-motion: reduce) {
 #nf-field-4-wrap .nf-field-element { transition: none; }
}


/* ============================================================
   HMJ — Service pages CSS
   ============================================================ */

/* Matching blue icons on the Services page */
body.page-id-177 main h3.is-style-asterisk::before { content: ""; display: block; width: 40px; height: 40px; margin: 0 0 16px; background-color: transparent; background-repeat: no-repeat; background-position: left center; background-size: contain; clip-path: none; }
body.page-id-177 .wp-block-post-content > .wp-block-group:nth-child(1) > .wp-block-group > .wp-block-columns:nth-child(3) > .wp-block-column:nth-child(1) > h3.is-style-asterisk::before { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%233A89C3%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M15%2021v-8a1%201%200%200%200-1-1h-4a1%201%200%200%200-1%201v8%22%2F%3E%3Cpath%20d%3D%22M3%2010a2%202%200%200%201%20.709-1.528l7-6a2%202%200%200%201%202.582%200l7%206A2%202%200%200%201%2021%2010v9a2%202%200%200%201-2%202H5a2%202%200%200%201-2-2z%22%2F%3E%3C%2Fsvg%3E"); }
body.page-id-177 .wp-block-post-content > .wp-block-group:nth-child(1) > .wp-block-group > .wp-block-columns:nth-child(5) > .wp-block-column:nth-child(2) > h3.is-style-asterisk::before { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%233A89C3%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20width%3D%228%22%20height%3D%224%22%20x%3D%228%22%20y%3D%222%22%20rx%3D%221%22%20ry%3D%221%22%2F%3E%3Cpath%20d%3D%22M16%204h2a2%202%200%200%201%202%202v14a2%202%200%200%201-2%202H6a2%202%200%200%201-2-2V6a2%202%200%200%201%202-2h2%22%2F%3E%3Cpath%20d%3D%22m9%2014%202%202%204-4%22%2F%3E%3C%2Fsvg%3E"); }
body.page-id-177 .wp-block-post-content > .wp-block-group:nth-child(2) > .wp-block-group > .wp-block-columns:nth-child(3) > .wp-block-column:nth-child(1) > h3.is-style-asterisk::before { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%233A89C3%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m15%2012-9.373%209.373a1%201%200%200%201-3.001-3L12%209%22%2F%3E%3Cpath%20d%3D%22m18%2015%204-4%22%2F%3E%3Cpath%20d%3D%22m21.5%2011.5-1.914-1.914A2%202%200%200%201%2019%208.172v-.344a2%202%200%200%200-.586-1.414l-1.657-1.657A6%206%200%200%200%2012.516%203H9l1.243%201.243A6%206%200%200%201%2012%208.485V10l2%202h1.172a2%202%200%200%201%201.414.586L18.5%2014.5%22%2F%3E%3C%2Fsvg%3E"); }
body.page-id-177 .wp-block-post-content > .wp-block-group:nth-child(2) > .wp-block-group > .wp-block-columns:nth-child(5) > .wp-block-column:nth-child(2) > h3.is-style-asterisk::before { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%233A89C3%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20fill%3D%22%233A89C3%22%20stroke%3D%22none%22%20d%3D%22M19%2016H22L12%207L2%2016H5L12%209.69L19%2016M7%208.81V7H4V11.5L7%208.81Z%22%2F%3E%3C%2Fsvg%3E"); }
body.page-id-177 .wp-block-post-content > .wp-block-group:nth-child(3) > .wp-block-group > .wp-block-columns:nth-child(3) > .wp-block-column:nth-child(1) > h3.is-style-asterisk::before { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%233A89C3%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M10%204%208%206M17%2019v2M2%2012h20M7%2019v2M9%205%207.621%203.621A2.121%202.121%200%200%200%204%205v12a2%202%200%200%200%202%202h12a2%202%200%200%200%202-2v-5%22%2F%3E%3C%2Fsvg%3E"); }
body.page-id-177 .wp-block-post-content > .wp-block-group:nth-child(3) > .wp-block-group > .wp-block-columns:nth-child(5) > .wp-block-column:nth-child(2) > h3.is-style-asterisk::before { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%233A89C3%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M20%2013c0%205-3.5%207.5-7.66%208.95a1%201%200%200%201-.67-.01C7.5%2020.5%204%2018%204%2013V6a1%201%200%200%201%201-1c2%200%204.5-1.2%206.24-2.72a1.17%201.17%200%200%201%201.52%200C14.51%203.81%2017%205%2019%205a1%201%200%200%201%201%201z%22%2F%3E%3Cg%20transform%3D%22translate(6.5%206.5)%20scale(.46)%22%3E%3Cpath%20d%3D%22M14.7%206.3a1%201%200%200%200%200%201.4l1.6%201.6a1%201%200%200%200%201.4%200l3.106-3.105c.32-.322.863-.22.983.218a6%206%200%200%201-8.259%207.057l-7.91%207.91a1%201%200%200%201-2.999-3l7.91-7.91a6%206%200%200%201%207.057-8.259c.438.12.54.662.219.984z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E"); }

/* Public design mirrored in Gutenberg: service buttons, icons and cover text */
.hmj-service-buttons { flex-wrap: nowrap; gap: 12px; }
.hmj-service-buttons .wp-block-button { flex: 0 1 128px; min-width: 0; }
.hmj-service-buttons .wp-block-button__link { box-sizing: border-box; width: 128px; max-width: 100%; font-family: Montserrat, sans-serif; font-size: 14.4px; font-weight: 500; line-height: 22.32px; border-radius: 5.28px; transition: background-color 250ms ease, color 250ms ease, border-color 250ms ease; }
.hmj-service-buttons .is-style-outline .wp-block-button__link { color: #2B2B2B !important; border: 1px solid #2B2B2B; background-color: transparent !important; padding: 8.6px 15px; }
.hmj-service-buttons .is-style-outline .wp-block-button__link:hover { background-color: #2B2B2B !important; color: #FFFFFF !important; border-color: #2B2B2B; }
.hmj-service-buttons .is-style-outline .wp-block-button__link:focus-visible { background-color: #2B2B2B !important; color: #FFFFFF !important; border-color: #2B2B2B; }
.hmj-service-buttons .is-style-fill .wp-block-button__link { color: #FFFFFF !important; background-color: #3A89C3 !important; border: 1px solid #3A89C3; padding: 9.6px 16px; }
.hmj-service-buttons .is-style-fill .wp-block-button__link:hover { background-color: #FFFFFF !important; color: #3A89C3 !important; border-color: #3A89C3; }
.hmj-service-buttons .is-style-fill .wp-block-button__link:focus-visible { background-color: #FFFFFF !important; color: #3A89C3 !important; border-color: #3A89C3; }
.editor-styles-wrapper :is(h3#residential-builder,h3#project-management)::before{content:"";display:block;width:40px;height:40px;margin:0 0 16px;background-color:transparent;background-repeat:no-repeat;background-position:left center;background-size:contain;clip-path:none}
.editor-styles-wrapper h3#residential-builder::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%233A89C3%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M15%2021v-8a1%201%200%200%200-1-1h-4a1%201%200%200%200-1%201v8%22%2F%3E%3Cpath%20d%3D%22M3%2010a2%202%200%200%201%20.709-1.528l7-6a2%202%200%200%201%202.582%200l7%206A2%202%200%200%201%2021%2010v9a2%202%200%200%201-2%202H5a2%202%200%200%201-2-2z%22%2F%3E%3C%2Fsvg%3E")}
.editor-styles-wrapper h3#project-management::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%233A89C3%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20width%3D%228%22%20height%3D%224%22%20x%3D%228%22%20y%3D%222%22%20rx%3D%221%22%20ry%3D%221%22%2F%3E%3Cpath%20d%3D%22M16%204h2a2%202%200%200%201%202%202v14a2%202%200%200%201-2%202H6a2%202%200%200%201-2-2V6a2%202%200%200%201%202-2h2%22%2F%3E%3Cpath%20d%3D%22m9%2014%202%202%204-4%22%2F%3E%3C%2Fsvg%3E")}
.editor-styles-wrapper .wp-block-cover:not(.is-light) .wp-block-cover__inner-container > p:not(.has-text-color){color:#ffffff}

/* Matching blue icons on the Services page */
.editor-styles-wrapper:has(.hmj-service-buttons) h3.is-style-asterisk::before { content: ""; display: block; width: 40px; height: 40px; margin: 0 0 16px; background-color: transparent; background-repeat: no-repeat; background-position: left center; background-size: contain; clip-path: none; }
.editor-styles-wrapper:has(.hmj-service-buttons) .wp-block-post-content > .wp-block-group:nth-child(1) > .wp-block-group > .wp-block-columns:nth-child(3) > .wp-block-column:nth-child(1) > h3.is-style-asterisk::before { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%233A89C3%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M15%2021v-8a1%201%200%200%200-1-1h-4a1%201%200%200%200-1%201v8%22%2F%3E%3Cpath%20d%3D%22M3%2010a2%202%200%200%201%20.709-1.528l7-6a2%202%200%200%201%202.582%200l7%206A2%202%200%200%201%2021%2010v9a2%202%200%200%201-2%202H5a2%202%200%200%201-2-2z%22%2F%3E%3C%2Fsvg%3E"); }
.editor-styles-wrapper:has(.hmj-service-buttons) .wp-block-post-content > .wp-block-group:nth-child(1) > .wp-block-group > .wp-block-columns:nth-child(5) > .wp-block-column:nth-child(2) > h3.is-style-asterisk::before { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%233A89C3%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20width%3D%228%22%20height%3D%224%22%20x%3D%228%22%20y%3D%222%22%20rx%3D%221%22%20ry%3D%221%22%2F%3E%3Cpath%20d%3D%22M16%204h2a2%202%200%200%201%202%202v14a2%202%200%200%201-2%202H6a2%202%200%200%201-2-2V6a2%202%200%200%201%202-2h2%22%2F%3E%3Cpath%20d%3D%22m9%2014%202%202%204-4%22%2F%3E%3C%2Fsvg%3E"); }
.editor-styles-wrapper:has(.hmj-service-buttons) .wp-block-post-content > .wp-block-group:nth-child(2) > .wp-block-group > .wp-block-columns:nth-child(3) > .wp-block-column:nth-child(1) > h3.is-style-asterisk::before { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%233A89C3%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m15%2012-9.373%209.373a1%201%200%200%201-3.001-3L12%209%22%2F%3E%3Cpath%20d%3D%22m18%2015%204-4%22%2F%3E%3Cpath%20d%3D%22m21.5%2011.5-1.914-1.914A2%202%200%200%201%2019%208.172v-.344a2%202%200%200%200-.586-1.414l-1.657-1.657A6%206%200%200%200%2012.516%203H9l1.243%201.243A6%206%200%200%201%2012%208.485V10l2%202h1.172a2%202%200%200%201%201.414.586L18.5%2014.5%22%2F%3E%3C%2Fsvg%3E"); }
.editor-styles-wrapper:has(.hmj-service-buttons) .wp-block-post-content > .wp-block-group:nth-child(2) > .wp-block-group > .wp-block-columns:nth-child(5) > .wp-block-column:nth-child(2) > h3.is-style-asterisk::before { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%233A89C3%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20fill%3D%22%233A89C3%22%20stroke%3D%22none%22%20d%3D%22M19%2016H22L12%207L2%2016H5L12%209.69L19%2016M7%208.81V7H4V11.5L7%208.81Z%22%2F%3E%3C%2Fsvg%3E"); }
.editor-styles-wrapper:has(.hmj-service-buttons) .wp-block-post-content > .wp-block-group:nth-child(3) > .wp-block-group > .wp-block-columns:nth-child(3) > .wp-block-column:nth-child(1) > h3.is-style-asterisk::before { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%233A89C3%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M10%204%208%206M17%2019v2M2%2012h20M7%2019v2M9%205%207.621%203.621A2.121%202.121%200%200%200%204%205v12a2%202%200%200%200%202%202h12a2%202%200%200%200%202-2v-5%22%2F%3E%3C%2Fsvg%3E"); }
.editor-styles-wrapper:has(.hmj-service-buttons) .wp-block-post-content > .wp-block-group:nth-child(3) > .wp-block-group > .wp-block-columns:nth-child(5) > .wp-block-column:nth-child(2) > h3.is-style-asterisk::before { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%233A89C3%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M20%2013c0%205-3.5%207.5-7.66%208.95a1%201%200%200%201-.67-.01C7.5%2020.5%204%2018%204%2013V6a1%201%200%200%201%201-1c2%200%204.5-1.2%206.24-2.72a1.17%201.17%200%200%201%201.52%200C14.51%203.81%2017%205%2019%205a1%201%200%200%201%201%201z%22%2F%3E%3Cg%20transform%3D%22translate(6.5%206.5)%20scale(.46)%22%3E%3Cpath%20d%3D%22M14.7%206.3a1%201%200%200%200%200%201.4l1.6%201.6a1%201%200%200%200%201.4%200l3.106-3.105c.32-.322.863-.22.983.218a6%206%200%200%201-8.259%207.057l-7.91%207.91a1%201%200%200%201-2.999-3l7.91-7.91a6%206%200%200%201%207.057-8.259c.438.12.54.662.219.984z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E"); }

/* Case Study: the header and hero share the first viewport. */
.hmj-case-screen { box-sizing:border-box; display:flex; flex-direction:column; gap:0; height:100vh; height:100svh; min-height:0; padding:0; margin-top:0; }
body.admin-bar .wp-site-blocks .hmj-case-screen { height:calc(100svh - var(--wp-admin--admin-bar--height,32px)); }
.hmj-case-screen > :is(header,[data-type="core/template-part"]) { flex:0 0 auto; width:100%; margin:0!important; }
.hmj-case-screen > .wp-block-post-featured-image { position:relative; flex:1 1 0; min-height:0; width:100%; max-width:none; margin:0!important; overflow:hidden; }
.hmj-case-screen > .wp-block-post-featured-image img { position:absolute; inset:0; display:block; width:100%!important; height:100%!important; object-fit:cover; border-radius:0!important; }
.hmj-case-screen > header.hmj-header-compact { position:fixed; left:0; right:0; width:auto; }

/* Bathroom Remodels: approved photographic layout, shared with Gutenberg. */
body:has(.hmj-bathroom-remodels) .wp-block-post-title {max-width:1280px;text-align:left;font-size:clamp(40px,4.7vw,64px);line-height:1.08;}
.hmj-bathroom-remodels {margin-top:0!important;margin-bottom:64px;}
.hmj-bathroom-remodels p {font-size:18px;line-height:1.55;margin:0;}
.hmj-bathroom-remodels > p {margin-bottom:48px;max-width:none;}
.hmj-bathroom-remodels h3 {color:#3A89C3;font-size:clamp(22px,2.1vw,29px);font-weight:700;line-height:1.18;margin:0;}
.hmj-bathroom-remodels .wp-block-image {margin:0;overflow:hidden;border-radius:3px;}
.hmj-bathroom-remodels .wp-block-image img {display:block;width:100%;object-fit:cover;}
.hmj-bath-feature.wp-block-columns {display:grid!important;grid-template-columns:1fr 1.28fr 1fr;gap:20px;align-items:stretch;margin:0 0 44px;}
.hmj-bath-feature > .wp-block-column {min-width:0;display:flex;flex-direction:column;gap:24px;margin:0;}
.hmj-bath-feature-left .wp-block-image {height:clamp(360px,39vw,540px);margin-top:auto;}
.hmj-bath-feature-left img {height:100%;}
.hmj-bath-feature-center .wp-block-image {position:relative;flex:1;min-height:700px;}
.hmj-bath-feature-center img {position:absolute;inset:0;height:100%;object-position:42% center;}
.hmj-bath-feature-right .wp-block-image {height:clamp(360px,40vw,560px);flex:1;min-height:360px;}
.hmj-bath-feature-right img {height:100%;object-position:55% center;}
.hmj-bath-gallery.wp-block-columns {display:grid!important;grid-template-columns:1.3fr 1fr 1.3fr;gap:18px;margin:0 0 64px;}
.hmj-bath-gallery > .wp-block-column {min-width:0;margin:0;}
.hmj-bath-gallery img {height:clamp(260px,28vw,400px);}
.hmj-bath-enquiry.wp-block-columns {gap:48px;align-items:flex-start;margin:0;}
.hmj-bath-enquiry-copy {min-width:0;}
.hmj-bath-enquiry h2 {font-size:clamp(32px,3.6vw,48px);line-height:1.13;font-weight:700;margin:10px 0 32px;}
.hmj-bath-enquiry h3 {font-size:clamp(21px,1.8vw,25px);margin:0 0 12px;}
.hmj-bath-enquiry hr {border:0;border-top:1px solid #d7e6f1;width:100%;max-width:none;margin:32px 0;}

/* Bathroom photographic layout: responsive rules. */
@media(max-width:1023px) and (min-width:782px){.hmj-bath-feature.wp-block-columns{gap:16px}.hmj-bathroom-remodels p{font-size:16px}.hmj-bath-feature-center .wp-block-image{min-height:660px}.hmj-bath-enquiry.wp-block-columns{gap:28px}}
@media(max-width:781px){.hmj-bathroom-remodels > p{margin-bottom:32px}.hmj-bath-feature.wp-block-columns{grid-template-columns:minmax(0,1fr);gap:32px}.hmj-bath-feature-left .wp-block-image,.hmj-bath-feature-right .wp-block-image{height:auto;flex:none;min-height:0}.hmj-bath-feature-left img,.hmj-bath-feature-right img{height:auto;max-height:620px;object-fit:cover}.hmj-bath-feature-center .wp-block-image{min-height:0;position:static}.hmj-bath-feature-center img{position:static;height:auto;max-height:660px}.hmj-bath-gallery.wp-block-columns{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:40px}.hmj-bath-gallery img{height:200px}.hmj-bath-enquiry.wp-block-columns{gap:32px}.hmj-bathroom-remodels p{font-size:17px}}
@media(max-width:480px){.hmj-bath-gallery.wp-block-columns{grid-template-columns:minmax(0,1fr);gap:16px}.hmj-bath-gallery img{height:auto;max-height:460px}.hmj-bathroom-remodels{margin-bottom:40px}}

/* Match native image crops in Gutenberg and keep this form button full width. */
.hmj-bath-feature-left .wp-block-image img,.hmj-bath-feature-center .wp-block-image img,.hmj-bath-feature-right .wp-block-image img{height:100%!important;}
.hmj-bath-gallery .wp-block-image {height:clamp(260px,28vw,400px);}
.hmj-bath-gallery .wp-block-image img{height:100%!important;}
body:has(.hmj-bathroom-remodels) .wp-block-post-title + .wp-block-spacer{height:8px!important;}
body:has(.hmj-bathroom-remodels) .wp-block-post-content{margin-top:16px;}




@media(max-width:781px){.hmj-bath-feature-left .wp-block-image img,.hmj-bath-feature-center .wp-block-image img,.hmj-bath-feature-right .wp-block-image img{height:auto!important;}.hmj-bath-gallery .wp-block-image{height:200px;}}
@media(max-width:480px){.hmj-bath-gallery .wp-block-image{height:auto;}.hmj-bath-gallery .wp-block-image img{height:auto!important;}}

/* Migrated block CSS: renovations — hmj-renovations-fluid-carousel */
:root :where(.hmj-renovations-fluid-carousel .splide__arrow:focus-visible) {
  outline: 3px solid #3A89C3 !important;
  outline-offset: 3px !important;
}
:root :where(.hmj-renovations-fluid-carousel .splide__pagination__page:focus-visible) {
  outline: 3px solid #3A89C3 !important;
  outline-offset: 3px !important;
}

/* Gutenberg canvas: renovations — hmj-renovations-fluid-carousel */
.editor-styles-wrapper .hmj-renovations-fluid-carousel .splide__arrow:focus-visible {
  outline: 3px solid #3A89C3 !important;
  outline-offset: 3px !important;
}
.editor-styles-wrapper .hmj-renovations-fluid-carousel .splide__pagination__page:focus-visible {
  outline: 3px solid #3A89C3 !important;
  outline-offset: 3px !important;
}

/* Migrated block CSS: roof — hmj-roof-fluid-carousel */
:root :where(.hmj-roof-fluid-carousel .splide__arrow:focus-visible) {
  outline: 3px solid #3A89C3 !important;
  outline-offset: 3px !important;
}
:root :where(.hmj-roof-fluid-carousel .splide__pagination__page:focus-visible) {
  outline: 3px solid #3A89C3 !important;
  outline-offset: 3px !important;
}

/* Gutenberg canvas: roof — hmj-roof-fluid-carousel */
.editor-styles-wrapper .hmj-roof-fluid-carousel .splide__arrow:focus-visible {
  outline: 3px solid #3A89C3 !important;
  outline-offset: 3px !important;
}
.editor-styles-wrapper .hmj-roof-fluid-carousel .splide__pagination__page:focus-visible {
  outline: 3px solid #3A89C3 !important;
  outline-offset: 3px !important;
}

/* Migrated block CSS: insurance — hmj-insurance-fluid-carousel */
:root :where(.hmj-insurance-fluid-carousel .splide__arrow:focus-visible) {
  outline: 3px solid #3A89C3 !important;
  outline-offset: 3px !important;
}
:root :where(.hmj-insurance-fluid-carousel .splide__pagination__page:focus-visible) {
  outline: 3px solid #3A89C3 !important;
  outline-offset: 3px !important;
}

/* Gutenberg canvas: insurance — hmj-insurance-fluid-carousel */
.editor-styles-wrapper .hmj-insurance-fluid-carousel .splide__arrow:focus-visible {
  outline: 3px solid #3A89C3 !important;
  outline-offset: 3px !important;
}
.editor-styles-wrapper .hmj-insurance-fluid-carousel .splide__pagination__page:focus-visible {
  outline: 3px solid #3A89C3 !important;
  outline-offset: 3px !important;
}


/* Homepage carousel controls, migrated from the inline snippet. */

.hmj-gallery-section { --hmj-gallery-height: min(420px,calc(100svh - 280px)); padding-top:32px!important; padding-bottom:32px!important; }
.hmj-gallery-section h2 { font-size:clamp(24px,3vw,40px); line-height:1.2; text-align:center; margin-top:0!important; margin-bottom:16px!important; }
.hmj-gallery-section .hmj-gallery-viewport { width:100%; overflow-x:auto; overflow-y:hidden; position:relative; height:var(--hmj-gallery-height); direction:ltr; touch-action:pan-y; }
.hmj-gallery-section .hmj-gallery-viewport.is-enhanced { overflow:hidden; cursor:grab; }
.hmj-gallery-section .hmj-gallery-viewport.is-dragging { cursor:grabbing; }
.hmj-gallery-section .hmj-gallery-track { display:flex; flex-wrap:nowrap; gap:16px; width:max-content; height:var(--hmj-gallery-height); position:relative; direction:ltr; will-change:transform; }
.hmj-gallery-section .hmj-gallery-slide { margin:0!important; padding:0; flex:0 0 auto; width:calc(var(--hmj-gallery-height) * var(--hmj-image-ratio)); height:var(--hmj-gallery-height); }
.hmj-gallery-section .hmj-gallery-slide img { display:block; height:100%!important; width:100%!important; max-width:none!important; object-fit:contain; user-select:none; -webkit-user-drag:none; }
.hmj-gallery-section .hmj-gallery-controls { display:flex; justify-content:center; align-items:center; flex-wrap:nowrap; gap:16px; margin:16px auto 0!important; width:max-content; max-width:100%; direction:ltr; }
.hmj-gallery-section .hmj-gallery-control { appearance:none; display:inline-flex; align-items:center; justify-content:center; flex:0 0 48px; width:48px; height:48px; min-width:48px; padding:10px; margin:0; border:1px solid #3A89C3; border-radius:4px; color:#3A89C3; background:#fff; box-shadow:none; cursor:pointer; line-height:1; transition:background-color .18s ease,color .18s ease,border-color .18s ease; }
.hmj-gallery-section .hmj-gallery-control svg { width:24px; height:24px; display:block; fill:currentColor; pointer-events:none; }
.hmj-gallery-section .hmj-gallery-control:hover, .hmj-gallery-section .hmj-gallery-control:active, .hmj-gallery-section .hmj-gallery-control[aria-pressed="true"] { background:#2B2B2B; border-color:#2B2B2B; color:#fff; }
.hmj-gallery-section .hmj-gallery-control:focus-visible { outline:3px solid #3A89C3; outline-offset:3px; }
.hmj-gallery-section .hmj-gallery-control:active svg { transform:scale(.92); }
.hmj-gallery-section .splide__arrows, .hmj-gallery-section .splide__pagination, .hmj-gallery-section .splide__toggle { display:none!important; }
.hmj-gallery-section .splide__track { height:var(--hmj-gallery-height)!important; }
@media(max-width:1024px) { .hmj-gallery-section { --hmj-gallery-height:min(320px,calc(100svh - 280px)); } .hmj-gallery-section .hmj-gallery-track { gap:12px; } }
@media(max-width:767px) { .hmj-gallery-section { --hmj-gallery-height:min(240px,calc(100svh - 280px)); padding:16px!important; } .hmj-gallery-section .hmj-gallery-track { gap:10px; } .hmj-gallery-section .hmj-gallery-controls { gap:12px; } }
@media(max-height:500px) { .hmj-gallery-section { --hmj-gallery-height:clamp(72px,calc(100svh - 240px),240px); padding-top:12px!important; padding-bottom:12px!important; } .hmj-gallery-section h2 { font-size:24px; margin-bottom:12px!important; } .hmj-gallery-section .hmj-gallery-controls { margin-top:12px!important; } }
@media(prefers-reduced-motion:reduce) { .hmj-gallery-section .hmj-gallery-control { transition:none; } }
/*# sourceURL=hmj-home-gallery-controls-inline-css */

/* Accessible homepage text and shared enquiry buttons. */
body.home .hmj-home-hero-title > p{background:rgba(17,17,17,.90);padding:12px 16px;border-radius:4px;box-sizing:border-box;}
.wp-site-blocks .hmj-services-grid .wp-block-button__link,
header.wp-block-template-part .wp-block-button.is-style-fill .wp-block-button__link,
footer.wp-block-template-part .wp-block-button.is-style-fill .wp-block-button__link{background-color:#246b9e!important;border-color:#246b9e!important;color:#fff!important;}
.wp-site-blocks .hmj-services-grid .wp-block-button__link:is(:hover,:focus-visible),
header.wp-block-template-part .wp-block-button.is-style-fill .wp-block-button__link:is(:hover,:focus-visible),
footer.wp-block-template-part .wp-block-button.is-style-fill .wp-block-button__link:is(:hover,:focus-visible){background-color:#fff!important;color:#246b9e!important;border-color:#246b9e!important;}

/* Approved header layout: 1280px navigation breakpoint. */
@media(min-width:1280px){header.wp-block-template-part .hmj-header-shell .hmj-header-row{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;grid-template-rows:auto!important;column-gap:24px!important;row-gap:0!important;align-items:center!important}header.wp-block-template-part .hmj-header-shell .hmj-header-brand{grid-column:1!important;grid-row:1!important}header.wp-block-template-part .hmj-header-shell .hmj-header-nav{display:contents!important}header.wp-block-template-part .hmj-header-shell .hmj-header-nav>.wp-block-navigation{grid-column:2!important;grid-row:1!important;justify-self:stretch!important;width:100%!important;justify-content:center!important;min-width:0!important}header.wp-block-template-part .hmj-header-shell .hmj-desktop-header-buttons{grid-column:3!important;grid-row:1!important;display:flex!important;flex-wrap:nowrap!important;justify-self:end!important}header.wp-block-template-part .hmj-header-shell .wp-block-navigation__responsive-container-open{display:none!important}header.wp-block-template-part .hmj-header-shell .wp-block-navigation__responsive-container:not(.is-menu-open){display:block!important}header.wp-block-template-part .hmj-header-shell .wp-block-navigation__container{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;justify-content:center!important}header.wp-block-template-part .hmj-header-shell .wp-block-navigation-item__label,header.wp-block-template-part .hmj-header-shell .wp-block-button__link{white-space:nowrap!important}header.wp-block-template-part .hmj-header-shell .hmj-header-nav>.wp-block-navigation{align-self:center!important}header.wp-block-template-part .hmj-header-shell .wp-block-navigation__responsive-container-content{align-items:center!important;justify-content:center!important}}@media(max-width:1279px){header.wp-block-template-part .hmj-header-shell .hmj-header-row{display:flex!important;flex-wrap:nowrap!important;justify-content:space-between!important;align-items:center!important}header.wp-block-template-part .hmj-header-shell .hmj-header-nav{display:flex!important;width:auto!important;margin-left:auto!important}header.wp-block-template-part .hmj-header-shell .hmj-desktop-header-buttons{display:none!important}header.wp-block-template-part .hmj-header-shell .wp-block-navigation__responsive-container-open{display:flex!important}header.wp-block-template-part .hmj-header-shell .wp-block-navigation__responsive-container:not(.is-menu-open){display:none!important}}

/* About Us image essentials: replaces unused lightbox and image effects. */
body.page-id-174 .wp-block-image{margin:0 0 1em}body.page-id-174 .wp-block-image img{box-sizing:border-box;max-width:100%;height:auto;vertical-align:bottom}body.page-id-174 .wp-block-image.alignfull{max-width:none}body.page-id-174 .wp-block-image.aligncenter{text-align:center}body.page-id-174 .wp-block-image figcaption{margin-top:.5em;margin-bottom:1em}

/* Services performance and accessible enquiry buttons. */
body.page-id-177 main .wp-block-button__link.has-background{background-color:#246b9e!important;border-color:#246b9e!important;color:#fff!important}body.page-id-177 main .wp-block-button__link.has-background:is(:hover,:focus-visible){background-color:#fff!important;color:#246b9e!important;border-color:#246b9e!important}
