/* =====================================================================
   maia-enrichment.css  —  ADDITIVE visual modules for maiacapital.co.uk
   ---------------------------------------------------------------------
   • All classes are namespaced "me-" to avoid colliding with existing CSS.
   • All colours/fonts are driven by the --me-* tokens below.
   • STEP 1 (only required step): map these tokens to the site's REAL brand
     values — either edit the values here, or point them at existing vars,
     e.g.  --me-navy: var(--brand-navy);
   • Do NOT restyle nav / hero / footer / logo with this file. It only adds
     the modules described in MAIA_ENRICHMENT_BRIEF.md between existing copy.
   ===================================================================== */

:root{
  /* Mapped to v48 site tokens (see styles.css). */
  --me-navy:      var(--ink,        #0e1f3a);
  --me-navy-2:    var(--ink-soft,   #2a3a55);
  --me-cream:     var(--paper,      #efe1cd);
  --me-cream-2:   var(--paper-deep, #e7d6bc);
  --me-card:      #fbf6ee;
  --me-gold:      var(--gold,       #b08a3e);
  --me-gold-deep: #976e2a;
  --me-gold-soft: var(--gold-soft,  #c9a45e);
  --me-line:      var(--line,       rgba(14,31,58,0.14));
  --me-text:      var(--ink-soft,   #2a3a55);
  --me-muted:     var(--ink-muted,  #58647d);
  --me-serif:     var(--display,    Georgia,"Times New Roman",serif);
  --me-body:      var(--display,    Georgia,"Times New Roman",serif);
  --me-label:     var(--mono,       Georgia,"Times New Roman",serif);
}

/* ---------- generic helpers ---------- */
.me-section{padding:84px 0}
.me-section.me-alt{background:var(--me-cream-2)}
.me-wrap{max-width:1180px;margin:0 auto;padding:0 40px}
.me-canvas{max-width:980px;margin:0 auto}
.me-lead{max-width:760px;margin:0 auto;font-family:var(--me-body);font-size:20px;line-height:1.8;color:var(--me-text);text-align:center}
.me-sechead{display:flex;align-items:center;gap:18px;max-width:1000px;margin:0 auto 30px}
.me-sechead .me-num{font-family:var(--me-label);font-size:12px;letter-spacing:.2em;color:var(--me-gold-deep);font-weight:600}
.me-sechead h2{font-family:var(--me-serif);font-weight:500;font-size:38px;color:var(--me-navy);letter-spacing:-.01em}
.me-sechead .me-line{flex:1;height:1px;background:var(--me-line)}
.me-tag{font-family:var(--me-label);text-transform:uppercase;letter-spacing:.2em;font-size:10px;font-weight:700;color:var(--me-gold-deep);text-align:center;opacity:.55;margin:46px 0 -30px}

/* ===== HOME · A · differentiator triptych ===== */
.me-triptych{display:grid;grid-template-columns:repeat(3,1fr);margin:54px 0;border:1px solid var(--me-line);border-radius:3px;background:var(--me-card);overflow:hidden}
.me-triptych .me-col{padding:38px 32px}
.me-triptych .me-col+.me-col{border-left:1px solid var(--me-line)}
.me-triptych .me-mark{width:34px;height:34px;border:1.5px solid var(--me-gold);border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:20px}
.me-triptych .me-mark svg{width:18px;height:18px;stroke:var(--me-gold-deep)}
.me-triptych .me-l{font-family:var(--me-label);text-transform:uppercase;letter-spacing:.16em;font-size:11px;color:var(--me-gold-deep);font-weight:600;margin-bottom:10px}
.me-triptych .me-big{font-family:var(--me-serif);font-size:27px;line-height:1.15;color:var(--me-navy);font-weight:500}

/* ===== HOME · B · partnership flow diagram ===== */
.me-flow{margin:54px 0;background:linear-gradient(180deg,#fff,var(--me-card));border:1px solid var(--me-line);border-radius:4px;padding:46px 40px}
.me-flow .me-ft{font-family:var(--me-label);text-transform:uppercase;letter-spacing:.18em;font-size:11px;color:var(--me-gold-deep);font-weight:600;text-align:center;margin-bottom:34px}
.me-flow .me-row{display:flex;align-items:stretch;justify-content:center}
.me-flow .me-node{flex:1;text-align:center;padding:24px 18px;border-radius:3px}
.me-flow .me-node.me-mid{background:var(--me-navy);box-shadow:0 14px 34px -16px rgba(10,30,57,.55)}
.me-flow .me-node.me-end{background:#fff;border:1px solid var(--me-line)}
.me-flow .me-node .me-nl{font-family:var(--me-label);text-transform:uppercase;letter-spacing:.14em;font-size:10px;font-weight:600;margin-bottom:10px;color:var(--me-gold-deep)}
.me-flow .me-node.me-mid .me-nl{color:var(--me-gold-soft)}
.me-flow .me-node .me-nt{font-family:var(--me-serif);font-size:20px;line-height:1.25;color:var(--me-navy)}
.me-flow .me-node.me-mid .me-nt{color:#fff}
.me-flow .me-arrow{display:flex;align-items:center;padding:0 14px}
.me-flow .me-arrow svg{width:30px;height:18px;stroke:var(--me-gold)}
.me-flow .me-fn{font-family:var(--me-body);font-style:italic;text-align:center;color:var(--me-muted);font-size:15px;margin-top:26px}

/* ===== HOME · C · manifesto / pull-block ===== */
.me-manifesto{margin:60px 0;padding:50px 56px;background:var(--me-navy);color:#fff;border-radius:4px;position:relative;overflow:hidden}
.me-manifesto .me-q{position:absolute;top:-30px;left:30px;font-family:var(--me-serif);font-size:200px;color:rgba(191,161,90,.16);line-height:1}
.me-manifesto .me-mlead{font-family:var(--me-serif);font-style:italic;font-size:38px;line-height:1.18;color:#fff;position:relative;z-index:2;margin-bottom:26px;max-width:760px}
.me-manifesto .me-stack{display:flex;flex-direction:column;gap:14px;position:relative;z-index:2}
.me-manifesto .me-item{display:flex;align-items:center;gap:16px;font-family:var(--me-body);font-size:18px;color:rgba(247,242,232,.9)}
.me-manifesto .me-dot{width:7px;height:7px;background:var(--me-gold);border-radius:50%;flex:none}

/* ===== HOME · D · capability 2x2 grid + chips ===== */
.me-capintro{font-family:var(--me-serif);font-size:30px;line-height:1.25;color:var(--me-navy);text-align:center;max-width:640px;margin:0 auto 44px;font-weight:500}
.me-capgrid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-bottom:46px}
.me-cap{background:var(--me-card);border:1px solid var(--me-line);border-radius:4px;padding:34px 32px;position:relative}
.me-cap .me-ico{width:46px;height:46px;border-radius:50%;background:rgba(191,161,90,.12);display:flex;align-items:center;justify-content:center;margin-bottom:20px}
.me-cap .me-ico svg{width:24px;height:24px;stroke:var(--me-gold-deep);fill:none}
.me-cap .me-ct{font-family:var(--me-serif);font-size:22px;line-height:1.32;color:var(--me-navy);font-weight:500}
.me-cap .me-cn{position:absolute;top:26px;right:30px;font-family:var(--me-label);font-size:12px;letter-spacing:.1em;color:var(--me-line);font-weight:700}
.me-chips{display:flex;flex-wrap:wrap;gap:14px;justify-content:center}
.me-chip{display:flex;flex-direction:column;align-items:center;gap:12px;width:150px;padding:24px 12px;background:#fff;border:1px solid var(--me-line);border-radius:4px}
.me-chip svg{width:40px;height:40px;stroke:var(--me-gold-deep);fill:none}
.me-chip .me-cl{font-family:var(--me-label);text-transform:uppercase;letter-spacing:.1em;font-size:12px;font-weight:600;color:var(--me-navy)}

/* ===== HOME · F · founding timeline ===== */
.me-timeline{margin:54px auto 0;max-width:820px;display:flex;align-items:center;background:var(--me-card);border:1px solid var(--me-line);border-radius:4px;overflow:hidden}
.me-timeline .me-date{flex:none;width:230px;background:var(--me-navy);color:#fff;padding:34px 30px;text-align:center}
.me-timeline .me-yr{font-family:var(--me-serif);font-size:44px;color:var(--me-gold-soft);line-height:1;font-weight:500}
.me-timeline .me-se{font-family:var(--me-label);text-transform:uppercase;letter-spacing:.22em;font-size:11px;color:rgba(247,242,232,.7);margin-top:10px;font-weight:600}
.me-timeline .me-desc{padding:30px 36px}
.me-timeline .me-tl{font-family:var(--me-label);text-transform:uppercase;letter-spacing:.16em;font-size:11px;color:var(--me-gold-deep);font-weight:600;margin-bottom:10px}
.me-timeline .me-tt{font-family:var(--me-serif);font-size:23px;line-height:1.3;color:var(--me-navy)}

/* ===== contact card (Get in Touch enhancement, dark bg) ===== */
.me-contact{margin-top:36px;background:rgba(247,242,232,.05);border:1px solid rgba(191,161,90,.4);border-radius:4px;padding:34px 38px;display:flex;align-items:center;justify-content:space-between;gap:30px;max-width:680px}
.me-contact .me-cl2{font-family:var(--me-label);text-transform:uppercase;letter-spacing:.18em;font-size:11px;color:var(--me-gold-soft);font-weight:600;margin-bottom:8px}
.me-contact a.me-email{font-family:var(--me-serif);font-size:28px;color:#fff;text-decoration:none}
.me-contact .me-btn{font-family:var(--me-label);text-transform:uppercase;letter-spacing:.14em;font-size:12px;font-weight:600;color:var(--me-navy);background:var(--me-gold-soft);padding:14px 24px;border-radius:2px;text-decoration:none;white-space:nowrap}

/* ===== titled card grid (VALUES, growth options, advantages) ===== */
.me-vgrid{display:grid;grid-template-columns:1fr 1fr;gap:22px;max-width:1000px;margin:48px auto 0}
.me-vcard{background:var(--me-card);border:1px solid var(--me-line);border-radius:4px;padding:36px 34px;position:relative}
.me-vcard .me-vico{width:48px;height:48px;border-radius:50%;background:rgba(191,161,90,.12);display:flex;align-items:center;justify-content:center;margin-bottom:20px}
.me-vcard .me-vico svg{width:25px;height:25px;stroke:var(--me-gold-deep);fill:none;stroke-width:1.6}
.me-vcard h3{font-family:var(--me-serif);font-size:30px;font-weight:500;color:var(--me-navy);margin-bottom:14px}
.me-vcard p{font-family:var(--me-body);font-size:16.5px;line-height:1.7;color:#415265}
.me-vcard .me-vn{position:absolute;top:30px;right:32px;font-family:var(--me-label);font-size:12px;letter-spacing:.1em;color:var(--me-line);font-weight:700}

/* ===== principle rows (HOW WE PARTNER) ===== */
.me-principles{max-width:920px;margin:48px auto 0}
.me-principle{display:flex;gap:30px;padding:34px 0;border-top:1px solid var(--me-line)}
.me-principle:last-child{border-bottom:1px solid var(--me-line)}
.me-principle .me-pne{flex:none;width:64px}
.me-principle .me-pnum{font-family:var(--me-serif);font-size:40px;color:var(--me-gold);line-height:1}
.me-principle .me-picon{width:44px;height:44px;margin-top:14px;border-radius:8px;background:var(--me-navy);display:flex;align-items:center;justify-content:center}
.me-principle .me-picon svg{width:22px;height:22px;stroke:var(--me-gold-soft);fill:none;stroke-width:1.6}
.me-principle h3{font-family:var(--me-serif);font-size:27px;font-weight:500;color:var(--me-navy);margin-bottom:10px}
.me-principle p{font-size:16.5px;line-height:1.7;color:#415265;margin-bottom:8px}
.me-principle p:last-child{margin-bottom:0}

/* ===== comparison table (HOW WE ARE DIFFERENT) ===== */
.me-compare{max-width:1040px;margin:40px auto 0;border:1px solid var(--me-line);border-radius:5px;overflow:hidden;background:var(--me-card)}
.me-compare .me-ch{display:grid;grid-template-columns:1.1fr 1fr 1.1fr}
.me-compare .me-ch>div{padding:22px 26px;font-family:var(--me-label);text-transform:uppercase;letter-spacing:.1em;font-size:12px;font-weight:700}
.me-compare .me-ch .me-c0{background:#fff;color:transparent}
.me-compare .me-ch .me-c1{background:#EDE6D6;color:#8a7c63}
.me-compare .me-ch .me-c2{background:var(--me-navy);color:var(--me-gold-soft)}
.me-compare .me-cr{display:grid;grid-template-columns:1.1fr 1fr 1.1fr;border-top:1px solid var(--me-line)}
.me-compare .me-cr>div{padding:20px 26px;font-size:15.5px;line-height:1.55}
.me-compare .me-lbl{font-family:var(--me-label);font-weight:600;color:var(--me-navy);font-size:13.5px;text-transform:uppercase;background:var(--me-card)}
.me-compare .me-trad{color:#7c8597;background:#F4EFE4}
.me-compare .me-maia{color:#21344a;background:#fff;border-left:2px solid var(--me-gold)}
.me-compare .me-maia b{color:var(--me-navy)}

/* ===== chart card (INVESTING FOR THE LONG TERM) ===== */
.me-chart{max-width:880px;margin:42px auto 0;background:var(--me-card);border:1px solid var(--me-line);border-radius:5px;padding:34px 30px 26px}
.me-chart .me-ctitle{font-family:var(--me-label);text-transform:uppercase;letter-spacing:.16em;font-size:11px;color:var(--me-gold-deep);font-weight:600;text-align:center;margin-bottom:6px}
.me-chart .me-csrc{font-family:var(--me-body);font-style:italic;text-align:center;color:var(--me-muted);font-size:13px;margin-top:12px}
.me-legend{display:flex;gap:28px;justify-content:center;margin-top:14px;font-family:var(--me-label);font-size:12px;color:var(--me-navy);font-weight:600}
.me-legend span{display:inline-flex;align-items:center;gap:9px}
.me-legend i{width:22px;height:3px;border-radius:2px;display:inline-block}

/* ===== process stepper (HOW WE WORK TOGETHER) ===== */
.me-stepper{max-width:1060px;margin:48px auto 0;display:grid;grid-template-columns:repeat(4,1fr)}
.me-step{padding:0 18px;position:relative}
.me-step .me-sc{width:54px;height:54px;border-radius:50%;background:var(--me-navy);color:var(--me-gold-soft);display:flex;align-items:center;justify-content:center;font-family:var(--me-serif);font-size:24px;margin-bottom:22px;position:relative;z-index:2}
.me-step .me-sl{position:absolute;top:27px;left:calc(50% + 32px);right:calc(-50% + 32px);height:1.5px;background:var(--me-gold);opacity:.4;z-index:1}
.me-step:last-child .me-sl{display:none}
.me-step h3{font-family:var(--me-serif);font-size:25px;font-weight:500;color:var(--me-navy);margin-bottom:12px}
.me-step p{font-size:15px;line-height:1.62;color:#415265}

/* ===== spec sheet (INVESTMENT CRITERIA) ===== */
.me-spec{max-width:880px;margin:42px auto 0;background:var(--me-card);border:1px solid var(--me-line);border-radius:5px;overflow:hidden}
.me-spec .me-sr{display:grid;grid-template-columns:1fr 1.4fr;border-top:1px solid var(--me-line)}
.me-spec .me-sr:first-child{border-top:none}
.me-spec .me-sk{padding:20px 28px;font-family:var(--me-label);text-transform:uppercase;letter-spacing:.06em;font-size:13px;font-weight:600;color:var(--me-navy);background:var(--me-card);display:flex;align-items:center}
.me-spec .me-sv{padding:18px 28px;font-family:var(--me-serif);font-size:23px;color:var(--me-navy);display:flex;align-items:center;gap:10px}
.me-spec .me-sv .me-bignum{color:var(--me-gold-deep)}

/* ===== card grids (CASE STUDIES / TEAM) ===== */
.me-cards3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;max-width:1040px;margin:46px auto 0}
.me-case{background:var(--me-card);border:1px solid var(--me-line);border-radius:5px;overflow:hidden;display:flex;flex-direction:column}
.me-case .me-bar{height:8px;background:linear-gradient(90deg,var(--me-gold),var(--me-gold-soft))}
.me-case .me-cb{padding:30px 28px;flex:1}
.me-case .me-cg{font-family:var(--me-label);text-transform:uppercase;letter-spacing:.14em;font-size:10px;color:var(--me-gold-deep);font-weight:600;margin-bottom:14px}
.me-case h3{font-family:var(--me-serif);font-size:27px;font-weight:500;color:var(--me-navy);margin-bottom:10px}
.me-case .me-clink{padding:18px 28px;border-top:1px solid var(--me-line);font-family:var(--me-label);text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:600;color:var(--me-gold-deep)}
.me-themes{display:grid;grid-template-columns:repeat(3,1fr);max-width:920px;margin:44px auto 0;border:1px solid var(--me-line);border-radius:4px;overflow:hidden;background:var(--me-card)}
.me-themes .me-t{padding:30px 28px;text-align:center}
.me-themes .me-t+.me-t{border-left:1px solid var(--me-line)}
.me-themes .me-ti{width:40px;height:40px;margin:0 auto 16px;border-radius:50%;border:1.5px solid var(--me-gold);display:flex;align-items:center;justify-content:center}
.me-themes .me-ti svg{width:20px;height:20px;stroke:var(--me-gold-deep);fill:none;stroke-width:1.6}
.me-themes .me-tt{font-family:var(--me-serif);font-size:20px;color:var(--me-navy);line-height:1.25}
.me-team{display:grid;grid-template-columns:repeat(5,1fr);gap:18px;max-width:1100px;margin:48px auto 0}
.me-tcard{text-align:center}
.me-tcard .me-photo{aspect-ratio:1/1;border-radius:6px;background:linear-gradient(155deg,var(--me-navy),#163a63);display:flex;align-items:center;justify-content:center;margin-bottom:16px;border:1px solid rgba(191,161,90,.3);overflow:hidden}
.me-tcard .me-photo img{width:100%;height:100%;object-fit:cover}
.me-tcard h3{font-family:var(--me-serif);font-size:21px;font-weight:500;color:var(--me-navy);margin-bottom:4px}
.me-tcard p{font-family:var(--me-label);text-transform:uppercase;letter-spacing:.1em;font-size:10.5px;color:var(--me-gold-deep);font-weight:600}

/* ---------- responsive ---------- */
@media (max-width:860px){
  .me-triptych,.me-capgrid,.me-vgrid,.me-stepper,.me-cards3,.me-themes,.me-compare .me-ch,.me-compare .me-cr,.me-spec .me-sr{grid-template-columns:1fr}
  .me-flow .me-row{flex-direction:column;gap:14px}
  .me-flow .me-arrow{transform:rotate(90deg)}
  .me-team{grid-template-columns:repeat(2,1fr)}
  .me-timeline,.me-contact{flex-direction:column;text-align:center}
  .me-step .me-sl{display:none}
}
