/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Nov 03 2026 | 09:19:36 */
/* Services hub page – hero badge alignment, equal Why cards, Who we work with text.
   Scoped by the row classes svc-hub-hero, svc-hub-who and svc-hub-why (set in WPBakery Row settings > Extra class name). */
.svc-hub-hero .wpb_wrapper > a.nectar-button {
  vertical-align: middle;
  margin: 0 24px 0 0 !important; /* gap on the right, so a wrapped badge starts flush left */
}
.svc-hub-hero .wpb_wrapper > .img-with-aniamtion-wrap {
  vertical-align: middle;
  margin-left: 0 !important;
  line-height: 0;
}
/* Phones: badge on its own line under the button, left-aligned */
@media only screen and (max-width: 767px) {
  .svc-hub-hero .wpb_wrapper > a.nectar-button { margin-right: 0 !important; }
  .svc-hub-hero .wpb_wrapper > .img-with-aniamtion-wrap { display: block !important; margin-top: 20px !important; }
}
/* Why Microknot: four equal-height cards (desktop) */
@media (min-width: 1000px) {
  .svc-hub-why .vc_col-sm-12 > .vc_column-inner > .wpb_wrapper {
    display: grid;
    grid-template-rows: auto;
    grid-auto-rows: 1fr;
    row-gap: 30px;
  }
  .svc-hub-why .wpb_row.inner_row > .row_col_wrap_12_inner { height: 100%; align-items: stretch; }
  .svc-hub-why .inner_row .wpb_column,
  .svc-hub-why .inner_row .wpb_column > .vc_column-inner,
  .svc-hub-why .inner_row .wpb_column > .vc_column-inner > .wpb_wrapper { height: 100%; }
  .svc-hub-why .inner_row .wpb_text_column { height: 100%; box-sizing: border-box; }
}
/* Who we work with: body text matches the rest of the page */
.svc-hub-who .wpb_column p,
.svc-hub-who .wpb_column ul li {
  font-family: HelveticaNowDisplay, Helvetica, Arial, sans-serif !important;
  font-size: 18px !important;
  line-height: 26px !important;
  color: rgba(0, 0, 0, .88) !important;
}
.svc-hub-who .wpb_column p { margin-bottom: 16px; }
.svc-hub-who .wpb_column p strong { font-weight: 600; }
.svc-hub-who .wpb_column ul li { margin-bottom: 10px; }
.svc-hub-who h2 { color: #66a61b !important; }
.svc-hub-who .wpb_column ul li::marker { color: #66a61b; }

/* Why Microknot – below 1000px Salient stacks the cards; even spacing between all four */
@media only screen and (max-width: 999px) {
  .svc-hub-why .wpb_row.inner_row { margin-bottom: 0 !important; }
  .svc-hub-why .inner_row .wpb_column { margin-bottom: 24px !important; }
  .svc-hub-why .wpb_row.inner_row:last-child .wpb_column:last-child { margin-bottom: 0 !important; }
  .svc-hub-why .inner_row .wpb_text_column { height: 100%; box-sizing: border-box; }
}
/* Tablets (690–999px): 2 x 2 grid with equal-height cards */
@media only screen and (min-width: 690px) and (max-width: 999px) {
  .svc-hub-why .vc_col-sm-12 > .vc_column-inner > .wpb_wrapper {
    display: grid;
    grid-template-rows: auto;
    grid-auto-rows: 1fr;
    row-gap: 24px;
  }
  .svc-hub-why .wpb_row.inner_row > .row_col_wrap_12_inner {
    display: flex !important;
    gap: 24px;
    height: 100%;
    align-items: stretch;
  }
  .svc-hub-why .inner_row .wpb_column {
    flex: 1 1 0;
    width: auto !important;
    margin: 0 !important;
  }
  .svc-hub-why .inner_row .wpb_column > .vc_column-inner,
  .svc-hub-why .inner_row .wpb_column > .vc_column-inner > .wpb_wrapper { height: 100%; }
}

/* What we do – below 1000px Salient stacks the items; align them and space evenly */
@media only screen and (max-width: 999px) {
  .svc-hub-what .inner_row .wpb_column { padding: 0 !important; margin-top: 0 !important; }
  .svc-hub-what .inner_row .wpb_column > .vc_column-inner { padding-top: 0 !important; margin-top: 0 !important; }
  .svc-hub-what .wpb_row.inner_row { margin-bottom: 0 !important; }
  .svc-hub-what .inner_row .wpb_column { margin-bottom: 24px !important; }
  .svc-hub-what .inner_row .wpb_text_column { margin-bottom: 0 !important; }
  .svc-hub-what .wpb_row.inner_row:last-child .wpb_column:last-child { margin-bottom: 0 !important; }
}
/* Tablets (690–999px): two columns, matching desktop */
@media only screen and (min-width: 690px) and (max-width: 999px) {
  .svc-hub-what .wpb_row.inner_row > .row_col_wrap_12_inner {
    display: flex !important;
    gap: 40px;
    align-items: flex-start;
  }
  .svc-hub-what .inner_row .wpb_column {
    flex: 1 1 0;
    width: auto !important;
    margin-bottom: 32px !important;
  }
  .svc-hub-what .wpb_row.inner_row:last-child .wpb_column { margin-bottom: 0 !important; }
}

/* FAQ line-height: handled site-wide by the "Global – FAQ question line-height" snippet */

/* Comparison table (e.g. Rescue, refactor or rebuild?) – add el_class "svc-options-table" to the text block */
.svc-options-table table {
  width: 100%;
  max-width: 1000px;
  margin: 32px auto 24px !important;
  border-collapse: collapse;
  font-family: HelveticaNowDisplay, Helvetica, Arial, sans-serif;
  font-size: 18px;
  line-height: 26px;
  color: rgba(0, 0, 0, .88);
}
.svc-options-table.wpb_text_column table th,
.svc-options-table.wpb_text_column table td {
  border: 1px solid #e3e3e3 !important;
  padding: 16px 20px !important;
  font-size: 18px !important;
  line-height: 26px !important;
  text-align: left;
  vertical-align: top;
}
.svc-options-table thead th {
  background: #f5f4ef;
  font-family: 'Aeonik Medium', HelveticaNowDisplay, Helvetica, Arial, sans-serif;
  font-weight: 500;
  color: #555;
}
.svc-options-table tbody td:first-child {
  width: 30%;
  font-family: 'Aeonik Medium', HelveticaNowDisplay, Helvetica, Arial, sans-serif;
  font-weight: 500;
  color: #111;
}
.svc-options-table.wpb_text_column td a { color: #66a61b; text-decoration: underline; text-underline-offset: 3px; }
.svc-options-table p {
  max-width: 1000px;
  margin: 0 auto !important;
  text-align: center;
  font-size: 18px;
  line-height: 26px;
  color: rgba(0, 0, 0, .88);
}
/* Phones: each option becomes its own block */
@media only screen and (max-width: 767px) {
  .svc-options-table thead { display: none; }
  .svc-options-table table, .svc-options-table tbody,
  .svc-options-table tr, .svc-options-table td { display: block; width: 100% !important; }
  .svc-options-table tr { border: 1px solid #e3e3e3; margin-bottom: 16px; }
  .svc-options-table.wpb_text_column table td { border: 0 !important; padding: 12px 16px !important; }
  .svc-options-table tbody td:first-child { background: #f5f4ef; }
}
/* In-text links inside service-page sections: brand green */
.svc-hub-how .wpb_text_column a,
.svc-hub-who .wpb_text_column a,
.svc-hub-faq .toggle .wpb_text_column a {
  color: #66a61b !important;
  text-decoration: underline;
  text-underline-offset: 3px;
}

/* Heading levels changed for SEO (hero H4 -> H2, card titles H4 -> H3).
   These copy the theme's original H4 rules onto the new tags so the look is unchanged. */
h2:is(.svc-hub-hero h2):not(#svc),
h3:is(.svc-hub-why h3):not(#svc) { margin: 0px; padding: 0px; border: 0px; font: inherit; vertical-align: baseline; }
h2:is(.svc-hub-hero h2):not(#svc),
h3:is(.svc-hub-why h3):not(#svc) { font-size: 18px; line-height: 32px; margin-bottom: var(--nectar-heading-bottom-spacing,8px); }
h2:is(.svc-hub-hero h2):not(#svc),
h3:is(.svc-hub-why h3):not(#svc) { color: rgb(68, 68, 68); letter-spacing: 0px; -webkit-font-smoothing: antialiased; font-weight: 600; }
.row .col h2:is(.svc-hub-hero h2):not(#svc),
.row .col h3:is(.svc-hub-why h3):not(#svc) { margin-bottom: var(--nectar-heading-bottom-spacing,8px); }
h2:is(.svc-hub-hero h2):not(#svc),
h3:is(.svc-hub-why h3):not(#svc) { font-family: "Aeonik Medium" !important; font-weight: 500; }
.title-text h2:is(.svc-hub-hero h2):not(#svc) { font-size: 49px; line-height: 55px; color: rgb(102, 166, 27); }
.paragraph-text h3:is(.svc-hub-why h3):not(#svc) { color: rgb(0, 0, 0); font-size: 23px; position: relative; padding-bottom: 14px; }
.paragraph-text h3:is(.svc-hub-why h3):not(#svc)::before { content: ""; position: absolute; bottom: 2px; left: 0px; width: 35px; height: 2px; background-color: rgb(102, 166, 27); }
.Sydney .wpb_text_column h3:is(.svc-hub-why h3):not(#svc) { position: relative; padding-bottom: 0px; padding-left: 35px; z-index: 1; margin-bottom: 20px !important; }
.Sydney .wpb_text_column h3:is(.svc-hub-why h3):not(#svc)::before { content: ""; position: absolute; top: 50%; left: -3px; width: 80px; height: 80px; background: linear-gradient(90deg, rgb(102, 166, 27) 0%, rgba(255, 255, 255, 0) 100%); border-radius: 50px; transform: translate(0%, -50%); opacity: 0.45; z-index: -1; }
h2:is(.svc-hub-hero h2):not(#svc),
h3:is(.svc-hub-why h3):not(#svc),
h2:is(.svc-hub-hero h2):not(#svc),
h3:is(.svc-hub-why h3):not(#svc) { color: rgb(0, 0, 0); }
@media only screen and (max-width: 1200px) {
  .title-text h2:is(.svc-hub-hero h2):not(#svc) { font-size: 45px; line-height: 50px; }
  .paragraph-text h3:is(.svc-hub-why h3):not(#svc) { font-size: 22px; }
}
@media only screen and (max-width: 1024px) {
  .title-text h2:is(.svc-hub-hero h2):not(#svc) { font-size: 40px; line-height: 45px; }
}
@media only screen and (max-width: 767px) {
  .paragraph-text h3:is(.svc-hub-why h3):not(#svc) { font-size: 20px; line-height: 28px; }
  .title-text h2:is(.svc-hub-hero h2):not(#svc) { font-size: 37px; line-height: 42px; }
}
@media only screen and (max-width: 480px) {
  .title-text h2:is(.svc-hub-hero h2):not(#svc) { font-size: 33px; line-height: 38px; }
}

/* Even section spacing on service pages – sections with the "svc-spacing" class */
.wpb_row.svc-spacing { padding-top: 100px !important; padding-bottom: 100px !important; }
.wpb_row.svc-spacing.case-studies { padding-top: 0 !important; }
@media only screen and (max-width: 999px) {
  .wpb_row.svc-spacing { padding-top: 60px !important; padding-bottom: 60px !important; }
}
@media only screen and (max-width: 767px) {
  .wpb_row.svc-spacing { padding-top: 40px !important; padding-bottom: 40px !important; }
}
/* Remove trailing space after the last element so the section padding is the only gap (not the FAQ) */
.wpb_row.svc-spacing:not(.svc-hub-faq) .wpb_text_column:last-child > :last-child,
.wpb_row.svc-spacing:not(.svc-hub-faq) .wpb_text_column:last-child > .wpb_wrapper > :last-child { margin-bottom: 0 !important; }
.wpb_row.svc-spacing:not(.svc-hub-faq) .wpb_text_column:last-child > ul:last-child > li:last-child,
.wpb_row.svc-spacing:not(.svc-hub-faq) .wpb_text_column:last-child > .wpb_wrapper > ul:last-child > li:last-child { margin-bottom: 0 !important; }
.wpb_row.svc-spacing:not(.svc-hub-faq) .wpb_row.inner_row:last-child,
.wpb_row.svc-spacing:not(.svc-hub-faq) .wpb_row.inner_row:last-child > .row_col_wrap_12_inner > .wpb_column,
.wpb_row.svc-spacing:not(.svc-hub-faq) .wpb_row.inner_row:last-child .vc_column-inner { padding-bottom: 0 !important; margin-bottom: 0 !important; }


/* Services hub banner now uses the same layout as the other service pages:
   black heading with the highlighted words in green (the rules above made the whole H2 green). */
body .svc-hub-hero .title-text h2:not(#svc):not(#svc-hero) { color: #000000 !important; margin-bottom: 10px !important; }
body .svc-hub-hero .title-text h2:not(#svc):not(#svc-hero) strong { color: #66a61b !important; }