/* MF Publications — scoped under .mfpub so it inherits the theme but never leaks.
   Colours use the Mauritius Finance brand palette; typography is inherited. */
.mfpub{
  --mfpub-navy:#001030;--mfpub-navy-2:#0a1c44;--mfpub-blue:#0090d0;--mfpub-blue-d:#0079b0;
  --mfpub-gold:#f0b000;--mfpub-orange:#f05020;
  --mfpub-ink:#1b2440;--mfpub-muted:#5a6478;--mfpub-line:#dfe6ef;
  --mfpub-shadow:0 12px 34px rgba(0,16,48,.10);--mfpub-shadow-sm:0 4px 14px rgba(0,16,48,.07);
  --mfpub-radius:12px;
  color:var(--mfpub-ink);
}
.mfpub *{box-sizing:border-box}
.mfpub img{max-width:100%;display:block}
.mfpub .mfpub-intro{color:var(--mfpub-muted);max-width:720px;margin:0 0 34px;font-size:1.05rem;line-height:1.6}

/* shared bits */
.mfpub-eyebrow{display:inline-block;font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--mfpub-blue);margin-bottom:8px}
.mfpub-loading{color:var(--mfpub-muted);font-size:.92rem;padding:40px;text-align:center}

/* ---- Latest edition feature ---- */
.mfpub-latest{display:grid;grid-template-columns:1.35fr 1fr;gap:48px;align-items:center;margin-bottom:64px}
@media(max-width:880px){.mfpub-latest{grid-template-columns:1fr;gap:30px}}
.mfpub-stage{display:flex;flex-direction:column;align-items:center;gap:14px}
.mfpub-flipwrap{width:100%;display:flex;justify-content:center}
.mfpub-flipbook{box-shadow:0 24px 60px rgba(0,16,48,.28)}
.mfpub-flipbook .mfpub-page{background:#fff;display:flex;align-items:center;justify-content:center;overflow:hidden}
.mfpub-flipbook .mfpub-page canvas{width:100%;height:100%;display:block;object-fit:contain}
.mfpub-flipbook .mfpub-page .mfpub-ph{color:#aab4c2;font-size:.85rem;font-weight:600;font-variant-numeric:tabular-nums}

.mfpub-controls{display:flex;align-items:center;gap:16px;font-weight:600}
.mfpub-controls button{width:42px;height:42px;border-radius:50%;border:1.5px solid var(--mfpub-line);background:#fff;color:var(--mfpub-navy);font-size:1.2rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:.15s;padding:0}
.mfpub-controls button:hover{background:var(--mfpub-navy);color:#fff;border-color:var(--mfpub-navy)}
.mfpub-counter{min-width:78px;text-align:center;font-variant-numeric:tabular-nums;color:var(--mfpub-muted)}
.mfpub-hint{font-size:.82rem;color:var(--mfpub-muted)}

.mfpub-meta .mfpub-eyebrow{color:var(--mfpub-orange)}
.mfpub-issueno{display:block;color:var(--mfpub-gold);font-weight:800;letter-spacing:.03em;text-transform:uppercase;font-size:.85rem;margin-bottom:4px}
.mfpub-title{font-size:1.9rem;line-height:1.18;color:var(--mfpub-navy);margin:0 0 18px;font-weight:800}
.mfpub-actions{display:flex;gap:12px;flex-wrap:wrap}
.mfpub-btn{display:inline-flex;align-items:center;gap:8px;cursor:pointer;border:0;border-radius:7px;font-weight:700;font-size:.98rem;padding:13px 24px;transition:.15s;text-decoration:none;font-family:inherit;line-height:1}
.mfpub-btn:hover{transform:translateY(-1px)}
.mfpub-btn-navy{background:var(--mfpub-navy);color:#fff}.mfpub-btn-navy:hover{background:var(--mfpub-navy-2);color:#fff}
.mfpub-btn-line{background:#fff;border:1.5px solid var(--mfpub-navy);color:var(--mfpub-navy)}.mfpub-btn-line:hover{background:var(--mfpub-navy);color:#fff}

/* ---- Archive grid ---- */
.mfpub-archive-h{font-size:1.55rem;color:var(--mfpub-navy);font-weight:800;margin:0 0 8px}
.mfpub-sub{color:var(--mfpub-muted);margin:0 0 28px}
.mfpub-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px 26px}
@media(max-width:1024px){.mfpub-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:720px){.mfpub-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:440px){.mfpub-grid{grid-template-columns:1fr}}
.mfpub-card{background:#fff;border:1px solid var(--mfpub-line);border-radius:var(--mfpub-radius);overflow:hidden;box-shadow:var(--mfpub-shadow-sm);transition:.2s;cursor:pointer;display:flex;flex-direction:column}
.mfpub-card:hover{transform:translateY(-4px);box-shadow:var(--mfpub-shadow)}
.mfpub-card .mfpub-cover{aspect-ratio:1/1.414;background:var(--mfpub-navy);position:relative;overflow:hidden}
.mfpub-card .mfpub-cover img,.mfpub-card .mfpub-cover canvas{width:100%;height:100%;object-fit:cover;display:block}
.mfpub-card .mfpub-overlay{position:absolute;inset:0;background:rgba(0,16,48,.55);display:flex;align-items:center;justify-content:center;opacity:0;transition:.2s}
.mfpub-card:hover .mfpub-overlay{opacity:1}
.mfpub-card .mfpub-overlay span{background:#fff;color:var(--mfpub-navy);font-weight:700;padding:10px 18px;border-radius:7px;font-size:.9rem}
.mfpub-card .mfpub-body{padding:14px 16px 18px}
.mfpub-card .mfpub-num{color:var(--mfpub-gold);font-weight:800;font-size:.74rem;letter-spacing:.05em;text-transform:uppercase}
.mfpub-card h4{color:var(--mfpub-navy);font-size:1rem;margin:4px 0 2px;font-weight:700;line-height:1.25}
.mfpub-card .mfpub-date{color:var(--mfpub-muted);font-size:.85rem}

.mfpub-nojs{margin:20px 0;padding-left:18px}
.mfpub-nojs a{color:var(--mfpub-blue)}

/* ---- Modal ---- */
.mfpub-modal{position:fixed;inset:0;z-index:100000;background:rgba(2,8,24,.9);display:none;align-items:center;justify-content:center;flex-direction:column;gap:14px;padding:18px}
.mfpub-modal.mfpub-open{display:flex}
.mfpub-mtop{display:flex;justify-content:space-between;align-items:center;width:100%;max-width:1320px;color:#fff}
.mfpub-mtitle{font-weight:700;font-size:1.05rem}
.mfpub-mtitle small{display:block;color:#9fb4cf;font-weight:500;font-size:.82rem;margin-top:2px}
.mfpub-mclose{background:none;border:0;color:#fff;font-size:1.9rem;line-height:1;cursor:pointer;padding:0}
.mfpub-modal .mfpub-controls button{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.25);color:#fff}
.mfpub-modal .mfpub-controls button:hover{background:#fff;color:var(--mfpub-navy)}
.mfpub-modal .mfpub-counter{color:#cdd9e8}
.mfpub-modal .mfpub-hint{color:#9fb4cf}
