/* ============================================================================
   Footer — the owner's design, on the brand blue.
   ---------------------------------------------------------------------------
   #2369D2 is the brand colour (--blue-500). The band at the top is a deeper
   grade of it, the body a lighter one, so the two read as one object without
   a hard seam.
   ========================================================================= */
.bg-footer-img {
  width: 100%;
  filter: brightness(0) invert(1);
  opacity: .2;
  position: absolute;
  bottom: -3px;
  left: 0;
}

.everyday-use {
  display: flex;
}

.everyday-use img {
  margin-top: -130px;
}

.cf--gf .gform_wrapper input[type="text"] {
  width: 100% !important;
  min-height: 3rem;
  margin: 0;
  padding: 0.7rem 0.9rem;
  border: 0;
  border-radius: var(--r-md);
  background: #e9eef6;
  box-shadow: inset 0 0 0 1px var(--border-strong);
  font-family: inherit;
  font-size: var(--fs-sm);
  line-height: 1.5;
  color: var(--ink-900);
  transition: box-shadow var(--d-fast) var(--ease-out-soft), background-color var(--d-fast) var(--ease-out-soft);
}

.who-leader__portrait,
.who-leader__frame {
  aspect-ratio: auto !important;
}

section.hero#top {
  background: url(../../../../uploads/2026/09/homebg.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: bottom center;
}

.page-template-page-contact section#top {
  background: url(../../../../uploads/2026/09/ctbg.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: bottom center;
}

button#gform_submit_button_7:hover {
  gap: 0.85rem;
  background: #1b54ae;
  box-shadow: 0 12px 28px -12px rgba(35, 105, 210, .5);
}

button#gform_submit_button_7 {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  width: auto;
  min-height: 3rem;
  margin: 0;
  padding: 0.75rem 1.6rem;
  border: 0;
  border-radius: var(--r-pill);
  background: var(--blue-500);
  color: #fff;
  font-family: var(--font-sans);
  font-size: var(--fs-sm);
  font-weight: 700;
  line-height: 1.2;
  cursor: pointer;
  transition: gap var(--d-base) var(--ease-out-expo), background-color var(--d-fast) var(--ease-out-soft), box-shadow var(--d-fast) var(--ease-out-soft);
}

.ginput_container_email input[type="email"],
input[type="url"] {
  width: 100% !important;
  min-height: 3rem;
  margin: 0;
  padding: 0.7rem 0.9rem;
  border: 0;
  border-radius: var(--r-md);
  background: #e9eef6;
  box-shadow: inset 0 0 0 1px var(--border-strong);
  font-family: inherit;
  font-size: var(--fs-sm);
  line-height: 1.5;
  color: var(--ink-900);
  transition: box-shadow var(--d-fast) var(--ease-out-soft), background-color var(--d-fast) var(--ease-out-soft);
}

textarea#input_7_7 {
  background: #e9eef6;
  border-radius: 14px;
  box-shadow: inset 0 0 0 1px var(--border-strong);
  border: 0;
}

.menu-bg-img {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  opacity: 0.4;
  z-index: -1;
}

html.js .mega.is-open .mega-in::after {
  width: 90%;
  content: '';
  height: 1px;
  left: 0;
  background: #c1d1eb;
  display: block;
  margin: 0 auto;
}

