/* ===================================================================
   Ultimate Help Section — front-end stylesheet
   v1.6.0

   Every rule is prefixed with :is(#top,body) so it outranks Enfold's
   own #top-prefixed rules without a single !important. body always
   matches, so the plugin also works outside Enfold.

   Colours, fonts and sizes all come from --uhs-* custom properties
   that the shortcode writes onto the wrapper, so nothing in this file
   needs editing to rebrand a section.
   =================================================================== */


/* // CSS NAME: uhs-root // */
:is(#top,body) .uhs{
  --uhs-teal:#00ADBC;
  --uhs-teal-hover:#008F9C;
  --uhs-teal-text:#00747F;
  --uhs-teal-soft:#F2FBFC;
  --uhs-teal-line:#BDEAEE;
  --uhs-ink:#0E1417;
  --uhs-ink-soft:#737778;
  --uhs-ink-mid:#43484A;
  --uhs-border:#E7E8E8;
  --uhs-muted:#F4F4F5;
  --uhs-paper:#FFFFFF;
  --uhs-eyebrow:#00ADBC;
  --uhs-accent:#FF9F19;
  --uhs-btn-text:#FFFFFF;
  --uhs-display:"Work Sans",Arial,sans-serif;
  --uhs-body:"Work Sans",Arial,sans-serif;
  --uhs-h-transform:uppercase;
  --uhs-h-weight:900;
  --uhs-ui-weight:700;
  --uhs-h-size:44px;
  --uhs-h-size-m:30px;
  --uhs-body-size:17px;
  --uhs-lede-size:19px;
  --uhs-max:1140px;
  --uhs-pad:78px;
  --uhs-pad-m:44px;
  --uhs-av:92px;
  --uhs-link-size:14px;
  --uhs-radius:4px;
  --uhs-radius-lg:14px;

  font-family:var(--uhs-body);
  font-size:var(--uhs-body-size);
  line-height:1.6;
  color:var(--uhs-ink);
  -webkit-font-smoothing:antialiased;
}
:is(#top,body) .uhs *,
:is(#top,body) .uhs *::before,
:is(#top,body) .uhs *::after{ box-sizing:border-box; }
:is(#top,body) .uhs p,
:is(#top,body) .uhs ul,
:is(#top,body) .uhs li,
:is(#top,body) .uhs h2,
:is(#top,body) .uhs h3,
:is(#top,body) .uhs h4{ margin:0; padding:0; }
:is(#top,body) .uhs ul{ list-style:none; }
:is(#top,body) .uhs img{ display:block; max-width:100%; height:auto; }
:is(#top,body) .uhs a{ text-decoration:none; color:inherit; }
:is(#top,body) .uhs a:focus-visible,
:is(#top,body) .uhs button:focus-visible,
:is(#top,body) .uhs input:focus-visible,
:is(#top,body) .uhs select:focus-visible{
  outline:3px solid var(--uhs-teal-text);
  outline-offset:2px;
}


/* // CSS NAME: uhs-layout // */
:is(#top,body) .uhs .uhs-wrap{
  max-width:var(--uhs-max);
  margin:0 auto;
  padding-left:40px;
  padding-right:40px;
}
:is(#top,body) .uhs .uhs-sec{ padding-top:var(--uhs-pad); padding-bottom:var(--uhs-pad); }
:is(#top,body) .uhs .uhs-sec--tall{ padding-top:calc(var(--uhs-pad) * 1.25); padding-bottom:calc(var(--uhs-pad) * 1.25); }
:is(#top,body) .uhs .uhs-sec--short{ padding-top:calc(var(--uhs-pad) * .5); padding-bottom:calc(var(--uhs-pad) * .5); }
:is(#top,body) .uhs .uhs-grid-2{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:70px;
  align-items:center;
}
:is(#top,body) .uhs .uhs-grid-2--end{ align-items:flex-end; }
:is(#top,body) .uhs .uhs-center{ text-align:center; }
:is(#top,body) .uhs .uhs-mx-auto{ margin-left:auto; margin-right:auto; }
:is(#top,body) .uhs .uhs-mt-2{ margin-top:16px; }
:is(#top,body) .uhs .uhs-mt-3{ margin-top:24px; }
:is(#top,body) .uhs .uhs-mt-4{ margin-top:28px; }
:is(#top,body) .uhs .uhs-mt-6{ margin-top:44px; }
:is(#top,body) .uhs .uhs-mb-3{ margin-bottom:24px; }


/* // CSS NAME: uhs-type // */
:is(#top,body) .uhs .uhs-h{
  font-family:var(--uhs-display);
  font-weight:var(--uhs-h-weight);
  text-transform:var(--uhs-h-transform);
  font-size:var(--uhs-h-size);
  line-height:.98;
  letter-spacing:-.01em;
  color:inherit;
  text-wrap:balance;
}
:is(#top,body) .uhs .uhs-h--big{ font-size:calc(var(--uhs-h-size) * 1.32); }
:is(#top,body) .uhs .uhs-eyebrow{
  font-family:var(--uhs-display);
  font-weight:var(--uhs-ui-weight);
  font-size:12px;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--uhs-eyebrow);
  margin-bottom:14px;
}
:is(#top,body) .uhs .uhs-lede{
  font-size:var(--uhs-lede-size);
  line-height:1.6;
  color:var(--uhs-ink-mid);
  max-width:54ch;
  margin-top:18px;
}
:is(#top,body) .uhs .uhs-mini{
  font-size:14px;
  line-height:1.55;
  color:var(--uhs-ink-soft);
}


/* // CSS NAME: uhs-buttons // */
:is(#top,body) .uhs .uhs-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  font-family:var(--uhs-display);
  font-weight:var(--uhs-ui-weight);
  font-size:14px;
  letter-spacing:.05em;
  text-transform:uppercase;
  line-height:1;
  padding:17px 28px;
  border:0;
  border-radius:var(--uhs-radius);
  cursor:pointer;
  transition:background-color .22s cubic-bezier(.2,.7,.3,1), color .22s cubic-bezier(.2,.7,.3,1);
}
:is(#top,body) .uhs .uhs-btn--sm{ padding:13px 20px; font-size:13px; }
:is(#top,body) .uhs .uhs-btn--block{ width:100%; }

/* Button text colour is a setting. White on #00ADBC is 2.73:1 and below AA;
   darken the fill to #00747F for 5.52:1, or set ink text for 6.81:1. */
:is(#top,body) .uhs .uhs-btn--primary{ background:var(--uhs-teal); color:var(--uhs-btn-text); }
:is(#top,body) .uhs .uhs-btn--primary:hover{ background:var(--uhs-teal-hover); color:#fff; }

:is(#top,body) .uhs .uhs-btn--dark{ background:var(--uhs-ink); color:#fff; }
:is(#top,body) .uhs .uhs-btn--dark:hover{ background:var(--uhs-teal); color:var(--uhs-btn-text); }

/* Ink text on amber: 9.04:1. */
:is(#top,body) .uhs .uhs-btn--accent{ background:var(--uhs-accent); color:var(--uhs-ink); }
:is(#top,body) .uhs .uhs-btn--accent:hover{ filter:brightness(.94); }

:is(#top,body) .uhs .uhs-btn--paper{ background:var(--uhs-paper); color:var(--uhs-ink); }
:is(#top,body) .uhs .uhs-btn--paper:hover{ background:var(--uhs-muted); }

:is(#top,body) .uhs .uhs-btn--outline{
  background:transparent;
  color:var(--uhs-ink);
  box-shadow:inset 0 0 0 2px currentColor;
}
:is(#top,body) .uhs .uhs-btn--outline:hover{ background:var(--uhs-ink); color:#fff; }

:is(#top,body) .uhs .uhs-btn-row{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  align-items:center;
  margin-top:26px;
}
:is(#top,body) .uhs .uhs-btn-row--center{ justify-content:center; }


/* // CSS NAME: uhs-text-links // */
:is(#top,body) .uhs .uhs-links{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:14px 26px;
}
:is(#top,body) .uhs .uhs-links--center{ justify-content:center; }
:is(#top,body) .uhs .uhs-links--tight{ gap:8px 16px; margin-top:8px; }
:is(#top,body) .uhs .uhs-tlink{
  font-family:var(--uhs-display);
  font-weight:var(--uhs-ui-weight);
  font-size:var(--uhs-link-size);
  letter-spacing:.06em;
  text-transform:uppercase;
  color:var(--uhs-teal-text);
  display:inline-flex;
  align-items:center;
  gap:8px;
}
:is(#top,body) .uhs .uhs-tlink:hover{ text-decoration:underline; text-underline-offset:.25em; }


/* // CSS NAME: uhs-faces // */
/* Every size scales from --uhs-av, so the Team photo size setting moves the
   whole row, overlap included, without any of them drifting apart. */
:is(#top,body) .uhs .uhs-av{
  width:var(--uhs-av);
  height:var(--uhs-av);
  border-radius:50%;
  object-fit:cover;
  flex:none;
}
:is(#top,body) .uhs .uhs-av--lg{ width:calc(var(--uhs-av) * 1.15); height:calc(var(--uhs-av) * 1.15); }
:is(#top,body) .uhs .uhs-faces{ display:flex; }
:is(#top,body) .uhs .uhs-faces .uhs-av{
  margin-left:calc(var(--uhs-av) * -.21);
  box-shadow:0 0 0 4px var(--uhs-paper);
}
:is(#top,body) .uhs .uhs-faces .uhs-av:first-child{ margin-left:0; }
:is(#top,body) .uhs .uhs-faces--sm .uhs-av{
  width:calc(var(--uhs-av) * .68);
  height:calc(var(--uhs-av) * .68);
  margin-left:calc(var(--uhs-av) * -.16);
  box-shadow:0 0 0 3px var(--uhs-paper);
}
:is(#top,body) .uhs .uhs-faces--lg .uhs-av{
  width:calc(var(--uhs-av) * 1.05);
  height:calc(var(--uhs-av) * 1.05);
  margin-left:calc(var(--uhs-av) * -.22);
  box-shadow:0 0 0 5px var(--uhs-paper);
}
:is(#top,body) .uhs .uhs-faces--center{ justify-content:center; }
:is(#top,body) .uhs .uhs-faces--dark .uhs-av{ box-shadow:0 0 0 3px var(--uhs-ink); }
:is(#top,body) .uhs .uhs-faces--onteal .uhs-av{ box-shadow:0 0 0 3px var(--uhs-teal); }


/* // CSS NAME: uhs-chips // */
:is(#top,body) .uhs .uhs-chips{
  display:flex;
  flex-direction:column;
  gap:12px;
  margin-top:22px;
}
:is(#top,body) .uhs .uhs-chips li{
  display:flex;
  align-items:flex-start;
  gap:11px;
  font-size:14px;
  line-height:1.5;
}
:is(#top,body) .uhs .uhs-dot{
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--uhs-teal);
  flex:none;
  margin-top:.5em;
}


/* // CSS NAME: uhs-split-rail // */
:is(#top,body) .uhs--split-rail .uhs-rows{
  border:1px solid var(--uhs-border);
  border-radius:var(--uhs-radius-lg);
  overflow:hidden;
}
:is(#top,body) .uhs--split-rail .uhs-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:20px 24px;
  border-bottom:1px solid var(--uhs-border);
}
:is(#top,body) .uhs--split-rail .uhs-row:last-child{ border-bottom:0; }
:is(#top,body) .uhs--split-rail .uhs-row:hover{ background:var(--uhs-teal-soft); }
:is(#top,body) .uhs--split-rail .uhs-row-text b{
  display:block;
  font-family:var(--uhs-display);
  font-weight:var(--uhs-ui-weight);
  font-size:14px;
  letter-spacing:.05em;
  text-transform:uppercase;
}
:is(#top,body) .uhs--split-rail .uhs-row-text span{
  display:block;
  font-size:14px;
  color:var(--uhs-ink-soft);
  margin-top:3px;
}
:is(#top,body) .uhs--split-rail .uhs-row-arrow{ color:var(--uhs-teal-text); font-size:20px; line-height:1; }
:is(#top,body) .uhs--split-rail .uhs-trust{
  display:flex;
  align-items:center;
  gap:14px;
  margin-top:30px;
}


/* // CSS NAME: uhs-team-card // */
:is(#top,body) .uhs--team-card .uhs-band{ background:var(--uhs-teal); padding:var(--uhs-pad) 0; }
:is(#top,body) .uhs--team-card .uhs-card{
  background:var(--uhs-paper);
  border-radius:var(--uhs-radius-lg);
  padding:56px;
  max-width:840px;
  margin:0 auto;
  box-shadow:0 30px 60px -30px rgba(0,64,71,.5);
}
:is(#top,body) .uhs--team-card .uhs-faces{ margin-bottom:26px; }
:is(#top,body) .uhs--team-card .uhs-btn-row{ justify-content:center; }


/* // CSS NAME: uhs-named-faces // */
:is(#top,body) .uhs--named-faces .uhs-head-center{
  text-align:center;
  max-width:640px;
  margin:0 auto 48px;
}
:is(#top,body) .uhs--named-faces .uhs-people{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:24px;
}
:is(#top,body) .uhs--named-faces .uhs-person{
  border:1px solid var(--uhs-border);
  border-radius:var(--uhs-radius-lg);
  padding:28px;
  text-align:center;
}
:is(#top,body) .uhs--named-faces .uhs-person .uhs-av{ margin:0 auto 18px; }
:is(#top,body) .uhs--named-faces .uhs-person-name{
  font-family:var(--uhs-display);
  font-weight:var(--uhs-h-weight);
  text-transform:var(--uhs-h-transform);
  font-size:19px;
  line-height:1.05;
}
:is(#top,body) .uhs--named-faces .uhs-person-role{
  font-size:13px;
  font-weight:600;
  letter-spacing:.09em;
  text-transform:uppercase;
  color:var(--uhs-teal-text);
  margin-top:7px;
}
:is(#top,body) .uhs--named-faces .uhs-person-line{
  font-size:15px;
  color:var(--uhs-ink-soft);
  margin-top:14px;
}


/* // CSS NAME: uhs-ink-panel // */
:is(#top,body) .uhs--ink-panel .uhs-dark{
  background:var(--uhs-ink);
  color:#fff;
  padding:calc(var(--uhs-pad) * 1.13) 0;
}
:is(#top,body) .uhs--ink-panel .uhs-h{ font-size:calc(var(--uhs-h-size) * 1.27); }
:is(#top,body) .uhs--ink-panel .uhs-lede{ color:rgba(255,255,255,.72); }
:is(#top,body) .uhs--ink-panel .uhs-eyebrow{ color:var(--uhs-teal-line); }
:is(#top,body) .uhs--ink-panel .uhs-tlink{ color:var(--uhs-teal-line); }
:is(#top,body) .uhs--ink-panel .uhs-side{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}
:is(#top,body) .uhs--ink-panel .uhs-chips li{ color:rgba(255,255,255,.8); }


/* // CSS NAME: uhs-light-panel // */
:is(#top,body) .uhs--light-panel .uhs-light{
  background:var(--uhs-paper);
  color:var(--uhs-ink);
  padding:calc(var(--uhs-pad) * 1.13) 0;
}
:is(#top,body) .uhs--light-panel .uhs-h{ font-size:calc(var(--uhs-h-size) * 1.27); }
:is(#top,body) .uhs--light-panel .uhs-lede{ color:var(--uhs-ink-mid); }
:is(#top,body) .uhs--light-panel .uhs-eyebrow{ color:var(--uhs-eyebrow); }
:is(#top,body) .uhs--light-panel .uhs-tlink{ color:var(--uhs-teal-text); }
:is(#top,body) .uhs--light-panel .uhs-side{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}
:is(#top,body) .uhs--light-panel .uhs-chips li{ color:var(--uhs-ink-mid); }


/* // CSS NAME: uhs-booking-bar // */
:is(#top,body) .uhs--booking-bar .uhs-bar{
  background:var(--uhs-teal-soft);
  border-top:1px solid var(--uhs-teal-line);
  border-bottom:1px solid var(--uhs-teal-line);
}
:is(#top,body) .uhs--booking-bar .uhs-bar-in{
  display:flex;
  align-items:center;
  gap:30px;
  padding-top:26px;
  padding-bottom:26px;
}
:is(#top,body) .uhs--booking-bar .uhs-bar-text{ flex:1; min-width:0; }
:is(#top,body) .uhs--booking-bar .uhs-h{ font-size:calc(var(--uhs-h-size) * .6); }
:is(#top,body) .uhs--booking-bar .uhs-faces .uhs-av{ box-shadow:0 0 0 3px var(--uhs-teal-soft); }
:is(#top,body) .uhs--booking-bar .uhs-mini{ margin-top:5px; }


/* // CSS NAME: uhs-two-doors // */
:is(#top,body) .uhs--two-doors .uhs-head{ max-width:640px; margin-bottom:44px; }
:is(#top,body) .uhs--two-doors .uhs-doors{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:22px;
  align-items:stretch;
}
:is(#top,body) .uhs--two-doors .uhs-door{
  border-radius:var(--uhs-radius-lg);
  padding:40px;
  display:flex;
  flex-direction:column;
}
:is(#top,body) .uhs--two-doors .uhs-door--teal{ background:var(--uhs-teal); color:var(--uhs-ink); }
:is(#top,body) .uhs--two-doors .uhs-door--teal p{ color:rgba(14,20,23,.78); }
:is(#top,body) .uhs--two-doors .uhs-door--muted{ background:var(--uhs-muted); border:1px solid var(--uhs-border); }
:is(#top,body) .uhs--two-doors .uhs-door--muted p{ color:var(--uhs-ink-soft); }
:is(#top,body) .uhs--two-doors .uhs-door-title{
  font-family:var(--uhs-display);
  font-weight:var(--uhs-h-weight);
  text-transform:var(--uhs-h-transform);
  font-size:26px;
  line-height:1.02;
}
:is(#top,body) .uhs--two-doors .uhs-door p{ margin-top:14px; font-size:16px; }
:is(#top,body) .uhs--two-doors .uhs-door-foot{ margin-top:auto; padding-top:26px; }
:is(#top,body) .uhs--two-doors .uhs-door-foot .uhs-btn-row{ margin-top:0; }


/* // CSS NAME: uhs-inline-enquiry // */
:is(#top,body) .uhs--inline-enquiry .uhs-btn{ margin-top:30px; }
:is(#top,body) .uhs--inline-enquiry .uhs-links{ margin-top:26px; }
:is(#top,body) .uhs--inline-enquiry .uhs-form-card{
  background:var(--uhs-muted);
  border:1px solid var(--uhs-border);
  border-radius:var(--uhs-radius-lg);
  padding:36px;
}
:is(#top,body) .uhs .uhs-form-title{
  font-family:var(--uhs-display);
  font-weight:var(--uhs-h-weight);
  text-transform:var(--uhs-h-transform);
  font-size:22px;
  line-height:1.05;
  margin-bottom:6px;
}
:is(#top,body) .uhs .uhs-form{ margin-top:22px; }
:is(#top,body) .uhs .uhs-field{ margin-bottom:14px; }
:is(#top,body) .uhs .uhs-label{
  display:block;
  font-size:13px;
  font-weight:600;
  letter-spacing:.04em;
  margin-bottom:6px;
  color:var(--uhs-ink-mid);
}
:is(#top,body) .uhs .uhs-form input[type="text"],
:is(#top,body) .uhs .uhs-form input[type="email"],
:is(#top,body) .uhs .uhs-form select{
  font-family:inherit;
  font-size:16px;
  width:100%;
  padding:14px 16px;
  border:1px solid var(--uhs-border);
  border-radius:calc(var(--uhs-radius) + 2px);
  background:var(--uhs-paper);
  color:var(--uhs-ink);
}
:is(#top,body) .uhs .uhs-hp{
  position:absolute;
  left:-9999px;
  width:1px;
  height:1px;
  overflow:hidden;
}
:is(#top,body) .uhs .uhs-form-success{
  margin-top:20px;
  padding:18px 20px;
  border-radius:calc(var(--uhs-radius) + 2px);
  background:var(--uhs-teal-soft);
  border:1px solid var(--uhs-teal-line);
  font-size:16px;
}
:is(#top,body) .uhs .uhs-form-embed{ margin-top:20px; }


/* // CSS NAME: uhs-editorial // */
:is(#top,body) .uhs--editorial .uhs-h--big{ max-width:12ch; }
:is(#top,body) .uhs--editorial .uhs-rule{
  height:1px;
  border:0;
  background:var(--uhs-border);
  margin:44px 0;
}
:is(#top,body) .uhs--editorial .uhs-grid-2{ align-items:start; }
:is(#top,body) .uhs--editorial .uhs-lede{ margin-top:0; }
:is(#top,body) .uhs--editorial .uhs-list{ display:flex; flex-direction:column; }
:is(#top,body) .uhs--editorial .uhs-li{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  padding:18px 0;
  border-bottom:1px solid var(--uhs-border);
  font-family:var(--uhs-display);
  font-weight:var(--uhs-ui-weight);
  font-size:15px;
  letter-spacing:.05em;
  text-transform:uppercase;
}
:is(#top,body) .uhs--editorial .uhs-li:first-child{ border-top:1px solid var(--uhs-border); }
:is(#top,body) .uhs--editorial .uhs-li span{ color:var(--uhs-teal-text); font-size:20px; }
:is(#top,body) .uhs--editorial .uhs-li:hover{ color:var(--uhs-teal-text); }


/* // CSS NAME: uhs-amber-accent // */
:is(#top,body) .uhs--amber-accent .uhs-faces{ margin-bottom:30px; }
:is(#top,body) .uhs--amber-accent .uhs-lede{ max-width:52ch; }


/* // CSS NAME: uhs-offset-overlap // */
:is(#top,body) .uhs--offset-overlap .uhs-stage{ position:relative; }
:is(#top,body) .uhs--offset-overlap .uhs-panel-bg{
  background:var(--uhs-teal);
  border-radius:calc(var(--uhs-radius-lg) + 6px);
  height:300px;
}
:is(#top,body) .uhs--offset-overlap .uhs-float{
  position:relative;
  background:var(--uhs-paper);
  border-radius:var(--uhs-radius-lg);
  box-shadow:0 30px 60px -30px rgba(14,20,23,.4);
  padding:44px 48px;
  margin:-200px 0 0 60px;
  max-width:640px;
}
:is(#top,body) .uhs--offset-overlap .uhs-faces--corner{
  position:absolute;
  right:60px;
  top:-56px;
}
:is(#top,body) .uhs--offset-overlap .uhs-faces--corner .uhs-av{
  width:82px;
  height:82px;
  margin-left:-18px;
  box-shadow:0 0 0 5px var(--uhs-paper);
}
:is(#top,body) .uhs--offset-overlap .uhs-faces--corner .uhs-av:first-child{ margin-left:0; }
:is(#top,body) .uhs--offset-overlap .uhs-float-foot{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:12px 22px;
  margin-top:28px;
}


/* // CSS NAME: uhs-offset-centre // */
:is(#top,body) .uhs--offset-centre .uhs-stage{ position:relative; }
:is(#top,body) .uhs--offset-centre .uhs-panel-bg{
  background:var(--uhs-teal);
  border-radius:calc(var(--uhs-radius-lg) + 6px);
  height:330px;
}
:is(#top,body) .uhs--offset-centre .uhs-float{
  position:relative;
  background:var(--uhs-paper);
  border-radius:var(--uhs-radius-lg);
  box-shadow:0 30px 60px -30px rgba(14,20,23,.4);
  padding:64px 56px 48px;
  margin:-230px auto 0;
  max-width:760px;
  text-align:center;
}
:is(#top,body) .uhs--offset-centre .uhs-faces--corner{
  position:absolute;
  left:50%;
  transform:translateX(-50%);
  top:-46px;
}
:is(#top,body) .uhs--offset-centre .uhs-faces--corner .uhs-av{
  width:88px;
  height:88px;
  margin-left:-20px;
  box-shadow:0 0 0 5px var(--uhs-paper);
}
:is(#top,body) .uhs--offset-centre .uhs-faces--corner .uhs-av:first-child{ margin-left:0; }
:is(#top,body) .uhs--offset-centre .uhs-float-foot{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:center;
  gap:14px 24px;
  margin-top:30px;
}


/* // CSS NAME: uhs-sticky-helper // */
:is(#top,body) .uhs--sticky-helper .uhs-strip{
  background:var(--uhs-paper);
  border:1px solid var(--uhs-border);
  border-radius:var(--uhs-radius-lg);
  padding:38px 44px;
  display:flex;
  align-items:center;
  gap:30px;
}
:is(#top,body) .uhs--sticky-helper .uhs-strip-text{ flex:1; min-width:0; }
:is(#top,body) .uhs--sticky-helper .uhs-h{ font-size:calc(var(--uhs-h-size) * .73); }
:is(#top,body) .uhs .uhs-helper{
  position:fixed;
  right:24px;
  bottom:24px;
  width:300px;
  background:var(--uhs-paper);
  border-radius:var(--uhs-radius-lg);
  box-shadow:0 24px 50px -20px rgba(14,20,23,.45);
  padding:20px;
  z-index:200;
}
:is(#top,body) .uhs .uhs-helper[hidden]{ display:none; }
:is(#top,body) .uhs .uhs-helper .uhs-av--corner{
  position:absolute;
  top:-14px;
  right:16px;
  width:44px;
  height:44px;
  box-shadow:0 0 0 3px var(--uhs-paper);
}
:is(#top,body) .uhs .uhs-live{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-size:12px;
  font-weight:600;
  letter-spacing:.09em;
  text-transform:uppercase;
  color:var(--uhs-teal-text);
}
:is(#top,body) .uhs .uhs-live .uhs-dot{ margin-top:0; }
:is(#top,body) .uhs .uhs-helper-title{
  font-family:var(--uhs-display);
  font-weight:var(--uhs-h-weight);
  text-transform:var(--uhs-h-transform);
  font-size:17px;
  line-height:1.05;
  margin:12px 0 8px;
}
:is(#top,body) .uhs .uhs-helper-cta{ width:100%; margin-top:16px; }
:is(#top,body) .uhs .uhs-helper-close{
  position:absolute;
  top:6px;
  left:6px;
  width:26px;
  height:26px;
  border:0;
  border-radius:50%;
  background:transparent;
  color:var(--uhs-ink-soft);
  font-size:18px;
  line-height:1;
  cursor:pointer;
}
:is(#top,body) .uhs .uhs-helper-close:hover{ background:var(--uhs-muted); color:var(--uhs-ink); }


/* // CSS NAME: uhs-mobile // */
@media (max-width:767px){
  :is(#top,body) .uhs .uhs-wrap{ padding-left:20px; padding-right:20px; }
  :is(#top,body) .uhs .uhs-sec,
  :is(#top,body) .uhs .uhs-sec--tall{ padding-top:var(--uhs-pad-m); padding-bottom:var(--uhs-pad-m); }
  :is(#top,body) .uhs .uhs-sec--short{ padding-top:calc(var(--uhs-pad-m) * .7); padding-bottom:calc(var(--uhs-pad-m) * .7); }
  :is(#top,body) .uhs .uhs-h{ font-size:var(--uhs-h-size-m); }
  :is(#top,body) .uhs .uhs-h--big{ font-size:calc(var(--uhs-h-size-m) * 1.15); max-width:none; }
  :is(#top,body) .uhs .uhs-lede{ font-size:var(--uhs-body-size); }
  :is(#top,body) .uhs .uhs-grid-2{ grid-template-columns:1fr; gap:32px; align-items:start; }
  :is(#top,body) .uhs .uhs-btn{ width:100%; padding:16px 20px; }
  :is(#top,body) .uhs .uhs-btn--sm{ width:auto; }
  :is(#top,body) .uhs .uhs-faces .uhs-av,
  :is(#top,body) .uhs .uhs-faces--sm .uhs-av,
  :is(#top,body) .uhs .uhs-faces--lg .uhs-av{
    width:64px;
    height:64px;
    margin-left:-15px;
  }
  :is(#top,body) .uhs .uhs-faces .uhs-av:first-child{ margin-left:0; }

  /* Team photos centre on a phone. The named-faces cards keep theirs beside
     the name, and the sticky helper keeps its avatar in the bar. */
  :is(#top,body) .uhs .uhs-faces{ justify-content:center; }
  :is(#top,body) .uhs--named-faces .uhs-person .uhs-av{ margin:0; }
  :is(#top,body) .uhs .uhs-helper .uhs-av--corner{ margin:0; }

  :is(#top,body) .uhs--split-rail .uhs-trust{ flex-direction:column; align-items:center; text-align:center; gap:16px; }

  :is(#top,body) .uhs--team-card .uhs-band{ padding:var(--uhs-pad-m) 0; }
  :is(#top,body) .uhs--team-card .uhs-card{ padding:32px 22px; }

  :is(#top,body) .uhs--named-faces .uhs-head-center{ margin-bottom:26px; }
  :is(#top,body) .uhs--named-faces .uhs-people{ grid-template-columns:1fr; gap:14px; }
  :is(#top,body) .uhs--named-faces .uhs-person{
    display:flex;
    align-items:center;
    gap:18px;
    text-align:left;
    padding:18px;
  }
  :is(#top,body) .uhs--named-faces .uhs-person .uhs-av{ width:62px; height:62px; margin:0; }
  :is(#top,body) .uhs--named-faces .uhs-person-line{ display:none; }
  :is(#top,body) .uhs--named-faces .uhs-person-role{ margin-top:4px; }

  :is(#top,body) .uhs--ink-panel .uhs-dark{ padding:var(--uhs-pad-m) 0; }
  :is(#top,body) .uhs--ink-panel .uhs-h{ font-size:calc(var(--uhs-h-size-m) * 1.07); }
  :is(#top,body) .uhs--ink-panel .uhs-side{ align-self:stretch; }
  :is(#top,body) .uhs--ink-panel .uhs-side .uhs-btn{ width:100%; }

  :is(#top,body) .uhs--light-panel .uhs-light{ padding:var(--uhs-pad-m) 0; }
  :is(#top,body) .uhs--light-panel .uhs-h{ font-size:calc(var(--uhs-h-size-m) * 1.07); }
  :is(#top,body) .uhs--light-panel .uhs-side{ align-self:stretch; }
  :is(#top,body) .uhs--light-panel .uhs-side .uhs-btn{ width:100%; }

  :is(#top,body) .uhs--booking-bar .uhs-bar-in{
    flex-direction:column;
    align-items:flex-start;
    gap:18px;
  }
  :is(#top,body) .uhs--booking-bar .uhs-h{ font-size:calc(var(--uhs-h-size-m) * .8); }

  :is(#top,body) .uhs--two-doors .uhs-head{ margin-bottom:22px; }
  :is(#top,body) .uhs--two-doors .uhs-doors{ grid-template-columns:1fr; gap:14px; }
  :is(#top,body) .uhs--two-doors .uhs-door{ padding:26px; }
  :is(#top,body) .uhs--two-doors .uhs-door-title{ font-size:22px; }

  :is(#top,body) .uhs--inline-enquiry .uhs-btn{ margin-top:30px; }
:is(#top,body) .uhs--inline-enquiry .uhs-links{ margin-top:26px; }
:is(#top,body) .uhs--inline-enquiry .uhs-form-card{ padding:24px; }

  :is(#top,body) .uhs--editorial .uhs-rule{ margin:28px 0; }

  :is(#top,body) .uhs--offset-overlap .uhs-panel-bg{ height:150px; }
  :is(#top,body) .uhs--offset-overlap .uhs-float{
    margin:-100px 0 0;
    padding:26px 22px;
    max-width:none;
  }
  :is(#top,body) .uhs--offset-overlap .uhs-faces--corner{ right:20px; top:-36px; justify-content:flex-start; }
  :is(#top,body) .uhs--offset-overlap .uhs-faces--corner .uhs-av{
    width:54px;
    height:54px;
    box-shadow:0 0 0 4px var(--uhs-paper);
  }
  :is(#top,body) .uhs--offset-overlap .uhs-float-foot .uhs-btn{ width:100%; }

  :is(#top,body) .uhs--offset-centre .uhs-panel-bg{ height:170px; }
  :is(#top,body) .uhs--offset-centre .uhs-float{
    margin:-120px auto 0;
    padding:44px 22px 26px;
    max-width:none;
  }
  :is(#top,body) .uhs--offset-centre .uhs-faces--corner{ top:-32px; }
  :is(#top,body) .uhs--offset-centre .uhs-faces--corner .uhs-av{
    width:58px;
    height:58px;
    margin-left:-14px;
    box-shadow:0 0 0 4px var(--uhs-paper);
  }
  :is(#top,body) .uhs--offset-centre .uhs-float-foot .uhs-btn{ width:100%; }

  :is(#top,body) .uhs--sticky-helper .uhs-strip{
    flex-direction:column;
    align-items:flex-start;
    gap:20px;
    padding:26px 22px;
  }
  :is(#top,body) .uhs--sticky-helper .uhs-strip .uhs-btn{ width:100%; }
  :is(#top,body) .uhs .uhs-helper{
    left:14px;
    right:14px;
    bottom:14px;
    width:auto;
    display:flex;
    align-items:center;
    gap:14px;
    padding:14px;
  }
  :is(#top,body) .uhs .uhs-helper .uhs-av--corner{
    position:static;
    width:40px;
    height:40px;
    box-shadow:none;
  }
  :is(#top,body) .uhs .uhs-helper-body{ flex:1; min-width:0; }
  :is(#top,body) .uhs .uhs-helper .uhs-live,
  :is(#top,body) .uhs .uhs-helper-body .uhs-mini{ display:none; }
  :is(#top,body) .uhs .uhs-helper-title{ margin:0; font-size:15px; }
  :is(#top,body) .uhs .uhs-helper-cta{
    width:auto;
    margin-top:0;
    flex:none;
    padding:12px 16px;
    font-size:12px;
    white-space:nowrap;
  }
  :is(#top,body) .uhs .uhs-helper-close{
    top:-13px;
    left:auto;
    right:2px;
    background:var(--uhs-paper);
    box-shadow:0 2px 8px -2px rgba(14,20,23,.35);
  }
}


/* // CSS NAME: uhs-motion // */
@media (prefers-reduced-motion:reduce){
  :is(#top,body) .uhs *{
    transition-duration:.01ms !important;
    animation-duration:.01ms !important;
  }
}


/* // CSS NAME: uhs-font-lock // */
/* The section was rendering in Courier New on some page loads: the browser
   painted before the webfont arrived and locked to a fallback for the rest of
   that pageview. Two defences, and this is the second one.

   1. UHS_Fonts loads the family from Google Fonts, whose stylesheet ships
      font-display: swap, so the text always changes over once it arrives.
   2. These rules force the family with !important, so nothing further down the
      cascade, and no theme or plugin loaded after this file, can replace it.

   Both still read from the --uhs-* custom properties, so the Design tab keeps
   working exactly as before. */

:is(#top,body) .uhs,
:is(#top,body) .uhs *{
  font-family:var(--uhs-body) !important;
}

:is(#top,body) .uhs .uhs-h,
:is(#top,body) .uhs .uhs-eyebrow,
:is(#top,body) .uhs .uhs-btn,
:is(#top,body) .uhs .uhs-tlink,
:is(#top,body) .uhs .uhs-form-title,
:is(#top,body) .uhs .uhs-helper-title,
:is(#top,body) .uhs .uhs-live,
:is(#top,body) .uhs--split-rail .uhs-row-text b,
:is(#top,body) .uhs--editorial .uhs-li,
:is(#top,body) .uhs--named-faces .uhs-person-name,
:is(#top,body) .uhs--two-doors .uhs-door-title{
  font-family:var(--uhs-display) !important;
}
