/* ---- shared text stage ---- */
.mmhh-stage {
  position: relative; z-index: 1; width: 100%; display: flex; align-items: center; justify-content: center;
  padding: 2rem 1rem; overflow: hidden; box-sizing: border-box;
}
.mmhh-stage[data-align="left"] { justify-content: flex-start; text-align: left; }
.mmhh-stage[data-align="center"] { justify-content: center; text-align: center; }
.mmhh-stage[data-align="right"] { justify-content: flex-end; text-align: right; }
.mm-hh { position: relative; display: block; width: 100%; overflow: hidden; isolation: isolate; }
.mm-hh *, .mm-hh *::before, .mm-hh *::after { box-sizing: border-box; }

@property --mmhh-gs { syntax: "<number>"; inherits: true; initial-value: 0; }
.mm-hh .mmhh-stage { padding: 4rem max(1.25rem, 6vw); }
.mm-hh .mmhh-hero { position: relative; z-index: 2; width: min(100%, 880px); display: flex; flex-direction: column; gap: 1.25rem; color: var(--mmhh-base); }
.mm-hh .mmhh-title, .mm-hh .mmhh-phrase, .mm-hh .mmhh-desc { margin: 0 !important; padding: 0; text-transform: none; }
.mm-hh .mmhh-title { color: var(--mmhh-base) !important; font-family: inherit !important; }
.mm-hh .mmhh-btn, .mm-hh .mmhh-btn:visited, .mm-hh .mmhh-btn:hover, .mm-hh .mmhh-btn:focus { text-decoration: none !important; box-shadow: none; }
.mm-hh.is-static .mmhh-ch { transition: none !important; }
.mm-hh.is-static *, .mm-hh.is-reduced * { animation: none !important; }
.mm-hh.is-reduced .mmhh-pbox *, .mm-hh.is-static .mmhh-pbox * { transition: none !important; }
/* ---- Hero content ---- */
.mm-hh .mmhh-hero {
  position: relative;
  z-index: 2;
  width: min(100%, 880px);
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}
.mm-hh .mmhh-hero.is-left { margin-right: auto; margin-left: 0; align-items: flex-start; text-align: left; }
.mm-hh .mmhh-hero.is-center { margin-inline: auto; align-items: center; text-align: center; }
.mm-hh .mmhh-hero.is-right { margin-left: auto; margin-right: 0; align-items: flex-end; text-align: right; }

/* ---- Content window: panel position (9 spots) and panel background ---- */
.mm-hh .mmhh-stage[data-pos] .mmhh-hero { margin: 0; }
.mm-hh .mmhh-stage[data-pos$="-left"] { justify-content: flex-start; }
.mm-hh .mmhh-stage[data-pos$="-center"] { justify-content: center; }
.mm-hh .mmhh-stage[data-pos$="-right"] { justify-content: flex-end; }
.mm-hh .mmhh-stage[data-pos^="top-"] { align-items: flex-start; }
.mm-hh .mmhh-stage[data-pos^="center-"] { align-items: center; }
.mm-hh .mmhh-stage[data-pos^="bottom-"] { align-items: flex-end; }
.mm-hh .mmhh-hero:not([data-panel="none"]) { padding: 2.25rem 2.5rem; border-radius: 28px; }
/* 1.3.29: --mmhh-pa / --mmhh-pbf aus den Preset-Reglern, Fallback = alter Wert. */
.mm-hh .mmhh-hero[data-panel="glass-light"] {
  background: rgba(255, 255, 255, var(--mmhh-pa, 0.55)); box-shadow: 0 24px 60px rgba(0, 0, 0, 0.18);
  -webkit-backdrop-filter: var(--mmhh-pbf, blur(18px) saturate(1.25)); backdrop-filter: var(--mmhh-pbf, blur(18px) saturate(1.25));
}
.mm-hh .mmhh-hero[data-panel="glass-dark"] {
  background: rgba(10, 12, 18, var(--mmhh-pa, 0.5)); box-shadow: 0 24px 60px rgba(0, 0, 0, 0.35);
  -webkit-backdrop-filter: var(--mmhh-pbf, blur(18px) saturate(1.25)); backdrop-filter: var(--mmhh-pbf, blur(18px) saturate(1.25));
}
.mm-hh .mmhh-hero[data-panel="solid-dark"] { background: rgba(12, 14, 18, var(--mmhh-pa, 0.92)); -webkit-backdrop-filter: var(--mmhh-pbf, none); backdrop-filter: var(--mmhh-pbf, none); }
.mm-hh .mmhh-hero[data-panel="solid-light"] { background: rgba(244, 245, 247, var(--mmhh-pa, 0.94)); -webkit-backdrop-filter: var(--mmhh-pbf, none); backdrop-filter: var(--mmhh-pbf, none); }
@media (max-width: 640px) {
  .mm-hh .mmhh-hero:not([data-panel="none"]) { padding: 1.4rem 1.5rem; }
  .mm-hh .mmhh-stage[data-pos] { padding: 2.5rem 10px; }
}

