/* World Diligence navigation / footer refresh — scoped to the shared CMS layout.
   No page content, form, hero, or other Elementor modules are restyled. */
:root { --wd-teal:#16b6ad; --wd-turquoise:#32d9c9; --wd-ink:#143642; --wd-light:#f0fbf9; }

/* ---------------------------------- Header ---------------------------------- */
.wd-global-header-scope {
  position: -webkit-sticky !important;
  position: sticky !important;
  top: 0 !important;
  z-index: 10000 !important;
  isolation: isolate;
  width: 100%;
  overflow: visible !important;
}
.wd-global-header-scope.wd-global-layout-scope .wd-site-header {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: linear-gradient(105deg,rgba(248,255,254,.98) 0%,rgba(199,249,242,.99) 32%,rgba(100,229,216,.98) 73%,rgba(39,207,190,.98) 100%) !important;
  border-bottom: 1px solid rgba(15,118,116,.17);
  box-shadow: 0 7px 28px rgba(18,78,81,.09);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  transition: box-shadow .24s ease, border-color .24s ease;
  overflow: visible !important;
  transform: none !important;
}
.wd-global-header-scope.wd-scrolled .wd-site-header {
  box-shadow: 0 12px 32px rgba(5,64,72,.18);
  border-bottom-color: rgba(9,121,121,.27);
}
.wd-global-header-scope.wd-global-layout-scope .wd-site-header > .elementor-container {
  display: flex !important;
  flex-flow: row nowrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: clamp(10px,1.35vw,24px) !important;
  max-width: 1640px !important;
  width: min(100% - 60px,1640px) !important;
  min-height: 82px !important;
  margin: 0 auto !important;
  padding: 8px 0 !important;
  overflow: visible !important;
}
.wd-global-header-scope.wd-global-layout-scope .wd-site-header > .elementor-container > .elementor-column {
  min-width: 0 !important;
  max-width: none !important;
  flex-shrink: 0 !important;
  padding: 0 !important;
}
.wd-global-header-scope.wd-global-layout-scope .wd-site-header .elementor-widget-wrap {
  align-items: center !important;
  align-content: center !important;
  padding: 0 !important;
}
.wd-global-header-scope.wd-global-layout-scope .wd-site-header .elementor-widget { margin-bottom: 0 !important; }
.wd-global-header-scope.wd-global-layout-scope .wd-site-header > .elementor-container > .elementor-element-50aacfe {
  flex: 0 0 clamp(145px,11vw,185px) !important;
  width: clamp(145px,11vw,185px) !important;
}
.wd-global-header-scope.wd-global-layout-scope .wd-site-header .wpr-logo { position: relative; display: block; max-width: 100%; }
.wd-global-header-scope.wd-global-layout-scope .wd-site-header .wpr-logo-image,
.wd-global-header-scope.wd-global-layout-scope .wd-site-header .wpr-logo-image img {
  width: 100% !important;
  max-width: 178px !important;
  height: auto !important;
  max-height: 64px !important;
  object-fit: contain !important;
}
.wd-global-header-scope.wd-global-layout-scope .wd-site-header .wpr-logo-url { z-index: 2; }
.wd-global-header-scope.wd-global-layout-scope .wd-site-header > .elementor-container > .elementor-element-f9036f6 {
  flex: 1 1 auto !important;
  width: auto !important;
  overflow: visible !important;
}
.wd-global-header-scope.wd-global-layout-scope .wd-site-header .elementor-element-f5cf2c2,
.wd-global-header-scope.wd-global-layout-scope .wd-site-header .elementor-element-f5cf2c2 > .elementor-widget-container { width: 100% !important; }
.wd-global-header-scope.wd-global-layout-scope .wd-site-header > .elementor-container > .elementor-element-e2bfd3d {
  flex: 0 0 auto !important; width: auto !important;
}
.wd-global-header-scope.wd-global-layout-scope .wd-site-header .elementor-element-ea910ff p {
  color: #346e75 !important;
  font-size: clamp(12px,1vw,14px) !important;
  font-weight: 600 !important;
  white-space: nowrap;
  letter-spacing: -.15px;
  margin: 0 !important;
}
.wd-global-header-scope.wd-global-layout-scope .wd-site-header > .elementor-container > .elementor-element-0b55960 {
  flex: 0 0 auto !important; width: auto !important;
}
.wd-global-header-scope.wd-global-layout-scope .wd-site-header .elementor-element-7960e93 .elementor-grid {
  display: flex !important; flex-wrap: nowrap !important;
  align-items: center !important; justify-content: center !important;
  gap: 6px !important;
}
.wd-global-header-scope.wd-global-layout-scope .wd-site-header .elementor-element-7960e93 .elementor-grid-item { margin: 0 !important; }
.wd-global-header-scope.wd-global-layout-scope .wd-site-header .elementor-element-7960e93 .elementor-social-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 34px !important; height: 34px !important;
  background: rgba(255,255,255,.46) !important;
  border: 1px solid rgba(22,103,108,.16) !important;
  border-radius: 11px !important;
  padding: 0 !important;
  color: var(--wd-ink) !important;
  box-shadow: none !important;
  transition: background .2s ease, transform .2s ease, color .2s ease;
}
.wd-global-header-scope.wd-global-layout-scope .wd-site-header .elementor-element-7960e93 a i,
.wd-global-header-scope.wd-global-layout-scope .wd-site-header .elementor-element-7960e93 a svg {
  font-size: 15px !important;
  width: 15px !important; height: 15px !important;
  color: #214b53 !important; fill: currentColor !important;
}
.wd-global-header-scope.wd-global-layout-scope .wd-site-header .elementor-element-7960e93 .elementor-social-icon:hover {
  background: #fff !important; transform: translateY(-2px);
}
.wd-global-header-scope .wd-header-action { flex: 0 0 auto; margin: 0; padding: 0; }
.wd-global-header-scope .wd-client-login {
  display: inline-flex !important;
  gap: 8px;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
  min-height: 42px;
  padding: 10px 17px;
  border-radius: 13px;
  background: #123c49 !important;
  border: 1px solid rgba(255,255,255,.25);
  color: #fff !important;
  font-family: inherit;
  font-size: 13px;
  font-weight: 750;
  letter-spacing: .1px;
  box-shadow: 0 8px 18px rgba(10,77,82,.18);
  text-decoration: none !important;
  transition: transform .22s ease,box-shadow .22s ease,background .22s ease;
}
.wd-global-header-scope .wd-client-login svg {
  flex-shrink: 0; width: 17px; height: 17px;
  fill: none; stroke: currentColor; stroke-width: 1.85;
  stroke-linecap: round; stroke-linejoin: round;
}
.wd-global-header-scope .wd-client-login:hover,
.wd-global-header-scope .wd-client-login:focus-visible {
  color: #fff !important;
  background: #075b64 !important;
  box-shadow: 0 10px 22px rgba(10,77,82,.28);
  transform: translateY(-2px);
}
.wd-global-header-scope .wd-client-login:focus-visible,
.wd-global-header-scope a:focus-visible,
.wd-global-header-scope button:focus-visible {
  outline: 3px solid #fff !important;
  outline-offset: 3px;
}