.ftr {
  --ftr-ink: #0E2E63;
  /* the navy knocked out of the white marks */
  position: relative;
  isolation: isolate;
  color: #fff;
  /* Dark and light together, as in the design, rather than one flat field:
     a deep navy weight anchored top-left and bottom-right, opening out to the
     brand blue through the middle. The brand colour is the base, so nothing
     here can drift off-brand. */
  background:
    /* One unbroken darkening across the top, so the call-to-action band reads
       as part of the same field rather than a bar sitting on it. */
    linear-gradient(180deg, rgba(6, 24, 58, .62) 0%, rgba(6, 24, 58, .34) 18%, rgba(6, 24, 58, 0) 42%),
    radial-gradient(120% 140% at 8% 0%, rgba(6, 25, 61, .92) 0%, rgba(6, 25, 61, .55) 30%, rgba(6, 25, 61, 0) 62%),
    radial-gradient(90% 120% at 100% 100%, rgba(5, 22, 56, .8) 0%, rgba(5, 22, 56, 0) 58%),
    /* Kept gentle on purpose: any lighter and white body text drops under
       4.5:1 against it. */
    radial-gradient(75% 90% at 62% 34%, rgba(88, 154, 240, .22) 0%, rgba(88, 154, 240, 0) 70%),
    linear-gradient(180deg, #1C57B0 0%, #2369D2 55%, #1E5CBC 100%);
  /* Jumped to from every "Contact us" on the site. */
  scroll-margin-top: 5rem;
}

/* --- Talk to us ------------------------------------------------------------ */

/* The band carries no background and no rule of its own — it shares the
   footer's field, so there is nothing here to draw a seam. */
.ftr__cta-inner {
  display: grid;
  gap: clamp(1.5rem, 1rem + 2vw, 2.5rem);
  align-items: center;
  padding-block: clamp(2rem, 1.5rem + 2vw, 3rem);
}

@media (min-width: 900px) {
  .ftr__cta-inner {
    grid-template-columns: minmax(0, 1fr) auto;
  }
}

.ftr__cta-title {
  margin: 0;
  font-family: var(--font-display);
  font-variation-settings: 'opsz' 96, 'wdth' 100;
  font-size: clamp(1.6rem, 1.2rem + 1.6vw, 2.4rem);
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: -0.02em;
  color: #fff;
}

.ftr__cta-body {
  margin: 0.7rem 0 0;
  font-size: var(--fs-body);
  line-height: 1.6;
  color: rgba(255, 255, 255, .88);
}

.ftr__cta-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.85rem;
}

.ftr__btn {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  min-height: 3rem;
  padding: 0.7rem 1.5rem;
  border-radius: var(--r-pill);
  font-family: var(--font-sans);
  font-size: var(--fs-sm);
  font-weight: 700;
  text-decoration: none;
  white-space: nowrap;
  transition: gap var(--d-base) var(--ease-out-expo),
    background-color var(--d-fast) var(--ease-out-soft),
    box-shadow var(--d-fast) var(--ease-out-soft);
}

.ftr__btn:hover {
  gap: 0.85rem;
}

.ftr__btn--solid {
  background: var(--yellow-300);
  color: var(--ink-900);
  box-shadow: var(--e-yellow);
}

.ftr__btn--solid:hover {
  background: var(--yellow-400);
}

.ftr__btn--ghost {
  color: #fff;
  box-shadow: inset 0 0 0 1.5px rgba(255, 255, 255, .55);
}

.ftr__btn--ghost:hover {
  box-shadow: inset 0 0 0 1.5px #fff;
  background: rgba(255, 255, 255, .08);
}

/* --- The four columns ------------------------------------------------------ */

.ftr__main {
  position: relative;
  overflow: hidden;
}

.ftr__grid {
  position: relative;
  z-index: 1;
  display: grid;
  gap: clamp(2rem, 1.5rem + 2vw, 3rem) clamp(1.5rem, 1rem + 2vw, 3rem);
  /* The tall foot is the skyline's room; it is drawn behind the columns. */
  padding-block: clamp(2.5rem, 2rem + 2vw, 3.5rem) clamp(5.5rem, 4rem + 4vw, 7rem);
}

@media (min-width: 700px) {
  .ftr__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1100px) {
  .ftr__grid {
    grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr) minmax(0, 0.8fr) minmax(0, 1.1fr);
  }
}

.ftr__logo {
  display: block;
  width: auto;
  height: clamp(2.5rem, 2rem + 1.5vw, 3.4rem);
}

.ftr__brand-line {
  margin-top: 1.1rem;
  max-width: 24ch;
  font-size: var(--fs-sm);
  line-height: 1.6;
  color: rgba(255, 255, 255, .9);
}

.ftr__social {
  margin-top: 1.5rem;
}