.mm-hh .mmhh-badge {
  display: inline-flex; align-items: center; gap: 0.55rem;
  padding: 0.4rem 0.9rem 0.4rem 0.7rem;
  border-radius: 999px;
  border: 1px solid color-mix(in srgb, var(--mmhh-ga) 45%, transparent);
  background: color-mix(in srgb, var(--mmhh-ga) 10%, transparent);
  color: var(--mmhh-base);
  font-size: 0.82rem; font-weight: 600; letter-spacing: 0.01em;
  backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px);
}
.mm-hh .mmhh-badge__dot { width: 0.5rem; height: 0.5rem; border-radius: 50%; background: var(--mmhh-ga); box-shadow: 0 0 0 0 color-mix(in srgb, var(--mmhh-ga) 70%, transparent); flex-shrink: 0; }
.mm-hh .mmhh-hero.fx-pulse .mmhh-badge--dot .mmhh-badge__dot { animation: mmhh_dotPulse 1.8s ease-out infinite; }
@keyframes mmhh_dotPulse { to { box-shadow: 0 0 0 0.6rem transparent; } }

/* ---- 6 Badge Shapes (Pill, Bracket, Dot, Velocity, Glass, Soft Slant) ---- */
.mm-hh .mmhh-badge.mmhh-badge--pill {
  border-radius: 999px;
  padding: 0.4rem 1rem;
}

.mm-hh .mmhh-badge.mmhh-badge--bracket {
  border-radius: 0;
  padding: 0.35rem 0.85rem;
  border: 1px solid var(--mmhh-ga);
  background: color-mix(in srgb, var(--mmhh-ga) 12%, transparent);
  box-shadow: 0 0 12px color-mix(in srgb, var(--mmhh-ga) 20%, transparent);
}
.mm-hh .mmhh-badge.mmhh-badge--bracket::before {
  content: '[';
  font-weight: 800;
  color: var(--mmhh-ga);
  margin-right: 4px;
}
.mm-hh .mmhh-badge.mmhh-badge--bracket::after {
  content: ']';
  font-weight: 800;
  color: var(--mmhh-ga);
  margin-left: 4px;
}

.mm-hh .mmhh-badge.mmhh-badge--dot {
  border-radius: 8px;
  padding: 0.4rem 0.95rem 0.4rem 0.75rem;
}

.mm-hh .mmhh-badge.mmhh-badge--slanted {
  transform: skewX(-14deg);
  border-radius: 0;
  padding: 0.4rem 1.15rem;
}
.mm-hh .mmhh-badge.mmhh-badge--slanted > * {
  transform: skewX(14deg);
  display: inline-block;
}

.mm-hh .mmhh-badge.mmhh-badge--glass {
  border-radius: 12px;
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.28);
  box-shadow: inset 0 1px 1px rgba(255, 255, 255, 0.4), 0 8px 24px rgba(0, 0, 0, 0.3);
}

.mm-hh .mmhh-badge.mmhh-badge--soft {
  transform: skewX(-12deg);
  border-radius: 999px;
  padding: 0.4rem 1.15rem;
  box-shadow: 2px 4px 12px rgba(0, 0, 0, 0.25);
}
.mm-hh .mmhh-badge.mmhh-badge--none {
  padding: 0; border: 0; border-radius: 0; background: none; box-shadow: none;
  backdrop-filter: none; -webkit-backdrop-filter: none;
}

.mm-hh .mmhh-badge.mmhh-badge--soft > * {
  transform: skewX(12deg);
  display: inline-block;
}

.mm-hh .mmhh-title {
  font-family: inherit;
  font-size: min(var(--mmhh-size), 10.5vw);
  font-weight: var(--mmhh-weight);
  letter-spacing: var(--mmhh-track);
  line-height: var(--mmhh-lh);
  max-width: 100%;
}
.mm-hh .mmhh-title.is-flow { animation: mmhh_gradFlow var(--mmhh-flow) linear infinite; }
@keyframes mmhh_gradFlow { to { --mmhh-gs: 1; } }

