/* Marc and Michelle brand layer over the MoFlo base.
   From their business cards: black textured bands top and bottom, white middle,
   a thin red wave line, names in red, serif type. Pools swap red for pool blue. */

:root {
    --mm-red: #c8102e;
    --mm-red-dark: #9e0b23;
    --mm-blue: #1769a8;
    --mm-blue-dark: #0f4f80;
    --mm-black: #121212;
    --mm-black-2: #1c1c1c;
    --mm-accent: var(--mm-red);
    --mm-accent-dark: var(--mm-red-dark);

    --color-text-primary: #151515;
    --color-text-secondary: #3b3b3b;
    --color-accent: var(--mm-accent);
    --color-accent-hover: var(--mm-accent-dark);
    --color-accent-light: rgba(200, 16, 46, 0.08);
    --color-bg-dark: var(--mm-black);
    --color-bg-dark-secondary: var(--mm-black-2);
    --color-bg-warm: #f6f5f3;
    --color-cta: var(--mm-accent);
    --color-link: var(--mm-accent);
    --font-heading: 'Libre Baskerville', Georgia, serif;
    --font-body: 'Source Sans 3', system-ui, sans-serif;
    --section-padding: 88px;
    --mm-header-h: 86px;
    --mm-texture: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3CfeColorMatrix values='0 0 0 0 1  0 0 0 0 1  0 0 0 0 1  0 0 0 .05 0'/%3E%3C/filter%3E%3Crect width='120' height='120' filter='url(%23n)'/%3E%3C/svg%3E");
}
body.mm-pools {
    --mm-accent: var(--mm-blue);
    --mm-accent-dark: var(--mm-blue-dark);
    --color-accent-light: rgba(23, 105, 168, 0.08);
}

body { font-size: 18px; color: var(--color-text-secondary); }
h1, h2, h3, h4 { font-family: var(--font-heading); color: var(--color-text-primary); font-weight: 400; line-height: 1.25; }

