:root {
  --mumu-blue: #0000cc;
  --mumu-green: #ccff00;
  --mumu-cream: #fffaf6;
  --mumu-ink: #47403d;
  --mumu-display: "Momo Trust Display", Arial, sans-serif;
  --mumu-body: "Circular Std", Arial, sans-serif;
}

/* Exact Elementor homepage hero structure. */
.page-id-11 .mumu-home-hero,
.elementor-page-11 .mumu-home-hero,
.elementor-11 .elementor-element-20c9189 {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  min-height: 100svh !important;
  padding: 72px 0 0 !important;
  overflow: hidden !important;
}

.elementor-11 .elementor-element-b7dccd7,
.elementor-11 .elementor-element-7909776 {
  position: relative !important;
  display: block !important;
  min-width: 0 !important;
  min-height: calc(100svh - 72px) !important;
  padding: 30px 24px 24px !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
  overflow: hidden !important;
}

.elementor-11 .elementor-element-b7dccd7::before,
.elementor-11 .elementor-element-7909776::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;
  background: rgba(255, 250, 246, 0.13) !important;
  pointer-events: none !important;
}

/* Stable banner titles: one shared rule, independent of legacy Elementor widgets. */
.elementor-11 .elementor-element-afa16e1,
.elementor-11 .elementor-element-74e3950 {
  display: none !important;
}

.elementor-11 .elementor-element-b7dccd7::after,
.elementor-11 .elementor-element-7909776::after {
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  z-index: 3 !important;
  display: block !important;
  width: max-content !important;
  max-width: 88% !important;
  margin: 0 !important;
  transform: translate(-50%, -50%) !important;
  font-family: var(--mumu-display) !important;
  font-size: clamp(78px, 10.6vw, 225px) !important;
  font-style: normal !important;
  font-weight: 400 !important;
  line-height: .82 !important;
  letter-spacing: -.045em !important;
  text-align: center !important;
  text-transform: lowercase !important;
  white-space: nowrap !important;
  pointer-events: none !important;
}

.elementor-11 .elementor-element-b7dccd7::after {
  content: "design" !important;
  color: var(--mumu-blue) !important;
}

.elementor-11 .elementor-element-7909776::after {
  content: "objects" !important;
  color: var(--mumu-green) !important;
}

.elementor-11 .elementor-element-b7dccd7 > *,
.elementor-11 .elementor-element-7909776 > * {
  position: relative;
  z-index: 1;
}

.page-id-11 .mumu-hero-subtitle,
.page-id-11 .mumu-hero-link,
.elementor-page-11 .mumu-hero-subtitle,
.elementor-page-11 .mumu-hero-link {
  position: absolute !important;
  right: 24px !important;
  bottom: 24px !important;
  left: 24px !important;
  z-index: 3 !important;
  margin: 0 !important;
  font-family: var(--mumu-body) !important;
  font-size: 18px !important;
  line-height: 1.2 !important;
}

.page-id-11 .mumu-hero-link,
.elementor-page-11 .mumu-hero-link {
  text-align: right !important;
}

/* Compact 02 / MÜMÜ OBJECTS and keep its CTA with the supporting copy. */
.page-id-11 .mumu-editorial-grid,
.elementor-page-11 .mumu-editorial-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 3fr) minmax(320px, 2fr) !important;
  grid-template-rows: auto 1fr !important;
  column-gap: clamp(38px, 5vw, 82px) !important;
  row-gap: 22px !important;
  min-height: 0 !important;
  align-items: start !important;
  padding: clamp(58px, 6vw, 92px) 24px clamp(54px, 5.5vw, 84px) !important;
}

.page-id-11 .mumu-editorial-grid > .mumu-kicker,
.elementor-page-11 .mumu-editorial-grid > .mumu-kicker {
  grid-column: 1 !important;
  grid-row: 1 !important;
}

