/* Shared marine loader. No images, fonts or external animation libraries required. */
#js-preloader.mme-marine-loader {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: grid;
  place-items: center;
  box-sizing: border-box;
  padding: 28px;
  background: #fff;
  opacity: 1;
  visibility: visible;
  transition: opacity .25s ease, visibility .25s ease;
}
#js-preloader.mme-marine-loader.loaded {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}
#js-preloader.mme-marine-loader[hidden] { display: none !important; }
#js-preloader .mme-loader__content {
  display: flex;
  flex-direction: column;
  align-items: center;
  color: #143b5d;
  text-align: center;
  font-family: Arial, Helvetica, sans-serif;
}
#js-preloader .mme-loader__radar {
  position: relative;
  width: 180px;
  height: 180px;
  flex: 0 0 auto;
  margin-bottom: 24px;
}
#js-preloader .mme-loader__grid {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  overflow: visible;
  stroke: #d0e1ed;
  stroke-width: 1;
}
#js-preloader .mme-loader__outer-ring { stroke: #6f9ebd; stroke-width: 1.4; }
#js-preloader .mme-loader__ticks { stroke: #7da4be; stroke-width: 1.4; }
#js-preloader .mme-loader__sweep {
  position: absolute;
  inset: 16px;
  z-index: 1;
  border-radius: 50%;
  background: conic-gradient(from 0deg, transparent 0deg 285deg, rgba(31, 153, 205, .02) 285deg, rgba(31, 153, 205, .24) 357deg, rgba(31, 153, 205, .64) 360deg);
  animation: mme-radar-sweep 2.8s linear infinite;
}
#js-preloader .mme-loader__vessel {
  position: absolute;
  top: 66px;
  left: 70px;
  z-index: 2;
  width: 40px;
  height: 48px;
}
#js-preloader .mme-loader__hull { fill: #163d5d; stroke: #fff; stroke-width: 2; stroke-linejoin: round; }
#js-preloader .mme-loader__deck { fill: #f6fafc; }
#js-preloader .mme-loader__deck-line { stroke: #b2dbea; stroke-width: 1.5; stroke-linecap: round; }
#js-preloader .mme-loader__north {
  position: absolute;
  top: -12px;
  left: 0;
  width: 100%;
  color: #416987;
  font-size: 10px;
  font-weight: 700;
  line-height: 1;
}
#js-preloader .mme-loader__echo {
  fill: #268bb6;
  stroke: #fff;
  stroke-width: 1.5;
  opacity: .3;
  animation: mme-radar-echo 2.8s ease-out infinite;
}
#js-preloader .mme-loader__echo--one { animation-delay: .35s; }
#js-preloader .mme-loader__echo--two { animation-delay: 1.75s; }
#js-preloader .mme-loader__echo--three { animation-delay: 1.05s; }
#js-preloader .mme-loader__brand {
  margin: 0 0 10px;
  color: #143b5d;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .12em;
  line-height: 1.6;
  text-transform: uppercase;
}
#js-preloader .mme-loader__label {
  margin: 0;
  color: #526e83;
  font-size: 12px;
  font-weight: 400;
  letter-spacing: .04em;
  line-height: 1.5;
}
#js-preloader.loaded .mme-loader__sweep,
#js-preloader.loaded .mme-loader__echo { animation: none; }
@keyframes mme-radar-sweep { to { transform: rotate(360deg); } }
@keyframes mme-radar-echo { 0%, 65%, 100% { opacity: .25; } 15% { opacity: 1; } }
@media (max-width: 480px) {
  #js-preloader .mme-loader__radar { width: 156px; height: 156px; }
  #js-preloader .mme-loader__sweep { inset: 13.8667px; }
  #js-preloader .mme-loader__vessel { top: 57.2px; left: 60.67px; width: 34.67px; height: 41.6px; }
  #js-preloader .mme-loader__brand { font-size: 10px; }
}
@media (prefers-reduced-motion: reduce) {
  #js-preloader.mme-marine-loader { transition: none; }
  #js-preloader .mme-loader__sweep { animation: none; transform: rotate(35deg); opacity: .55; }
  #js-preloader .mme-loader__echo { animation: none; opacity: .8; }
}