.mm-hh .mmhh-line { display: block; position: relative; }
.mm-hh .mmhh-line[data-line="1"] { font-size: min(var(--mmhh-size2, var(--mmhh-size)), 10.5vw); font-weight: var(--mmhh-weight2, var(--mmhh-weight)); }
.mm-hh .mmhh-word { display: inline-block; white-space: nowrap; }
.mm-hh .mmhh-ch {
  display: inline-block;
  color: var(--mmhh-lbase, var(--mmhh-base));
  padding: 0.1em 0 0.14em; margin: -0.1em 0 -0.14em;
}
.mm-hh .mmhh-ch.is-grad {
  /* 1.3.1: side room for the glyph overhang (negative letter spacing,
     round letters) so background-clip:text no longer cuts the edge; the
     negative margin keeps the layout unchanged. */
  padding-left: 0.12em; padding-right: 0.12em; margin-left: -0.12em; margin-right: -0.12em;
  color: transparent;
  background-image: linear-gradient(90deg, var(--mmhh-ga), var(--mmhh-gb), var(--mmhh-gc));
  background-size: var(--mmhh-lw, 100%) 100%;
  background-position: calc(var(--mmhh-cx, 0px) * -1 - var(--mmhh-gs) * var(--mmhh-lw, 0px)) 0;
  background-repeat: repeat-x;
  -webkit-background-clip: text; background-clip: text;
}
.mm-hh .mmhh-ch.is-hi:not(.is-grad) { color: var(--mmhh-hi, #ff6a3d); }
.mm-hh .mmhh-title.is-flow .mmhh-ch.is-grad { background-image: linear-gradient(90deg, var(--mmhh-ga), var(--mmhh-gb), var(--mmhh-gc), var(--mmhh-ga)); }

/* ---- Dynamic Phrase Line & 6 Creative Effects ---- */
.mm-hh .mmhh-phrase {
  font-family: inherit;
  font-size: var(--mmhh-ph-size, clamp(1.15rem, 3.6vw, 1.65rem));
  font-weight: var(--mmhh-ph-weight, 600);
  color: var(--mmhh-base);
  min-height: 1.8em;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.4rem;
}
.mm-hh .mmhh-hero.is-center .mmhh-phrase { justify-content: center; }
.mm-hh .mmhh-hero.is-right .mmhh-phrase { justify-content: flex-end; }

.mm-hh .mmhh-pbox {
  display: inline-flex;
  align-items: baseline;
  position: relative;
  vertical-align: baseline;
}

/* 1. Typewriter */
.mm-hh .mmhh-pbox.fx-typewriter .mmhh-pword {
  color: var(--mmhh-ph-color, var(--mmhh-ga));
  display: inline-block;
}
.mm-hh .mmhh-pbox.fx-typewriter .mmhh-caret {
  display: inline-block; width: 2.5px; height: 1.05em; margin-left: 3px; vertical-align: -0.12em; background: var(--mmhh-ph-accent, var(--mmhh-ga));
  box-shadow: 0 0 8px var(--mmhh-ph-accent, var(--mmhh-ga));
  animation: mmhh_blink 1s steps(2) infinite;
}
@keyframes mmhh_blink { 50% { opacity: 0; } }

/* 2. Animated Underline (SVG Draw) */
.mm-hh .mmhh-pbox.fx-underline {
  padding-bottom: 0.35rem;
}
.mm-hh .mmhh-pbox.fx-underline .mmhh-pword {
  color: var(--mmhh-ph-color, var(--mmhh-ga));
  display: inline-block;
  transition: opacity 0.35s ease, transform 0.35s cubic-bezier(0.2, 0.8, 0.2, 1);
}
.mm-hh .mmhh-pbox.fx-underline.is-swapping .mmhh-pword {
  opacity: 0;
  transform: translateY(6px);
}
.mm-hh .mmhh-uline {
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 100%;
  height: 9px;
  overflow: visible;
  pointer-events: none;
}
.mm-hh .mmhh-uline path {
  stroke: var(--mmhh-ph-accent, var(--mmhh-gb));
  stroke-width: 3.5;
  stroke-linecap: round;
  fill: none;
  stroke-dasharray: 220;
  stroke-dashoffset: 0;
  filter: drop-shadow(0 2px 6px color-mix(in srgb, var(--mmhh-ph-accent, var(--mmhh-gb)) 60%, transparent));
  transition: stroke-dashoffset 0.65s cubic-bezier(0.2, 0.8, 0.2, 1);
}
.mm-hh .mmhh-pbox.fx-underline.is-drawing .mmhh-uline path {
  stroke-dashoffset: 220;
  transition: none;
}

/* 3. 3D Flip & Roll */
.mm-hh .mmhh-pbox.fx-flip {
  perspective: 600px;
  display: inline-block;
  height: 1.35em;
  overflow: hidden;
  vertical-align: bottom;
}
.mm-hh .mmhh-pbox.fx-flip .mmhh-pword {
  display: block;
  color: var(--mmhh-ph-color, var(--mmhh-ga));
  transform-origin: 50% 50% -0.6em;
  transition: transform 0.55s cubic-bezier(0.34, 1.56, 0.64, 1), opacity 0.35s ease, filter 0.35s ease;
}
.mm-hh .mmhh-pbox.fx-flip.is-swapping .mmhh-pword {
  transform: rotateX(90deg) translateY(-0.4em);
  opacity: 0;
  filter: blur(5px);
}

/* 4. Pill Highlight (Neon Marker) */
.mm-hh .mmhh-pbox.fx-pill {
  display: inline-flex;
  align-items: center;
  padding: 0.15em 0.75em;
  border-radius: 999px;
  background: var(--mmhh-pill-bg, color-mix(in srgb, var(--mmhh-ga) 16%, transparent));
  border: 1px solid var(--mmhh-pill-border, color-mix(in srgb, var(--mmhh-ga) 45%, transparent));
  box-shadow: 0 0 24px -4px color-mix(in srgb, var(--mmhh-ga) 35%, transparent);
  transition: transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1), background 0.3s ease;
}
.mm-hh .mmhh-pbox.fx-pill.is-swapping {
  transform: scale(0.92);
  opacity: 0.3;
}
.mm-hh .mmhh-pbox.fx-pill .mmhh-pword {
  color: #ffffff;
  background: linear-gradient(90deg, var(--mmhh-ga), var(--mmhh-gb));
  -webkit-background-clip: text; background-clip: text;
  color: transparent;
  font-weight: 700;
  display: inline-block;
}

/* 5. Cyber Scramble (Matrix Decrypt) */
.mm-hh .mmhh-hero.has-ph-color .mmhh-pbox.fx-pill .mmhh-pword { background: none; color: var(--mmhh-ph-color); }

.mm-hh .mmhh-pbox.fx-scramble .mmhh-pword {
  color: var(--mmhh-ph-color, var(--mmhh-ga));
  font-family: "Space Grotesk", monospace;
  letter-spacing: 0.03em;
  display: inline-block;
  text-shadow: 0 0 14px color-mix(in srgb, var(--mmhh-ph-color, var(--mmhh-ga)) 65%, transparent);
}

/* 6. Cinematic Blur Morph */
.mm-hh .mmhh-pbox.fx-blur .mmhh-pword {
  display: inline-block;
  color: var(--mmhh-ph-color, var(--mmhh-ga));
  transition: filter 0.5s cubic-bezier(0.2, 0.8, 0.2, 1), opacity 0.4s ease, transform 0.5s cubic-bezier(0.2, 0.8, 0.2, 1);
}
.mm-hh .mmhh-pbox.fx-blur.is-swapping .mmhh-pword {
  filter: blur(16px);
  opacity: 0;
  transform: scale(0.9) translateY(8px);
}

.mm-hh .mmhh-desc { max-width: 54ch; font-size: var(--mmhh-desc-size, clamp(1rem, 2.6vw, 1.15rem)); font-weight: var(--mmhh-desc-weight, 400); letter-spacing: var(--mmhh-desc-track, 0em); line-height: var(--mmhh-desc-lh, 1.65); color: var(--mmhh-desc-color, rgba(255,255,255,0.68)); white-space: pre-line; }

.mm-hh .mmhh-btns { display: flex; flex-wrap: wrap; gap: var(--mmhh-b-gap, 0.8rem); margin-top: 0.4rem; }
.mm-hh .mmhh-hero.is-left .mmhh-btns { justify-content: flex-start; }
.mm-hh .mmhh-hero.is-center .mmhh-btns { justify-content: center; }
.mm-hh .mmhh-hero.is-right .mmhh-btns { justify-content: flex-end; }
.mm-hh .mmhh-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 0.5rem;
  padding: calc(0.9rem * var(--mmhh-b-pad, 1)) calc(1.5rem * var(--mmhh-b-pad, 1)); border-radius: min(var(--mmhh-b-radius, 999px), 999px);
  font: inherit; font-size: var(--mmhh-b-size, 1rem); letter-spacing: var(--mmhh-b-track, 0em); font-weight: 650; text-decoration: none; cursor: pointer;
  transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}