.page-id-11 .mumu-editorial-grid > .mumu-large-heading,
.elementor-page-11 .mumu-editorial-grid > .mumu-large-heading {
  grid-column: 1 !important;
  grid-row: 2 !important;
}

.page-id-11 .mumu-editorial-copy,
.elementor-page-11 .mumu-editorial-copy {
  grid-column: 2 !important;
  grid-row: 2 !important;
  align-self: start !important;
  padding-top: 4px !important;
}

.page-id-11 .mumu-editorial-copy .mumu-inline-link,
.elementor-page-11 .mumu-editorial-copy .mumu-inline-link {
  width: 100% !important;
  margin-top: 28px !important;
}

/* 03 / GET IN TOUCH — supplied message icon replaces the old moving dot. */
.mumu-contact-cta::before {
  content: "" !important;
  position: absolute !important;
  z-index: 1 !important;
  top: 58% !important;
  left: 6% !important;
  bottom: auto !important;
  width: clamp(82px, 10vw, 184px) !important;
  height: clamp(82px, 10vw, 184px) !important;
  min-width: 0 !important;
  min-height: 0 !important;
  border-radius: 0 !important;
  background: url("message-icon.svg") center / contain no-repeat !important;
  opacity: 1 !important;
  filter: none !important;
  mix-blend-mode: normal !important;
  animation: mumu-message-glide 8.5s cubic-bezier(.42, 0, .24, 1) infinite alternate !important;
  will-change: transform !important;
}

.mumu-contact-cta > * {
  position: relative !important;
  z-index: 2 !important;
}

@keyframes mumu-message-glide {
  0% {
    transform: translate3d(0, 18%, 0) rotate(-12deg) scale(.70);
  }
  22% {
    transform: translate3d(18vw, -42%, 0) rotate(10deg) scale(.88);
  }
  46% {
    transform: translate3d(37vw, 16%, 0) rotate(-8deg) scale(1.02);
  }
  72% {
    transform: translate3d(58vw, -38%, 0) rotate(12deg) scale(1.16);
  }
  100% {
    transform: translate3d(76vw, 8%, 0) rotate(-6deg) scale(1.28);
  }
}

/* Three-column Elementor mosaic with repeatable square/portrait rhythm. */
.page-id-11 .mumu-mosaic,
.elementor-page-11 .mumu-mosaic {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  grid-auto-flow: dense !important;
  grid-auto-rows: calc((100vw - 2px) / 12) !important;
  gap: 1px !important;
  padding: 1px !important;
  background: #fff !important;
}

.page-id-11 .mumu-mosaic > *,
.elementor-page-11 .mumu-mosaic > * {
  min-width: 0 !important;
  min-height: 0 !important;
  height: 100% !important;
  overflow: hidden !important;
}

.page-id-11 .mumu-mosaic > :nth-child(6n + 1),
.page-id-11 .mumu-mosaic > :nth-child(6n + 3),
.page-id-11 .mumu-mosaic > :nth-child(6n + 5),
.elementor-page-11 .mumu-mosaic > :nth-child(6n + 1),
.elementor-page-11 .mumu-mosaic > :nth-child(6n + 3),
.elementor-page-11 .mumu-mosaic > :nth-child(6n + 5) {
  grid-row: span 4 !important;
}

.page-id-11 .mumu-mosaic > :nth-child(6n + 2),
.page-id-11 .mumu-mosaic > :nth-child(6n + 4),
.page-id-11 .mumu-mosaic > :nth-child(6n + 6),
.elementor-page-11 .mumu-mosaic > :nth-child(6n + 2),
.elementor-page-11 .mumu-mosaic > :nth-child(6n + 4),
.elementor-page-11 .mumu-mosaic > :nth-child(6n + 6) {
  grid-row: span 6 !important;
}

.page-id-11 .mumu-product-card,
.elementor-page-11 .mumu-product-card {
  position: relative !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;
}

.mumu-live-media {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
}

