/* Real Honest Trading artwork on an enamel-and-metal dimensional plate. */
.story-art.ht-story-art {
  --ht-navy: #192f5f;
  --ht-blue: #3670ee;
  --ht-pale: #e9eff4;
  position: relative;
  isolation: isolate;
  min-height: 490px;
  border-radius: 50% 50% 16px 16px;
  overflow: hidden;
  background: radial-gradient(ellipse at 41% 28%, #fffefa 0%, #f3f5f2 29%, #dfe7ed 66%, #bfcfdc 100%);
  color: var(--ht-navy);
  border: 1px solid #f9faf6;
  box-shadow: inset 0 0 55px #ffffff50;
}
.ht-story-art::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: -1;
  opacity: .27;
  background-image: linear-gradient(#aebed430 1px, transparent 1px), linear-gradient(90deg, #aebed430 1px, transparent 1px);
  background-size: 36px 36px;
  mask-image: radial-gradient(ellipse at 50% 85%, #000, transparent 66%);
  pointer-events: none;
}
.ht-story-halo {
  position: absolute;
  left: 50%;
  top: 46%;
  width: 78%;
  aspect-ratio: 1;
  transform: translate(-50%, -50%);
  border-radius: 50%;
  border: 1px solid #ffffffa0;
  box-shadow: 0 0 0 29px #ffffff17, 0 0 0 30px #ffffff55, 0 0 0 61px #ffffff10;
  pointer-events: none;
}
.ht-story-overline {
  position: absolute;
  top: 46px;
  left: 0;
  width: 100%;
  color: #4f6680;
  font-size: 8px;
  letter-spacing: .22em;
  text-align: center;
}
.ht-mark {
  --ht-tilt-x: 7deg;
  --ht-tilt-y: -13deg;
  --ht-lift: 0px;
  position: absolute;
  z-index: 4;
  top: 42%;
  left: 50%;
  display: block;
  width: min(59%, 290px);
  aspect-ratio: 1;
  perspective: 1000px;
  transform: translate(-50%, calc(-50% + var(--ht-lift))) rotateX(var(--ht-tilt-x)) rotateY(var(--ht-tilt-y)) rotate(-7deg);
  transform-style: preserve-3d;
  transition: transform .55s cubic-bezier(.2,.8,.2,1);
  -webkit-tap-highlight-color: transparent;
}
.ht-mark:focus-visible { outline: 2px solid var(--ht-navy); outline-offset: 18px; border-radius: 50%; }
.ht-mark-float {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  transform-style: preserve-3d;
  animation: ht-mark-levitate 7s ease-in-out infinite;
}
.ht-mark-face {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #b7cdfb;
  border-radius: 50%;
  overflow: hidden;
  background: radial-gradient(circle at 29% 22%, #3670ee 0%, #2856b5 34%, #192f5f 78%);
  box-shadow: inset 0 0 0 5px #bcd0fa, inset 0 0 0 7px #507bbe,
    inset -12px -18px 32px #0c1c405c, inset 8px 11px 25px #6497ff4a,
    0 3px 0 #e1e8ee, 0 7px 0 #a0b5d0, 0 11px 0 #5c78a4,
    0 15px 0 #243c6b, 0 18px 0 #192f5f, 9px 28px 25px -9px #192f5f40;
  transform: translateZ(12px);
}
.ht-mark-edge {
  position: absolute;
  inset: 1%;
  border-radius: 50%;
  background: linear-gradient(115deg, #89a6d0 0%, #3670ee 28%, #192f5f 72%, #6d93ca 100%);
  transform: translateY(16px) translateZ(-5px);
}
.ht-mark-rim { position: absolute; inset: 12px; border: 1px solid #c4d7ff4a; border-radius: 50%; pointer-events: none; }
.ht-mark-logo {
  position: relative;
  z-index: 1;
  display: block;
  width: 72%;
  height: auto;
  max-height: 72%;
  object-fit: contain;
  transform: translateZ(2px);
}
.ht-mark-reflection {
  position: absolute;
  z-index: 2;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(145deg, #ffffff18 0%, #ffffff08 33%, transparent 34%, transparent 80%, #9ebaff18 100%);
}
.ht-mark-ground {
  position: absolute;
  z-index: 0;
  left: 50%;
  bottom: 20%;
  width: 61%;
  height: 28px;
  transform: translateX(-47%) rotate(-9deg);
  border-radius: 50%;
  background: #173d6336;
  filter: blur(15px);
  animation: ht-ground-breathe 7s ease-in-out infinite;
  pointer-events: none;
}
.ht-route {
  position: absolute;
  z-index: 2;
  width: 120%;
  height: 30%;
  left: -10%;
  top: 35%;
  border: 1px solid #4c729b50;
  border-radius: 50%;
  transform: rotate(-27deg);
  pointer-events: none;
}
.ht-route--two { width: 110%; height: 38%; left: -4%; top: 32%; border-color: #ffffffc2; transform: rotate(28deg); }
.ht-route i {
  position: absolute;
  width: 7px;
  height: 7px;
  top: 20%;
  right: 9%;
  border-radius: 50%;
  background: #3670ee;
  border: 1px solid #fafcfe;
  box-shadow: 0 0 0 5px #f9fbfd60;
}
.ht-route--two i { top: auto; right: auto; bottom: 14%; left: 14%; width: 5px; height: 5px; background: #a5bacd; }
.ht-location {
  position: absolute;
  z-index: 5;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: #365674;
  font-size: 7px;
  font-weight: 600;
  letter-spacing: .14em;
  pointer-events: none;
}
.ht-location i { width: 4px; height: 4px; border: 1px solid #6583a0; border-radius: 50%; }
.ht-location--origin { left: 8%; top: 27%; transform: rotate(-6deg); }
.ht-location--destination { right: 6%; top: 65%; transform: rotate(-6deg); }
.ht-story-caption {
  position: absolute;
  bottom: 28px;
  left: 0;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 14px;
  color: #4b657f;
  font-size: 7px;
  letter-spacing: .13em;
}
.ht-story-caption > span + span { border-left: 1px solid #8da3b7; padding-left: 14px; }
.ht-story-wordmark {
  position: absolute;
  z-index: 6;
  bottom: 62px;
  left: 50%;
  transform: translateX(-50%) rotate(-3deg);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 13px;
  width: min(79%, 306px);
  min-height: 62px;
  padding: 12px 16px;
  color: #fff;
  border: 1px solid #6888c1;
  border-radius: 13px;
  background: linear-gradient(130deg, #3670ee -50%, #192f5f 75%);
  box-shadow: inset 0 1px 0 #abc3f85e, 0 3px 0 #10234a, 0 12px 18px -8px #192f5f50;
  transition: transform .3s ease;
}
.ht-story-wordmark img { display: block; flex: 1 1 auto; width: calc(100% - 31px); max-width: 245px; min-width: 0; height: auto; aspect-ratio: 400 / 73; object-fit: contain; }
.ht-story-wordmark > span { flex-shrink: 0; font-size: 18px; line-height: 1; transition: transform .2s; }
.ht-story-wordmark:hover { transform: translateX(-50%) rotate(0) translateY(-3px); }
.ht-story-wordmark:hover > span { transform: translate(2px, -2px); }
@keyframes ht-mark-levitate { 0%,100% { translate: 0 0; } 50% { translate: 0 -10px; } }
@keyframes ht-ground-breathe { 0%,100% { opacity: .9; scale: 1; } 50% { opacity: .65; scale: .88; } }
@media (hover: hover) and (pointer: fine) {
  .ht-mark:hover { --ht-lift: -7px; }
  .ht-mark.is-tracking { transition-duration: .18s; }
}
@media (max-width: 1199px) { .story-art.ht-story-art { min-height: 460px; } .ht-story-overline { top: 39px; } }
@media (max-width: 960px) { .story-art.ht-story-art { min-height: 420px; } .ht-story-caption { bottom: 25px; } .ht-story-wordmark { bottom: 57px; min-height: 56px; width: 82%; } }
@media (max-width: 680px) { .story-art.ht-story-art { min-height: 390px; max-width: 440px; } .ht-mark { width: min(59%, 250px); top: 42%; } .ht-story-overline { top: 32px; font-size: 7px; } .ht-story-caption { bottom: 26px; font-size: 6px; } .ht-story-wordmark { bottom: 55px; min-height: 54px; width: 79%; padding: 10px 14px; } .ht-location { font-size: 6px; } .ht-location--origin { left: 8%; top: 26%; } .ht-location--destination { right: 6%; top: 64%; } }
@media (hover: none), (pointer: coarse) { .ht-mark-float, .ht-mark-ground { animation: none; } }
@media (prefers-reduced-motion: reduce) { .ht-mark, .ht-mark-float, .ht-mark-ground, .ht-story-wordmark > span { animation: none !important; transition: none !important; } }
.ht-story-art.ht-story-is-idle .ht-mark-float, .ht-story-art.ht-story-is-idle .ht-mark-ground { animation-play-state: paused; }
