:root{
  --ink:#141414; --paper:#F2F0EA; --vermilion:#E8462B; --grey:#8A8880;
}
*{box-sizing:border-box; margin:0; padding:0;}
html{scroll-behavior:smooth;}
body{background:var(--ink); color:var(--paper); font-family:'Space Grotesk', sans-serif;}
@media (prefers-reduced-motion: reduce){*{animation-duration:0.001ms !important; transition-duration:0.001ms !important;}}
a{color:inherit; text-decoration:none;}
.mn-wrap{max-width:1180px; margin:0 auto; padding:0 32px;}

.mn-header{position:fixed; top:0; left:0; right:0; z-index:50; background:rgba(20,20,20,0.9); border-bottom:1px solid rgba(242,240,234,0.12); backdrop-filter:blur(6px);}
.mn-nav{height:74px; display:flex; align-items:center; justify-content:space-between;}
.mn-logo{font-weight:700; font-size:1.1rem; text-transform:uppercase; letter-spacing:0.04em;}
.mn-links{display:flex; gap:28px; font-family:'IBM Plex Mono', monospace; font-size:0.75rem; text-transform:uppercase;}
.mn-links a{border-bottom:1px solid transparent;}
.mn-links a:hover{border-color:var(--vermilion);}

.mn-hero{padding:180px 0 100px; border-bottom:1px solid rgba(242,240,234,0.12);}
.mn-eyebrow{font-family:'IBM Plex Mono', monospace; font-size:0.8rem; color:var(--vermilion); text-transform:uppercase; margin-bottom:26px;}
.mn-headline{font-weight:700; font-size:clamp(2.6rem,7vw,5.6rem); line-height:0.98; text-transform:uppercase; letter-spacing:-0.02em; max-width:16ch;}
.mn-sub{margin-top:30px; max-width:46ch; font-size:1.05rem; color:#C9C7BF; font-weight:400;}

.mn-section{padding:100px 0; border-bottom:1px solid rgba(242,240,234,0.12);}
.mn-invert{background:var(--paper); color:var(--ink); border-bottom:none;}
.mn-invert .mn-section-head span{color:#6b6a63;}
.mn-section-head{display:flex; justify-content:space-between; align-items:baseline; margin-bottom:46px; font-family:'IBM Plex Mono', monospace; font-size:0.78rem; text-transform:uppercase; color:var(--grey); border-bottom:1px solid rgba(242,240,234,0.12); padding-bottom:22px;}
.mn-section-head h2{font-size:1.9rem; text-transform:none; font-family:'Space Grotesk', sans-serif; font-weight:700; color:inherit;}

.mn-ledger{display:flex; flex-direction:column;}
.mn-row{
  display:grid; grid-template-columns:56px 1fr auto; gap:20px; align-items:center;
  padding:22px 0; border-bottom:1px solid rgba(242,240,234,0.1);
  transition:padding-left 0.25s;
}
.mn-row:hover{padding-left:14px; border-color:var(--vermilion);}
.mn-row-num{font-family:'IBM Plex Mono', monospace; color:var(--vermilion); font-size:0.85rem;}
.mn-row-title{font-size:1.3rem; font-weight:500;}
.mn-row-meta{font-family:'IBM Plex Mono', monospace; font-size:0.72rem; color:var(--grey); text-transform:uppercase;}
@media (max-width:640px){.mn-row{grid-template-columns:36px 1fr;} .mn-row-meta{grid-column:2; margin-top:4px;}}

.mn-services{display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:rgba(20,20,20,0.1);}
@media (max-width:820px){.mn-services{grid-template-columns:1fr;}}
.mn-service{background:var(--paper); padding:6px 28px 28px 0;}
.mn-service-num{font-family:'IBM Plex Mono', monospace; color:var(--vermilion); font-size:0.8rem; margin-bottom:16px;}
.mn-service h3{font-size:1.3rem; margin-bottom:12px; font-weight:700;}
.mn-service p{font-size:0.92rem; line-height:1.6; color:#4a4944;}

.mn-studio-grid{display:grid; grid-template-columns:1.2fr 0.8fr; gap:60px;}
@media (max-width:820px){.mn-studio-grid{grid-template-columns:1fr;}}
.mn-body{font-size:1.02rem; line-height:1.8; color:#C9C7BF; max-width:52ch;}
.mn-body + .mn-body{margin-top:18px;}
.mn-stats{display:grid; grid-template-columns:1fr 1fr; gap:28px;}
.mn-stat-fig{font-size:2.6rem; font-weight:700; color:var(--vermilion);}
.mn-stat-lbl{font-family:'IBM Plex Mono', monospace; font-size:0.7rem; text-transform:uppercase; color:var(--grey); margin-top:6px;}

.mn-contact-lead{font-size:clamp(1.8rem,4vw,3rem); font-weight:700; max-width:18ch; line-height:1.1; margin-bottom:36px;}
.mn-contact-details{display:flex; gap:28px; flex-wrap:wrap; font-family:'IBM Plex Mono', monospace; font-size:0.9rem;}
.mn-contact-details a{border-bottom:1px solid var(--ink);}
.mn-contact-details a:hover{color:var(--vermilion); border-color:var(--vermilion);}

.mn-footer{padding:28px 32px; display:flex; justify-content:space-between; font-family:'IBM Plex Mono', monospace; font-size:0.7rem; color:var(--grey);}