.mm-hh .mmhh-btn:hover { transform: translateY(-2px); }
.mm-hh .mmhh-btn--grad { background: linear-gradient(100deg, var(--mmhh-ga), var(--mmhh-gb)); color: var(--mmhh-b-text, #04111a); box-shadow: 0 10px 34px -10px color-mix(in srgb, var(--mmhh-ga) 80%, transparent); }
.mm-hh .mmhh-btn--solid { background: var(--mmhh-base); color: var(--mmhh-b-text, #04111a); }
.mm-hh .mmhh-btn--outline { border: 1px solid color-mix(in srgb, var(--mmhh-ga) 65%, transparent); color: var(--mmhh-base); }
.mm-hh .mmhh-btn--ghost { border: 1px solid rgba(255, 255, 255, 0.2); background: rgba(255, 255, 255, 0.05); color: var(--mmhh-base); }
.mm-hh .mmhh-btn--ghost:hover { background: rgba(255, 255, 255, 0.1); }

/* ---- Effects (vanilla) ---- */
.mm-hh .mmhh-hero.fx-hover .mmhh-ch { transition: transform 0.25s cubic-bezier(0.2, 0.8, 0.2, 1); }
.mm-hh .mmhh-hero.fx-hover .mmhh-ch:hover { transform: translateY(-0.08em) scale(1.06); }
.mm-hh .mmhh-hero:not(.intro-play) .mmhh-line.is-shimmer .mmhh-ch { animation: mmhh_shimmer 5s ease-in-out infinite; animation-delay: calc(var(--i) * 70ms); }
@keyframes mmhh_shimmer { 0%, 62%, 100% { filter: brightness(1); } 80% { filter: brightness(1.75) saturate(1.2); } }

.mm-hh .mmhh-hero.intro-play .mmhh-ch { transition: none; }
.mm-hh .mmhh-hero.use-css.intro-play .mmhh-rv-first, .mm-hh .mmhh-hero.use-css.intro-play .mmhh-rv-rest { animation: mmhh_rvIn calc(var(--mmhh-dur) * 1s) cubic-bezier(0.2, 0.7, 0.2, 1) backwards; animation-delay: calc(var(--r) * 0.12s + 0.1s); }
.mm-hh .mmhh-hero.use-css.intro-play.fx-chars .mmhh-ch { animation: mmhh_chIn calc(var(--mmhh-dur) * 1s) cubic-bezier(0.2, 0.8, 0.2, 1) backwards; animation-delay: calc(0.12s + var(--i) * var(--mmhh-stag)); }
.mm-hh .mmhh-hero.use-css.intro-play.fx-words .mmhh-word { animation: mmhh_wordIn calc(var(--mmhh-dur) * 1s) cubic-bezier(0.2, 0.8, 0.2, 1) backwards; animation-delay: calc(0.12s + var(--w) * 0.09s); }
.mm-hh .mmhh-hero.use-css.intro-play.fx-fade .mmhh-line { animation: mmhh_lineFade calc(var(--mmhh-dur) * 1s) cubic-bezier(0.2, 0.8, 0.2, 1) backwards; animation-delay: calc(0.12s + var(--l) * 0.14s); }
.mm-hh .mmhh-hero.use-css.intro-play.fx-blur .mmhh-line { animation: mmhh_lineBlur calc(var(--mmhh-dur) * 1s) cubic-bezier(0.2, 0.8, 0.2, 1) backwards; animation-delay: calc(0.12s + var(--l) * 0.14s); }
@keyframes mmhh_rvIn { from { opacity: 0; transform: translateY(18px); } }
@keyframes mmhh_chIn { from { opacity: 0; transform: translateY(60%) rotate(6deg); } }
@keyframes mmhh_wordIn { from { opacity: 0; transform: translateY(0.45em); filter: blur(10px); } }
@keyframes mmhh_lineFade { from { opacity: 0; transform: translateY(30px); } }
@keyframes mmhh_lineBlur { from { opacity: 0; filter: blur(18px); transform: translateY(12px); } }



/* ---- shared gallery kit ---- */
.mmhh-bg { position: absolute; inset: 0; z-index: 0; pointer-events: none; overflow: hidden; }
.mmhh-bg__img { position: absolute; inset: 0; background-size: cover; background-position: center; }
.mmhh-bg__ov { position: absolute; inset: 0; }
.mmhh-demo {
  position: relative; z-index: 1; display: flex; align-items: center; justify-content: center;
  min-height: var(--mm-demo-h, clamp(200px, 35vh, 360px)); margin: 0 1rem; border: 2px dotted rgba(140, 140, 160, 0.55); border-radius: 14px;
  color: rgba(160, 160, 180, 0.9); font: 500 13px/1.4 system-ui, sans-serif; letter-spacing: 0.02em;
}
.mmhh-demo--before { margin-bottom: 1rem; }
.mmhh-demo--after { margin-top: 1rem; }
/* Editor scroll room (1.3.4): same heights as the demo pages; editor preview only, never rendered live. */
.mmhh-demo--after { min-height: var(--mm-demo-h-after, 50vh); }
@media (max-width: 640px) { .mmhh-demo--before { min-height: var(--mm-demo-h-sm, clamp(160px, 30vh, 260px)); } }
.mmhh-lb {
  position: fixed; z-index: 100000; inset: 0; display: grid; place-items: center;
  padding: 1rem; padding-bottom: calc(1rem + env(safe-area-inset-bottom, 0px));
  opacity: 0; visibility: hidden; pointer-events: none;
  transition: opacity 0.35s ease, visibility 0.35s;
  font-family: inherit;
}
.mmhh-lb[hidden] { display: none !important; }
.mmhh-lb.is-open { opacity: 1; visibility: visible; pointer-events: auto; }
.mmhh-lb__card {
  position: relative; z-index: 1; width: min(96vw, 960px); max-height: min(92dvh, 900px);
  display: flex; flex-direction: column; align-items: center; padding-top: 0.75rem;
  background: var(--mmhh-lb-bg, #101014); border-radius: 18px; overflow: hidden;
  box-shadow: 0 24px 64px rgba(0, 0, 0, 0.55); border: 1px solid rgba(255, 255, 255, 0.08);
  transform: translateY(18px) scale(0.96); transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);
}
.mmhh-lb.is-open .mmhh-lb__card { transform: none; }
.mmhh-lb__close:hover, .mmhh-lb__close:focus, .mmhh-lb__close:focus-visible {
  background: rgba(0, 0, 0, 0.7) !important; color: #fff !important; opacity: 1 !important;
  border: 1px solid rgba(255, 255, 255, 0.6) !important; outline: none !important; box-shadow: none !important;
}
.mmhh-lb__scrim:hover, .mmhh-lb__scrim:focus { background: rgba(0, 0, 0, 0.66) !important; outline: none !important; box-shadow: none !important; }
.mmhh-lb__media {
  display: block; width: auto !important; height: auto !important; max-width: 100% !important;
  max-height: min(74dvh, 760px); min-height: min(40dvh, 300px); object-fit: contain;
  border: 0 !important; box-shadow: none !important; margin: 0 !important; padding: 0 !important;
}
.mmhh-lb__body { flex: 0 0 auto; align-self: stretch; padding: 0.85rem 1.1rem 1.05rem; overflow-y: auto; text-align: left; }
.mmhh-lb__title { margin: 0 0 0.4rem !important; padding: 0 !important; font-size: 21px !important; font-weight: 600 !important; letter-spacing: -0.02em; line-height: 1.2 !important; color: var(--mmhh-lb-title, #fff) !important; text-transform: none !important; }
.mmhh-lb__desc { margin: 0 !important; padding: 0 !important; font-size: 14px !important; line-height: 1.5 !important; color: var(--mmhh-lb-text, #c8c8d0) !important; }
.mmhh-lb__title[hidden], .mmhh-lb__desc[hidden], .mmhh-lb__link[hidden] { display: none !important; }
.mmhh-lb__link, .mmhh-lb__link:visited {
  display: inline-block; margin-top: 0.8rem; padding: 0.55rem 1.1rem; border-radius: 999px;
  background: var(--mmhh-lb-title, #fff) !important; color: var(--mmhh-lb-bg, #101014) !important;
  font-size: 0.85rem; font-weight: 600; text-decoration: none !important; border: 0 !important; box-shadow: none !important;
}
.mmhh-lb__link:hover, .mmhh-lb__link:focus { opacity: 0.88; text-decoration: none !important; outline: none !important; }
/* ---- end kit ---- */
