/* ==========================================================================
   MotionMind brand stylesheet
   Odoo-ready: plain CSS + CSS variables, Bootstrap 5 grid assumed available
   (Odoo Website ships Bootstrap 5; the standalone export links the CDN build)
   ========================================================================== */

:root {
  --mm-navy: #2b3a5c;
  --mm-navy-deep: #1e2942;
  --mm-gold: #e8b04b;
  --mm-gold-soft: #f7dfae;
  --mm-sky: #cfe0f2;
  --mm-cream: #fdfaf3;
  --mm-card: #ffffff;
  --mm-text: #2b3348;
  --mm-muted: #6b7590;
  --mm-border: #e8e2d6;
  --mm-radius: 14px;
  --mm-radius-lg: 28px;
  --mm-shadow: 0 18px 45px -22px rgba(43, 58, 92, 0.35);
  --mm-font-display: "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
  --mm-font-body: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;
}

body.mm-body {
  background-color: var(--mm-cream);
  color: var(--mm-text);
  font-family: var(--mm-font-body);
  margin: 0;
  -webkit-font-smoothing: antialiased;
}

.mm-body h1, .mm-body h2, .mm-body h3, .mm-body h4 {
  font-family: var(--mm-font-display);
  letter-spacing: 0;
  color: var(--mm-navy);
  font-weight: 700;
}

.mm-body a { color: inherit; text-decoration: none; }
.mm-body img { max-width: 100%; height: auto; }
.mm-body p { color: var(--mm-muted); }

/* ---------- Layout primitives ---------- */
.mm-section { padding: 72px 0; position: relative; }
.mm-section-tight { padding: 48px 0; }
.mm-section-alt { background: #faf6ec; border-top: 1px solid var(--mm-border); border-bottom: 1px solid var(--mm-border); }
.mm-narrow { max-width: 760px; }
.mm-lead { font-size: 1.125rem; line-height: 1.7; }
.mm-muted { color: var(--mm-muted); }
.mm-gold-text { color: var(--mm-gold); }

.mm-eyebrow {
  display: inline-flex; align-items: center; gap: 8px;
  border: 1px solid rgba(232, 176, 75, 0.45);
  background: rgba(232, 176, 75, 0.12);
  color: var(--mm-navy);
  border-radius: 999px; padding: 5px 14px;
  font-size: 0.72rem; font-weight: 600; letter-spacing: 0.09em; text-transform: uppercase;
}
.mm-eyebrow::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: var(--mm-gold); }
.mm-eyebrow-light { border-color: rgba(232,176,75,.5); background: rgba(232,176,75,.18); color: var(--mm-gold); }

h1.mm-title { font-size: clamp(2.3rem, 5vw, 3.9rem); line-height: 1.06; }
h2.mm-title { font-size: clamp(1.9rem, 3.6vw, 2.9rem); line-height: 1.14; }
h3.mm-title { font-size: 1.3rem; }