.ftr__social-link {
  display: inline-flex;
  align-items: center;
  gap: 0.7rem;
  min-height: 44px;
  font-size: var(--fs-sm);
  color: #fff;
  text-decoration: none;
}

.ftr__social-icon {
  display: grid;
  place-items: center;
  color: #fff;
}

a.ftr__social-link:hover {
  color: var(--yellow-300);
}

.ftr__h {
  margin: 0 0 1rem;
  font-family: var(--font-sans);
  font-size: 1.1rem;
  font-weight: 700;
  color: #fff;
}

.ftr__h--spaced {
  margin-top: 1.9rem;
}

.ftr__list {
  display: grid;
  gap: 0.35rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.ftr__item,
.ftr__place,
.ftr__link {
  display: flex;
  align-items: center;
  gap: 0.7rem;
  min-height: 2.1rem;
  font-size: var(--fs-sm);
  line-height: 1.5;
  color: rgba(255, 255, 255, .92);
  text-decoration: none;
  overflow-wrap: anywhere;
}

a.ftr__item:hover,
a.ftr__link:hover {
  color: var(--yellow-300);
}

.ftr__mark {
  flex: none;
  color: #fff;
}

/* The park along the foot. It is decoration, so it sits behind the columns
   and never intercepts a click. */
.ftr__park {
  position: absolute;
  left: 50%;
  bottom: -1px;
  z-index: 0;
  /* Below ~900px the drawing would squash into an unreadable smear, so it
     keeps its scale and the footer's own edges crop it instead. */
  width: max(100%, 900px);
  max-width: none;
  /* beats the global svg { max-width: 100% } */
  height: auto;
  transform: translateX(-50%);
  color: rgba(255, 255, 255, .36);
  pointer-events: none;
}

/* --- Legal ------------------------------------------------------------------ */

/* Like the call-to-action band, the legal row carries no background and no
   rule of its own — it is the same field, carried to the foot of the page. */
.ftr__legal-inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 0 1.5rem;
  padding-block: 0.4rem;
}

.ftr__copy {
  margin: 0;
  padding-block: 0.6rem;
  font-size: var(--fs-xs);
  color: rgba(255, 255, 255, .8);
}

.ftr__legal-links {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin: 0;
  padding: 0;
  list-style: none;
}

.ftr__legal-links li {
  display: inline-flex;
  align-items: center;
}

.ftr__sep {
  margin-inline: 0.9rem;
  color: rgba(255, 255, 255, .45);
}

.ftr__legal-link {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  font-size: var(--fs-xs);
  color: rgba(255, 255, 255, .85);
  text-decoration: none;
}

a.ftr__legal-link:hover {
  color: var(--yellow-300);
  text-decoration: underline;
  text-underline-offset: 0.2em;
}




/* Right side image display:none */
/* Container to hold the buttons */
.ftr__cta-actions {
  display: flex;
  gap: 1rem;
  /* Adjust space between buttons */
  justify-content: center;
  /* Center buttons within the container */
}

/* Base style for both buttons */
.ftr__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  /* Centers text and icons horizontally */
  text-align: center;
  /* To make them the same width: */
  flex: 1;
  /* Both buttons will grow to take 50% of the container */
  max-width: 200px;
  /* Optional: limits how wide they can get */
  /* Alternative for same width without stretching to container: */
  /* min-width: 180px; */
}

@media (max-width: 767px) {
  .sc-out__preview {
    display: none !important;
  }
}


/* Gravity Form alert Message css */

.gform_wrapper.gravity-theme .gfield_validation_message,
.gform_wrapper.gravity-theme .validation_message {
  background: white !important;
  border: 0px !important;
  margin-block-start: 0px !important;
  padding: 0px 15px 0px 0px !important;
  padding-top: 0px !important;

}

.gform_wrapper.gravity-theme .gform-field-label .gform-field-label__text {
  color: black !important;
}

.gform_wrapper.gravity-theme .gform_validation_errors {
  background: white !important;
  border: 0px !important;
}

.cf--gf .gform_wrapper .gform_validation_errors {
  box-shadow: none !important;
}