/* Midgard Capital — brand styles */
:root{
  --mc-ink:#0E1B2A;        /* deepest navy */
  --mc-navy:#13294B;       /* primary navy */
  --mc-slate:#2E4159;      /* steel slate */
  --mc-gold:#C7A24B;       /* gold accent */
  --mc-gold-lt:#D8BD7A;    /* light gold */
  --mc-muted:#6B7785;      /* muted text */
  --mc-mist:#F5F7FA;       /* light background */
  --mc-line:#E2E8F0;       /* hairline border */
  --mc-white:#FFFFFF;
}

body{ color:#1B2733; }

/* ---------- Hero ---------- */
.mc-hero{
  background:linear-gradient(160deg,var(--mc-ink) 0%,var(--mc-navy) 60%,var(--mc-slate) 100%);
  color:var(--mc-white);
  padding:110px 24px 96px;
  text-align:center;
}
.mc-hero .mc-eyebrow{
  text-transform:uppercase; letter-spacing:.28em; font-size:.78rem;
  color:var(--mc-gold-lt); margin:0 0 22px; font-weight:600;
}
.mc-hero h1{
  font-family:Georgia,'Times New Roman',serif; font-weight:400;
  font-size:clamp(2.1rem,4.6vw,3.5rem); line-height:1.12;
  margin:0 auto 22px; max-width:14ch; color:#fff;
}
.mc-hero p.lede{
  font-size:clamp(1.05rem,1.6vw,1.3rem); line-height:1.6;
  max-width:46ch; margin:0 auto 38px; color:#C9D4E0;
}
.mc-btn{
  display:inline-block; background:var(--mc-gold); color:var(--mc-ink);
  text-decoration:none; padding:14px 34px; border-radius:3px;
  font-weight:600; letter-spacing:.06em; text-transform:uppercase; font-size:.86rem;
  transition:background .15s ease;
}
.mc-btn:hover{ background:var(--mc-gold-lt); }
.mc-btn.ghost{ background:transparent; color:#fff; border:1px solid rgba(255,255,255,.45); margin-left:10px; }
.mc-btn.ghost:hover{ background:rgba(255,255,255,.08); }

/* ---------- Section scaffolding ---------- */
.mc-section{ max-width:1080px; margin:0 auto; padding:78px 24px; }
.mc-section.tight{ max-width:760px; }
.mc-section h2{
  font-family:Georgia,'Times New Roman',serif; font-weight:400;
  font-size:clamp(1.7rem,3vw,2.3rem); color:var(--mc-navy); margin:0 0 14px;
}
.mc-kicker{
  text-transform:uppercase; letter-spacing:.24em; font-size:.74rem;
  color:var(--mc-gold); font-weight:700; margin:0 0 10px;
}
.mc-lead{ font-size:1.12rem; line-height:1.75; color:var(--mc-slate); max-width:62ch; }
.mc-alt{ background:var(--mc-mist); }

/* ---------- Pillars (3-up) ---------- */
.mc-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:30px; margin-top:46px; }
.mc-card{
  background:var(--mc-white); border:1px solid var(--mc-line); border-radius:6px;
  padding:32px 28px; box-shadow:0 1px 3px rgba(14,27,42,.04);
}
.mc-card h3{ font-size:1.18rem; color:var(--mc-navy); margin:0 0 10px; }
.mc-card p{ color:var(--mc-muted); line-height:1.65; margin:0; font-size:.98rem; }
.mc-card .mc-num{ font-family:Georgia,serif; color:var(--mc-gold); font-size:1.4rem; display:block; margin:0 0 14px; }

/* ---------- Portfolio ---------- */
.mc-portfolio{ display:grid; grid-template-columns:repeat(3,1fr); gap:28px; margin-top:46px; }
.mc-pf{
  display:flex; flex-direction:column; background:var(--mc-white);
  border:1px solid var(--mc-line); border-radius:6px; padding:30px 28px;
  text-decoration:none; transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease;
}
.mc-pf:hover{ transform:translateY(-3px); box-shadow:0 10px 26px rgba(14,27,42,.10); border-color:var(--mc-gold-lt); }
.mc-pf .mc-pf-tag{ font-size:.72rem; text-transform:uppercase; letter-spacing:.18em; color:var(--mc-gold); font-weight:700; margin:0 0 12px; }
.mc-pf h3{ font-size:1.25rem; color:var(--mc-navy); margin:0 0 10px; }
.mc-pf p{ color:var(--mc-muted); line-height:1.6; margin:0 0 18px; font-size:.96rem; flex:1; }
.mc-pf .mc-pf-link{ color:var(--mc-navy); font-weight:600; font-size:.9rem; letter-spacing:.02em; }
.mc-pf .mc-pf-link span{ color:var(--mc-gold); }

/* ---------- Stat strip ---------- */
.mc-stats{ display:grid; grid-template-columns:repeat(3,1fr); gap:30px; text-align:center; }
.mc-stat .n{ font-family:Georgia,serif; font-size:2.6rem; color:var(--mc-gold); line-height:1; }
.mc-stat .l{ display:block; margin-top:10px; color:#C9D4E0; text-transform:uppercase; letter-spacing:.14em; font-size:.78rem; }
.mc-band{ background:var(--mc-navy); color:#fff; }
.mc-band .mc-section{ padding-top:60px; padding-bottom:60px; }

/* ---------- Prose (About / legal) ---------- */
.mc-prose{ font-size:1.04rem; line-height:1.8; color:#27313D; }
.mc-prose h2{ margin-top:42px; }
.mc-prose h3{ color:var(--mc-navy); margin-top:30px; margin-bottom:8px; font-size:1.15rem; }
.mc-prose ul{ padding-left:22px; }
.mc-prose li{ margin-bottom:8px; }
.mc-prose a{ color:var(--mc-navy); }

/* ---------- Contact ---------- */
.mc-contact-grid{ display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:start; }
.mc-contact-info p{ margin:0 0 6px; }
.mc-contact-info .mc-label{ text-transform:uppercase; letter-spacing:.16em; font-size:.74rem; color:var(--mc-gold); font-weight:700; margin-top:22px; }

/* ---------- CTA ---------- */
.mc-cta{ text-align:center; }

/* ---------- Site footer bar ---------- */
.mc-footer{ background:var(--mc-ink); color:#C9D4E0; padding:40px 24px; }
.mc-footer-inner{ max-width:1080px; margin:0 auto; display:flex; flex-wrap:wrap; align-items:center; gap:16px 28px; }
.mc-footer-brand{ font-family:Georgia,serif; color:#fff; font-size:1.05rem; letter-spacing:.02em; }
.mc-footer-nav{ display:flex; flex-wrap:wrap; gap:22px; flex:1; }
.mc-footer-nav a{ color:#C9D4E0; text-decoration:none; font-size:.9rem; letter-spacing:.03em; }
.mc-footer-nav a:hover{ color:var(--mc-gold-lt); }
.mc-footer-copy{ width:100%; border-top:1px solid rgba(255,255,255,.12); padding-top:18px; margin-top:6px; font-size:.8rem; color:#8593A3; }
@media (max-width:820px){ .mc-footer-nav{ flex-basis:100%; } }

@media (max-width:820px){
  .mc-grid,.mc-portfolio,.mc-stats{ grid-template-columns:1fr; }
  .mc-contact-grid{ grid-template-columns:1fr; }
  .mc-btn.ghost{ margin-left:0; margin-top:12px; }
}
