/* Motzener Motion Section – styles v1.1.5 */
.mms{
  position:relative; width:100%;
  display:grid; grid-template-columns:minmax(40%, 1fr) 1fr;
  align-items:center; column-gap:0;
  overflow:hidden;
}
.mms-left, .mms-right{ grid-row:1; min-width:0; }
.mms-left{ position:relative; z-index:0; min-height:46vh; background-size:cover; background-position:center; overflow:hidden; }
.mms-right{ position:relative; z-index:2; display:flex; align-items:center; justify-content:flex-start; padding: clamp(24px, 3.6vw, 44px); background:transparent; }
.mms-content{ width:100%; max-width:560px; margin-left: clamp(8px, 2.2vw, 28px); }

/* Inline icon + headline */
.mms-row{ display:flex; align-items:center; gap:12px; margin-bottom:8px; }
.mms-icon{ height:36px; width:auto; display:block; filter:drop-shadow(0 1px 0 rgba(0,0,0,.06)); }
.mms-headline{ font-size: clamp(26px, 3.2vw, 40px); line-height:1.1; margin:0; font-weight:800; }
.mms-subheadline{ font-size: clamp(16px, 1.6vw, 20px); font-weight:600; margin-bottom: 14px; opacity:.9; }
.mms-text{ font-size: clamp(14px, 1.2vw, 17px); line-height:1.55; margin-bottom: 18px; }
.mms-btn{ display:inline-flex; align-items:center; gap:.5rem; padding:.6rem 1.1rem; border-radius:999px; color:var(--mms-btn-color, #fff); text-decoration:none; background:#8e2de2; transition:transform .2s ease, box-shadow .2s ease, background .2s ease, color .2s ease; will-change:transform; }
.mms-btn:hover{ transform:translateY(-1px); box-shadow:0 8px 20px rgba(0,0,0,.12); color:var(--mms-btn-color-hover, #fff); }

/* Shimmer overlay */
.mms-overlay{ position:absolute; inset:0; z-index:0; background: radial-gradient(120% 120% at 10% 10%, rgba(255,255,255,.12), rgba(255,255,255,0) 60%); pointer-events:none; animation: mms-shimmer 9s ease-in-out infinite alternate; }
@keyframes mms-shimmer { 0%{ transform:scale(1) } 100%{ transform:scale(1.07) } }
.mms[data-overlay="false"] .mms-overlay{ display:none; }

/* Edge fade */
.mms-edge-fade{
  position:absolute; top:0; bottom:0; width:var(--mms-edge-w, 160px); right:-1px;
  z-index:1; pointer-events:none;
  --white: rgba(255,255,255,var(--mms-edge-alpha, .95));
  background: linear-gradient(to right, rgba(255,255,255,0) 0%, var(--white) 94%, #ffffff 100%);
  transform-origin: right center;
  animation: mms-edge-pulse 8s ease-in-out infinite alternate;
}
.mms.is-reverse .mms-edge-fade{
  left:-1px; right:auto; transform-origin: left center;
  background: linear-gradient(to left, rgba(255,255,255,0) 0%, var(--white) 94%, #ffffff 100%);
}
@keyframes mms-edge-pulse {
  0%{ transform: scaleX(calc(1 - (var(--mms-edge-pulse,18) / 200))); }
  100%{ transform: scaleX(calc(1 + (var(--mms-edge-pulse,18) / 200))); }
}

/* Entrance */
.mms .mms-left, .mms .mms-content{ opacity:0; transform: translateY(24px); }
.mms.is-in .mms-left{ opacity:1; transform: translateY(0); transition: all .9s cubic-bezier(.2,.8,.2,1); }
.mms.is-in .mms-content{ opacity:1; transform: translateY(0); transition: all .7s cubic-bezier(.2,.8,.2,1) .1s; }

/* Reverse desktop */
.mms.is-reverse{ grid-template-columns: 1fr minmax(40%, 1fr); }
.mms.is-reverse .mms-left{ grid-column:2; }
.mms.is-reverse .mms-right{ grid-column:1; justify-content:flex-end; }
.mms.is-reverse .mms-content{ margin-right: clamp(8px, 2.2vw, 28px); margin-left: 0; }

/* Mobile: always stack Image (top) then Text, regardless of swap */
@media (max-width: 1024px){
  .mms{ grid-template-columns:1fr; }
  .mms.is-reverse{ grid-template-columns:1fr; }
  .mms-left, .mms-right{ grid-row:auto; grid-column: 1 / -1 !important; } /* reset any column overrides */
  .mms-left{ order: 1; min-height:36vh; }   /* image first */
  .mms-right{ order: 2; }                   /* text second */
  .mms-content{ margin: 0 auto; }
  .mms-edge-fade{ display:none; }           /* optional: hide edge fade on mobile */
}