/* ---------- Buttons ---------- */
.mm-btn {
  display: inline-flex; align-items: center; gap: 8px;
  border-radius: 999px; padding: 13px 26px;
  font-weight: 600; font-size: 0.95rem; border: 1px solid transparent;
  transition: transform .18s ease, box-shadow .18s ease, background-color .18s ease;
  cursor: pointer;
}
.mm-btn:hover { transform: translateY(-2px); box-shadow: var(--mm-shadow); }
.mm-btn { white-space: nowrap; }
.mm-btn.mm-btn-primary { background: var(--mm-navy); color: #fff; }
.mm-btn.mm-btn-gold { background: var(--mm-gold); color: var(--mm-navy-deep); }
.mm-btn.mm-btn-ghost { background: #fff; color: var(--mm-navy); border-color: rgba(43,58,92,.18); }
.mm-btn.mm-btn-outline-light { background: transparent; color: #fff; border-color: rgba(255,255,255,.35); }
.mm-btn-arrow::after { content: "\2192"; font-size: 1.05em; }

/* ---------- Cards ---------- */
.mm-card {
  background: var(--mm-card);
  border: 1px solid var(--mm-border);
  border-radius: var(--mm-radius-lg);
  padding: 30px;
  height: 100%;
  transition: transform .2s ease, box-shadow .2s ease;
}
.mm-card-hover:hover { transform: translateY(-4px); box-shadow: var(--mm-shadow); }
.mm-card-plain { border-radius: var(--mm-radius); padding: 22px; }
.mm-icon {
  width: 48px; height: 48px; border-radius: 16px;
  display: inline-flex; align-items: center; justify-content: center;
  background: linear-gradient(135deg, var(--mm-navy) 0%, var(--mm-navy-deep) 100%);
  color: #fff; font-size: 1.1rem;
}
.mm-icon-gold { background: linear-gradient(135deg, #f0c46b 0%, var(--mm-gold) 100%); color: var(--mm-navy-deep); }
.mm-step-num {
  width: 40px; height: 40px; border-radius: 50%;
  background: linear-gradient(135deg, #f0c46b 0%, var(--mm-gold) 100%);
  color: var(--mm-navy-deep); font-weight: 700;
  display: inline-flex; align-items: center; justify-content: center;
}
.mm-tag {
  display: inline-block; border-radius: 999px; padding: 4px 12px;
  background: rgba(232,176,75,.18); color: var(--mm-navy);
  font-size: .72rem; font-weight: 600; letter-spacing: .05em;
}
.mm-list { list-style: none; padding: 0; margin: 0; }
.mm-list li { position: relative; padding-left: 26px; margin-bottom: 10px; color: var(--mm-muted); }
.mm-list li::before {
  content: "\2713"; position: absolute; left: 0; top: 0;
  color: var(--mm-gold); font-weight: 700;
}

/* ---------- Dark panels ---------- */
.mm-panel-navy {
  background: linear-gradient(135deg, var(--mm-navy) 0%, var(--mm-navy-deep) 100%);
  color: #fff; border-radius: var(--mm-radius-lg);
  padding: 48px; position: relative; overflow: hidden;
}
.mm-panel-navy h2, .mm-panel-navy h3, .mm-panel-navy h4 { color: #fff; }
.mm-panel-navy p { color: rgba(255,255,255,.75); }
.mm-panel-warm {
  background: linear-gradient(180deg, #fdfaf3 0%, #f4e9d3 100%);
  border: 1px solid var(--mm-border);
  border-radius: var(--mm-radius-lg); padding: 48px;
}
.mm-inner-tile {
  background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.2);
  border-radius: 18px; padding: 18px; color: #fff;
}

/* ---------- Decorative (pure CSS, no JS libraries) ---------- */
.mm-grid-pattern {
  position: absolute; inset: 0; pointer-events: none; opacity: .5;
  background-image:
    linear-gradient(rgba(43,58,92,.06) 1px, transparent 1px),
    linear-gradient(90deg, rgba(43,58,92,.06) 1px, transparent 1px);
  background-size: 36px 36px;
}
.mm-blob { position: absolute; border-radius: 50%; filter: blur(70px); pointer-events: none; }
.mm-blob-gold { background: rgba(232,176,75,.38); }
.mm-blob-sky { background: rgba(160,200,240,.45); }
.mm-blob-a { width: 460px; height: 460px; top: -120px; right: -140px; }
.mm-blob-b { width: 380px; height: 380px; bottom: -140px; left: -120px; }
.mm-pulse { animation: mm-pulse 4s ease-in-out infinite; }
@keyframes mm-pulse { 0%,100% { opacity:.55; transform: scale(1);} 50% { opacity:1; transform: scale(1.06);} }

/* Hero + page headers */
.mm-hero { position: relative; overflow: hidden; padding: 96px 0 88px; text-align: center; }
.mm-hero .mm-hero-inner { position: relative; max-width: 880px; margin: 0 auto; }
.mm-hero-logo { width: 96px; height: 96px; object-fit: contain; margin-bottom: 22px; border-radius: 22px; background: #fff; padding: 6px; box-shadow: 0 16px 40px -22px rgba(43,58,92,.5); }
.mm-hero p.mm-lead { font-size: 1.2rem; max-width: 660px; margin: 22px auto 0; }
.mm-cta-group { display: flex; flex-wrap: wrap; gap: 12px; justify-content: center; margin-top: 32px; }
.mm-pagehead { position: relative; overflow: hidden; padding: 78px 0 66px; border-bottom: 1px solid var(--mm-border); }
.mm-pagehead .container { position: relative; }

/* Orb: CSS-only ambient AI visual */
.mm-orb {
  width: 100%; max-width: 380px; aspect-ratio: 1; margin: 0 auto; border-radius: 50%;
  background: radial-gradient(circle at 32% 28%, #fff 0%, var(--mm-sky) 32%, var(--mm-gold-soft) 62%, var(--mm-gold) 100%);
  box-shadow: 0 30px 80px -30px rgba(232,176,75,.75);
  animation: mm-float 7s ease-in-out infinite;
}
@keyframes mm-float { 0%,100% { transform: translateY(0);} 50% { transform: translateY(-14px);} }

/* Trust bar */
.mm-trustbar { border-top: 1px solid var(--mm-border); border-bottom: 1px solid var(--mm-border); background: rgba(255,255,255,.6); padding: 20px 0; }
.mm-trustbar span { font-family: var(--mm-font-display); font-weight: 600; color: rgba(43,58,92,.72); }

/* ---------- Header / nav ---------- */
.mm-header { position: sticky; top: 0; z-index: 1000; background: rgba(253,250,243,.92); backdrop-filter: blur(10px); border-bottom: 1px solid var(--mm-border); }
.mm-header .container.mm-header-inner {
  max-width: 1140px;
}
.mm-header-inner { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-height: 64px; flex-wrap: nowrap; }
.mm-brand { display: inline-flex; align-items: center; gap: 8px; font-family: var(--mm-font-display); font-weight: 700; font-size: 1.05rem; color: var(--mm-navy); flex-shrink: 0; }
.mm-brand img { width: 32px; height: 32px; object-fit: contain; }
.mm-nav {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  flex-wrap: nowrap;
  flex: 1 1 auto;
  min-width: 0;
  overflow-x: auto;
  scrollbar-width: none;
}
.mm-nav::-webkit-scrollbar { display: none; }
.mm-nav a {
  padding: 5px 5px;
  border-radius: 8px;
  font-size: .78rem;
  white-space: nowrap;
  color: rgba(43,58,92,.78);
  flex-shrink: 0;
}
.mm-nav a:hover { background: rgba(232,176,75,.16); color: var(--mm-navy); }
.mm-nav a.active { color: var(--mm-navy); font-weight: 600; }
.mm-header-cta { flex-shrink: 0; }
.mm-lang { display: inline-flex; gap: 6px; align-items: center; font-size: .8rem; color: var(--mm-muted); }
.mm-lang a.active { color: var(--mm-navy); font-weight: 700; }
.mm-burger { display: none; background: none; border: 0; font-size: 1.4rem; color: var(--mm-navy); padding: 6px 10px; }
@media (max-width: 1399.98px) {
  .mm-header-cta .mm-btn { display: none; }
  .mm-nav a { padding: 5px 4px; font-size: .74rem; }
}
@media (max-width: 991.98px) {
  .mm-burger { display: inline-block; }
  .mm-nav { display: none; width: 100%; flex-direction: column; align-items: flex-start; padding-bottom: 12px; flex-wrap: wrap; overflow-x: visible; }
  .mm-nav.is-open { display: flex; }
  .mm-header-inner { flex-wrap: wrap; }
  .mm-header-cta .mm-lang { display: none; }
}

/* ---------- Footer ---------- */
.mm-footer { background: var(--mm-navy); color: rgba(255,255,255,.75); margin-top: 80px; padding: 56px 0 0; }
.mm-footer h4 { color: #fff; font-size: .95rem; margin-bottom: 14px; }
.mm-footer a:hover { color: var(--mm-gold); }
.mm-footer .mm-footer-bottom { border-top: 1px solid rgba(255,255,255,.12); margin-top: 40px; padding: 18px 0; font-size: .8rem; color: rgba(255,255,255,.6); }
.mm-footer img { width: 44px; background: #fff; border-radius: 12px; padding: 4px; }
.mm-footer-list { list-style: none; padding: 0; margin: 0; }
.mm-footer-list li { margin-bottom: 9px; }

/* ---------- Forms ---------- */
.mm-field { display: block; margin-bottom: 16px; }
.mm-field label { display: block; font-size: .875rem; font-weight: 600; color: var(--mm-navy); margin-bottom: 6px; }
.mm-field input, .mm-field textarea, .mm-field select {
  width: 100%; border: 1px solid var(--mm-border); background: #fff;
  border-radius: 12px; padding: 12px 15px; font: inherit; font-size: .95rem; color: var(--mm-text);
}
.mm-field input:focus, .mm-field textarea:focus, .mm-field select:focus { outline: 2px solid rgba(232,176,75,.55); outline-offset: 1px; }

/* ---------- Subtle scroll reveal (progressive enhancement) ---------- */
.mm-reveal { opacity: 1; transform: none; }
.mm-js .mm-reveal { opacity: 0; transform: translateY(18px); transition: opacity .6s ease, transform .6s ease; }
.mm-js .mm-reveal.is-visible { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) {
  .mm-js .mm-reveal, .mm-orb, .mm-pulse { transition: none !important; animation: none !important; opacity: 1 !important; transform: none !important; }
}


/* ---------- Odoo integration: full-width centered layout + hide chrome ---------- */
body.mm-body,
body:has(.mm-header) {
  background-color: var(--mm-cream) !important;
  overflow-x: hidden;
}

body.mm-body #wrapwrap,
body.mm-body #wrap,
body.mm-body .mm-wrap,
body:has(.mm-header) #wrapwrap,
body:has(.mm-header) #wrap,
body:has(.mm-header) .mm-wrap {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: var(--mm-cream) !important;
  float: none !important;
  position: relative !important;
  left: auto !important;
  right: auto !important;
}

/* Ensure Bootstrap-like centering even if theme CSS fights us */
body.mm-body .container,
body:has(.mm-header) .container {
  width: 100% !important;
  max-width: 1140px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 16px !important;
  padding-right: 16px !important;
  box-sizing: border-box;
}
body.mm-body .row,
body:has(.mm-header) .row {
  display: flex !important;
  flex-wrap: wrap !important;
  margin-left: -12px !important;
  margin-right: -12px !important;
}
body.mm-body [class*="col-"],
body:has(.mm-header) [class*="col-"] {
  padding-left: 12px !important;
  padding-right: 12px !important;
  box-sizing: border-box;
}
@media (min-width: 768px) {
  body.mm-body .col-md-4,
  body:has(.mm-header) .col-md-4 { flex: 0 0 33.333333%; max-width: 33.333333%; }
  body.mm-body .col-md-6,
  body:has(.mm-header) .col-md-6 { flex: 0 0 50%; max-width: 50%; }
  body.mm-body .col-md-3,
  body:has(.mm-header) .col-md-3 { flex: 0 0 25%; max-width: 25%; }
}
@media (min-width: 992px) {
  body.mm-body .col-lg-3,
  body:has(.mm-header) .col-lg-3 { flex: 0 0 25%; max-width: 25%; }
  body.mm-body .col-lg-4,
  body:has(.mm-header) .col-lg-4 { flex: 0 0 33.333333%; max-width: 33.333333%; }
  body.mm-body .col-lg-5,
  body:has(.mm-header) .col-lg-5 { flex: 0 0 41.666667%; max-width: 41.666667%; }
  body.mm-body .col-lg-6,
  body:has(.mm-header) .col-lg-6 { flex: 0 0 50%; max-width: 50%; }
  body.mm-body .col-lg-7,
  body:has(.mm-header) .col-lg-7 { flex: 0 0 58.333333%; max-width: 58.333333%; }
  body.mm-body .col-lg-8,
  body:has(.mm-header) .col-lg-8 { flex: 0 0 66.666667%; max-width: 66.666667%; }
}

/* Hide Odoo website chrome + editor/backend floating bars + default search UI.
   Never target .mm-header / .mm-footer (our brand chrome lives inside #wrap). */
body.mm-body #wrapwrap > header#top,
body.mm-body header#top.o_header_standard,
body.mm-body header#top.mm-hide-odoo-chrome,
body.mm-body .o_header_standard,
body.mm-body .o_header_hide_on_scroll_wrap,
body.mm-body footer#bottom.o_footer,
body.mm-body footer#bottom.mm-hide-odoo-chrome,
body.mm-body footer.o_footer,
body.mm-body #footer,
body.mm-body .o_footer_copyright,
body.mm-body .o_connected_user_cookie_notice,
body.mm-body .o_livechat_button,
body.mm-body .o_searchbar_form,
body.mm-body .s_searchbar_input,
body.mm-body #o_search_modal,
body.mm-body #o_shared_blocks,
body:has(.mm-header) #wrapwrap > header#top,
body:has(.mm-header) header#top.o_header_standard,
body:has(.mm-header) footer#bottom,
body:has(.mm-header) footer.o_footer,
body:has(.mm-header) .o_footer_copyright,
body:has(.mm-header) .o_searchbar_form,
body:has(.mm-header) .s_searchbar_input,
body:has(.mm-header) #o_search_modal {
  display: none !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  overflow: hidden !important;
  visibility: hidden !important;
  pointer-events: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

/* Kill leftover header spacer / affixed clones that cause the white top strip */
body.mm-body #wrapwrap > main {
  padding-top: 0 !important;
  margin-top: 0 !important;
}
body.mm-body .o_top_fixed_element,
body.mm-body .o_header_affixed {
  display: none !important;
}
header.mm-header,
footer.mm-footer {
  display: block !important;
  visibility: visible !important;
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
  pointer-events: auto !important;
}

/* Keep Odoo backend/editor entry points visible for logged-in staff */
body.mm-body .o_frontend_to_backend_nav,
body:has(.mm-header) .o_frontend_to_backend_nav {
  display: flex !important;
  visibility: visible !important;
  pointer-events: auto !important;
  z-index: 2000 !important;
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
  opacity: 1 !important;
}
body.mm-body.editor_enable .mm-header,
body.mm-body.o_connected_user .o_frontend_to_backend_nav {
  z-index: 2000;
}

.mm-header .container,
.mm-footer .container,
.mm-hero .container,
.mm-section .container,
.mm-pagehead .container,
.mm-trustbar .container {
  max-width: 1140px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Ecosystem website: semantic bands, editorial imagery and lightweight CSS. */
:root {--mm-hub-bg:#eef4ec;--mm-hub-ink:#3c5d49;--mm-flow-bg:#edf3f7;--mm-hero-wash:rgba(253,250,243,.82);--mm-os-tile:rgba(255,255,255,.07);--mm-ecosystem-line:rgba(255,255,255,.16)}
.mm-ecosystem {letter-spacing:0}.mm-ecosystem h1.mm-title{font-size:3.4rem;line-height:1.14;max-width:950px}.mm-ecosystem h2.mm-title{font-size:2.6rem;line-height:1.18}.mm-copy{max-width:720px}.mm-kicker{display:block;font-size:.72rem;font-weight:700;color:var(--mm-muted);text-transform:uppercase;line-height:1.5}.mm-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.mm-ecosystem .mm-btn{border-radius:6px;white-space:normal;min-height:48px}.mm-ecosystem p{line-height:1.75}.mm-header{background:var(--mm-card)}.mm-header-inner{min-height:78px}.mm-brand{font-size:1.2rem}.mm-brand img{width:44px;height:44px}.mm-header .mm-nav{gap:14px}.mm-header .mm-nav a{font-size:.82rem;padding:8px 0;border-radius:0}.mm-header .mm-nav a.active{border-bottom:2px solid var(--mm-gold)}
.mm-ecosystem-hero{position:relative;min-height:570px;overflow:hidden;display:flex;align-items:center;background:var(--mm-cream)}.mm-ecosystem-cover{position:absolute;inset:0;width:100%;height:100%!important;object-fit:cover;object-position:center}.mm-hero-copy{position:relative;width:650px;max-width:100%;padding:48px 0 58px}.mm-hero-copy h1{font-size:4.1rem;line-height:1.12;margin:18px 0}.mm-hero-copy h2{font-size:2.1rem;line-height:1.35}.mm-hero-copy p{font-size:1.1rem;color:var(--mm-navy);margin:20px 0 26px}.mm-hero-copy .mm-kicker{color:var(--mm-navy)}
.mm-paths{padding:38px 0 0;background:var(--mm-card)}.mm-paths-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-bottom:24px}.mm-paths-heading h2{font-size:1.6rem;margin:0}.mm-path{padding:40px!important;min-height:350px}.mm-path h2{font-size:2.1rem;margin:16px 0}.mm-path .mm-lead{font-size:1.55rem;line-height:1.45;margin-bottom:18px}.mm-path-number{font-size:.68rem;font-weight:600}.mm-path-hub{background:var(--mm-hub-bg);color:var(--mm-hub-ink)}.mm-path-hub h2,.mm-path-hub p{color:var(--mm-hub-ink)}.mm-path-os{background:var(--mm-navy-deep);color:var(--mm-gold)}.mm-path-os h2,.mm-path-os .mm-lead{color:var(--mm-white)}.mm-path-os p{color:color-mix(in srgb,var(--mm-white) 75%,transparent)}.mm-path-os .mm-btn{margin-top:29px}
.mm-hub-band{background:var(--mm-hub-bg)}.mm-hub-band .mm-kicker{color:var(--mm-hub-ink)}.mm-flow-band{background:var(--mm-flow-bg)}.mm-os-band{background:var(--mm-card)}.mm-editorial-image{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:6px}.mm-statement{border-left:3px solid var(--mm-gold);padding-left:22px;color:var(--mm-navy)!important;font-weight:500;margin-top:28px}.mm-invitation{max-width:820px}.mm-invitation .mm-btn{margin-top:12px}.mm-subnav{border-bottom:1px solid var(--mm-border);background:var(--mm-card)}.mm-subnav .container{display:flex;gap:26px;align-items:center;min-height:60px;flex-wrap:wrap;padding-top:12px;padding-bottom:12px}.mm-subnav strong{margin-right:auto;color:var(--mm-navy);font-size:.88rem}.mm-subnav a{font-size:.83rem;padding:7px 0;color:var(--mm-muted)}.mm-subnav a.active{color:var(--mm-navy);border-bottom:2px solid var(--mm-gold)}.mm-breadcrumb{font-size:.8rem;color:var(--mm-muted)!important}.mm-breadcrumb span{color:var(--mm-navy)}.mm-principle{border-top:2px solid var(--mm-gold);padding-top:22px;height:100%}.mm-principle h3{font-size:1.2rem;line-height:1.4}.mm-principle p{font-size:.94rem;margin-top:14px}.mm-topics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-top:30px}.mm-topics span{padding:20px 14px 20px 0;border-bottom:1px solid var(--mm-border);font-family:var(--mm-font-display);font-weight:600;color:var(--mm-hub-ink)}.mm-unavailable{display:inline-block;padding:14px 0;color:var(--mm-muted);font-size:.9rem;border-bottom:1px solid var(--mm-border)}.mm-plan-price{font-family:var(--mm-font-display);font-size:3rem;color:var(--mm-navy)!important;font-weight:700;margin:20px 0 8px}.mm-plan-price span{font-family:var(--mm-font-body);font-size:1rem;font-weight:400}.mm-text-link{color:var(--mm-navy);font-weight:600;border-bottom:1px solid var(--mm-gold);padding-bottom:4px}.mm-contribution-form{max-width:740px}.mm-contribution-form .mm-field input,.mm-contribution-form .mm-field select,.mm-contribution-form .mm-field textarea{border-radius:6px}.mm-team-person{height:100%;padding:0 0 28px;border-bottom:1px solid var(--mm-border)}.mm-team-monogram{height:220px;background:var(--mm-hub-bg);color:var(--mm-hub-ink);display:flex;align-items:center;justify-content:center;font-size:4rem;font-family:var(--mm-font-display);margin-bottom:24px}.mm-team-person h2{font-size:1.5rem}.mm-team-person p{font-size:.95rem}.mm-footer{margin-top:0}
.mm-workspace{background:var(--mm-navy-deep);color:var(--mm-white);border:1px solid var(--mm-ecosystem-line);border-radius:8px;overflow:hidden;min-height:340px}.mm-workspace-bar{padding:18px 20px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--mm-ecosystem-line);font-size:.85rem;font-weight:600}.mm-workspace-status{font-size:.65rem;color:var(--mm-gold)}.mm-workspace-body{display:flex;min-height:290px}.mm-workspace-body aside{width:46px;flex-shrink:0;padding-top:24px;display:flex;align-items:center;flex-direction:column;gap:26px;border-right:1px solid var(--mm-ecosystem-line);color:var(--mm-gold)}.mm-workspace-main{padding:28px 24px;width:100%;min-width:0}.mm-workspace-main h3{color:var(--mm-white);font-size:1.35rem;line-height:1.4;margin:12px 0 20px}.mm-workspace .mm-kicker{color:var(--mm-gold);font-size:.6rem}.mm-workspace-search{background:var(--mm-os-tile);padding:12px;border:1px solid var(--mm-ecosystem-line);border-radius:4px;font-size:.72rem;color:var(--mm-sky)}.mm-workspace-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:16px}.mm-workspace-tiles>div{background:var(--mm-os-tile);padding:12px 10px;border-radius:4px;color:var(--mm-gold)}.mm-workspace-tiles strong{display:block;color:var(--mm-white);font-size:.61rem;line-height:1.5;margin-top:12px}.mm-workspace-line{height:5px;background:var(--mm-ecosystem-line);width:85%;margin-top:22px}.mm-workspace-line.short{width:55%;margin-top:10px}
@media(max-width:1100px){.mm-header .mm-nav{gap:10px}.mm-header .mm-nav a{font-size:.76rem}.mm-hero-copy{width:570px}.mm-hero-copy h1{font-size:3.8rem}.mm-hero-copy h2{font-size:1.9rem}}
@media(max-width:767px){.mm-ecosystem-hero{min-height:560px}.mm-ecosystem-cover{object-position:62% center;opacity:.58}.mm-hero-copy{padding:48px 0}.mm-hero-copy h1{font-size:3.1rem}.mm-hero-copy h2{font-size:1.55rem}.mm-hero-copy p{font-size:1rem}.mm-paths-heading{display:block}.mm-paths-heading h2{margin-top:12px}.mm-path{padding:32px 24px!important;min-height:0}.mm-path-os .mm-btn{margin-top:0}.mm-path h2{font-size:1.9rem}.mm-ecosystem h1.mm-title{font-size:2.3rem}.mm-ecosystem h2.mm-title{font-size:2rem}.mm-subnav .container{gap:16px}.mm-subnav strong{flex-basis:100%}.mm-topics{grid-template-columns:repeat(2,minmax(0,1fr))}.mm-header-inner{min-height:70px}.mm-team-monogram{height:190px}.mm-workspace-main{padding:22px 16px}}
@media(prefers-reduced-motion:reduce){.mm-ecosystem .mm-btn{transition:none}} 

/* Static previews of Odoo Website Sale, Blog and eLearning. */
:root {
 --mm-commerce: #0d6efd; --mm-white: #fff; --mm-placeholder: #d6d6d6;
 --mm-placeholder-line: #8d899e; --mm-placeholder-shadow: #e6e6e6;
 --mm-product-bg: #fafafa; --mm-blog-shadow: 0 5px 14px rgba(0,0,0,.15);
 --mm-dialog-shadow: 0 20px 70px rgba(0,0,0,.2);
}
.mm-footer-brand{font-family:var(--mm-font-display);font-weight:700;font-size:1.25rem;color:var(--mm-white)}
.mm-footer-description{color:color-mix(in srgb,var(--mm-white) 70%,transparent)!important;max-width:380px}
.mm-course-description{font-size:.9rem;color:var(--mm-muted)}
.mm-shop-section{padding:24px 28px}.mm-shop-layout{display:grid;grid-template-columns:minmax(220px,32%) minmax(0,1fr);gap:24px;max-width:1250px;margin:auto}
.mm-shop-sidebar{background:var(--mm-white);padding:16px;align-self:start;min-height:122px}
.mm-shop-sidebar summary{font-size:.9rem;color:var(--mm-navy);font-weight:700;cursor:pointer}
.mm-range-labels{display:flex;justify-content:space-between;font-size:.85rem;color:var(--mm-muted);margin-top:28px}
.mm-shop-sidebar input{width:100%;accent-color:var(--mm-commerce)}
.mm-shop-content h1{font-size:2.6rem;line-height:1.1;margin:0 0 24px}
.mm-shop-categories{font-size:.92rem;display:flex;flex-wrap:wrap;gap:0}
.mm-shop-categories a.active{font-weight:700}.mm-shop-sort{text-align:right;font-size:.85rem;color:var(--mm-muted);margin:18px 0 24px}
.mm-shop-sort select{border:0;background:transparent;color:var(--mm-navy);max-width:160px}
.mm-shop-product{display:grid;grid-template-columns:48% minmax(0,1fr);min-height:322px;gap:8px}
.mm-shop-product[hidden]{display:none}.mm-shop-image{background:var(--mm-product-bg);display:flex;align-items:center;justify-content:center;min-width:0}
.mm-product-placeholder{width:180px;max-width:80%;height:auto}
.mm-placeholder-shadow{fill:var(--mm-placeholder-shadow)}.mm-placeholder-frame{fill:var(--mm-white);stroke:var(--mm-placeholder-line);stroke-width:2}
.mm-placeholder-fill{fill:var(--mm-placeholder);stroke:var(--mm-placeholder-line);stroke-width:2}.mm-placeholder-circle{fill:var(--mm-white);stroke:var(--mm-placeholder-line);stroke-width:2}
.mm-shop-product-info{padding:0 12px 30px 0;min-width:0}.mm-shop-product-info h2{font-size:2rem;line-height:1.12;margin:0 0 10px;overflow-wrap:anywhere}
.mm-shop-product-info p{font-size:.88rem;line-height:1.4;margin:0}.mm-shop-product-info strong{font-size:.95rem;color:var(--mm-navy)}
.mm-commerce-btn{background:var(--mm-commerce);color:var(--mm-white);border:0;border-radius:4px;padding:10px 14px;font-size:.9rem;cursor:pointer}
.mm-wishlist{border:0;background:transparent;color:var(--mm-navy);padding:8px 0;font-size:.85rem;cursor:pointer}.mm-wishlist[aria-pressed=true]{color:var(--mm-commerce)}
.mm-shop-cart{border:0;background:transparent;color:var(--mm-navy);cursor:pointer;white-space:nowrap}
.mm-blog-section{padding:4px 0 30px}.mm-blog-section h1{font-size:2.9rem;line-height:1.2}.mm-blog-grid{margin-top:60px;row-gap:42px!important}
.mm-blog-cover{height:164px;display:flex;align-items:center;gap:5px;padding:16px 8px;border-radius:6px;box-shadow:var(--mm-blog-shadow);color:var(--mm-white)!important}
.mm-blog-robot{width:140px;height:140px;flex-shrink:0}.mm-blog-cover span{font-size:.9rem}.mm-blog-grid h2{font-family:var(--mm-font-body);font-size:1.35rem;font-weight:400;margin:18px 0 8px}
.mm-blog-grid p{font-size:1rem;color:var(--mm-navy);margin:0}.mm-blog-grid time{font-size:.9rem;color:var(--mm-navy);display:block;margin-left:8px}
.mm-detail-image{min-height:340px;display:flex;align-items:center;justify-content:center;background:var(--mm-product-bg)}
.mm-demo-cart{width:min(560px,calc(100% - 32px));max-height:85vh;overflow:auto;padding:28px;border:1px solid var(--mm-border);border-radius:8px;background:var(--mm-card);color:var(--mm-text);box-shadow:var(--mm-dialog-shadow)}
.mm-demo-cart::backdrop{background:color-mix(in srgb,var(--mm-navy) 35%,transparent)}
.mm-cart-row{display:grid;grid-template-columns:1fr auto;gap:12px;border-bottom:1px solid var(--mm-border);padding:16px 0}.mm-cart-row input{width:60px;border:1px solid var(--mm-border);border-radius:4px;color:var(--mm-text);background:var(--mm-white);padding:5px}
@media(min-width:992px){.mm-header-cta .mm-btn{display:inline-flex}.mm-header-inner{gap:12px}.mm-header-cta{gap:16px!important}.mm-nav a{font-size:.74rem;padding:5px 4px}.mm-header .container{max-width:1250px!important}}
@media(max-width:991.98px){.mm-header-inner{position:relative}.mm-brand{order:0}.mm-header-cta{order:1;margin-left:auto}.mm-burger{order:2}.mm-nav{order:3;flex-basis:100%}.mm-header-cta .mm-lang{display:inline-flex}.mm-nav a{font-size:1rem;padding:8px}.mm-shop-layout{grid-template-columns:200px minmax(0,1fr)}.mm-shop-product-info h2{font-size:1.6rem}}
@media(max-width:600px){h1.mm-title{font-size:2.3rem}h2.mm-title{font-size:1.9rem}.mm-section{padding:48px 0}.mm-pagehead{padding:54px 0 44px}.mm-panel-navy,.mm-panel-warm{padding:28px}.mm-shop-section{padding:20px 16px}.mm-shop-layout{grid-template-columns:minmax(0,1fr)}.mm-shop-sidebar{min-height:0}.mm-range-labels{margin-top:12px}.mm-shop-product{min-height:280px;grid-template-columns:44% minmax(0,1fr)}.mm-shop-product-info h2{font-size:1.4rem}.mm-blog-grid{margin-top:36px}.mm-blog-section h1{font-size:2.3rem}.mm-blog-cover{height:150px}.mm-blog-robot{width:120px;height:120px}.mm-blog-grid h2{font-size:1.1rem}}

/* ==========================================================================
   Dark navy + gold theme (overrides). Plain CSS, Odoo-safe.
   ========================================================================== */
:root{
  --mm-bg:#0e1524; --mm-bg-2:#131c2f; --mm-surface:#18233a; --mm-surface-2:#1f2c47;
  --mm-cream:#0e1524; --mm-card:#18233a; --mm-text:#e7e2d6; --mm-muted:#a7b0c4;
  --mm-border:rgba(232,176,75,.16); --mm-hub-bg:#111b2c; --mm-flow-bg:#111b2c; --mm-hub-ink:#e8b04b;
  --mm-hero-wash:rgba(14,21,36,.7); --mm-shadow:0 22px 50px -24px rgba(0,0,0,.65);
}
body.mm-body{background:var(--mm-bg);color:var(--mm-text)}
.mm-body h1,.mm-body h2,.mm-body h3,.mm-body h4,.mm-body h5,.mm-body .mm-title{color:#f4efe4}
.mm-body p,.mm-body li{color:var(--mm-muted)}
.mm-body .mm-lead{color:#c4cad8}
.mm-body .mm-section-alt,.mm-body .mm-hub-band,.mm-body .mm-flow-band{background:var(--mm-bg-2);border-color:var(--mm-border)}
.mm-body .mm-os-band,.mm-body .mm-paths,.mm-body .mm-ecosystem-hero,.mm-body .mm-hero,.mm-body .mm-pagehead{background:var(--mm-bg)}
.mm-body .mm-card,.mm-body .mm-card-plain,.mm-body [class*="mm-plan"],.mm-body .mm-panel,.mm-body .mm-invitation,.mm-body .mm-field input,.mm-body .mm-field textarea,.mm-body .mm-field select{background:var(--mm-surface);border-color:var(--mm-border);color:var(--mm-text)}
.mm-body .mm-card{box-shadow:var(--mm-shadow)}
.mm-body .mm-card-hover:hover{border-color:rgba(232,176,75,.5);transform:translateY(-4px)}
.mm-body .mm-field label{color:#d9d3c5}
.mm-body .mm-eyebrow,.mm-body .mm-kicker{color:var(--mm-gold);background:rgba(232,176,75,.08)}
.mm-body .mm-btn-ghost{background:transparent;color:#f4efe4;border-color:rgba(244,239,228,.3)}
.mm-body .mm-btn-ghost:hover{border-color:var(--mm-gold);color:var(--mm-gold)}
.mm-body .mm-btn-primary{background:var(--mm-gold);color:#141b2b;border-color:var(--mm-gold)}
.mm-body .mm-btn-gold{background:transparent;color:var(--mm-gold);border:1px solid var(--mm-gold)}
.mm-body .mm-icon{background:rgba(232,176,75,.12);color:var(--mm-gold)}
.mm-body .mm-trustbar{background:var(--mm-bg-2);border-color:var(--mm-border)}
.mm-body .mm-trustbar span{color:#cdd3e0}
.mm-body .mm-trustbar span:first-child{color:var(--mm-gold)}
.mm-body header,.mm-body .mm-header,.mm-body .mm-navbar,.mm-body .mm-subnav{background:rgba(14,21,36,.88);backdrop-filter:blur(10px);border-color:var(--mm-border)}
.mm-body header a,.mm-body .mm-subnav a{color:#d9dfeb}
.mm-body header a:hover,.mm-body .mm-subnav a.active{color:var(--mm-gold)}
.mm-body .mm-text-link,.mm-body .mm-statement,.mm-body .mm-plan-price{color:var(--mm-gold)}
.mm-body .mm-grid-pattern{opacity:.35;background-image:linear-gradient(rgba(232,176,75,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(232,176,75,.07) 1px,transparent 1px)}
.mm-body .mm-hero-logo{background:transparent;filter:drop-shadow(0 6px 24px rgba(232,176,75,.35))}
.mm-body .mm-path-hub{background:var(--mm-surface)}
.mm-body .mm-path-os{background:var(--mm-surface-2)}
.mm-body table,.mm-body td,.mm-body th{color:var(--mm-text);border-color:var(--mm-border)}
.mm-body dialog{background:var(--mm-surface);color:var(--mm-text)}

/* ---------- Smart motion: subtle, purposeful, respects reduced motion ---------- */
.mm-reveal{opacity:0;transform:translateY(18px);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1)}
.mm-reveal.is-visible{opacity:1;transform:none}
.mm-hero-copy>*{animation:mm-rise .9s cubic-bezier(.16,1,.3,1) both}
.mm-hero-copy>*:nth-child(2){animation-delay:.08s}.mm-hero-copy>*:nth-child(3){animation-delay:.16s}.mm-hero-copy>*:nth-child(4){animation-delay:.24s}.mm-hero-copy>*:nth-child(5){animation-delay:.32s}.mm-hero-copy>*:nth-child(6){animation-delay:.4s}
@keyframes mm-rise{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
.mm-body .mm-pulse{animation:mm-breathe 9s ease-in-out infinite}
@keyframes mm-breathe{0%,100%{opacity:.35;transform:scale(1)}50%{opacity:.6;transform:scale(1.08)}}
.mm-orbit{position:absolute;right:6%;top:50%;width:420px;height:420px;transform:translateY(-50%);pointer-events:none}
.mm-orbit span{position:absolute;inset:0;border:1px solid rgba(232,176,75,.18);border-radius:50%;animation:mm-spin 40s linear infinite}
.mm-orbit span:nth-child(2){inset:60px;animation-duration:28s;animation-direction:reverse;border-color:rgba(207,224,242,.14)}
.mm-orbit span:nth-child(3){inset:130px;animation-duration:18s}
.mm-orbit span::before{content:"";position:absolute;top:-4px;left:50%;width:8px;height:8px;border-radius:50%;background:var(--mm-gold);box-shadow:0 0 14px var(--mm-gold)}
.mm-orbit span:nth-child(2)::before{background:#cfe0f2;box-shadow:0 0 12px #cfe0f2}
@keyframes mm-spin{to{transform:rotate(360deg)}}
@media(max-width:991px){.mm-orbit{opacity:.4;right:-120px}}
/* Diagrams replacing photos */
.mm-diagram{margin:0;border:1px solid var(--mm-border);border-radius:var(--mm-radius-lg);background:radial-gradient(circle at 50% 40%,rgba(232,176,75,.1),transparent 60%),var(--mm-surface);padding:28px;min-height:280px;position:relative}
.mm-hub-diagram svg{width:100%;height:auto}
.mm-net-lines line{stroke:rgba(232,176,75,.35);stroke-width:1.2;stroke-dasharray:4 6;animation:mm-dash 6s linear infinite}
@keyframes mm-dash{to{stroke-dashoffset:-60}}
.mm-net-nodes circle{fill:#cfe0f2;opacity:.8;animation:mm-node 4s ease-in-out infinite}
.mm-net-nodes circle:nth-child(odd){animation-delay:1.3s}
.mm-net-nodes circle.core{fill:var(--mm-gold);opacity:1}
@keyframes mm-node{0%,100%{opacity:.5}50%{opacity:1}}
.mm-diagram figcaption{text-align:center;color:var(--mm-muted);font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;margin-top:10px}
.mm-flow-diagram{display:grid;grid-template-columns:1fr auto 1fr;gap:18px;align-items:center}
.mm-cam{border:1px solid var(--mm-border);border-radius:14px;padding:24px 12px;text-align:center;background:var(--mm-bg-2);animation:mm-cam 6s ease-in-out infinite}
.mm-cam span{display:block;font-weight:700;color:#f4efe4}.mm-cam small,.mm-flow-core small{color:var(--mm-muted)}
.mm-cam-b{animation-delay:3s}
@keyframes mm-cam{0%,45%{border-color:var(--mm-gold);box-shadow:0 0 0 1px var(--mm-gold),0 0 30px -8px var(--mm-gold)}50%,100%{border-color:var(--mm-border);box-shadow:none}}
.mm-flow-core{text-align:center;max-width:120px}
.mm-flow-eye{display:block;font-size:2rem;color:var(--mm-gold);animation:mm-look 6s ease-in-out infinite}
@keyframes mm-look{0%,45%{transform:translateX(-10px)}50%,95%{transform:translateX(10px)}100%{transform:translateX(-10px)}}
.mm-flow-obs{grid-column:1/-1;text-align:center;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;color:var(--mm-muted)}
.mm-flow-live{display:inline-block;width:8px;height:8px;border-radius:50%;background:#e25b4b;margin-left:6px;animation:mm-node 1.6s ease-in-out infinite}
@media(prefers-reduced-motion:reduce){.mm-body *,.mm-body *::before{animation:none!important;transition:none!important}.mm-reveal{opacity:1;transform:none}}
.mm-body .mm-blob-sky{opacity:.12}
.mm-body .mm-blob-gold{opacity:.35}
.mm-body .mm-kicker{display:inline-block;padding:4px 10px;border-radius:999px}

/* Ecosystem solar system (home) */
.mm-ecosystem-hero{position:relative}
.mm-solar{position:absolute;right:4%;top:50%;width:480px;height:480px;transform:translateY(-50%);z-index:2}
.mm-ring{position:absolute;border:1px solid rgba(232,176,75,.2);border-radius:50%;pointer-events:none;animation:mm-spin var(--d) linear infinite;animation-delay:var(--o)}
.mm-ring-1{inset:120px;--d:36s;--o:0s}.mm-ring-2{inset:60px;--d:52s;--o:-20s;border-color:rgba(207,224,242,.16)}.mm-ring-3{inset:0;--d:70s;--o:-48s}
.mm-planet{position:absolute;top:0;left:50%;width:84px;height:84px;margin:-42px 0 0 -42px;pointer-events:auto;animation:mm-spin var(--d) linear infinite reverse;animation-delay:var(--o);text-decoration:none}
.mm-ring-1 .mm-planet{--d:36s;--o:0s}.mm-ring-2 .mm-planet{--d:52s;--o:-20s}.mm-ring-3 .mm-planet{--d:70s;--o:-48s}
.mm-planet-body{display:flex;align-items:center;justify-content:center;text-align:center;width:100%;height:100%;border-radius:50%;background:var(--mm-bg-2,#111b2c);border:1px solid rgba(232,176,75,.55);color:#f4efe4;font-family:var(--mm-font-display);font-weight:600;font-size:.72rem;line-height:1.15;padding:8px;box-shadow:0 0 24px -8px rgba(232,176,75,.6);transition:transform .3s,border-color .3s,box-shadow .3s}
.mm-ring-2 .mm-planet-body{border-color:rgba(207,224,242,.55);box-shadow:0 0 24px -8px rgba(207,224,242,.5)}
.mm-planet:hover .mm-planet-body,.mm-planet:focus-visible .mm-planet-body{transform:scale(1.1);border-color:var(--mm-gold);box-shadow:0 0 32px -4px var(--mm-gold)}
.mm-sun{position:absolute;left:50%;top:50%;width:130px;height:130px;margin:-65px 0 0 -65px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 40% 35%,#f7dfae,var(--mm-gold) 55%,#b9822a);box-shadow:0 0 60px rgba(232,176,75,.45),0 0 120px rgba(232,176,75,.2);cursor:default;animation:mm-sun 6s ease-in-out infinite;outline:none}
.mm-sun strong{color:#0d131f;font-family:var(--mm-font-display);font-size:1rem;letter-spacing:.01em}
@keyframes mm-sun{0%,100%{box-shadow:0 0 50px rgba(232,176,75,.4),0 0 110px rgba(232,176,75,.16)}50%{box-shadow:0 0 70px rgba(232,176,75,.6),0 0 140px rgba(232,176,75,.26)}}
.mm-solar:hover .mm-ring,.mm-solar:hover .mm-planet,.mm-solar:focus-within .mm-ring,.mm-solar:focus-within .mm-planet{animation-play-state:paused}
.mm-tip{position:absolute;left:50%;top:calc(100% + 10px);transform:translate(-50%,4px);width:230px;padding:12px 14px;border-radius:10px;background:rgba(13,19,31,.96);border:1px solid rgba(232,176,75,.45);color:#f4efe4;font-size:.8rem;line-height:1.45;font-weight:400;text-align:left;opacity:0;visibility:hidden;transition:opacity .25s,transform .25s;z-index:20;pointer-events:none}
.mm-planet:hover .mm-tip,.mm-planet:focus-visible .mm-tip,.mm-sun:hover .mm-tip,.mm-sun:focus .mm-tip{opacity:1;visibility:visible;transform:translate(-50%,0)}
.mm-ring:hover,.mm-ring:focus-within{z-index:10}.mm-sun:hover,.mm-sun:focus{z-index:11}
@media(max-width:1199px){.mm-solar{right:-40px;transform:translateY(-50%) scale(.8)}}
@media(max-width:991px){.mm-solar{position:relative;right:auto;top:auto;transform:scale(.72);margin:-50px auto -40px}}
@media(prefers-reduced-motion:reduce){.mm-ring,.mm-planet,.mm-sun{animation:none}}
/* Hub flow diagram */
.mm-flow-path{fill:none}
.mm-src rect{fill:var(--mm-bg-2,#111b2c);stroke:rgba(207,224,242,.4)}.mm-src text,.mm-you text{fill:#f4efe4;font-size:12px;text-anchor:middle;font-family:var(--mm-font-body)}
.mm-flow-dot{fill:var(--mm-gold)}
.mm-hub-core{fill:var(--mm-gold);animation:mm-hubglow 5s ease-in-out infinite}.mm-hub-core-t{fill:#0d131f;font-size:12px;font-weight:700;text-anchor:middle}
@keyframes mm-hubglow{0%,100%{opacity:.85}50%{opacity:1}}
.mm-you circle{fill:none;stroke:var(--mm-gold);stroke-dasharray:3 4}.mm-you .mm-you-s{font-size:9px;fill:#a9b4c6}
.mm-body .mm-planet,.mm-planet{background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;backdrop-filter:none!important}
.mm-net-lines path{stroke:rgba(232,176,75,.4);stroke-width:1.2;stroke-dasharray:4 6;animation:mm-dash 6s linear infinite}