/* Main links — preserve the actual menu_items table and Elementor widgets. */
.wd-global-header-scope.wd-global-layout-scope .wd-site-header .wpr-nav-menu-container {
  display: flex !important; justify-content: center !important; width: 100% !important;
  overflow: visible !important;
}
.wd-global-header-scope.wd-global-layout-scope .wd-site-header .wpr-nav-menu {
  display: flex !important; flex-wrap: nowrap !important;
  align-items: center !important; justify-content: center !important;
  column-gap: clamp(0px,.35vw,6px) !important;
  margin: 0 !important; padding: 0 !important;
  list-style: none !important;
  overflow: visible !important;
}
.wd-global-header-scope.wd-global-layout-scope .wd-site-header .wpr-nav-menu > li {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  flex: 0 0 auto;
  margin: 0 !important;
  padding: 0 !important;
}
.wd-global-header-scope.wd-global-layout-scope .wd-site-header .wpr-nav-menu > li > a.wpr-menu-item {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  width: auto !important;
  min-height: 43px !important;
  padding: 10px clamp(9px,1vw,17px) !important;
  border: 1px solid transparent !important;
  border-radius: 12px !important;
  background: transparent !important;
  color: #204950 !important;
  font-size: clamp(13px,1.06vw,16px) !important;
  font-weight: 650 !important;
  text-transform: none !important;
  letter-spacing: .1px;
  line-height: 1.3 !important;
  white-space: nowrap;
  text-decoration: none !important;
  transition: color .2s ease, background .2s ease, box-shadow .2s ease;
}
.wd-global-header-scope.wd-global-layout-scope .wd-site-header .wpr-nav-menu > li > a.wpr-menu-item::after,
.wd-global-header-scope.wd-global-layout-scope .wd-site-header .wpr-nav-menu > li > a.wpr-menu-item::before { content: none !important; }
.wd-global-header-scope.wd-global-layout-scope .wd-site-header .wpr-nav-menu > li:hover > a.wpr-menu-item,
.wd-global-header-scope.wd-global-layout-scope .wd-site-header .wpr-nav-menu > li:focus-within > a.wpr-menu-item {
  color: #075b62 !important; background: rgba(255,255,255,.45) !important;
}
.wd-global-header-scope.wd-global-layout-scope .wd-site-header .wpr-nav-menu > li.current-menu-item > a.wpr-menu-item {
  color: #063f47 !important;
  background: rgba(255,255,255,.65) !important;
  box-shadow: inset 0 0 0 1px rgba(2,121,117,.13) !important;
}
.wd-global-header-scope.wd-global-layout-scope .wd-site-header .wpr-nav-menu > li.current-menu-item > a.wpr-menu-item::after {
  content: '' !important; display: block !important;
  position: absolute !important; left: 18px; right: 18px; bottom: 3px;
  top: auto !important; width: auto !important; height: 3px !important;
  border-radius: 4px;
  background: linear-gradient(90deg,#108d95,#31cfc1) !important;
  transform: none !important; opacity: 1 !important;
}
.wd-global-header-scope.wd-global-layout-scope .wd-site-header .wpr-nav-menu .wd-submenu-toggle {
  display: inline-flex; align-items: center; justify-content: center;
  width: 22px; height: 32px;
  margin-left: -7px; margin-right: 3px;
  border: 0; border-radius: 7px;
  padding: 0; background: transparent;
  color: #1c6264; cursor: pointer;
}
.wd-global-header-scope .wd-submenu-toggle svg {
  display: block; width: 14px; height: 14px;
  fill: none; stroke: currentColor; stroke-width: 2.2;
  stroke-linecap: round;stroke-linejoin: round;
  transition: transform .2s ease;
}
.wd-global-header-scope.wd-global-layout-scope .wd-site-header .wpr-nav-menu > li:hover > .wd-submenu-toggle svg,
.wd-global-header-scope.wd-global-layout-scope .wd-site-header li.wd-submenu-open > .wd-submenu-toggle svg { transform: rotate(180deg); }
.wd-global-header-scope.wd-global-layout-scope .wd-site-header .wpr-nav-menu > li > .wpr-sub-menu {
  position: absolute !important;
  display: block !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
  top: calc(100% + 12px) !important;
  left: 50% !important;
  right: auto !important;
  width: 295px !important;
  min-width: 295px !important;
  max-width: 90vw;
  margin: 0 !important;
  padding: 10px !important;
  background: rgba(255,255,255,.98) !important;
  border: 1px solid rgba(6,126,124,.16) !important;
  border-radius: 18px !important;
  box-shadow: 0 22px 55px rgba(12,62,70,.22),0 5px 16px rgba(12,62,70,.07) !important;
  transform: translate(-50%,8px) !important;
  transition: opacity .18s ease, transform .18s ease, visibility .18s ease;
  overflow: visible !important;
  list-style: none !important;
  z-index: 10050 !important;
}
/* Close the hover gap without blocking nav links. */
.wd-global-header-scope.wd-global-layout-scope .wd-site-header .wpr-nav-menu > li > .wpr-sub-menu::before {
  content: ''; position: absolute; left: 0; right: 0; top: -13px; height: 13px;
}
.wd-global-header-scope.wd-global-layout-scope .wd-site-header .wpr-nav-menu > li > .wpr-sub-menu::after {
  content: ''; position: absolute; top: -5px; left: calc(50% - 6px);
  width: 12px; height: 12px; background: #fff;
  border-top: 1px solid rgba(6,126,124,.16);
  border-left: 1px solid rgba(6,126,124,.16);
  transform: rotate(45deg);
}
.wd-global-header-scope.wd-global-layout-scope .wd-site-header .wpr-nav-menu > li:hover > .wpr-sub-menu,
.wd-global-header-scope.wd-global-layout-scope .wd-site-header .wpr-nav-menu > li:focus-within > .wpr-sub-menu,
.wd-global-header-scope.wd-global-layout-scope .wd-site-header .wpr-nav-menu > li.wd-submenu-open > .wpr-sub-menu {
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  transform: translate(-50%,0) !important;
}
.wd-global-header-scope.wd-global-layout-scope .wd-site-header .wpr-nav-menu .wpr-sub-menu > li { list-style: none !important; margin: 0 !important; }
.wd-global-header-scope.wd-global-layout-scope .wd-site-header .wpr-nav-menu .wpr-sub-menu a.wpr-sub-menu-item {
  display: flex !important;
  align-items: center !important;
  width: 100% !important;
  min-height: 41px !important;
  padding: 11px 14px !important;
  margin: 1px 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 10px !important;
  color: #244b54 !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 600 !important;
  white-space: normal !important;
  text-align: left !important;
  text-decoration: none !important;
  transition: background .18s ease, color .18s ease, padding .18s ease;
}
.wd-global-header-scope.wd-global-layout-scope .wd-site-header .wpr-nav-menu .wpr-sub-menu a.wpr-sub-menu-item:hover,
.wd-global-header-scope.wd-global-layout-scope .wd-site-header .wpr-nav-menu .wpr-sub-menu .current-menu-item a.wpr-sub-menu-item {
  color: #076e71 !important; background: #e8f8f5 !important; padding-left: 19px !important;
}

/* --------------------------- Responsive header ------------------------------ */
@media (max-width:1199px) {
  .wd-global-header-scope.wd-global-layout-scope .wd-site-header > .elementor-container > .elementor-element-0b55960 { display: none !important; }
}
@media (max-width:1100px) {
  .wd-global-header-scope.wd-global-layout-scope .wd-site-header > .elementor-container > .elementor-element-e2bfd3d { display: none !important; }
}
@media (min-width:1025px) {
  .wd-global-header-scope.wd-global-layout-scope .wd-site-header .wpr-mobile-nav-menu-container { display: none !important; }
}
@media (max-width:1024px) {
  /* The mobile dropdown must position against the full header, not the
     42px Elementor menu column (which is positioned by the legacy theme). */
  .wd-global-header-scope.wd-global-layout-scope .wd-site-header > .elementor-container,
  .wd-global-header-scope.wd-global-layout-scope .wd-site-header > .elementor-container > .elementor-element-f9036f6,
  .wd-global-header-scope.wd-global-layout-scope .wd-site-header .elementor-element-f9036f6 > .elementor-widget-wrap,
  .wd-global-header-scope.wd-global-layout-scope .wd-site-header .elementor-element-f5cf2c2,
  .wd-global-header-scope.wd-global-layout-scope .wd-site-header .elementor-element-f5cf2c2 > .elementor-widget-container,
  .wd-global-header-scope.wd-global-layout-scope .wd-site-header .wpr-mobile-nav-menu-container {
    /* Elementor/WPR position widgets relative by default; that made the
       dropdown anchor to the 42px hamburger column (the white vertical bar).
       Anchor all mobile menu ancestors to the full header instead. */
    position: static !important;
  }
  .wd-global-header-scope.wd-global-layout-scope .wd-site-header > .elementor-container {
    width: calc(100% - 38px) !important;
    min-height: 74px !important;
    padding: 7px 0 !important;
    gap: 12px !important;
  }
  .wd-global-header-scope.wd-global-layout-scope .wd-site-header > .elementor-container > .elementor-element-50aacfe {
    flex: 0 1 154px !important; width: auto !important; margin-right: auto;
  }
  .wd-global-header-scope.wd-global-layout-scope .wd-site-header .wpr-logo-image img { max-height: 56px !important; }
  .wd-global-header-scope.wd-global-layout-scope .wd-site-header > .elementor-container > .elementor-element-f9036f6 {
    order: 3 !important; flex: 0 0 42px !important; width: 42px !important;
  }
  .wd-global-header-scope.wd-global-layout-scope .wd-site-header .wpr-nav-menu-container { display: none !important; }
  .wd-global-header-scope.wd-global-layout-scope .wd-site-header .wpr-mobile-nav-menu-container { display: block !important; position: static !important; }
  .wd-global-header-scope.wd-global-layout-scope .wd-site-header .wpr-mobile-toggle-wrap { display: flex !important; justify-content: flex-end; }
  .wd-global-header-scope.wd-global-layout-scope .wd-site-header .wpr-mobile-toggle {
    position: relative !important;
    display: flex !important;flex-direction: column !important;
    align-items: center !important;justify-content: center !important;
    gap: 5px !important;
    width: 42px !important;height: 42px !important;
    margin: 0 !important; padding: 0 !important;
    border: 1px solid rgba(8,98,101,.17) !important;
    background: rgba(255,255,255,.65) !important;
    border-radius: 12px !important;
    box-shadow: none !important;
    cursor: pointer;
  }
  .wd-global-header-scope.wd-global-layout-scope .wd-site-header .wpr-mobile-toggle .wpr-mobile-toggle-line {
    display: block !important; width: 20px !important; height: 2px !important;
    border-radius: 2px !important; margin: 0 !important;
    background: #19515b !important;transform: none !important;
    transition: transform .2s ease,opacity .2s ease;
  }
  .wd-global-header-scope.wd-menu-open .wpr-mobile-toggle-line:first-child { transform: translateY(7px) rotate(45deg) !important; }
  .wd-global-header-scope.wd-menu-open .wpr-mobile-toggle-line:nth-child(2) { opacity: 0 !important; }
  .wd-global-header-scope.wd-menu-open .wpr-mobile-toggle-line:last-child { transform: translateY(-7px) rotate(-45deg) !important; }
  .wd-global-header-scope .wd-header-action { order: 2; }
  .wd-global-header-scope .wd-client-login { min-height: 41px; padding: 9px 13px; border-radius: 12px; }
  .wd-global-header-scope.wd-global-layout-scope .wd-site-header .wpr-mobile-nav-menu {
    display: none !important;
    position: absolute !important;
    top: calc(100% + 7px) !important; left: 19px !important; right: 19px !important;
    /* Override the WPR plugin's inline width:0/left:-.../height:0 state.
       Use a real width instead of auto, even while the plugin is animating. */
    width: calc(100% - 38px) !important; min-width: 0 !important;
    max-width: calc(100% - 38px) !important; height: auto !important;
    max-height: calc(100dvh - 95px) !important; overflow-x: hidden !important; overflow-y: auto !important;
    z-index: 11000 !important;
    margin: 0 !important; padding: 12px !important;
    border: 1px solid rgba(3,130,125,.17) !important;
    border-radius: 18px !important;
    background: #f9fffe !important;
    box-shadow: 0 22px 56px rgba(12,62,70,.25) !important;
    list-style: none !important;
  }
  .wd-global-header-scope.wd-menu-open .wd-site-header .wpr-mobile-nav-menu { display: block !important; }
  .wd-global-header-scope.wd-global-layout-scope .wd-site-header .wpr-mobile-nav-menu > li {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    position: relative !important;
    margin: 1px 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }
  .wd-global-header-scope.wd-global-layout-scope .wd-site-header .wpr-mobile-nav-menu > li > a.wpr-mobile-menu-item {
    display: flex !important; flex: 1 1 auto !important;
    width: auto !important;min-height: 43px !important;
    align-items: center !important;
    padding: 12px 14px !important;
    margin: 0 !important;
    border: none !important;
    border-radius: 10px !important;
    background: transparent !important;
    color: #1d4450 !important;
    font-size: 15px !important;
    line-height: 1.35 !important;
    font-weight: 650 !important;
    text-align: left !important;
    text-decoration: none !important;
  }
  .wd-global-header-scope.wd-global-layout-scope .wd-site-header .wpr-mobile-nav-menu > li.current-menu-item > a.wpr-mobile-menu-item,
  .wd-global-header-scope.wd-global-layout-scope .wd-site-header .wpr-mobile-nav-menu > li > a.wpr-mobile-menu-item:hover {
    background: #e4f6f2 !important; color: #066e70 !important;
  }
  .wd-global-header-scope.wd-global-layout-scope .wd-site-header .wpr-mobile-nav-menu .wd-submenu-toggle {
    display: flex !important;position: relative;
    width: 40px; height: 40px;flex: 0 0 40px;
    align-items: center; justify-content: center;
    margin: 0 4px 0 0; padding: 0;
    border: 0; border-radius: 10px;
    background: #e9f8f5;color: #19575d;
    cursor: pointer;
  }
  .wd-global-header-scope.wd-global-layout-scope .wd-site-header .wpr-mobile-nav-menu > li.wd-submenu-open > .wd-submenu-toggle svg {transform:rotate(180deg);}
  .wd-global-header-scope.wd-global-layout-scope .wd-site-header .wpr-mobile-nav-menu > li > ul.wpr-sub-menu {
    display: none !important; position: static !important;
    flex: 0 0 100% !important;
    width: 100% !important; min-width: 0 !important;
    height: auto !important; overflow: visible !important;
    margin: 4px 0 6px !important; padding: 5px 6px 5px 14px !important;
    background: #f0faf8 !important;
    border: 0 !important; border-left: 3px solid #37cfc1 !important;
    border-radius: 0 10px 10px 0 !important;
    box-shadow: none !important;
    transform: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    list-style: none !important;
  }
  .wd-global-header-scope.wd-global-layout-scope .wd-site-header .wpr-mobile-nav-menu > li.wd-submenu-open > ul.wpr-sub-menu { display:block !important; }
  .wd-global-header-scope.wd-global-layout-scope .wd-site-header .wpr-mobile-nav-menu .wpr-sub-menu li { margin: 0 !important;list-style:none!important; }
  .wd-global-header-scope.wd-global-layout-scope .wd-site-header .wpr-mobile-nav-menu .wpr-sub-menu a {
    display: block !important; width:100% !important;
    padding: 10px 12px !important;
    background: transparent !important;
    border: none !important; border-radius: 8px !important;
    color: #31545c !important;
    font-size: 14px !important; line-height: 1.4 !important;
    font-weight: 570 !important;text-decoration: none !important;
  }
  .wd-global-header-scope.wd-global-layout-scope .wd-site-header .wpr-mobile-nav-menu .wpr-sub-menu .current-menu-item > a,
  .wd-global-header-scope.wd-global-layout-scope .wd-site-header .wpr-mobile-nav-menu .wpr-sub-menu a:hover {
    background: #d7f2ed !important;color: #076c6e !important;
  }
}
@media (max-width:390px) {
  .wd-global-header-scope.wd-global-layout-scope .wd-site-header > .elementor-container { width:calc(100% - 24px)!important; gap:8px!important; min-height: 70px!important; }
  .wd-global-header-scope.wd-global-layout-scope .wd-site-header > .elementor-container > .elementor-element-50aacfe { flex-basis: 105px!important; }
  .wd-global-header-scope .wd-client-login {padding:9px 10px;font-size:12px;gap:5px;}
  .wd-global-header-scope .wd-client-login svg {width:15px;height:15px;}
  .wd-global-header-scope.wd-global-layout-scope .wd-site-header .wpr-mobile-nav-menu {left:12px!important;right:12px!important;width:calc(100% - 24px)!important;max-width:calc(100% - 24px)!important;}
}


/* Mobile menu isolation, Oct 18: the old WPR animated UL is *never* displayed.
   Its JavaScript sets inline width/left and was responsible for the white bar.
   The actual server-rendered items are copied into an independent viewport panel. */
@media (max-width: 1024px) {
  .wd-global-header-scope.wd-global-layout-scope {
    position: fixed !important;
    inset: 0 0 auto 0 !important;
    width: 100% !important;
    z-index: 20000 !important;
    overflow: visible !important;
    transform: none !important;
  }
  .wd-global-header-scope.wd-global-layout-scope .wd-site-header ul.wpr-mobile-nav-menu {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
    position: absolute !important;
    left: -10000px !important;
    width: 0 !important;
    min-width: 0 !important;
    max-width: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
  }
  .wd-mobile-header-spacer { display: block; width: 100%; }
  .wd-mobile-menu-panel {
    position: fixed !important;
    left: 12px !important;
    right: 12px !important;
    width: calc(100% - 24px) !important;
    margin: 0 !important;
    padding: 12px !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;
    border-radius: 17px !important;
    border: 1px solid rgba(38,160,152,.25) !important;
    background: #f9fffe !important;
    color: #1e4852 !important;
    box-shadow: 0 18px 48px rgba(4,47,58,.27) !important;
    z-index: 20002 !important;
    box-sizing: border-box !important;
    -webkit-overflow-scrolling: touch;
  }
  .wd-mobile-menu-panel[hidden], .wd-mobile-menu-backdrop[hidden] { display: none !important; }
  .wd-mobile-menu-backdrop {
    position: fixed !important;
    inset: auto 0 0 0;
    z-index: 20001 !important;
    background: rgba(5,29,37,.32);
    backdrop-filter: blur(2px);
  }
  .wd-mobile-menu-list,
  .wd-mobile-menu-panel .wd-mobile-submenu {
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
    list-style: none !important;
  }
  .wd-mobile-menu-panel .wd-mobile-menu-list > li {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    position: relative !important;
    list-style: none !important;
    margin: 2px 0 !important;
    padding: 0 !important;
    width: 100% !important;
  }
  .wd-mobile-menu-panel a.wd-mobile-menu-link {
    flex: 1 1 0 !important;
    display: flex !important;
    align-items: center !important;
    min-width: 0 !important;
    min-height: 45px !important;
    margin: 0 !important;
    padding: 12px 15px !important;
    border: 0 !important;
    border-radius: 10px !important;
    background: transparent !important;
    color: #234852 !important;
    font-size: 15px !important;
    font-weight: 650 !important;
    line-height: 1.4 !important;
    white-space: normal !important;
    text-align: left !important;
    text-decoration: none !important;
  }
  .wd-mobile-menu-panel li.current-menu-item > a.wd-mobile-menu-link,
  .wd-mobile-menu-panel li.current_page_item > a.wd-mobile-menu-link,
  .wd-mobile-menu-panel a.wd-mobile-menu-link:hover,
  .wd-mobile-menu-panel a.wd-mobile-menu-link:focus-visible {
    background: #e3f6f2 !important;
    color: #07716f !important;
  }
  .wd-mobile-menu-panel .wd-submenu-toggle {
    display: flex !important;
    flex: 0 0 40px !important;
    justify-content: center !important;
    align-items: center !important;
    width: 40px !important;
    height: 40px !important;
    margin: 0 4px !important;
    border: 0 !important;
    border-radius: 9px !important;
    background: #e2f5f1 !important;
    color: #175761 !important;
    cursor: pointer;
  }
  .wd-mobile-menu-panel .wd-submenu-toggle svg {
    display: block !important;
    width: 15px !important;
    height: 15px !important;
    stroke: currentColor !important;
    stroke-width: 2 !important;
    fill: none !important;
    transition: transform .18s ease;
  }
  .wd-mobile-menu-panel li.wd-submenu-open > .wd-submenu-toggle svg { transform: rotate(180deg); }
  .wd-mobile-menu-panel ul.wd-mobile-submenu {
    display: none !important;
    flex: 0 0 100% !important;
    margin: 4px 0 7px !important;
    padding: 6px 6px 6px 12px !important;
    border: 0 !important;
    border-left: 3px solid #35cbbd !important;
    border-radius: 0 12px 12px 0 !important;
    background: #eaf7f5 !important;
    list-style: none !important;
  }
  .wd-mobile-menu-panel li.wd-submenu-open > ul.wd-mobile-submenu { display: block !important; }
  .wd-mobile-menu-panel ul.wd-mobile-submenu > li { margin: 1px 0 !important; padding: 0 !important; list-style: none !important; }
  .wd-mobile-menu-panel a.wd-mobile-submenu-link {
    display: block !important;
    width: 100% !important;
    padding: 11px 13px !important;
    border-radius: 9px !important;
    background: transparent !important;
    color: #31555e !important;
    font-size: 14px !important;
    font-weight: 550 !important;
    line-height: 1.4 !important;
    text-align: left !important;
    text-decoration: none !important;
  }
  .wd-mobile-menu-panel a.wd-mobile-submenu-link:hover,
  .wd-mobile-menu-panel li.current-menu-item > a.wd-mobile-submenu-link {
    color: #087574 !important;
    background: #d4efea !important;
  }
  .wd-mobile-menu-panel a:focus-visible,
  .wd-mobile-menu-panel button:focus-visible { outline: 3px solid #17ada5 !important; outline-offset: 2px; }
}
@media (min-width: 1025px) {
  .wd-mobile-header-spacer,
  .wd-mobile-menu-panel,
  .wd-mobile-menu-backdrop { display: none !important; }
}

/* --------------------------------- Footer --------------------------------- */
.wd-global-footer-scope {
  position: relative;
  background: #071b22;
  overflow: hidden;
}
.wd-global-footer-scope::before {
  content: ''; position:absolute;top:0;left:0;right:0;height:3px;
  z-index: 2; background: linear-gradient(90deg,#127b89,#39e0c8,#1da7b4);
}
.wd-global-footer-scope.wd-global-layout-scope > section.elementor-element-9e43b3a {
  background: radial-gradient(ellipse at 88% 6%, rgba(31,154,155,.17), transparent 39%),
              linear-gradient(130deg,#071a21 0%,#0c2730 100%) !important;
  border: 0 !important; padding: 62px 0 52px !important;
}
.wd-global-footer-scope.wd-global-layout-scope > section.elementor-element-9e43b3a > .elementor-container {
  width: calc(100% - 72px) !important;
  max-width: 1360px !important;
  display: grid !important;
  grid-template-columns: 1.18fr 1.18fr 1.12fr .82fr !important;
  gap: clamp(26px,3.5vw,72px) !important;
  align-items: start !important;
  margin: 0 auto !important;
}
.wd-global-footer-scope.wd-global-layout-scope > section.elementor-element-9e43b3a > .elementor-container > .elementor-column {
  width: 100% !important;max-width:100%!important;min-width:0!important;
  padding: 0 !important;margin:0!important;
}
.wd-global-footer-scope .elementor-widget-wrap {padding:0!important;align-content:start!important;}
.wd-global-footer-scope .elementor-widget {margin-bottom:0!important;}
.wd-global-footer-scope.wd-global-layout-scope > section.elementor-element-9e43b3a h2.elementor-heading-title {
  display: block;
  color: #50e2d0 !important;
  font-size: 16px !important;
  font-weight: 750 !important;
  line-height: 1.45 !important;
  letter-spacing: .25px;
  margin: 0 0 24px !important;
  padding: 0 0 15px !important;
  position: relative;
}
.wd-global-footer-scope.wd-global-layout-scope > section.elementor-element-9e43b3a h2.elementor-heading-title::after {
  content:'';position:absolute;left:0;bottom:0;width:38px;height:3px;
  border-radius: 2px;background:linear-gradient(90deg,#40e1d1,#218f9a);
}
.wd-global-footer-scope.wd-global-layout-scope > section.elementor-element-9e43b3a .elementor-widget-text-editor {
  color: #d1e0e4 !important;
  font-size: 14px !important;
  line-height: 1.85 !important;
  font-weight: 400;
}
.wd-global-footer-scope.wd-global-layout-scope > section.elementor-element-9e43b3a .elementor-widget-text-editor p {
  color: #d1e0e4 !important;
  font-size: 14px !important;
  line-height: 1.85 !important;
  margin: 0 !important;
}
.wd-global-footer-scope.wd-global-layout-scope > section.elementor-element-9e43b3a .elementor-widget-text-editor ul {
  padding: 0 !important; margin: 0 !important; list-style: none !important;
}
.wd-global-footer-scope.wd-global-layout-scope > section.elementor-element-9e43b3a .elementor-widget-text-editor li {
  position: relative;
  display: block;
  padding: 0 0 0 15px !important;
  margin: 0 0 10px !important;
  list-style: none !important;
  line-height: 1.6 !important;
}
.wd-global-footer-scope.wd-global-layout-scope > section.elementor-element-9e43b3a .elementor-widget-text-editor li::before {
  content: ''; position: absolute; left: 0; top: .68em;
  width: 5px; height: 5px; border-radius: 50%; background: #39d8c7;
}
.wd-global-footer-scope.wd-global-layout-scope > section.elementor-element-9e43b3a .elementor-widget-text-editor li a {
  color: #d4e5e8 !important;
  text-decoration: none !important;
  transition: color .2s ease;
}
.wd-global-footer-scope.wd-global-layout-scope > section.elementor-element-9e43b3a .elementor-widget-text-editor li a:hover,
.wd-global-footer-scope.wd-global-layout-scope > section.elementor-element-9e43b3a .elementor-widget-text-editor li a:focus-visible {
  color: #59e7d5 !important;
}
/* Align each heading with its underline. Elementor's original heading widgets
   had per-column text alignment, while the underline began at column-left. */
.wd-global-footer-scope.wd-global-layout-scope > section.elementor-element-9e43b3a .elementor-widget-heading,
.wd-global-footer-scope.wd-global-layout-scope > section.elementor-element-9e43b3a .elementor-widget-heading > .elementor-widget-container,
.wd-global-footer-scope.wd-global-layout-scope > section.elementor-element-9e43b3a h2.elementor-heading-title {
  text-align: left !important;
}
/* The X icon is rendered as an SVG by Font Awesome on the live site.
   Explicit path fill fixes the stubborn black icon even with Elementor inline styles. */
.wd-global-footer-scope a[href*="twitter.com"],
.wd-global-footer-scope a[href*="twitter.com"] i,
.wd-global-footer-scope a[href*="twitter.com"] svg,
.wd-global-footer-scope a[href*="twitter.com"] svg path,
.wd-global-footer-scope a[href*="x.com"] svg path {
  color: #fff !important; fill: #fff !important; stroke: none !important;
}
.wd-global-footer-scope .elementor-element-59e7322 p {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: flex-start !important;
  gap: 10px !important;
  align-items: center !important;
  text-align:left!important;
}
.wd-global-footer-scope .elementor-element-59e7322 p > a,
.wd-global-footer-scope .elementor-element-59e7322 p > span > a {
  display: inline-flex !important;align-items:center!important;justify-content:center!important;
  width:39px!important;height:39px!important;
  margin:0!important;padding:0!important;
  border:1px solid rgba(97,220,208,.25)!important;
  border-radius:11px!important;
  background:rgba(75,196,187,.1)!important;
  text-decoration:none!important;
  transition:transform .2s ease,background .2s ease,border-color .2s ease;
}
.wd-global-footer-scope .elementor-element-59e7322 p > a:hover,
.wd-global-footer-scope .elementor-element-59e7322 p > span > a:hover {
  background:rgba(46,210,193,.24)!important;
  border-color:rgba(97,220,208,.65)!important;
  transform:translateY(-3px);
}
.wd-global-footer-scope .elementor-element-59e7322 a i,
.wd-global-footer-scope .elementor-element-59e7322 a svg,
.wd-global-footer-scope .elementor-element-59e7322 a svg path {
  color:#fff!important;fill:#fff!important;font-size:16px!important;
}
.wd-global-footer-scope .elementor-element-59e7322 a svg {width:16px!important;height:16px!important;}
/* Bottom copyright is a separate Elementor section: don't modify its copy. */
.wd-global-footer-scope.wd-global-layout-scope > section.elementor-element-85e0528 {
  padding: 22px 0 !important;
  margin: 0 !important;
  background: #06161c !important;
  border-top: 1px solid rgba(101,210,198,.14) !important;
}
.wd-global-footer-scope.wd-global-layout-scope > section.elementor-element-85e0528 > .elementor-container {
  width: calc(100% - 50px) !important;max-width:1360px!important;margin:0 auto!important;
}
.wd-global-footer-scope.wd-global-layout-scope > section.elementor-element-85e0528 p,
.wd-global-footer-scope.wd-global-layout-scope > section.elementor-element-85e0528 p span {
  color: #a9c6ca !important;font-size: 12px !important;
  letter-spacing: .2px;line-height:1.8!important;
  margin:0!important;
}
/* The copyright is already in the live CMS footer HTML. Keep that exact
   editable text; prevent old Elementor 25% column widths or hidden widget
   wrappers from collapsing it or pushing it out of view. */
.wd-global-footer-scope.wd-global-layout-scope > section.elementor-element-85e0528 {
  display: block !important; visibility: visible !important; opacity: 1 !important;
  min-height: 64px !important;
}
.wd-global-footer-scope.wd-global-layout-scope > section.elementor-element-85e0528 > .elementor-container {
  display: flex !important; align-items: center !important; justify-content: center !important;
  max-width: 1360px !important;
}
.wd-global-footer-scope.wd-global-layout-scope > section.elementor-element-85e0528 > .elementor-container > .elementor-column {
  display: block !important; flex: 1 1 100% !important;
  width: 100% !important; max-width: 100% !important; min-width: 0 !important;
  margin: 0 !important;
}
.wd-global-footer-scope.wd-global-layout-scope > section.elementor-element-85e0528 .elementor-widget-wrap,
.wd-global-footer-scope.wd-global-layout-scope > section.elementor-element-85e0528 .elementor-widget,
.wd-global-footer-scope.wd-global-layout-scope > section.elementor-element-85e0528 .elementor-widget-container {
  display: block !important; width: 100% !important;
  visibility: visible !important; opacity: 1 !important;
}
.wd-global-footer-scope.wd-global-layout-scope > section.elementor-element-85e0528 .elementor-widget-container > p:first-child {
  display: block !important; visibility: visible !important; opacity: 1 !important;
  width: 100% !important; text-align: center !important;
}
.wd-global-footer-scope.wd-global-layout-scope > section.elementor-element-85e0528 .elementor-widget-container > p:first-child > span {
  color: #b4d2d5 !important;
}
@media (max-width:1024px) {
  .wd-global-footer-scope.wd-global-layout-scope > section.elementor-element-9e43b3a {padding:48px 0 38px!important;}
  .wd-global-footer-scope.wd-global-layout-scope > section.elementor-element-9e43b3a > .elementor-container {
    width:calc(100% - 48px)!important;
    grid-template-columns: repeat(2,minmax(0,1fr))!important;
    gap: 35px 45px!important;
  }
}
@media (max-width:600px) {
  .wd-global-footer-scope.wd-global-layout-scope > section.elementor-element-9e43b3a {padding:39px 0 29px!important;}
  .wd-global-footer-scope.wd-global-layout-scope > section.elementor-element-9e43b3a > .elementor-container {
    width:calc(100% - 38px)!important;
    grid-template-columns:minmax(0,1fr)!important;gap:30px!important;
  }
  .wd-global-footer-scope.wd-global-layout-scope > section.elementor-element-9e43b3a h2.elementor-heading-title {
    margin-bottom:15px!important;padding-bottom:10px!important;
  }
  .wd-global-footer-scope.wd-global-layout-scope > section.elementor-element-85e0528 {padding:15px 0!important;}
  .wd-global-footer-scope.wd-global-layout-scope > section.elementor-element-85e0528 > .elementor-container {width:calc(100% - 32px)!important;}
}
@media (prefers-reduced-motion: reduce) {
  .wd-global-header-scope *, .wd-global-footer-scope * {transition:none!important;scroll-behavior:auto!important;}
}

/* Copyright visibility only (2026-10-18): the old scroll-reveal script can
   leave this nested footer column with opacity:0 even when its parent section
   is visible. Keep original CMS copyright content and its styling untouched. */
.wd-global-footer-scope.wd-global-layout-scope > section.elementor-element-85e0528
  .elementor-column.elementor-element-d9ca70a {
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  transition: none !important;
}