.mumu-live-media img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: opacity 0.42s ease, transform 0.65s cubic-bezier(.2,.7,.2,1);
}

.mumu-live-media.has-hover-image img + img {
  opacity: 0;
}

.mumu-product-card:hover .mumu-live-media.has-hover-image img:first-child {
  opacity: 0;
  transform: scale(1.025);
}

.mumu-product-card:hover .mumu-live-media.has-hover-image img + img {
  opacity: 1;
  transform: scale(1.025);
}

.mumu-live-filled > .mumu-product-placeholder {
  display: none !important;
}

/* Complete product mosaic: no empty grid holes and no cropped objects. */
.page-id-11 .mumu-mosaic,
.elementor-page-11 .mumu-mosaic {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  grid-auto-flow: dense !important;
  grid-auto-rows: calc((100vw - 2px) / 12) !important;
  align-items: stretch !important;
  background: #fff !important;
}

.page-id-11 .mumu-mosaic > *,
.elementor-page-11 .mumu-mosaic > * {
  grid-column: auto !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  background: var(--mumu-cream) !important;
}

/* Four products: one portrait, two squares and one wide rectangle. */
.page-id-11 .mumu-mosaic.mumu-count-4,
.elementor-page-11 .mumu-mosaic.mumu-count-4 {
  grid-template-rows: repeat(2, minmax(260px, 33.333vw)) !important;
  grid-auto-rows: minmax(260px, 33.333vw) !important;
}

.page-id-11 .mumu-mosaic.mumu-count-4 > :nth-child(1),
.elementor-page-11 .mumu-mosaic.mumu-count-4 > :nth-child(1) {
  grid-column: 1 !important;
  grid-row: 1 / span 2 !important;
}

.page-id-11 .mumu-mosaic.mumu-count-4 > :nth-child(2),
.elementor-page-11 .mumu-mosaic.mumu-count-4 > :nth-child(2) {
  grid-column: 2 !important;
  grid-row: 1 !important;
}

.page-id-11 .mumu-mosaic.mumu-count-4 > :nth-child(3),
.elementor-page-11 .mumu-mosaic.mumu-count-4 > :nth-child(3) {
  grid-column: 3 !important;
  grid-row: 1 !important;
}

.page-id-11 .mumu-mosaic.mumu-count-4 > :nth-child(4),
.elementor-page-11 .mumu-mosaic.mumu-count-4 > :nth-child(4) {
  grid-column: 2 / span 2 !important;
  grid-row: 2 !important;
}

/* Five products: one portrait beside four square tiles; the section closes cleanly. */
.page-id-11 .mumu-mosaic.mumu-count-5,
.elementor-page-11 .mumu-mosaic.mumu-count-5 {
  grid-template-rows: repeat(2, minmax(260px, 33.333vw)) !important;
  grid-auto-rows: minmax(260px, 33.333vw) !important;
}

.page-id-11 .mumu-mosaic.mumu-count-5 > :nth-child(1),
.elementor-page-11 .mumu-mosaic.mumu-count-5 > :nth-child(1) {
  grid-column: 1 !important;
  grid-row: 1 / span 2 !important;
}

.page-id-11 .mumu-mosaic.mumu-count-5 > :nth-child(2),
.elementor-page-11 .mumu-mosaic.mumu-count-5 > :nth-child(2) { grid-column: 2 !important; grid-row: 1 !important; }
.page-id-11 .mumu-mosaic.mumu-count-5 > :nth-child(3),
.elementor-page-11 .mumu-mosaic.mumu-count-5 > :nth-child(3) { grid-column: 3 !important; grid-row: 1 !important; }
.page-id-11 .mumu-mosaic.mumu-count-5 > :nth-child(4),
.elementor-page-11 .mumu-mosaic.mumu-count-5 > :nth-child(4) { grid-column: 2 !important; grid-row: 2 !important; }
.page-id-11 .mumu-mosaic.mumu-count-5 > :nth-child(5),
.elementor-page-11 .mumu-mosaic.mumu-count-5 > :nth-child(5) { grid-column: 3 !important; grid-row: 2 !important; }

