/* M&H INVESTMENT v4.2 — Visible falling LETTERS, not only a fade. */
/* IMPORTANT: The cinematic theme had overflow:hidden on each title row, clipping the entire descent. */
.mh-kinetic-title .mh-title-row {
  overflow:visible !important;
  padding-block: 0 7px;
  position:relative;
}
.mh-kinetic-title .mh-kinetic-line {
  display:block;
  animation:none !important; /* never animate a whole line over its per-character animation */
  transform:none;
  perspective:1200px;
  transform-style:preserve-3d;
}
.mh-kinetic-title .mh-kinetic-word{display:inline-block;white-space:nowrap}
.mh-kinetic-title .mh-kinetic-letter {
  display:inline-block;
  position:relative;
  transform-origin:50% 85%;
  backface-visibility:visible;
}
/* Unsplit text stays readable if JS is disabled. */
.mh-kinetic-title.mh-kinetic-ready .mh-kinetic-letter {opacity:0}
.mh-kinetic-title.mh-kinetic-playing .mh-kinetic-letter {
  animation-duration:1.0s;
  animation-delay:var(--mh-delay,0ms);
  animation-timing-function:cubic-bezier(.22,.75,.23,1);
  animation-fill-mode:both;
  will-change:transform,opacity,filter;
}
.mh-kinetic-title.mh-kinetic-playing [data-mh-effect="slide"] .mh-kinetic-letter {
  animation-name:mh-v42-letter-rise;
}
.mh-kinetic-title.mh-kinetic-playing [data-mh-effect="fall"] .mh-kinetic-letter {
  animation-name:mh-v42-letter-fall;
  animation-duration:1.2s;
  animation-timing-function:cubic-bezier(.26,.64,.23,1);
}
@keyframes mh-v42-letter-rise {
  0%   {opacity:0;transform:translate3d(-50px,75px,0) rotate(-8deg);filter:blur(7px)}
  18%  {opacity:.98;filter:blur(1px)}
  73%  {opacity:1;transform:translate3d(3px,-7px,0) rotate(1deg);filter:blur(0)}
  100% {opacity:1;transform:translate3d(0,0,0) rotate(0deg);filter:none}
}
@keyframes mh-v42-letter-fall {
  0%   {opacity:0;transform:translate3d(0,-165px,0) rotate(-12deg) scale(.83);filter:blur(8px)}
  8%   {opacity:.98;filter:blur(1px)}
  67%  {opacity:1;transform:translate3d(0,22px,0) rotate(3deg) scale(1.065);filter:blur(0)}
  83%  {opacity:1;transform:translate3d(0,-9px,0) rotate(-1.5deg) scale(.985);filter:none}
  93%  {opacity:1;transform:translate3d(0,3px,0) rotate(.5deg) scale(1.005);filter:none}
  100% {opacity:1;transform:translate3d(0,0,0) rotate(0deg) scale(1);filter:none}
}
/* Visible replay control: displayed ONLY after JS has initialized the title. */
.mh-kinetic-replay{display:none;border:1px solid rgba(224,245,205,.55);background:rgba(8,38,32,.25);color:#effbe6;padding:10px 17px;gap:9px;align-items:center;justify-content:center;font-size:12px;font-weight:700;letter-spacing:.02em;border-radius:999px;cursor:pointer;transition:background .22s,transform .22s,border-color .22s;backdrop-filter:blur(8px)}
.mh-kinetic-replay:focus-visible{outline:3px solid #c1e997;outline-offset:3px}
.mh-kinetic-replay:hover{background:rgba(74,116,73,.55);transform:translateY(-2px);border-color:#b4e486}
.mh-has-kinetic .mh-kinetic-replay{display:inline-flex}
.mh-hero-content .mh-kinetic-replay{margin-top:17px;position:relative;z-index:3}
.mh-kinetic-embed{color:#fff;text-align:center;background:linear-gradient(145deg,#0a292a 0%,#14503b 80%,#276141 100%);padding:clamp(52px,8vw,95px) 18px;overflow:hidden}
.mh-kinetic-embed .mh-hero-title {margin-inline:auto;font-size:clamp(36px,6.4vw,91px);line-height:1.13;overflow:visible}
.mh-kinetic-embed .mh-title-accent>span{color:#d4edbd}
.mh-kinetic-embed .mh-kinetic-replay{margin:20px auto 0}
@media(max-width:520px){.mh-kinetic-title .mh-title-row{padding-inline:0}.mh-kinetic-title{letter-spacing:-.048em}.mh-kinetic-embed .mh-hero-title{font-size:clamp(31px,8.6vw,54px)}}
@media(prefers-reduced-motion:reduce){
 .mh-kinetic-title.mh-kinetic-ready .mh-kinetic-letter,
 .mh-kinetic-title.mh-kinetic-playing .mh-kinetic-letter{opacity:1!important;animation:none!important;filter:none!important;transform:none!important}
}

/* Motion opt-in uses WAAPI, independent from CSS animation suppression. */
.mh-user-motion-letter{display:inline-block;backface-visibility:visible}

/* v4.4: Ensure intentional replay control is visible and WAAPI letters are unrestricted. */
.mh-has-kinetic .mh-kinetic-replay{display:inline-flex!important;visibility:visible!important;opacity:1!important}
.mh-kinetic-title .mh-user-motion-letter{opacity:1;transform:none;animation:none!important}

/* v4.5: the custom letter motion is triggered by Web Animations API, not CSS keyframes. */
.mh-kinetic-title .mh-user-motion-letter { display:inline-block; backface-visibility:visible; }

/* v4.6: replay control removed from live site */
.mh-kinetic-replay{display:none!important}

/* v7.0: override earlier animated text defaults. */
.mh-kinetic-title .mh-kinetic-letter,.mh-kinetic-title .mh-user-motion-letter,
.mh-kinetic-title.mh-kinetic-ready .mh-kinetic-letter,
.mh-kinetic-title.mh-kinetic-playing .mh-kinetic-letter {
 opacity:1 !important;visibility:visible !important;animation:none !important;
 transition:none !important;transform:none !important;filter:none !important;
}