/* ---------- Header: black band + red wave ---------- */
.site-header.mm-header,
.site-header.mm-header.is-scrolled {
    position: sticky; top: 0; padding: 14px 0 0; background: var(--mm-black) var(--mm-texture); box-shadow: none; backdrop-filter: none;
}
.admin-bar .site-header.mm-header { top: 32px; }
.mm-header .header__inner { min-height: 58px; gap: 24px; }
.mm-wave { display: block; width: 100%; height: 14px; color: var(--mm-accent); margin-top: 10px; }
.mm-logo { display: flex; align-items: center; gap: 14px; color: #fff; }
.mm-logo__brokerage { font-family: var(--font-heading); font-size: 13px; line-height: 1.15; letter-spacing: 1.5px; text-transform: uppercase; color: #fff; }
.mm-logo__rule { width: 1px; height: 38px; background: rgba(255,255,255,.35); }
.mm-logo__team { display: flex; flex-direction: column; }
.mm-logo__names { font-family: var(--font-heading); font-size: 22px; color: var(--mm-accent); white-space: nowrap; }
.mm-logo__names em { font-style: italic; color: #fff; font-size: .8em; }
.mm-logo__sub { font-size: 11px; letter-spacing: 2.5px; text-transform: uppercase; color: rgba(255,255,255,.65); }
.mm-header .header__logo-img { max-height: 48px; }
.mm-header .nav-list > li > a,
.site-header--solid.mm-header .nav-list > li > a { color: #fff; font-size: 15px; letter-spacing: .3px; }
.mm-header .nav-list > li > a:hover, .mm-header .nav-list > li.current-menu-item > a, .mm-header .nav-list > li.current-menu-ancestor > a { color: var(--mm-accent); }
.mm-header .nav-list > li.mm-nav-pools > a { color: #5fb0ea; }
.mm-header .nav-list .sub-menu { background: #fff; border-top: 2px solid var(--mm-accent); }
.mm-header .nav-list .sub-menu a { color: var(--color-text-primary); }
.mm-header .nav-list .mm-nav-pools .sub-menu { border-top-color: var(--mm-blue); }
.mm-header .header__phone, .site-header--solid.mm-header .header__phone { color: #fff; font-weight: 600; white-space: nowrap; }
.mm-phone__label { font-weight: 400; opacity: .7; font-size: 13px; }
.mm-header .header__hamburger span { background-color: #fff; }
.btn-primary, .contact-form__submit { background: var(--mm-accent); border-color: var(--mm-accent); color: #fff; }
.btn-primary:hover, .contact-form__submit:hover { background: var(--mm-accent-dark); border-color: var(--mm-accent-dark); color: #fff; }
.btn-secondary { border-color: var(--mm-accent); color: var(--mm-accent); }
.btn-secondary:hover { background: var(--mm-accent); color: #fff; }

@media (max-width: 1180px) { .mm-phone__label { display: none; } .mm-header .nav-list > li > a { font-size: 14px; } }
@media (max-width: 1023px) { .mm-logo__rule, .mm-logo__brokerage { display: none; } .mm-header .header__phone { display: none; } }

/* ---------- Heroes ---------- */
.mm-hero { height: calc(100vh - var(--mm-header-h)); min-height: 560px; }
.mm-hero .hero__overlay { background: linear-gradient(180deg, rgba(0,0,0,.25), rgba(0,0,0,.55)); }
.mm-hero .hero__content { max-width: 880px; }
.mm-hero h1 { font-size: clamp(34px, 5vw, 58px); color: #fff; margin-bottom: 18px; }
.mm-hero .mm-hero-copy p { color: rgba(255,255,255,.92); font-size: 20px; margin-bottom: 26px; }
.mm-hero .mm-tagline { font-family: var(--font-heading); font-style: italic; color: #fff; }
.mm-page-hero { height: auto; min-height: 340px; padding: 80px 0 56px; }
.mm-page-hero .page-hero__image { opacity: .5; }
.mm-page-hero .page-hero__content { position: relative; z-index: 2; text-align: center; }
.mm-page-hero .page-hero__title { color: #fff; font-size: clamp(30px, 4vw, 48px); max-width: 960px; margin: 0 auto; }
.mm-page-hero .page-hero__subtitle { color: rgba(255,255,255,.85); margin-top: 12px; }
.mm-page-hero--plain { min-height: 220px; background: var(--mm-black) var(--mm-texture); }
.mm-page-hero::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 4px; background: var(--mm-accent); }
.mm-crumbs .breadcrumb { font-size: 14px; padding: 16px 0 0; color: var(--color-text-muted); }
.mm-crumbs .breadcrumb a { color: var(--mm-accent); }

/* ---------- Body sections from imported content ---------- */
.mm-body .mm-section { padding: 64px 0; }
.mm-body .mm-section:nth-of-type(even) { background: var(--color-bg-warm); }
.mm-body .mm-section--lede { padding-top: 40px; padding-bottom: 24px; }
.mm-body .mm-section--lede .prose > p:first-child { font-size: 21px; line-height: 1.6; color: var(--color-text-primary); }
.mm-body .prose { max-width: 820px; margin: 0 auto; }
.mm-body .prose h2 { font-size: clamp(26px, 3vw, 34px); margin: 0 0 20px; position: relative; padding-bottom: 14px; }
.mm-body .prose h2::after { content: ""; position: absolute; left: 0; bottom: 0; width: 56px; height: 3px; background: var(--mm-accent); }
.mm-body .prose h3 { font-size: 22px; margin: 32px 0 12px; }
.mm-body .prose p, .mm-body .prose ul, .mm-body .prose ol { margin-bottom: 18px; }
.mm-body .prose ul, .mm-body .prose ol { padding-left: 24px; }
.mm-body .prose li { margin-bottom: 8px; }
.mm-body .prose a { color: var(--mm-accent); text-decoration: underline; text-underline-offset: 3px; }
.mm-body .prose a.btn-primary, .mm-body .prose a.btn-secondary { text-decoration: none; }
.mm-body .prose strong { color: var(--color-text-primary); }
.mm-body .prose table { width: 100%; border-collapse: collapse; margin: 8px 0 24px; font-size: 16px; display: block; overflow-x: auto; }
.mm-body .prose th, .mm-body .prose td { border-bottom: 1px solid var(--color-border); padding: 10px 12px; text-align: left; vertical-align: top; }
.mm-body .prose th { background: var(--mm-black); color: #fff; font-weight: 600; }
.mm-body .prose blockquote { border-left: 3px solid var(--mm-accent); padding: 8px 0 8px 20px; margin: 20px 0; font-style: italic; color: var(--color-text-primary); }
.mm-body .prose hr { border: 0; height: 1px; background: var(--color-border); margin: 32px 0; }
.mm-buttons { display: flex; flex-wrap: wrap; gap: 12px; justify-content: center; }
.mm-body .prose .mm-buttons { justify-content: flex-start; margin: 20px 0; }

/* FAQ */
.mm-faq details { border-bottom: 1px solid var(--color-border); padding: 16px 0; }
.mm-faq summary { cursor: pointer; font-family: var(--font-heading); font-size: 19px; color: var(--color-text-primary); list-style: none; padding-right: 28px; position: relative; }
.mm-faq summary::-webkit-details-marker { display: none; }
.mm-faq summary::after { content: "+"; position: absolute; right: 0; top: 0; color: var(--mm-accent); font-size: 24px; line-height: 1; }
.mm-faq details[open] summary::after { content: "\2212"; }
.mm-faq details > div { padding-top: 12px; }

/* Forms */
.mm-form-wrap { background: #fff; border: 1px solid var(--color-border); border-top: 4px solid var(--mm-accent); padding: 28px; margin: 24px 0; }
.mm-form select.contact-form__input { appearance: auto; }
.mm-form__help { display: block; font-size: 14px; color: var(--color-text-muted); margin-top: 4px; }
.mm-form__consent { font-size: 14px; color: var(--color-text-muted); margin-top: 12px; }
.mm-form__status { margin-top: 12px; font-weight: 600; }
.mm-form__status.is-ok { color: #1f7a3a; }
.mm-form__status.is-err { color: var(--mm-red); }
.mm-hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.mm-idx--pending { background: var(--color-bg-warm); border-left: 4px solid var(--mm-accent); padding: 20px 24px; }

/* ---------- Footer: black band ---------- */
.mm-footer { background: var(--mm-black) var(--mm-texture); color: rgba(255,255,255,.78); padding: 0 0 32px; }
.mm-footer .mm-wave { margin: 0 0 48px; }
.mm-footer a { color: #fff; }
.mm-footer a:hover { color: var(--mm-accent); }
.mm-footer__top { display: grid; grid-template-columns: 1.2fr 1fr; gap: 32px; padding-bottom: 32px; border-bottom: 1px solid rgba(255,255,255,.12); }
.mm-footer__names { font-family: var(--font-heading); font-size: 28px; color: var(--mm-red); margin-bottom: 4px; }
.mm-footer__names em { color: #fff; font-size: .8em; }
.mm-footer__tagline { font-family: var(--font-heading); font-style: italic; margin-bottom: 16px; }
.mm-footer address { font-style: normal; line-height: 1.6; }
.mm-footer__agents p { margin-bottom: 14px; line-height: 1.6; font-size: 16px; }
.mm-footer__cols { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; padding: 32px 0; }
.mm-footer .footer__heading { color: #fff; font-family: var(--font-heading); font-size: 17px; margin-bottom: 12px; text-transform: none; letter-spacing: 0; }
.mm-footer__col--pools .footer__heading { color: #5fb0ea; }
.mm-footer .footer__menu li { margin-bottom: 6px; font-size: 15px; }
.mm-footer__links p { font-size: 15px; margin-bottom: 8px; }
.mm-footer__links span { opacity: .7; }
.mm-footer__bottom { border-top: 1px solid rgba(255,255,255,.12); padding-top: 20px; display: flex; justify-content: space-between; gap: 16px; flex-wrap: wrap; font-size: 14px; }
@media (max-width: 900px) { .mm-footer__top { grid-template-columns: 1fr; } .mm-footer__cols { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 560px) { .mm-footer__cols { grid-template-columns: 1fr; } }

/* Click-to-call */
.mm-call-fab { position: fixed; right: 18px; bottom: 18px; z-index: 900; display: flex; align-items: center; gap: 8px; background: var(--mm-accent); color: #fff; padding: 12px 18px; border-radius: 999px; box-shadow: 0 6px 20px rgba(0,0,0,.25); font-weight: 600; font-size: 15px; }
.mm-call-fab:hover { background: var(--mm-accent-dark); color: #fff; }
@media (min-width: 1024px) { .mm-call-fab span { display: none; } .mm-call-fab { padding: 14px; } }

.animate-on-scroll { opacity: 1; transform: none; }

/* fixes after first render review */
.mm-header .nav-list > li > a { white-space: nowrap; }
.mm-header .nav-list { gap: 22px; }
.mm-body .prose p, .mm-body .prose li { font-size: 18px; line-height: 1.7; }
.mm-body .prose td, .mm-body .prose th { font-size: 16px; line-height: 1.5; }
.mm-hero .btn-secondary { border-color: #fff; color: #fff; }
.mm-hero .btn-secondary:hover { background: #fff; color: var(--mm-black); }
.mm-hero .mm-buttons { justify-content: center; }

/* ---------- Motion (tasteful, respects reduced motion) ---------- */
.mm-reveal { opacity: 0; transform: translateY(16px); transition: opacity .7s cubic-bezier(.22,.61,.36,1), transform .7s cubic-bezier(.22,.61,.36,1); transition-delay: var(--mm-delay, 0ms); will-change: opacity, transform; }
.mm-reveal.is-in { opacity: 1; transform: none; }
.mm-body .prose h2::after { width: 0; transition: width .8s cubic-bezier(.22,.61,.36,1) .25s; }
.mm-body .prose h2.is-in::after, .mm-body .prose .is-in h2::after { width: 56px; }
.mm-hero .mm-hero-copy > * { opacity: 0; transform: translateY(18px); animation: mmUp .9s cubic-bezier(.22,.61,.36,1) forwards; }
.mm-hero .mm-hero-copy > :nth-child(1) { animation-delay: .25s; }
.mm-hero .mm-hero-copy > :nth-child(2) { animation-delay: .5s; }
.mm-hero .mm-hero-copy > :nth-child(3) { animation-delay: .75s; }
.mm-page-hero .page-hero__content { opacity: 0; transform: translateY(14px); animation: mmUp .9s cubic-bezier(.22,.61,.36,1) .15s forwards; }
@keyframes mmUp { to { opacity: 1; transform: none; } }
.mm-page-hero .page-hero__image { transform: scale(1.04); animation: mmDrift 14s ease-out forwards; }
@keyframes mmDrift { to { transform: scale(1); } }
.mm-wave path { stroke-dasharray: 1600; stroke-dashoffset: 1600; animation: mmDraw 1.6s ease-out .2s forwards; }
@keyframes mmDraw { to { stroke-dashoffset: 0; } }
.btn-primary, .btn-secondary, .contact-form__submit, .mm-call-fab { transition: transform .25s ease, box-shadow .25s ease, background-color .25s ease, color .25s ease, border-color .25s ease; }
.btn-primary:hover, .btn-secondary:hover, .contact-form__submit:hover { transform: translateY(-2px); box-shadow: 0 8px 20px rgba(0,0,0,.15); }
.mm-call-fab:hover { transform: translateY(-2px) scale(1.03); }
.blog-card, .mm-form-wrap { transition: transform .3s ease, box-shadow .3s ease; }
.blog-card:hover { transform: translateY(-4px); box-shadow: var(--shadow-hover); }
.mm-body .prose a:not(.btn-primary):not(.btn-secondary) { transition: color .2s ease, text-decoration-color .2s ease; text-decoration-color: rgba(200,16,46,.35); }
.mm-body .prose a:not(.btn-primary):not(.btn-secondary):hover { text-decoration-color: currentColor; }
.mm-header .nav-list > li > a { position: relative; transition: color .2s ease; }
.mm-header .nav-list > li > a::after { content: ""; position: absolute; left: 0; right: 100%; bottom: -6px; height: 2px; background: var(--mm-accent); transition: right .25s ease; }
.mm-header .nav-list > li:hover > a::after, .mm-header .nav-list > li.current-menu-item > a::after, .mm-header .nav-list > li.current-menu-ancestor > a::after { right: 0; }
.mm-header .nav-list > li.mm-nav-pools > a::after { background: #5fb0ea; }
.mm-header .nav-list .sub-menu { transition: opacity .2s ease, transform .2s ease, visibility .2s; transform: translateY(6px); }
.mm-header .nav-list li:hover > .sub-menu, .mm-header .nav-list li:focus-within > .sub-menu { transform: translateY(0); }
.mm-faq summary::after { transition: transform .25s ease; }
.mm-faq details[open] summary::after { content: "+"; transform: rotate(45deg); }
.mm-faq details > div { animation: mmUp .35s ease-out; }
.mm-footer a, .footer__menu a { transition: color .2s ease; }
.mm-body .prose tbody tr { transition: background-color .2s ease; }
.mm-body .prose tbody tr:hover { background: var(--color-accent-light); }
@media (prefers-reduced-motion: reduce) {
    .mm-reveal, .mm-hero .mm-hero-copy > *, .mm-page-hero .page-hero__content, .mm-page-hero .page-hero__image, .mm-wave path, .mm-faq details > div { animation: none !important; transition: none !important; opacity: 1 !important; transform: none !important; stroke-dashoffset: 0 !important; }
    .mm-body .prose h2::after { width: 56px; transition: none; }
}

/* ---------- Motion, second pass: more presence ---------- */
.mm-reveal { transform: translateY(28px); }
.mm-reveal.mm-reveal--left { transform: translateX(-36px); }
.mm-reveal.mm-reveal--scale { transform: translateY(20px) scale(.97); }
.mm-reveal.is-in { transform: none; }
.mm-body .prose h2.mm-reveal { transition-duration: .8s; }
.mm-body .prose li.mm-reveal, .mm-body .prose tr.mm-reveal { transform: translateX(-18px); transition-duration: .55s; }
.mm-body .prose li.mm-reveal.is-in, .mm-body .prose tr.mm-reveal.is-in { transform: none; }
.mm-body .prose strong { background-image: linear-gradient(120deg, var(--color-accent-light), var(--color-accent-light)); background-repeat: no-repeat; background-size: 0% 45%; background-position: 0 88%; transition: background-size .9s cubic-bezier(.22,.61,.36,1) .35s; }
.mm-body .prose .is-in strong, .mm-body .prose strong.is-in { background-size: 100% 45%; }

/* word-by-word title rise */
.mm-word { display: inline-block; overflow: hidden; vertical-align: bottom; }
.mm-word > span { display: inline-block; transform: translateY(110%); animation: mmWord .8s cubic-bezier(.22,.61,.36,1) forwards; animation-delay: calc(.2s + var(--mm-i, 0) * 70ms); }
@keyframes mmWord { to { transform: none; } }
.mm-hero .mm-hero-copy > h1 { opacity: 1; transform: none; animation: none; }
.mm-page-hero .page-hero__title { opacity: 1; }

/* hero: slow drift and scroll cue */
.mm-hero .hero__video { animation: mmHeroDrift 22s ease-in-out infinite alternate; }
@keyframes mmHeroDrift { from { transform: translate(-50%, -50%) scale(1); } to { transform: translate(-50%, -50%) scale(1.07); } }
.mm-hero__cue { position: absolute; left: 50%; bottom: 26px; z-index: 3; width: 26px; height: 42px; margin-left: -13px; border: 2px solid rgba(255,255,255,.7); border-radius: 14px; opacity: 0; animation: mmUp 1s ease-out 1.6s forwards; }
.mm-hero__cue::before { content: ""; position: absolute; left: 50%; top: 8px; width: 4px; height: 8px; margin-left: -2px; border-radius: 2px; background: #fff; animation: mmCue 1.8s ease-in-out infinite; }
@keyframes mmCue { 0% { transform: translateY(0); opacity: 1; } 70% { transform: translateY(16px); opacity: 0; } 100% { transform: translateY(0); opacity: 0; } }

/* page hero parallax handled in JS; make the drift bigger */
.mm-page-hero .page-hero__image { transform: scale(1.1); animation-duration: 18s; will-change: transform; }

/* header condenses on scroll */
.site-header.mm-header { transition: padding .3s ease; }
.site-header.mm-header.is-scrolled { padding-top: 6px; }
.mm-header .header__inner { transition: min-height .3s ease; }
.mm-header.is-scrolled .header__inner { min-height: 48px; }
.mm-logo__names { transition: font-size .3s ease; }
.mm-header.is-scrolled .mm-logo__names { font-size: 19px; }
.mm-header.is-scrolled .mm-wave { margin-top: 6px; }

/* buttons: shine sweep */
.btn-primary, .contact-form__submit { position: relative; overflow: hidden; }
.btn-primary::after, .contact-form__submit::after { content: ""; position: absolute; top: 0; left: -75%; width: 50%; height: 100%; background: linear-gradient(120deg, transparent, rgba(255,255,255,.35), transparent); transform: skewX(-20deg); transition: left .6s ease; }
.btn-primary:hover::after, .contact-form__submit:hover::after { left: 125%; }

/* call button: soft pulse ring */
.mm-call-fab::before { content: ""; position: absolute; inset: -4px; border-radius: inherit; border: 2px solid var(--mm-accent); opacity: 0; animation: mmRing 3.2s ease-out 2s infinite; }
@keyframes mmRing { 0% { transform: scale(.9); opacity: .8; } 60% { transform: scale(1.35); opacity: 0; } 100% { opacity: 0; } }

/* footer: wave draws when it arrives, columns stagger */
.mm-footer .mm-wave path { animation: none; }
.mm-footer.is-in .mm-wave path { animation: mmDraw 1.6s ease-out forwards; }
.mm-footer__col { opacity: 0; transform: translateY(20px); transition: opacity .7s ease, transform .7s ease; }
.mm-footer.is-in .mm-footer__col { opacity: 1; transform: none; }
.mm-footer.is-in .mm-footer__col:nth-child(2) { transition-delay: .1s; }
.mm-footer.is-in .mm-footer__col:nth-child(3) { transition-delay: .2s; }
.mm-footer.is-in .mm-footer__col:nth-child(4) { transition-delay: .3s; }

/* FAQ: hover nudge */
.mm-faq summary { transition: color .2s ease, padding-left .25s ease; }
.mm-faq summary:hover { color: var(--mm-accent); padding-left: 6px; }

/* mm-crumbs slide in */
.mm-crumbs .breadcrumb { opacity: 0; transform: translateX(-12px); animation: mmSlide .7s ease-out .5s forwards; }
@keyframes mmSlide { to { opacity: 1; transform: none; } }

@media (prefers-reduced-motion: reduce) {
    .mm-word > span, .mm-hero .hero__video, .mm-hero__cue, .mm-hero__cue::before, .mm-call-fab::before, .mm-crumbs .breadcrumb, .mm-footer .mm-wave path { animation: none !important; transform: none !important; opacity: 1 !important; }
    .mm-footer__col, .mm-body .prose li.mm-reveal, .mm-body .prose tr.mm-reveal { opacity: 1 !important; transform: none !important; transition: none !important; }
    .mm-body .prose strong { background-size: 100% 45%; transition: none; }
    .btn-primary::after, .contact-form__submit::after { display: none; }
}

/* ==========================================================================
   Composed layout: cards, stats, splits, bands, quotes, jump links, strips
   ========================================================================== */
body { font-size: 17px; }
.mm-body .prose p, .mm-body .prose li { font-size: 17px; line-height: 1.7; }
.mm-body .mm-section { padding: 72px 0; }
.mm-body .mm-section--lede { padding: 40px 0 8px; }
.mm-body .mm-section:nth-of-type(even) { background: transparent; }
.mm-body .mm-section:not(.mm-band):not(.mm-cta):not(.mm-strip):nth-of-type(odd) { background: transparent; }
.mm-body .mm-section--cards, .mm-body .mm-section--quotes, .mm-body .mm-section--stats { background: var(--color-bg-warm) !important; }
.mm-body .mm-section--split + .mm-section--split { padding-top: 0; }
.container--wide { max-width: 1280px; }

.mm-eyebrow { display: block; font-family: var(--font-body); font-size: 12px; font-weight: 700; letter-spacing: 3px; text-transform: uppercase; color: var(--mm-accent); margin-bottom: 10px; }
.mm-section__head { max-width: 820px; margin: 0 auto 36px; text-align: center; }
.mm-section__head .prose h2::after { left: 50%; margin-left: -28px; }
.mm-section__head .prose > p { margin: 0 auto; }
.mm-section__head .prose p:last-child { margin-bottom: 0; }

/* cards */
.mm-cards { display: grid; gap: 22px; }
.mm-cards--2 { grid-template-columns: repeat(2, 1fr); }
.mm-cards--3 { grid-template-columns: repeat(3, 1fr); }
.mm-cards--4 { grid-template-columns: repeat(4, 1fr); }
.mm-card { display: flex; flex-direction: column; background: #fff; border: 1px solid var(--color-border); overflow: hidden; color: inherit; transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease; }
.mm-card:hover { transform: translateY(-5px); box-shadow: var(--shadow-hover); border-color: transparent; }
.mm-card__img { aspect-ratio: 16/10; overflow: hidden; background: var(--mm-black); }
.mm-card__img img { width: 100%; height: 100%; object-fit: cover; transition: transform .8s cubic-bezier(.22,.61,.36,1); }
.mm-card:hover .mm-card__img img { transform: scale(1.06); }
.mm-card__img--none { aspect-ratio: auto; height: 6px; background: var(--mm-accent); }
.mm-card__body { padding: 20px 22px 22px; display: flex; flex-direction: column; flex: 1; }
.mm-card__title { font-size: 20px; margin: 0 0 8px; color: var(--color-text-primary); transition: color .2s ease; }
.mm-card:hover .mm-card__title { color: var(--mm-accent); }
.mm-card__desc { font-size: 15.5px; line-height: 1.6; color: var(--color-text-secondary); margin: 0 0 14px; }
.mm-card__desc a { color: inherit; text-decoration: none; }
.mm-card__more { margin-top: auto; font-size: 13px; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; color: var(--mm-accent); }
.mm-card__more::after { content: " \2192"; display: inline-block; transition: transform .25s ease; }
.mm-card:hover .mm-card__more::after { transform: translateX(4px); }
.mm-cards__tail { max-width: 820px; margin: 28px auto 0; font-size: 16px; }
.mm-cards--4 .mm-card__desc { font-size: 15px; }
.mm-cards--4 .mm-card__title { font-size: 18px; }

/* stats */
.mm-stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 18px; margin: 24px 0; }
.mm-stat { text-align: center; padding: 26px 12px; border-top: 3px solid var(--mm-accent); background: #fff; }
.mm-stat__value { display: block; font-family: var(--font-heading); font-size: clamp(26px, 3vw, 38px); color: var(--color-text-primary); line-height: 1.1; margin-bottom: 8px; }
.mm-stat__label { display: block; font-size: 12.5px; letter-spacing: 1.5px; text-transform: uppercase; color: var(--color-text-muted); }
.mm-stats__note { text-align: center; font-size: 14px; color: var(--color-text-muted); margin: 0; }
.mm-home-stats { padding: 40px 0 !important; background: var(--color-bg-warm) !important; }
.mm-home-stats .mm-stat { background: transparent; border-top: 0; border-right: 1px solid var(--color-border); padding: 8px 12px; }
.mm-home-stats .mm-stat:last-child { border-right: 0; }
.mm-home-stats .mm-stats { grid-template-columns: repeat(5, 1fr); gap: 0; margin: 0 0 12px; }

/* split */
.mm-split { display: grid; grid-template-columns: 1fr 1fr; gap: 56px; align-items: center; }
.mm-split--flip .mm-split__img { order: 2; }
.mm-split__img { position: relative; aspect-ratio: 4/3; overflow: hidden; }
.mm-split__img::before { content: ""; position: absolute; inset: 14px -14px -14px 14px; border: 2px solid var(--mm-accent); z-index: 0; opacity: .6; }
.mm-split__img img { position: relative; z-index: 1; width: 100%; height: 100%; object-fit: cover; }
.mm-split__text { max-width: none; }
.mm-split__text h2 { margin-top: 0; }
.mm-split__text > :last-child { margin-bottom: 0; }

/* bands */
.mm-band { color: #fff; }
.mm-band .prose h2, .mm-band .prose p, .mm-band .prose li, .mm-band .prose strong { color: #fff; }
.mm-band .prose a:not(.btn-primary) { color: #fff; text-decoration-color: rgba(255,255,255,.5); }
.mm-band .prose h2::after { background: #fff; }
.mm-band .mm-eyebrow { color: rgba(255,255,255,.75); }
.mm-band--pools { background: var(--mm-blue) !important; --mm-accent: #fff; }
.mm-band--pools .mm-split__img::before { border-color: rgba(255,255,255,.5); }
.mm-band--dark { position: relative; background: var(--mm-black) var(--mm-texture) !important; overflow: hidden; text-align: center; }
.mm-band--dark::before { content: ""; position: absolute; inset: 0; background: var(--mm-band-img) center/cover no-repeat; opacity: .28; }
.mm-band--dark .container { position: relative; }
.mm-band--dark .prose h2::after { left: 50%; margin-left: -28px; }
.mm-band--dark .prose a:not(.btn-primary) { display: inline-block; margin-top: 8px; padding: 12px 22px; border: 1px solid #fff; text-decoration: none; font-weight: 600; letter-spacing: 1px; text-transform: uppercase; font-size: 13px; }
.mm-band--dark .prose a:not(.btn-primary):hover { background: #fff; color: var(--mm-black); }

/* quotes */
.mm-quotes { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.mm-quote { background: #fff; padding: 30px 28px 24px; border-top: 3px solid var(--mm-accent); position: relative; margin: 0; }
.mm-quote::before { content: "\201C"; position: absolute; top: 10px; left: 22px; font-family: var(--font-heading); font-size: 64px; line-height: 1; color: var(--mm-accent); opacity: .25; }
.mm-quote blockquote { border: 0; padding: 16px 0 0; margin: 0 0 14px; font-family: var(--font-heading); font-style: italic; font-size: 17px; line-height: 1.6; color: var(--color-text-primary); }
.mm-quote figcaption { font-size: 13px; letter-spacing: 1px; text-transform: uppercase; color: var(--color-text-muted); }
.mm-section--quotes .prose { max-width: 820px; margin: 28px auto 0; text-align: center; }
.mm-section--quotes .prose > p:empty { display: none; }

/* jump links */
.mm-jump { display: flex; flex-wrap: wrap; gap: 8px 10px; align-items: center; max-width: 820px; margin: 22px auto 0; padding-top: 18px; border-top: 1px solid var(--color-border); }
.mm-jump__label { font-size: 12px; letter-spacing: 2px; text-transform: uppercase; color: var(--color-text-muted); margin-right: 6px; }
.mm-jump a { font-size: 13.5px; padding: 6px 12px; border: 1px solid var(--color-border); border-radius: 999px; color: var(--color-text-primary); transition: all .2s ease; }
.mm-jump a:hover { border-color: var(--mm-accent); color: var(--mm-accent); }

/* call strip */
.mm-body .mm-strip { background: var(--mm-black) var(--mm-texture) !important; padding: 36px 0; }
.mm-strip__inner { display: flex; align-items: center; justify-content: space-between; gap: 24px; flex-wrap: wrap; }
.mm-strip__text { color: #fff; font-family: var(--font-heading); font-size: 22px; margin: 0; }
.mm-strip .mm-buttons { justify-content: flex-start; }
.btn-on-dark { border-color: #fff; color: #fff; }
.btn-on-dark:hover { background: #fff; color: var(--mm-black); }

/* closing CTA */
.mm-body .mm-cta { background: var(--mm-black) var(--mm-texture) !important; text-align: center; padding: 80px 0; }
.mm-cta .prose h2, .mm-cta .prose p { color: #fff; }
.mm-cta .prose h2::after { left: 50%; margin-left: -28px; background: var(--mm-accent); }
.mm-cta .prose a { color: #fff; text-decoration-color: var(--mm-accent); }
.mm-cta .prose p { font-size: 19px; }

/* homepage tweaks */
.mm-home-about .mm-split__img img { aspect-ratio: 4/3; }
.mm-home-blog .mm-posts { margin-top: 0; }

@media (max-width: 1023px) {
    .mm-cards--3, .mm-cards--4 { grid-template-columns: repeat(2, 1fr); }
    .mm-quotes { grid-template-columns: 1fr; }
    .mm-split { grid-template-columns: 1fr; gap: 28px; }
    .mm-split--flip .mm-split__img { order: 0; }
    .mm-home-stats .mm-stats { grid-template-columns: repeat(3, 1fr); gap: 12px; }
    .mm-home-stats .mm-stat { border-right: 0; }
}
@media (max-width: 640px) {
    .mm-cards--2, .mm-cards--3, .mm-cards--4 { grid-template-columns: 1fr; }
    .mm-home-stats .mm-stats { grid-template-columns: repeat(2, 1fr); }
    .mm-body .mm-section { padding: 52px 0; }
    .mm-split__img::before { display: none; }
}

/* 1.3.1 fixes */
.mm-cards__tail { text-align: center; }
.mm-band--pools .prose a:not(.btn-primary) { text-decoration: underline; text-underline-offset: 3px; font-weight: 600; }
@media (max-width: 640px) {
    .mm-header .header__actions .btn-sm { display: none; }
    .mm-header .header__inner { gap: 12px; }
    .mm-logo__names { font-size: 19px; }
    .mm-header .header__hamburger { margin-left: auto; }
}
.mm-hero__cue { display: none !important; }
/* Pools nav item and footer heading match the rest */
.mm-header .nav-list > li.mm-nav-pools > a { color: #fff; }
.mm-header .nav-list > li.mm-nav-pools > a:hover { color: var(--mm-accent); }
.mm-header .nav-list > li.mm-nav-pools > a::after { background: var(--mm-accent); }
.mm-footer__col--pools .footer__heading { color: #fff; }
/* Footer names follow the page accent: red sitewide, blue in the pools section */
.mm-footer__names { color: var(--mm-accent); }
.mm-footer__col--pools .footer__heading, .mm-footer .footer__heading { color: #fff !important; }
/* Homepage pools section: normal white section with a blue accent (eyebrow, rule, frame, link) */
.mm-home-pools { --mm-accent: var(--mm-blue); --mm-accent-dark: var(--mm-blue-dark); }
.mm-home-pools .mm-split__img::before { border-color: var(--mm-blue); }
.mm-home-pools .prose a:not(.btn-primary) { color: var(--mm-blue); text-decoration-color: rgba(23,105,168,.4); font-weight: 600; }
/* Brokerage lives in the footer, not beside the team mark */
.mm-footer__brokerage { margin: 4px 0 14px; padding-top: 14px; border-top: 1px solid rgba(255,255,255,.14); max-width: 320px; }
.mm-footer__brokerage-name { font-family: var(--font-heading); font-size: 15px; letter-spacing: 2px; text-transform: uppercase; color: #fff; }
.mm-footer__brokerage-logo { max-height: 44px; width: auto; }

/* ==========================================================================
   Transparent header (1.4.0): sits over the hero, turns solid on scroll.
   No band or wave; red stays on the team mark, nav underline and CTA.
   ========================================================================== */
.site-header.mm-header.mm-header--overlay { position: fixed; top: 0; left: 0; right: 0; padding: 18px 0; background: transparent; box-shadow: none; transition: background-color .35s ease, padding .35s ease, box-shadow .35s ease; }
.site-header.mm-header.mm-header--overlay::before { content: ""; position: absolute; inset: 0 0 -40px 0; background: linear-gradient(180deg, rgba(0,0,0,.55), rgba(0,0,0,0)); pointer-events: none; transition: opacity .35s ease; z-index: -1; }
.site-header.mm-header.mm-header--overlay.is-scrolled { padding: 10px 0; background: rgba(18,18,18,.94); backdrop-filter: blur(8px); box-shadow: 0 1px 0 rgba(255,255,255,.06), 0 8px 24px rgba(0,0,0,.18); }
.site-header.mm-header.mm-header--overlay.is-scrolled::before { opacity: 0; }
.admin-bar .site-header.mm-header.mm-header--overlay { top: 32px; }
.mm-header .mm-logo__names { text-shadow: 0 1px 12px rgba(0,0,0,.35); }
.mm-header .nav-list > li > a, .mm-header .header__phone { text-shadow: 0 1px 10px rgba(0,0,0,.35); }
.mm-header.is-scrolled .mm-logo__names, .mm-header.is-scrolled .nav-list > li > a, .mm-header.is-scrolled .header__phone { text-shadow: none; }
/* heroes start under the header */
.mm-hero { height: 100vh; min-height: 620px; }
.mm-page-hero { padding-top: 150px; min-height: 420px; }
.mm-page-hero--plain { padding-top: 140px; min-height: 300px; }
@media (max-width: 1023px) { .mm-page-hero { padding-top: 120px; min-height: 340px; } }

/* Hero balance */
.mm-hero .hero__content { max-width: 1040px; }
.mm-hero h1 { font-size: clamp(34px, 4.6vw, 60px); text-wrap: balance; max-width: 980px; margin-left: auto; margin-right: auto; }
.mm-hero .mm-hero-copy p { text-wrap: balance; max-width: 700px; margin-left: auto; margin-right: auto; }
.mm-hero .mm-buttons a { min-width: 250px; text-align: center; justify-content: center; }
.mm-page-hero .page-hero__title { text-wrap: balance; }
.mm-body .prose h2, .mm-section__head h2, .mm-card__title { text-wrap: balance; }
.mm-body .prose p { text-wrap: pretty; }
@media (max-width: 640px) { .mm-hero .mm-buttons a { min-width: 0; width: 100%; } }

/* 1.4.2: no eyebrows anywhere */
.mm-eyebrow, .mm-jump__label, .section-label { display: none !important; }

/* ================= 1.5.0: aligned with MoFlo realty builds ================= */
/* Hero: headline, one line, one button */
.mm-hero .hero__content { max-width: 1100px; }
.mm-hero h1 { font-size: clamp(38px, 5.4vw, 74px); line-height: 1.08; letter-spacing: .03em; text-transform: uppercase; max-width: none; margin-bottom: 16px; }
.mm-hero .mm-hero-copy p:not(.mm-buttons) { font-family: var(--font-heading); font-style: italic; font-size: clamp(18px, 1.8vw, 23px); max-width: 640px; margin: 0 auto 30px; }
.mm-hero .mm-buttons .btn-primary { min-width: 210px; }

/* centered section heads */
.mm-section__head--center { text-align: center; margin: 0 auto 36px; max-width: 720px; }
.mm-section__head--center .prose h2::after { left: 50%; margin-left: -28px; }
.mm-section__head--center .prose p { color: var(--color-text-muted); }
.mm-center { text-align: center; margin-top: 30px; }
.mm-center .mm-buttons { justify-content: center; margin: 0; }
.mm-home-about .mm-buttons { margin-top: 18px; }

/* stats: four across, no footnote */
.mm-home-stats .mm-stats { grid-template-columns: repeat(4, 1fr); margin: 0; }
.mm-home-stats .mm-stats__note { display: none; }

/* photo tiles, name over the image */
.mm-tiles { display: grid; gap: 4px; }
.mm-tiles--3 { grid-template-columns: repeat(3, 1fr); }
.mm-tiles--4 { grid-template-columns: repeat(4, 1fr); }
.mm-tile { position: relative; display: block; overflow: hidden; aspect-ratio: 4/3; color: #fff; background: var(--mm-black); }
.mm-tiles--short .mm-tile { aspect-ratio: 3/4; }
.mm-tile img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .8s cubic-bezier(.22,.61,.36,1), opacity .4s ease; }
.mm-tile::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0,0,0,0) 45%, rgba(0,0,0,.72)); transition: background .4s ease; }
.mm-tile:hover img { transform: scale(1.06); }
.mm-tile:hover::after { background: linear-gradient(180deg, rgba(0,0,0,.1) 30%, rgba(0,0,0,.8)); }
.mm-tile__text { position: absolute; left: 22px; right: 22px; bottom: 20px; z-index: 2; }
.mm-tile__name { display: block; font-family: var(--font-heading); font-size: 22px; letter-spacing: .06em; text-transform: uppercase; color: #fff; }
.mm-tile__name::after { content: ""; display: block; width: 0; height: 2px; margin-top: 8px; background: var(--mm-accent); transition: width .4s ease; }
.mm-tile:hover .mm-tile__name::after { width: 44px; }
.mm-tile__desc { display: block; margin-top: 8px; font-size: 15px; line-height: 1.5; color: rgba(255,255,255,.88); }
.mm-tiles--desc .mm-tile { aspect-ratio: 1/1; }
.mm-home-more .mm-tile[href*="/pools/"] { --mm-accent: #5fb0ea; }

/* one big review at a time */
.mm-carousel { position: relative; text-align: center; min-height: 190px; }
.mm-carousel__mark { display: block; font-family: var(--font-heading); font-size: 64px; line-height: .6; color: var(--mm-accent); margin-bottom: 18px; }
.mm-slide { display: none; margin: 0; }
.mm-slide.is-active { display: block; animation: mmUp .6s ease both; }
.mm-slide blockquote { margin: 0 auto; max-width: 760px; font-family: var(--font-heading); font-style: italic; font-size: clamp(21px, 2.3vw, 29px); line-height: 1.5; color: var(--color-text); border: 0; padding: 0; }
.mm-slide figcaption { margin-top: 18px; font-size: 14px; letter-spacing: .08em; color: var(--color-text-muted); }
.mm-carousel__nav { display: flex; justify-content: center; gap: 12px; margin-top: 26px; }
.mm-carousel__btn { width: 42px; height: 42px; border-radius: 50%; border: 1px solid var(--color-border); background: transparent; font-size: 24px; line-height: 1; color: var(--color-text); cursor: pointer; transition: border-color .2s ease, color .2s ease; }
.mm-carousel__btn:hover { border-color: var(--mm-accent); color: var(--mm-accent); }

/* footer: brand, quick links, communities, contact, badge, legal */
.mm-footer { padding: 72px 0 26px; }
.mm-footer > .mm-wave { display: none; }
.mm-footer__grid { display: grid; grid-template-columns: 1.4fr 1fr 1fr 1.1fr; gap: 40px; padding-bottom: 40px; }
.mm-footer__names { font-size: 26px; }
.mm-footer__tagline { font-size: 15px; margin-bottom: 14px; opacity: .8; }
.mm-footer__icons { display: flex; gap: 14px; margin-top: 18px; }
.mm-footer__icons a { color: rgba(255,255,255,.7); }
.mm-footer .footer__heading { font-family: var(--font-body); font-size: 12px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: rgba(255,255,255,.9); margin-bottom: 16px; }
.mm-footer .footer__menu li { margin-bottom: 9px; font-size: 15px; }
.mm-footer .footer__menu a, .mm-footer__contact a { color: rgba(255,255,255,.66); }
.mm-footer .footer__menu a:hover, .mm-footer__contact a:hover { color: #fff; }
.mm-footer__contact address, .mm-footer__contact p { font-size: 15px; line-height: 1.6; margin: 0 0 8px; color: rgba(255,255,255,.66); }
.mm-footer__badge { text-align: center; padding: 8px 0 22px; }
.mm-badge { display: inline-flex; align-items: center; gap: 8px; background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.08); border-radius: 50px; padding: 8px 24px; backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); }
.mm-badge a { display: inline-flex; align-items: center; gap: 6px; color: rgba(255,255,255,.5) !important; font-size: 12px; letter-spacing: .3px; text-decoration: none; }
.mm-badge__logo { height: 16px; width: auto; }
.mm-badge__dot { color: rgba(255,255,255,.2); margin: 0 4px; }
.mm-footer__bottom { display: block; border-top: 1px solid rgba(255,255,255,.1); padding-top: 18px; font-size: 13px; color: rgba(255,255,255,.5); }
.mm-footer__bottom p { margin: 0 0 4px; }
.mm-footer__bottom a { color: rgba(255,255,255,.7); }
.mm-footer__eho { font-size: 12px; opacity: .8; }
@media (max-width: 900px) {
    .mm-footer__grid { grid-template-columns: 1fr 1fr; }
    .mm-tiles--4 { grid-template-columns: repeat(2, 1fr); }
    .mm-tiles--3 { grid-template-columns: repeat(2, 1fr); }
    .mm-home-stats .mm-stats { grid-template-columns: repeat(2, 1fr); gap: 16px; }
}
@media (max-width: 560px) {
    .mm-footer__grid { grid-template-columns: 1fr; gap: 28px; }
    .mm-tiles--3, .mm-tiles--desc { grid-template-columns: 1fr; }
    .mm-tiles--desc .mm-tile { aspect-ratio: 4/3; }
    .mm-tile__name { font-size: 19px; }
}
@media (prefers-reduced-motion: reduce) { .mm-slide.is-active { animation: none; } .mm-tile img { transition: none; } }
.mm-body .prose a.btn-primary, .mm-body .prose a.btn-primary:hover { color: #fff; }
/* 1.5.2: breathing room between card grids and the note or link under them */
.mm-body .mm-cards + .mm-cards__tail, .mm-body .mm-cards__tail { margin-top: 44px !important; margin-bottom: 0; }
.mm-body .mm-tiles + .mm-center { margin-top: 40px; }
/* 1.5.3: final CTA on a light band so it separates from the black footer; buttons centered */
.mm-body .mm-cta { background: var(--color-bg-warm) !important; border-top: 1px solid var(--color-border); padding: 88px 0; }
.mm-cta .prose h2 { color: var(--color-text); }
.mm-cta .prose p { color: var(--color-text-muted); max-width: 680px; margin-left: auto; margin-right: auto; }
.mm-cta .prose a:not(.btn-primary):not(.btn-secondary) { color: var(--color-text); text-decoration-color: var(--mm-accent); }
.mm-cta .mm-buttons { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin-top: 30px; }
.mm-cta .mm-buttons a { margin: 0 !important; }
.mm-body .mm-cta .prose a.btn-secondary { color: var(--mm-black); border: 1px solid var(--mm-black); background: transparent; }
.mm-body .mm-cta .prose a.btn-secondary:hover { background: var(--mm-black); color: #fff; }
/* 1.5.4: hero headline holds two lines on desktop */
.mm-hero .hero__content { max-width: 1240px; }
.mm-hero h1 { font-size: clamp(36px, 5.2vw, 66px); max-width: 1200px; margin-left: auto; margin-right: auto; }
.mm-body .mm-cta .prose .mm-buttons { justify-content: center; margin: 30px auto 0; max-width: none; }
/* 1.5.6: reviews cross-fade in place, balanced lines, no arrows */
.mm-carousel { min-height: 0; }
.mm-carousel__nav { display: none !important; }
.mm-carousel__track { display: grid; }
.mm-carousel__track .mm-slide { grid-area: 1 / 1; display: flex; flex-direction: column; justify-content: center; opacity: 0; visibility: hidden; animation: none !important; transition: opacity 1.2s ease, visibility 0s linear 1.2s; }
.mm-carousel__track .mm-slide.is-active { opacity: 1; visibility: visible; transition: opacity 1.2s ease, visibility 0s; }
.mm-slide blockquote { max-width: 680px; text-wrap: balance; }
.mm-home-quotes .mm-center { margin-top: 34px; }
.mm-slide blockquote { max-width: 860px; }
.mm-home-quotes .container--narrow { max-width: 940px; }
/* 1.5.8: review carousels on inner pages */
.mm-section--quotes .container { max-width: 940px; }
.mm-section--quotes .mm-section__head--center .prose p { margin-top: 10px; }
.mm-quotes__after { text-align: center; margin-top: 30px; }
.mm-quotes__after:empty { display: none; }
/* 1.5.9: quicker cross-fade to suit the 3.5s rotation */
.mm-carousel__track .mm-slide { transition: opacity .9s ease, visibility 0s linear .9s; }
.mm-carousel__track .mm-slide.is-active { transition: opacity .9s ease, visibility 0s; }
/* 1.5.10: word-rise mask no longer clips descenders (g, y, p) */
.mm-word { padding: .06em 0 .22em; margin: -.06em 0 -.22em; }
/* 1.6.0: pools page blocks (fact cards, steps), no intro block, jump nav on its own */
.mm-section--jump { padding: 26px 0 0 !important; }
.mm-section--jump .mm-jump { margin: 0; justify-content: center; }
.mm-facts { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.mm-fact { background: #fff; border-top: 3px solid var(--mm-accent); padding: 30px 28px 28px; box-shadow: 0 1px 0 var(--color-border); }
.mm-fact__n { display: block; font-family: var(--font-heading); font-size: 30px; color: var(--mm-accent); line-height: 1; margin-bottom: 14px; }
.mm-fact h3 { font-size: 21px; margin: 0 0 10px; text-wrap: balance; }
.mm-fact p { margin: 0; font-size: 16px; line-height: 1.6; color: var(--color-text-muted); text-wrap: pretty; }
.mm-steps { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, 1fr); gap: 26px; counter-reset: none; }
.mm-step { position: relative; text-align: center; padding: 0 8px; }
.mm-step::before { content: ""; position: absolute; top: 24px; left: calc(50% + 34px); right: calc(-50% + 34px); height: 1px; background: var(--color-border); }
.mm-step:last-child::before { display: none; }
.mm-step__n { display: inline-flex; align-items: center; justify-content: center; width: 48px; height: 48px; border-radius: 50%; border: 1px solid var(--mm-accent); color: var(--mm-accent); font-family: var(--font-heading); font-size: 20px; margin-bottom: 16px; background: #fff; }
.mm-step h3 { font-size: 19px; margin: 0 0 8px; }
.mm-step p { margin: 0; font-size: 15.5px; line-height: 1.6; color: var(--color-text-muted); }
.mm-pools-rules { background: var(--color-bg-warm) !important; }
.mm-band--pools .prose { text-align: center; }
.mm-band--pools .prose h2::after { left: 50%; margin-left: -28px; }
.mm-band--pools .mm-buttons { justify-content: center !important; }
.mm-body .mm-band--pools .prose a.btn-primary { background: #fff; color: var(--mm-blue); border-color: #fff; }
@media (max-width: 900px) {
    .mm-facts { grid-template-columns: 1fr; }
    .mm-steps { grid-template-columns: repeat(2, 1fr); row-gap: 34px; }
    .mm-step::before { display: none; }
}
@media (max-width: 560px) { .mm-steps { grid-template-columns: 1fr; } }
/* 1.6.1: WCAG AA contrast for secondary text */
:root { --color-text-muted: #636363; }
/* 1.7.0: Logo B (light, for the black header/footer) */
.mm-logo__img { display: block; height: 50px; width: auto; transition: height .3s ease; }
.mm-header.is-scrolled .mm-logo__img { height: 42px; }
.mm-footer__logo { display: block; height: 58px; width: auto; margin-bottom: 14px; }
@media (max-width: 900px) { .mm-logo__img { height: 40px; } .mm-header.is-scrolled .mm-logo__img { height: 36px; } }
@media (max-width: 400px) { .mm-logo__img { height: 34px; } }
.mm-logo__img { height: 62px; }
.mm-header.is-scrolled .mm-logo__img { height: 50px; }
.mm-footer__logo { height: 70px; }
@media (max-width: 900px) { .mm-logo__img { height: 48px; } .mm-header.is-scrolled .mm-logo__img { height: 42px; } }
@media (max-width: 400px) { .mm-logo__img { height: 42px; } }
/* 1.7.2: header uses the names only (no monogram) */
.mm-logo__img { height: 46px; }
.mm-header.is-scrolled .mm-logo__img { height: 38px; }
@media (max-width: 900px) { .mm-logo__img { height: 36px; } .mm-header.is-scrolled .mm-logo__img { height: 32px; } }
@media (max-width: 400px) { .mm-logo__img { height: 30px; } }
.mm-logo__img { height: 54px; }
.mm-header.is-scrolled .mm-logo__img { height: 44px; }
@media (max-width: 900px) { .mm-logo__img { height: 44px; } .mm-header.is-scrolled .mm-logo__img { height: 38px; } }
@media (max-width: 400px) { .mm-logo__img { height: 40px; } }
/* 1.7.4: IDX agent tabs */
.mm-idx__tabs { display: flex; justify-content: center; gap: 0; margin: 0 auto 24px; border-bottom: 1px solid var(--color-border); max-width: 520px; }
.mm-idx__tabs button { flex: 1; background: none; border: 0; border-bottom: 3px solid transparent; margin-bottom: -1px; padding: 14px 18px; font-family: var(--font-body); font-size: 15px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--color-text-muted); cursor: pointer; }
.mm-idx__tabs button.is-active { color: var(--color-text); border-bottom-color: var(--mm-accent); }
.mm-idx__panel { display: none; }
.mm-idx__panel.is-active { display: block; }
/* 1.7.5: agent portraits */
.mm-split--portrait .mm-split__img img { aspect-ratio: 4/5; object-fit: cover; object-position: 50% 18%; }
.mm-split--portrait .mm-split__img img[src*="team-marc-michelle"], .mm-home-about .mm-split__img img { aspect-ratio: 4/3; object-position: 50% 30%; }

/* 1.8.0: business-card wave accents (heading underline, footer top) and balanced header logo */
.mm-body .prose h2::after { height: 8px; bottom: -3px; background: var(--mm-accent); -webkit-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20width%3D%2756%27%20height%3D%278%27%20viewBox%3D%270%200%2056%208%27%3E%3Cpolyline%20points%3D%270.0%2C4.00%200.5%2C4.37%201.0%2C4.73%201.5%2C5.06%202.0%2C5.37%202.5%2C5.64%203.0%2C5.86%203.5%2C6.03%204.0%2C6.14%204.5%2C6.20%205.0%2C6.19%205.5%2C6.11%206.0%2C5.98%206.5%2C5.79%207.0%2C5.56%207.5%2C5.27%208.0%2C4.96%208.5%2C4.61%209.0%2C4.25%209.5%2C3.88%2010.0%2C3.51%2010.5%2C3.16%2011.0%2C2.83%2011.5%2C2.54%2012.0%2C2.28%2012.5%2C2.08%2013.0%2C1.92%2013.5%2C1.83%2014.0%2C1.80%2014.5%2C1.83%2015.0%2C1.92%2015.5%2C2.07%2016.0%2C2.28%2016.5%2C2.53%2017.0%2C2.83%2017.5%2C3.16%2018.0%2C3.51%2018.5%2C3.87%2019.0%2C4.24%2019.5%2C4.61%2020.0%2C4.95%2020.5%2C5.27%2021.0%2C5.55%2021.5%2C5.79%2022.0%2C5.98%2022.5%2C6.11%2023.0%2C6.19%2023.5%2C6.20%2024.0%2C6.15%2024.5%2C6.03%2025.0%2C5.86%2025.5%2C5.64%2026.0%2C5.37%2026.5%2C5.07%2027.0%2C4.73%2027.5%2C4.37%2028.0%2C4.00%2028.5%2C3.64%2029.0%2C3.28%2029.5%2C2.94%2030.0%2C2.63%2030.5%2C2.36%2031.0%2C2.14%2031.5%2C1.97%2032.0%2C1.86%2032.5%2C1.80%2033.0%2C1.81%2033.5%2C1.88%2034.0%2C2.02%2034.5%2C2.20%2035.0%2C2.44%2035.5%2C2.72%2036.0%2C3.04%2036.5%2C3.39%2037.0%2C3.75%2037.5%2C4.12%2038.0%2C4.48%2038.5%2C4.84%2039.0%2C5.17%2039.5%2C5.46%2040.0%2C5.72%2040.5%2C5.92%2041.0%2C6.07%2041.5%2C6.17%2042.0%2C6.20%2042.5%2C6.17%2043.0%2C6.08%2043.5%2C5.93%2044.0%2C5.72%2044.5%2C5.47%2045.0%2C5.18%2045.5%2C4.85%2046.0%2C4.50%2046.5%2C4.13%2047.0%2C3.76%2047.5%2C3.40%2048.0%2C3.05%2048.5%2C2.73%2049.0%2C2.45%2049.5%2C2.21%2050.0%2C2.02%2050.5%2C1.89%2051.0%2C1.81%2051.5%2C1.80%2052.0%2C1.85%2052.5%2C1.96%2053.0%2C2.13%2053.5%2C2.35%2054.0%2C2.62%2054.5%2C2.93%2055.0%2C3.27%2055.5%2C3.62%2056.0%2C3.99%27%20fill%3D%27none%27%20stroke%3D%27black%27%20stroke-width%3D%272.2%27%20stroke-linecap%3D%27round%27/%3E%3C/svg%3E") left center / 56px 8px no-repeat; mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20width%3D%2756%27%20height%3D%278%27%20viewBox%3D%270%200%2056%208%27%3E%3Cpolyline%20points%3D%270.0%2C4.00%200.5%2C4.37%201.0%2C4.73%201.5%2C5.06%202.0%2C5.37%202.5%2C5.64%203.0%2C5.86%203.5%2C6.03%204.0%2C6.14%204.5%2C6.20%205.0%2C6.19%205.5%2C6.11%206.0%2C5.98%206.5%2C5.79%207.0%2C5.56%207.5%2C5.27%208.0%2C4.96%208.5%2C4.61%209.0%2C4.25%209.5%2C3.88%2010.0%2C3.51%2010.5%2C3.16%2011.0%2C2.83%2011.5%2C2.54%2012.0%2C2.28%2012.5%2C2.08%2013.0%2C1.92%2013.5%2C1.83%2014.0%2C1.80%2014.5%2C1.83%2015.0%2C1.92%2015.5%2C2.07%2016.0%2C2.28%2016.5%2C2.53%2017.0%2C2.83%2017.5%2C3.16%2018.0%2C3.51%2018.5%2C3.87%2019.0%2C4.24%2019.5%2C4.61%2020.0%2C4.95%2020.5%2C5.27%2021.0%2C5.55%2021.5%2C5.79%2022.0%2C5.98%2022.5%2C6.11%2023.0%2C6.19%2023.5%2C6.20%2024.0%2C6.15%2024.5%2C6.03%2025.0%2C5.86%2025.5%2C5.64%2026.0%2C5.37%2026.5%2C5.07%2027.0%2C4.73%2027.5%2C4.37%2028.0%2C4.00%2028.5%2C3.64%2029.0%2C3.28%2029.5%2C2.94%2030.0%2C2.63%2030.5%2C2.36%2031.0%2C2.14%2031.5%2C1.97%2032.0%2C1.86%2032.5%2C1.80%2033.0%2C1.81%2033.5%2C1.88%2034.0%2C2.02%2034.5%2C2.20%2035.0%2C2.44%2035.5%2C2.72%2036.0%2C3.04%2036.5%2C3.39%2037.0%2C3.75%2037.5%2C4.12%2038.0%2C4.48%2038.5%2C4.84%2039.0%2C5.17%2039.5%2C5.46%2040.0%2C5.72%2040.5%2C5.92%2041.0%2C6.07%2041.5%2C6.17%2042.0%2C6.20%2042.5%2C6.17%2043.0%2C6.08%2043.5%2C5.93%2044.0%2C5.72%2044.5%2C5.47%2045.0%2C5.18%2045.5%2C4.85%2046.0%2C4.50%2046.5%2C4.13%2047.0%2C3.76%2047.5%2C3.40%2048.0%2C3.05%2048.5%2C2.73%2049.0%2C2.45%2049.5%2C2.21%2050.0%2C2.02%2050.5%2C1.89%2051.0%2C1.81%2051.5%2C1.80%2052.0%2C1.85%2052.5%2C1.96%2053.0%2C2.13%2053.5%2C2.35%2054.0%2C2.62%2054.5%2C2.93%2055.0%2C3.27%2055.5%2C3.62%2056.0%2C3.99%27%20fill%3D%27none%27%20stroke%3D%27black%27%20stroke-width%3D%272.2%27%20stroke-linecap%3D%27round%27/%3E%3C/svg%3E") left center / 56px 8px no-repeat; }
.mm-band .prose h2::after { background: #fff; }
.mm-footer { position: relative; }
.mm-footer__wave { position: absolute; left: 0; right: 0; top: 26px; height: 10px; background: var(--mm-accent); opacity: .9; -webkit-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20width%3D%2780%27%20height%3D%2710%27%20viewBox%3D%270%200%2080%2010%27%3E%3Cpolyline%20points%3D%270.0%2C5.00%200.5%2C5.12%201.0%2C5.24%201.5%2C5.35%202.0%2C5.47%202.5%2C5.59%203.0%2C5.70%203.5%2C5.81%204.0%2C5.93%204.5%2C6.04%205.0%2C6.15%205.5%2C6.26%206.0%2C6.36%206.5%2C6.47%207.0%2C6.57%207.5%2C6.67%208.0%2C6.76%208.5%2C6.86%209.0%2C6.95%209.5%2C7.04%2010.0%2C7.12%2010.5%2C7.20%2011.0%2C7.28%2011.5%2C7.36%2012.0%2C7.43%2012.5%2C7.49%2013.0%2C7.56%2013.5%2C7.62%2014.0%2C7.67%2014.5%2C7.72%2015.0%2C7.77%2015.5%2C7.81%2016.0%2C7.85%2016.5%2C7.89%2017.0%2C7.92%2017.5%2C7.94%2018.0%2C7.96%2018.5%2C7.98%2019.0%2C7.99%2019.5%2C8.00%2020.0%2C8.00%2020.5%2C8.00%2021.0%2C7.99%2021.5%2C7.98%2022.0%2C7.96%2022.5%2C7.94%2023.0%2C7.92%2023.5%2C7.89%2024.0%2C7.85%2024.5%2C7.81%2025.0%2C7.77%2025.5%2C7.72%2026.0%2C7.67%2026.5%2C7.62%2027.0%2C7.56%2027.5%2C7.49%2028.0%2C7.43%2028.5%2C7.36%2029.0%2C7.28%2029.5%2C7.20%2030.0%2C7.12%2030.5%2C7.04%2031.0%2C6.95%2031.5%2C6.86%2032.0%2C6.76%2032.5%2C6.67%2033.0%2C6.57%2033.5%2C6.47%2034.0%2C6.36%2034.5%2C6.26%2035.0%2C6.15%2035.5%2C6.04%2036.0%2C5.93%2036.5%2C5.81%2037.0%2C5.70%2037.5%2C5.59%2038.0%2C5.47%2038.5%2C5.35%2039.0%2C5.24%2039.5%2C5.12%2040.0%2C5.00%2040.5%2C4.88%2041.0%2C4.76%2041.5%2C4.65%2042.0%2C4.53%2042.5%2C4.41%2043.0%2C4.30%2043.5%2C4.19%2044.0%2C4.07%2044.5%2C3.96%2045.0%2C3.85%2045.5%2C3.74%2046.0%2C3.64%2046.5%2C3.53%2047.0%2C3.43%2047.5%2C3.33%2048.0%2C3.24%2048.5%2C3.14%2049.0%2C3.05%2049.5%2C2.96%2050.0%2C2.88%2050.5%2C2.80%2051.0%2C2.72%2051.5%2C2.64%2052.0%2C2.57%2052.5%2C2.51%2053.0%2C2.44%2053.5%2C2.38%2054.0%2C2.33%2054.5%2C2.28%2055.0%2C2.23%2055.5%2C2.19%2056.0%2C2.15%2056.5%2C2.11%2057.0%2C2.08%2057.5%2C2.06%2058.0%2C2.04%2058.5%2C2.02%2059.0%2C2.01%2059.5%2C2.00%2060.0%2C2.00%2060.5%2C2.00%2061.0%2C2.01%2061.5%2C2.02%2062.0%2C2.04%2062.5%2C2.06%2063.0%2C2.08%2063.5%2C2.11%2064.0%2C2.15%2064.5%2C2.19%2065.0%2C2.23%2065.5%2C2.28%2066.0%2C2.33%2066.5%2C2.38%2067.0%2C2.44%2067.5%2C2.51%2068.0%2C2.57%2068.5%2C2.64%2069.0%2C2.72%2069.5%2C2.80%2070.0%2C2.88%2070.5%2C2.96%2071.0%2C3.05%2071.5%2C3.14%2072.0%2C3.24%2072.5%2C3.33%2073.0%2C3.43%2073.5%2C3.53%2074.0%2C3.64%2074.5%2C3.74%2075.0%2C3.85%2075.5%2C3.96%2076.0%2C4.07%2076.5%2C4.19%2077.0%2C4.30%2077.5%2C4.41%2078.0%2C4.53%2078.5%2C4.65%2079.0%2C4.76%2079.5%2C4.88%2080.0%2C5.00%27%20fill%3D%27none%27%20stroke%3D%27black%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27/%3E%3C/svg%3E") left center / 80px 10px repeat-x; mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20width%3D%2780%27%20height%3D%2710%27%20viewBox%3D%270%200%2080%2010%27%3E%3Cpolyline%20points%3D%270.0%2C5.00%200.5%2C5.12%201.0%2C5.24%201.5%2C5.35%202.0%2C5.47%202.5%2C5.59%203.0%2C5.70%203.5%2C5.81%204.0%2C5.93%204.5%2C6.04%205.0%2C6.15%205.5%2C6.26%206.0%2C6.36%206.5%2C6.47%207.0%2C6.57%207.5%2C6.67%208.0%2C6.76%208.5%2C6.86%209.0%2C6.95%209.5%2C7.04%2010.0%2C7.12%2010.5%2C7.20%2011.0%2C7.28%2011.5%2C7.36%2012.0%2C7.43%2012.5%2C7.49%2013.0%2C7.56%2013.5%2C7.62%2014.0%2C7.67%2014.5%2C7.72%2015.0%2C7.77%2015.5%2C7.81%2016.0%2C7.85%2016.5%2C7.89%2017.0%2C7.92%2017.5%2C7.94%2018.0%2C7.96%2018.5%2C7.98%2019.0%2C7.99%2019.5%2C8.00%2020.0%2C8.00%2020.5%2C8.00%2021.0%2C7.99%2021.5%2C7.98%2022.0%2C7.96%2022.5%2C7.94%2023.0%2C7.92%2023.5%2C7.89%2024.0%2C7.85%2024.5%2C7.81%2025.0%2C7.77%2025.5%2C7.72%2026.0%2C7.67%2026.5%2C7.62%2027.0%2C7.56%2027.5%2C7.49%2028.0%2C7.43%2028.5%2C7.36%2029.0%2C7.28%2029.5%2C7.20%2030.0%2C7.12%2030.5%2C7.04%2031.0%2C6.95%2031.5%2C6.86%2032.0%2C6.76%2032.5%2C6.67%2033.0%2C6.57%2033.5%2C6.47%2034.0%2C6.36%2034.5%2C6.26%2035.0%2C6.15%2035.5%2C6.04%2036.0%2C5.93%2036.5%2C5.81%2037.0%2C5.70%2037.5%2C5.59%2038.0%2C5.47%2038.5%2C5.35%2039.0%2C5.24%2039.5%2C5.12%2040.0%2C5.00%2040.5%2C4.88%2041.0%2C4.76%2041.5%2C4.65%2042.0%2C4.53%2042.5%2C4.41%2043.0%2C4.30%2043.5%2C4.19%2044.0%2C4.07%2044.5%2C3.96%2045.0%2C3.85%2045.5%2C3.74%2046.0%2C3.64%2046.5%2C3.53%2047.0%2C3.43%2047.5%2C3.33%2048.0%2C3.24%2048.5%2C3.14%2049.0%2C3.05%2049.5%2C2.96%2050.0%2C2.88%2050.5%2C2.80%2051.0%2C2.72%2051.5%2C2.64%2052.0%2C2.57%2052.5%2C2.51%2053.0%2C2.44%2053.5%2C2.38%2054.0%2C2.33%2054.5%2C2.28%2055.0%2C2.23%2055.5%2C2.19%2056.0%2C2.15%2056.5%2C2.11%2057.0%2C2.08%2057.5%2C2.06%2058.0%2C2.04%2058.5%2C2.02%2059.0%2C2.01%2059.5%2C2.00%2060.0%2C2.00%2060.5%2C2.00%2061.0%2C2.01%2061.5%2C2.02%2062.0%2C2.04%2062.5%2C2.06%2063.0%2C2.08%2063.5%2C2.11%2064.0%2C2.15%2064.5%2C2.19%2065.0%2C2.23%2065.5%2C2.28%2066.0%2C2.33%2066.5%2C2.38%2067.0%2C2.44%2067.5%2C2.51%2068.0%2C2.57%2068.5%2C2.64%2069.0%2C2.72%2069.5%2C2.80%2070.0%2C2.88%2070.5%2C2.96%2071.0%2C3.05%2071.5%2C3.14%2072.0%2C3.24%2072.5%2C3.33%2073.0%2C3.43%2073.5%2C3.53%2074.0%2C3.64%2074.5%2C3.74%2075.0%2C3.85%2075.5%2C3.96%2076.0%2C4.07%2076.5%2C4.19%2077.0%2C4.30%2077.5%2C4.41%2078.0%2C4.53%2078.5%2C4.65%2079.0%2C4.76%2079.5%2C4.88%2080.0%2C5.00%27%20fill%3D%27none%27%20stroke%3D%27black%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27/%3E%3C/svg%3E") left center / 80px 10px repeat-x; }
.mm-logo__img { height: 50px; }
.mm-header.is-scrolled .mm-logo__img { height: 42px; }
@media (max-width: 900px) { .mm-logo__img { height: 42px; } .mm-header.is-scrolled .mm-logo__img { height: 38px; } }
@media (max-width: 400px) { .mm-logo__img { height: 38px; } }
/* 1.8.1: straight rule in the header logo; footer wave sits on the seam as the section divider */
.mm-footer__wave { top: -5px; opacity: 1; }
.mm-footer { padding-top: 64px; }

/* 1.8.2: the footer's top edge is the wave (section divider) */
.mm-footer__wave { top: 0; height: 12px; opacity: 1; background: none; -webkit-mask: none; mask: none; }
.mm-footer__wave::before, .mm-footer__wave::after { content: ""; position: absolute; inset: 0; }
.mm-footer__wave::before { background: var(--mm-seam, #fff); -webkit-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20width%3D%2780%27%20height%3D%2712%27%20viewBox%3D%270%200%2080%2012%27%3E%3Cpolygon%20points%3D%270%2C0%200.0%2C6.00%200.5%2C6.13%201.0%2C6.25%201.5%2C6.38%202.0%2C6.50%202.5%2C6.62%203.0%2C6.75%203.5%2C6.87%204.0%2C6.99%204.5%2C7.11%205.0%2C7.22%205.5%2C7.34%206.0%2C7.45%206.5%2C7.56%207.0%2C7.67%207.5%2C7.78%208.0%2C7.88%208.5%2C7.98%209.0%2C8.08%209.5%2C8.17%2010.0%2C8.26%2010.5%2C8.35%2011.0%2C8.43%2011.5%2C8.51%2012.0%2C8.59%2012.5%2C8.66%2013.0%2C8.73%2013.5%2C8.79%2014.0%2C8.85%2014.5%2C8.91%2015.0%2C8.96%2015.5%2C9.00%2016.0%2C9.04%2016.5%2C9.08%2017.0%2C9.11%2017.5%2C9.14%2018.0%2C9.16%2018.5%2C9.18%2019.0%2C9.19%2019.5%2C9.20%2020.0%2C9.20%2020.5%2C9.20%2021.0%2C9.19%2021.5%2C9.18%2022.0%2C9.16%2022.5%2C9.14%2023.0%2C9.11%2023.5%2C9.08%2024.0%2C9.04%2024.5%2C9.00%2025.0%2C8.96%2025.5%2C8.91%2026.0%2C8.85%2026.5%2C8.79%2027.0%2C8.73%2027.5%2C8.66%2028.0%2C8.59%2028.5%2C8.51%2029.0%2C8.43%2029.5%2C8.35%2030.0%2C8.26%2030.5%2C8.17%2031.0%2C8.08%2031.5%2C7.98%2032.0%2C7.88%2032.5%2C7.78%2033.0%2C7.67%2033.5%2C7.56%2034.0%2C7.45%2034.5%2C7.34%2035.0%2C7.22%2035.5%2C7.11%2036.0%2C6.99%2036.5%2C6.87%2037.0%2C6.75%2037.5%2C6.62%2038.0%2C6.50%2038.5%2C6.38%2039.0%2C6.25%2039.5%2C6.13%2040.0%2C6.00%2040.5%2C5.87%2041.0%2C5.75%2041.5%2C5.62%2042.0%2C5.50%2042.5%2C5.38%2043.0%2C5.25%2043.5%2C5.13%2044.0%2C5.01%2044.5%2C4.89%2045.0%2C4.78%2045.5%2C4.66%2046.0%2C4.55%2046.5%2C4.44%2047.0%2C4.33%2047.5%2C4.22%2048.0%2C4.12%2048.5%2C4.02%2049.0%2C3.92%2049.5%2C3.83%2050.0%2C3.74%2050.5%2C3.65%2051.0%2C3.57%2051.5%2C3.49%2052.0%2C3.41%2052.5%2C3.34%2053.0%2C3.27%2053.5%2C3.21%2054.0%2C3.15%2054.5%2C3.09%2055.0%2C3.04%2055.5%2C3.00%2056.0%2C2.96%2056.5%2C2.92%2057.0%2C2.89%2057.5%2C2.86%2058.0%2C2.84%2058.5%2C2.82%2059.0%2C2.81%2059.5%2C2.80%2060.0%2C2.80%2060.5%2C2.80%2061.0%2C2.81%2061.5%2C2.82%2062.0%2C2.84%2062.5%2C2.86%2063.0%2C2.89%2063.5%2C2.92%2064.0%2C2.96%2064.5%2C3.00%2065.0%2C3.04%2065.5%2C3.09%2066.0%2C3.15%2066.5%2C3.21%2067.0%2C3.27%2067.5%2C3.34%2068.0%2C3.41%2068.5%2C3.49%2069.0%2C3.57%2069.5%2C3.65%2070.0%2C3.74%2070.5%2C3.83%2071.0%2C3.92%2071.5%2C4.02%2072.0%2C4.12%2072.5%2C4.22%2073.0%2C4.33%2073.5%2C4.44%2074.0%2C4.55%2074.5%2C4.66%2075.0%2C4.78%2075.5%2C4.89%2076.0%2C5.01%2076.5%2C5.13%2077.0%2C5.25%2077.5%2C5.38%2078.0%2C5.50%2078.5%2C5.62%2079.0%2C5.75%2079.5%2C5.87%2080.0%2C6.00%2080%2C0%27%20fill%3D%27black%27/%3E%3C/svg%3E") left top / 80px 12px repeat-x; mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20width%3D%2780%27%20height%3D%2712%27%20viewBox%3D%270%200%2080%2012%27%3E%3Cpolygon%20points%3D%270%2C0%200.0%2C6.00%200.5%2C6.13%201.0%2C6.25%201.5%2C6.38%202.0%2C6.50%202.5%2C6.62%203.0%2C6.75%203.5%2C6.87%204.0%2C6.99%204.5%2C7.11%205.0%2C7.22%205.5%2C7.34%206.0%2C7.45%206.5%2C7.56%207.0%2C7.67%207.5%2C7.78%208.0%2C7.88%208.5%2C7.98%209.0%2C8.08%209.5%2C8.17%2010.0%2C8.26%2010.5%2C8.35%2011.0%2C8.43%2011.5%2C8.51%2012.0%2C8.59%2012.5%2C8.66%2013.0%2C8.73%2013.5%2C8.79%2014.0%2C8.85%2014.5%2C8.91%2015.0%2C8.96%2015.5%2C9.00%2016.0%2C9.04%2016.5%2C9.08%2017.0%2C9.11%2017.5%2C9.14%2018.0%2C9.16%2018.5%2C9.18%2019.0%2C9.19%2019.5%2C9.20%2020.0%2C9.20%2020.5%2C9.20%2021.0%2C9.19%2021.5%2C9.18%2022.0%2C9.16%2022.5%2C9.14%2023.0%2C9.11%2023.5%2C9.08%2024.0%2C9.04%2024.5%2C9.00%2025.0%2C8.96%2025.5%2C8.91%2026.0%2C8.85%2026.5%2C8.79%2027.0%2C8.73%2027.5%2C8.66%2028.0%2C8.59%2028.5%2C8.51%2029.0%2C8.43%2029.5%2C8.35%2030.0%2C8.26%2030.5%2C8.17%2031.0%2C8.08%2031.5%2C7.98%2032.0%2C7.88%2032.5%2C7.78%2033.0%2C7.67%2033.5%2C7.56%2034.0%2C7.45%2034.5%2C7.34%2035.0%2C7.22%2035.5%2C7.11%2036.0%2C6.99%2036.5%2C6.87%2037.0%2C6.75%2037.5%2C6.62%2038.0%2C6.50%2038.5%2C6.38%2039.0%2C6.25%2039.5%2C6.13%2040.0%2C6.00%2040.5%2C5.87%2041.0%2C5.75%2041.5%2C5.62%2042.0%2C5.50%2042.5%2C5.38%2043.0%2C5.25%2043.5%2C5.13%2044.0%2C5.01%2044.5%2C4.89%2045.0%2C4.78%2045.5%2C4.66%2046.0%2C4.55%2046.5%2C4.44%2047.0%2C4.33%2047.5%2C4.22%2048.0%2C4.12%2048.5%2C4.02%2049.0%2C3.92%2049.5%2C3.83%2050.0%2C3.74%2050.5%2C3.65%2051.0%2C3.57%2051.5%2C3.49%2052.0%2C3.41%2052.5%2C3.34%2053.0%2C3.27%2053.5%2C3.21%2054.0%2C3.15%2054.5%2C3.09%2055.0%2C3.04%2055.5%2C3.00%2056.0%2C2.96%2056.5%2C2.92%2057.0%2C2.89%2057.5%2C2.86%2058.0%2C2.84%2058.5%2C2.82%2059.0%2C2.81%2059.5%2C2.80%2060.0%2C2.80%2060.5%2C2.80%2061.0%2C2.81%2061.5%2C2.82%2062.0%2C2.84%2062.5%2C2.86%2063.0%2C2.89%2063.5%2C2.92%2064.0%2C2.96%2064.5%2C3.00%2065.0%2C3.04%2065.5%2C3.09%2066.0%2C3.15%2066.5%2C3.21%2067.0%2C3.27%2067.5%2C3.34%2068.0%2C3.41%2068.5%2C3.49%2069.0%2C3.57%2069.5%2C3.65%2070.0%2C3.74%2070.5%2C3.83%2071.0%2C3.92%2071.5%2C4.02%2072.0%2C4.12%2072.5%2C4.22%2073.0%2C4.33%2073.5%2C4.44%2074.0%2C4.55%2074.5%2C4.66%2075.0%2C4.78%2075.5%2C4.89%2076.0%2C5.01%2076.5%2C5.13%2077.0%2C5.25%2077.5%2C5.38%2078.0%2C5.50%2078.5%2C5.62%2079.0%2C5.75%2079.5%2C5.87%2080.0%2C6.00%2080%2C0%27%20fill%3D%27black%27/%3E%3C/svg%3E") left top / 80px 12px repeat-x; }
.mm-footer__wave::after { background: var(--mm-red); -webkit-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20width%3D%2780%27%20height%3D%2712%27%20viewBox%3D%270%200%2080%2012%27%3E%3Cpolyline%20points%3D%270.0%2C6.00%200.5%2C6.13%201.0%2C6.25%201.5%2C6.38%202.0%2C6.50%202.5%2C6.62%203.0%2C6.75%203.5%2C6.87%204.0%2C6.99%204.5%2C7.11%205.0%2C7.22%205.5%2C7.34%206.0%2C7.45%206.5%2C7.56%207.0%2C7.67%207.5%2C7.78%208.0%2C7.88%208.5%2C7.98%209.0%2C8.08%209.5%2C8.17%2010.0%2C8.26%2010.5%2C8.35%2011.0%2C8.43%2011.5%2C8.51%2012.0%2C8.59%2012.5%2C8.66%2013.0%2C8.73%2013.5%2C8.79%2014.0%2C8.85%2014.5%2C8.91%2015.0%2C8.96%2015.5%2C9.00%2016.0%2C9.04%2016.5%2C9.08%2017.0%2C9.11%2017.5%2C9.14%2018.0%2C9.16%2018.5%2C9.18%2019.0%2C9.19%2019.5%2C9.20%2020.0%2C9.20%2020.5%2C9.20%2021.0%2C9.19%2021.5%2C9.18%2022.0%2C9.16%2022.5%2C9.14%2023.0%2C9.11%2023.5%2C9.08%2024.0%2C9.04%2024.5%2C9.00%2025.0%2C8.96%2025.5%2C8.91%2026.0%2C8.85%2026.5%2C8.79%2027.0%2C8.73%2027.5%2C8.66%2028.0%2C8.59%2028.5%2C8.51%2029.0%2C8.43%2029.5%2C8.35%2030.0%2C8.26%2030.5%2C8.17%2031.0%2C8.08%2031.5%2C7.98%2032.0%2C7.88%2032.5%2C7.78%2033.0%2C7.67%2033.5%2C7.56%2034.0%2C7.45%2034.5%2C7.34%2035.0%2C7.22%2035.5%2C7.11%2036.0%2C6.99%2036.5%2C6.87%2037.0%2C6.75%2037.5%2C6.62%2038.0%2C6.50%2038.5%2C6.38%2039.0%2C6.25%2039.5%2C6.13%2040.0%2C6.00%2040.5%2C5.87%2041.0%2C5.75%2041.5%2C5.62%2042.0%2C5.50%2042.5%2C5.38%2043.0%2C5.25%2043.5%2C5.13%2044.0%2C5.01%2044.5%2C4.89%2045.0%2C4.78%2045.5%2C4.66%2046.0%2C4.55%2046.5%2C4.44%2047.0%2C4.33%2047.5%2C4.22%2048.0%2C4.12%2048.5%2C4.02%2049.0%2C3.92%2049.5%2C3.83%2050.0%2C3.74%2050.5%2C3.65%2051.0%2C3.57%2051.5%2C3.49%2052.0%2C3.41%2052.5%2C3.34%2053.0%2C3.27%2053.5%2C3.21%2054.0%2C3.15%2054.5%2C3.09%2055.0%2C3.04%2055.5%2C3.00%2056.0%2C2.96%2056.5%2C2.92%2057.0%2C2.89%2057.5%2C2.86%2058.0%2C2.84%2058.5%2C2.82%2059.0%2C2.81%2059.5%2C2.80%2060.0%2C2.80%2060.5%2C2.80%2061.0%2C2.81%2061.5%2C2.82%2062.0%2C2.84%2062.5%2C2.86%2063.0%2C2.89%2063.5%2C2.92%2064.0%2C2.96%2064.5%2C3.00%2065.0%2C3.04%2065.5%2C3.09%2066.0%2C3.15%2066.5%2C3.21%2067.0%2C3.27%2067.5%2C3.34%2068.0%2C3.41%2068.5%2C3.49%2069.0%2C3.57%2069.5%2C3.65%2070.0%2C3.74%2070.5%2C3.83%2071.0%2C3.92%2071.5%2C4.02%2072.0%2C4.12%2072.5%2C4.22%2073.0%2C4.33%2073.5%2C4.44%2074.0%2C4.55%2074.5%2C4.66%2075.0%2C4.78%2075.5%2C4.89%2076.0%2C5.01%2076.5%2C5.13%2077.0%2C5.25%2077.5%2C5.38%2078.0%2C5.50%2078.5%2C5.62%2079.0%2C5.75%2079.5%2C5.87%2080.0%2C6.00%27%20fill%3D%27none%27%20stroke%3D%27black%27%20stroke-width%3D%272%27/%3E%3C/svg%3E") left top / 80px 12px repeat-x; mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20width%3D%2780%27%20height%3D%2712%27%20viewBox%3D%270%200%2080%2012%27%3E%3Cpolyline%20points%3D%270.0%2C6.00%200.5%2C6.13%201.0%2C6.25%201.5%2C6.38%202.0%2C6.50%202.5%2C6.62%203.0%2C6.75%203.5%2C6.87%204.0%2C6.99%204.5%2C7.11%205.0%2C7.22%205.5%2C7.34%206.0%2C7.45%206.5%2C7.56%207.0%2C7.67%207.5%2C7.78%208.0%2C7.88%208.5%2C7.98%209.0%2C8.08%209.5%2C8.17%2010.0%2C8.26%2010.5%2C8.35%2011.0%2C8.43%2011.5%2C8.51%2012.0%2C8.59%2012.5%2C8.66%2013.0%2C8.73%2013.5%2C8.79%2014.0%2C8.85%2014.5%2C8.91%2015.0%2C8.96%2015.5%2C9.00%2016.0%2C9.04%2016.5%2C9.08%2017.0%2C9.11%2017.5%2C9.14%2018.0%2C9.16%2018.5%2C9.18%2019.0%2C9.19%2019.5%2C9.20%2020.0%2C9.20%2020.5%2C9.20%2021.0%2C9.19%2021.5%2C9.18%2022.0%2C9.16%2022.5%2C9.14%2023.0%2C9.11%2023.5%2C9.08%2024.0%2C9.04%2024.5%2C9.00%2025.0%2C8.96%2025.5%2C8.91%2026.0%2C8.85%2026.5%2C8.79%2027.0%2C8.73%2027.5%2C8.66%2028.0%2C8.59%2028.5%2C8.51%2029.0%2C8.43%2029.5%2C8.35%2030.0%2C8.26%2030.5%2C8.17%2031.0%2C8.08%2031.5%2C7.98%2032.0%2C7.88%2032.5%2C7.78%2033.0%2C7.67%2033.5%2C7.56%2034.0%2C7.45%2034.5%2C7.34%2035.0%2C7.22%2035.5%2C7.11%2036.0%2C6.99%2036.5%2C6.87%2037.0%2C6.75%2037.5%2C6.62%2038.0%2C6.50%2038.5%2C6.38%2039.0%2C6.25%2039.5%2C6.13%2040.0%2C6.00%2040.5%2C5.87%2041.0%2C5.75%2041.5%2C5.62%2042.0%2C5.50%2042.5%2C5.38%2043.0%2C5.25%2043.5%2C5.13%2044.0%2C5.01%2044.5%2C4.89%2045.0%2C4.78%2045.5%2C4.66%2046.0%2C4.55%2046.5%2C4.44%2047.0%2C4.33%2047.5%2C4.22%2048.0%2C4.12%2048.5%2C4.02%2049.0%2C3.92%2049.5%2C3.83%2050.0%2C3.74%2050.5%2C3.65%2051.0%2C3.57%2051.5%2C3.49%2052.0%2C3.41%2052.5%2C3.34%2053.0%2C3.27%2053.5%2C3.21%2054.0%2C3.15%2054.5%2C3.09%2055.0%2C3.04%2055.5%2C3.00%2056.0%2C2.96%2056.5%2C2.92%2057.0%2C2.89%2057.5%2C2.86%2058.0%2C2.84%2058.5%2C2.82%2059.0%2C2.81%2059.5%2C2.80%2060.0%2C2.80%2060.5%2C2.80%2061.0%2C2.81%2061.5%2C2.82%2062.0%2C2.84%2062.5%2C2.86%2063.0%2C2.89%2063.5%2C2.92%2064.0%2C2.96%2064.5%2C3.00%2065.0%2C3.04%2065.5%2C3.09%2066.0%2C3.15%2066.5%2C3.21%2067.0%2C3.27%2067.5%2C3.34%2068.0%2C3.41%2068.5%2C3.49%2069.0%2C3.57%2069.5%2C3.65%2070.0%2C3.74%2070.5%2C3.83%2071.0%2C3.92%2071.5%2C4.02%2072.0%2C4.12%2072.5%2C4.22%2073.0%2C4.33%2073.5%2C4.44%2074.0%2C4.55%2074.5%2C4.66%2075.0%2C4.78%2075.5%2C4.89%2076.0%2C5.01%2076.5%2C5.13%2077.0%2C5.25%2077.5%2C5.38%2078.0%2C5.50%2078.5%2C5.62%2079.0%2C5.75%2079.5%2C5.87%2080.0%2C6.00%27%20fill%3D%27none%27%20stroke%3D%27black%27%20stroke-width%3D%272%27/%3E%3C/svg%3E") left top / 80px 12px repeat-x; }
/* 1.8.3: straight underline on review sections */
.mm-section--quotes .prose h2::after, .mm-home-quotes .prose h2::after { height: 3px; bottom: 0; -webkit-mask: none; mask: none; }
/* 1.8.4: wave only as the footer divider, gentle like the business card; all heading underlines straight again */
.mm-body .prose h2::after { height: 3px; bottom: 0; -webkit-mask: none !important; mask: none !important; }
.mm-footer__wave { position: absolute; left: 0; top: 0; width: 100%; height: 16px; display: block; background: none; -webkit-mask: none; mask: none; }
.mm-footer__wave::before, .mm-footer__wave::after { content: none; }
.mm-footer__wave-fill { fill: var(--mm-seam, #fff); }
.mm-footer__wave-line { fill: none; stroke: var(--mm-red); stroke-width: 2px; }
/* 1.8.5: agent portraits show mid-torso up in a portrait frame */
.mm-split--portrait .mm-split__img { aspect-ratio: 4/5; max-width: 460px; width: 100%; justify-self: center; margin: 0 auto; }
.mm-split--portrait .mm-split__img img { aspect-ratio: auto; object-position: 50% 30%; }
.mm-split--portrait .mm-split__img:has(img[src*="team-marc-michelle"]) { aspect-ratio: 4/3; max-width: none; }
/* 1.8.6: no jump-link chips */
.mm-jump, .mm-section--jump { display: none !important; }
/* 1.8.7: header stays put on scroll; only the background changes (transparent to solid) */
.site-header.mm-header.mm-header--overlay, .site-header.mm-header.mm-header--overlay.is-scrolled { padding: 18px 0 !important; transition: background-color .35s ease, box-shadow .35s ease; }
.mm-header .header__inner, .mm-header.is-scrolled .header__inner { min-height: 0; }
.mm-logo__img, .mm-header.is-scrolled .mm-logo__img { height: 50px !important; transition: none; }
@media (max-width: 900px) { .mm-logo__img, .mm-header.is-scrolled .mm-logo__img { height: 42px !important; } }
@media (max-width: 400px) { .mm-logo__img, .mm-header.is-scrolled .mm-logo__img { height: 38px !important; } }
/* 1.8.8: comparison cards (prose-heavy tables) and tidier data tables */
/* data tables: aligned, even rhythm */
.mm-body .prose table { width: 100%; border-collapse: collapse; font-size: 15.5px; }
.mm-body .prose th, .mm-body .prose td { vertical-align: top; text-align: left; padding: 12px 14px; }
.mm-body .prose td:first-child { font-weight: 600; }
/* 1.8.9: no highlight under bold lead-ins; comparison grid breaks out without overflow */
.mm-body .prose strong, .mm-body .prose .is-in strong, .mm-body .prose strong.is-in { background-image: none !important; background-size: 0 0 !important; }
/* 1.9.0: IDX search framed as a centered card */
.mm-idx--card { max-width: 980px; margin: 30px auto 0; background: #fff; border: 1px solid var(--color-border); box-shadow: 0 12px 34px rgba(0,0,0,.06); overflow: hidden; }
.mm-idx__bar { display: flex; justify-content: space-between; align-items: center; gap: 16px; flex-wrap: wrap; padding: 16px 24px; background: var(--mm-black); border-top: 3px solid var(--mm-accent); }
.mm-idx__title { font-family: var(--font-heading); font-size: 20px; color: #fff; }
.mm-body .prose .mm-idx__call { color: rgba(255,255,255,.85); font-size: 15px; text-decoration: none; }
.mm-body .prose .mm-idx__call:hover { color: #fff; }
.mm-idx--card .mm-idx__panel { padding: 18px 20px 0; }
.mm-idx--card iframe { min-height: 1150px !important; display: block; }
.prose .mm-idx--card { width: min(980px, calc(100vw - 32px)); margin-left: calc(50% - min(490px, 50vw - 16px)); }
.mm-idx--card { max-width: 860px; }
.prose .mm-idx--card { width: min(860px, calc(100vw - 32px)); margin-left: calc(50% - min(430px, 50vw - 16px)); }
/* 1.9.2: contact page, agent cards + form split */
.mm-contact-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; max-width: 1080px; margin: 0 auto; }
.mm-contact-card { background: #fff; border: 1px solid var(--color-border); border-top: 3px solid var(--mm-accent); padding: 32px 28px 26px; text-align: center; display: flex; flex-direction: column; align-items: center; }
.mm-contact-card__photo { display: block; width: 132px; height: 132px; border-radius: 50%; overflow: hidden; margin-bottom: 18px; box-shadow: 0 0 0 4px #fff, 0 0 0 5px var(--color-border); }
.mm-contact-card__photo img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 18%; }
.mm-body .mm-contact-card h3 { font-size: 23px; margin: 0 0 4px; }
.mm-body .mm-contact-card h3 a, .mm-body .mm-contact-card a { color: var(--color-text); text-decoration: none; }
.mm-body .mm-contact-card a:hover { color: var(--mm-accent); }
.mm-contact-card p { margin: 0 0 6px; font-size: 15.5px; }
.mm-contact-card__lic { font-size: 12px !important; letter-spacing: .08em; text-transform: uppercase; color: var(--color-text-muted); margin-bottom: 16px !important; }
.mm-body .mm-contact-card a.mm-contact-card__tel { font-family: var(--font-heading); font-size: 22px; color: var(--mm-accent); }
.mm-contact-card--office { justify-content: center; background: var(--mm-black); border-color: var(--mm-black); border-top-color: var(--mm-accent); }
.mm-body .mm-contact-card--office h3 { color: #fff; margin-bottom: 14px; }
.mm-contact-card__addr { color: #fff; font-size: 17px !important; line-height: 1.6; margin-bottom: 16px !important; }
.mm-contact-card--office p { color: rgba(255,255,255,.75); }
.mm-body .mm-contact-form { background: var(--color-bg-warm) !important; }
.mm-contact-form__grid { display: grid; grid-template-columns: 5fr 7fr; gap: 56px; align-items: start; max-width: 1120px; margin: 0 auto; }
.mm-contact-form__intro { position: sticky; top: 120px; }
.mm-contact-form__box .mm-form-wrap { margin: 0; }
@media (max-width: 900px) { .mm-contact-cards { grid-template-columns: 1fr; max-width: 460px; } .mm-contact-form__grid { grid-template-columns: 1fr; gap: 28px; } .mm-contact-form__intro { position: static; } }


/* 1.9.3: header font (Jost), comparison rows inside the text column, pool rules split */
.mm-header .nav-list > li > a, .site-header--solid.mm-header .nav-list > li > a { font-family: 'Jost', var(--font-body); font-size: 13px; font-weight: 500; letter-spacing: .14em; text-transform: uppercase; }
.mm-header .nav-list .sub-menu a { font-family: 'Jost', var(--font-body); font-size: 15px; font-weight: 400; letter-spacing: .01em; text-transform: none; }
.mm-header .header__phone, .site-header--solid.mm-header .header__phone { font-family: 'Jost', var(--font-body); font-weight: 500; letter-spacing: .05em; font-size: 15px; }
.mm-header .mm-phone__label { font-weight: 400; letter-spacing: .02em; }
.mm-header .header__actions .btn-sm { font-family: 'Jost', var(--font-body); font-weight: 500; letter-spacing: .16em; }
.mobile-menu__list a, .mobile-menu__phone { font-family: 'Jost', var(--font-body); }
@media (max-width: 1320px) { .mm-header .nav-list > li > a { font-size: 12px; letter-spacing: .1em; } .mm-header .nav-list { gap: 18px; } }

.prose .mm-compare { display: block; width: auto; margin: 30px 0 38px; border-top: 2px solid var(--color-text-primary); }
.prose .mm-compare__card { display: grid; grid-template-columns: 190px 1fr; gap: 10px 32px; padding: 24px 0; border-bottom: 1px solid var(--color-border); }
.prose .mm-compare__card h3 { font-size: 21px; line-height: 1.3; margin: 0; text-wrap: balance; }
.prose .mm-compare__card h3::before { content: ""; display: block; width: 26px; height: 2px; background: var(--mm-accent); margin-bottom: 12px; }
.prose .mm-compare__card h3 a { text-decoration: none; color: var(--color-text-primary); }
.prose .mm-compare__card h3 a:hover { color: var(--mm-accent); }
.prose .mm-compare__card dl { margin: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 16px 32px; }
.prose .mm-compare__card dl > div { margin: 0; padding: 0; border: 0; }
.prose .mm-compare__card dt { font-size: 11.5px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--color-text-muted); line-height: 1.45; margin: 0 0 5px; }
.prose .mm-compare__card dd { margin: 0; font-size: 16px; line-height: 1.6; color: var(--color-text-primary); }
@media (max-width: 700px) { .prose .mm-compare__card { grid-template-columns: 1fr; gap: 14px; padding: 22px 0; } .prose .mm-compare__card dl { grid-template-columns: 1fr; gap: 14px; } }

.mm-rules { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 64px; align-items: start; }
.mm-rules__head h2 { margin-top: 0; }
.mm-rules__list { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--color-border); }
.mm-rule { display: grid; grid-template-columns: 52px 1fr; gap: 22px; padding: 26px 0; border-bottom: 1px solid var(--color-border); }
.mm-rule__icon { width: 52px; height: 52px; border-radius: 50%; background: #fff; display: grid; place-items: center; color: var(--mm-accent); box-shadow: 0 0 0 1px var(--color-border); }
.mm-rule__icon svg { width: 26px; height: 26px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.mm-rule h3 { font-size: 21px; margin: 2px 0 8px; }
.mm-rule p { margin: 0; font-size: 16.5px; line-height: 1.65; color: var(--color-text-muted); }
@media (max-width: 900px) { .mm-rules { grid-template-columns: 1fr; gap: 20px; } .mm-rules__head { text-align: left; } }
@media (max-width: 480px) { .mm-rule { grid-template-columns: 44px 1fr; gap: 16px; } .mm-rule__icon { width: 44px; height: 44px; } }
/* 1.9.3b: contact "not ready" link cards */
.mm-cta--links .container { max-width: 1040px; }
.mm-cta-links { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin: 34px auto 30px; text-align: left; }
.mm-cta-link { display: block; background: #fff; border: 1px solid var(--color-border); border-top: 3px solid var(--mm-accent); padding: 24px 24px 22px; text-decoration: none; color: var(--color-text-primary); transition: transform .2s ease, box-shadow .2s ease; }
.mm-cta-link:hover { transform: translateY(-3px); box-shadow: 0 14px 30px rgba(0,0,0,.08); }
.mm-cta-link__title { display: block; font-family: var(--font-heading); font-size: 21px; line-height: 1.25; margin-bottom: 8px; color: var(--color-text-primary); }
.mm-cta-link__desc { display: block; font-size: 15.5px; line-height: 1.55; color: var(--color-text-muted); }
.mm-cta--links .mm-cta__tail p { font-size: 17px; margin-bottom: 0; }
@media (max-width: 860px) { .mm-cta-links { grid-template-columns: 1fr; max-width: 520px; } }
.mm-header .header__logo { flex-shrink: 0; }
.mm-logo__img { width: auto; max-width: none; flex-shrink: 0; }
.mm-header .nav-list > li > a, .site-header--solid.mm-header .nav-list > li > a { font-size: 12.5px; letter-spacing: .11em; }
.mm-header .nav-list { gap: 20px; }
@media (max-width: 1320px) { .mm-header .nav-list > li > a { font-size: 12px; letter-spacing: .08em; } .mm-header .nav-list { gap: 16px; } }
.mm-rule__icon svg { width: 28px; height: 28px; stroke-width: 1.5; }
.mm-rules { grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); }
.mm-rules__head h2 { font-size: 38px; }
@media (max-width: 900px) { .mm-rules { grid-template-columns: 1fr; } .mm-rules__head h2 { font-size: 32px; } }

/* 1.9.3c: long "Meet Marc & Michelle" text, keep the photo alongside it */
@media (min-width: 901px) { .mm-home-about .mm-split { align-items: start; } .mm-home-about .mm-split__img { position: sticky; top: 120px; } }

/* 1.9.4: Wynn Realty Group brokerage mark (rebuilt from the business cards) in the footer */
.mm-footer__brokered { display: block; font-family: 'Jost', var(--font-body); font-size: 11px; letter-spacing: .22em; text-transform: uppercase; color: rgba(255,255,255,.6); margin-bottom: 10px; }
.mm-footer__brokerage-logo { display: block; height: 52px; max-height: none; width: auto; }
/* 1.9.4: keep the Jost nav, phone and Contact inside the viewport on laptop widths */
@media (max-width: 1439px) { .mm-header .mm-phone__label { display: none; } }
@media (max-width: 1299px) { .mm-header .header__phone { display: none; } }
@media (max-width: 1199px) { .mm-header .header__nav { display: none; } .mm-header .header__hamburger { display: flex; } .mm-header .header__actions { margin-left: auto; } }