/* Six products: balanced square/portrait mosaic with an even lower edge. */
.page-id-11 .mumu-mosaic.mumu-count-6 > :nth-child(1),
.elementor-page-11 .mumu-mosaic.mumu-count-6 > :nth-child(1) { grid-column: 1 !important; grid-row: 1 / span 4 !important; }
.page-id-11 .mumu-mosaic.mumu-count-6 > :nth-child(2),
.elementor-page-11 .mumu-mosaic.mumu-count-6 > :nth-child(2) { grid-column: 2 !important; grid-row: 1 / span 6 !important; }
.page-id-11 .mumu-mosaic.mumu-count-6 > :nth-child(3),
.elementor-page-11 .mumu-mosaic.mumu-count-6 > :nth-child(3) { grid-column: 3 !important; grid-row: 1 / span 4 !important; }
.page-id-11 .mumu-mosaic.mumu-count-6 > :nth-child(4),
.elementor-page-11 .mumu-mosaic.mumu-count-6 > :nth-child(4) { grid-column: 1 !important; grid-row: 5 / span 6 !important; }
.page-id-11 .mumu-mosaic.mumu-count-6 > :nth-child(5),
.elementor-page-11 .mumu-mosaic.mumu-count-6 > :nth-child(5) { grid-column: 2 !important; grid-row: 7 / span 4 !important; }
.page-id-11 .mumu-mosaic.mumu-count-6 > :nth-child(6),
.elementor-page-11 .mumu-mosaic.mumu-count-6 > :nth-child(6) { grid-column: 3 !important; grid-row: 5 / span 6 !important; }

.page-id-11 .mumu-product-card,
.page-id-11 .mumu-product-link,
.page-id-11 .mumu-product-images,
.elementor-page-11 .mumu-product-card,
.elementor-page-11 .mumu-product-link,
.elementor-page-11 .mumu-product-images {
  width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;
}

.page-id-11 .mumu-product-card .mumu-live-media img,
.page-id-11 .mumu-product-card .mumu-product-image,
.elementor-page-11 .mumu-product-card .mumu-live-media img,
.elementor-page-11 .mumu-product-card .mumu-product-image {
  object-fit: contain !important;
  object-position: center !important;
}

/* Compact footer: copyright directly under logo, no separator line. */
.mumu-site-footer {
  min-height: 0 !important;
  height: auto !important;
  grid-template-columns: 1.4fr 1fr .6fr .6fr !important;
  grid-template-rows: auto auto !important;
  align-items: start !important;
  gap: 8px 38px !important;
  padding: 24px !important;
}

.mumu-site-footer > img {
  grid-column: 1 !important;
  grid-row: 1 !important;
  width: min(100%, 230px) !important;
}

.mumu-site-footer > p {
  grid-column: 2 !important;
  grid-row: 1 / span 2 !important;
}

.mumu-site-footer > div:nth-of-type(1) {
  grid-column: 3 !important;
  grid-row: 1 / span 2 !important;
}

.mumu-site-footer > div:nth-of-type(2) {
  grid-column: 4 !important;
  grid-row: 1 / span 2 !important;
}

.mumu-site-footer small {
  grid-column: 1 !important;
  grid-row: 2 !important;
  align-self: start !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

@media (max-width: 600px) {
  .elementor-11 .elementor-element-20c9189 {
    padding-top: 96px !important;
  }

  .elementor-11 .elementor-element-b7dccd7,
  .elementor-11 .elementor-element-7909776 {
    min-height: calc(100svh - 96px) !important;
    padding: 18px 12px !important;
  }

  .elementor-11 .elementor-element-b7dccd7::after,
  .elementor-11 .elementor-element-7909776::after {
    font-size: 10.5vw !important;
    max-width: 90% !important;
  }

  .page-id-11 .mumu-mosaic,
  .elementor-page-11 .mumu-mosaic {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-auto-rows: calc((100vw - 1px) / 8) !important;
  }

  .page-id-11 .mumu-editorial-grid,
  .elementor-page-11 .mumu-editorial-grid {
    grid-template-columns: 1fr !important;
    grid-template-rows: auto !important;
    padding: 52px 16px 56px !important;
  }

  .page-id-11 .mumu-editorial-grid > .mumu-kicker,
  .page-id-11 .mumu-editorial-grid > .mumu-large-heading,
  .elementor-page-11 .mumu-editorial-grid > .mumu-kicker,
  .elementor-page-11 .mumu-editorial-grid > .mumu-large-heading,
  .page-id-11 .mumu-editorial-copy,
  .elementor-page-11 .mumu-editorial-copy {
    grid-column: 1 !important;
    grid-row: auto !important;
  }

  .page-id-11 .mumu-editorial-copy,
  .elementor-page-11 .mumu-editorial-copy {
    padding-top: 0 !important;
  }

  .mumu-contact-cta::before {
    top: 62% !important;
    left: 3% !important;
    width: 76px !important;
    height: 76px !important;
  }

  @keyframes mumu-message-glide {
    0% { transform: translate3d(0, 16%, 0) rotate(-10deg) scale(.70); }
    25% { transform: translate3d(21vw, -42%, 0) rotate(9deg) scale(.84); }
    52% { transform: translate3d(43vw, 18%, 0) rotate(-8deg) scale(.96); }
    76% { transform: translate3d(61vw, -32%, 0) rotate(10deg) scale(1.06); }
    100% { transform: translate3d(78vw, 10%, 0) rotate(-6deg) scale(1.16); }
  }

  .page-id-11 .mumu-mosaic,
  .elementor-page-11 .mumu-mosaic {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-auto-rows: 72vw !important;
  }

  .page-id-11 .mumu-mosaic.mumu-count-4,
  .page-id-11 .mumu-mosaic.mumu-count-5,
  .page-id-11 .mumu-mosaic.mumu-count-6,
  .elementor-page-11 .mumu-mosaic.mumu-count-4,
  .elementor-page-11 .mumu-mosaic.mumu-count-5,
  .elementor-page-11 .mumu-mosaic.mumu-count-6 {
    grid-template-rows: none !important;
    grid-auto-rows: 72vw !important;
  }

  .page-id-11 .mumu-mosaic.mumu-count-4 > *,
  .page-id-11 .mumu-mosaic.mumu-count-5 > *,
  .page-id-11 .mumu-mosaic.mumu-count-6 > *,
  .elementor-page-11 .mumu-mosaic.mumu-count-4 > *,
  .elementor-page-11 .mumu-mosaic.mumu-count-5 > *,
  .elementor-page-11 .mumu-mosaic.mumu-count-6 > * {
    grid-column: auto !important;
    grid-row: auto !important;
  }

  .mumu-site-footer {
    grid-template-columns: 1fr 1fr !important;
    grid-template-rows: auto auto auto !important;
    gap: 18px 22px !important;
    padding: 22px 16px !important;
  }

  .mumu-site-footer > img {
    grid-column: 1 !important;
    grid-row: 1 !important;
  }

  .mumu-site-footer small {
    grid-column: 1 !important;
    grid-row: 2 !important;
  }

  .mumu-site-footer > p {
    grid-column: 2 !important;
    grid-row: 1 / span 2 !important;
  }

  .mumu-site-footer > div:nth-of-type(1) {
    grid-column: 1 !important;
    grid-row: 3 !important;
  }

  .mumu-site-footer > div:nth-of-type(2) {
    grid-column: 2 !important;
    grid-row: 3 !important;
  }
}
