@import url('https://fonts.googleapis.com/css2?family=Archivo:wdth,wght@62..125,400..900&family=IBM+Plex+Mono:wght@400;500&display=swap');
/* MMDESIGN site styles v1 */

.mm{--ink:#0E0E0E;--paper:#E6E5E2;--paper2:#D9D8D4;--graph:#2A2C2D;--muted:#55534F;--mutedD:#A9A6A0;--line:#C9C7C2;--lineD:#3A3B3C;font-family:'Archivo',Arial,sans-serif;color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased}
.mm *{box-sizing:border-box}
.mm a{color:inherit;text-decoration:none}
.mm img{display:block;width:100%;height:100%;object-fit:cover;filter:saturate(.75) contrast(1.04)}
.mm .mono{font-family:'IBM Plex Mono','Courier New',monospace;font-size:12px;letter-spacing:.08em;text-transform:uppercase;line-height:1.5}
.mm .px{padding-left:4vw;padding-right:4vw}
.mm h1,.mm h2,.mm h3,.mm p{margin:0}
.mm .dark{background:var(--ink);color:var(--paper)}
.mm .btn{display:inline-block;padding:17px 24px;font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:.08em;text-transform:uppercase;font-weight:500;transition:opacity .2s}
.mm .btn:hover{opacity:.75}
.mm .btn-l{background:var(--paper);color:var(--ink)}
.mm .btn-o{border:1px solid currentColor}
.mm .btn-d{background:var(--ink);color:var(--paper)}
/* header */
.mm-h{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:16px 32px;padding:18px 4vw;background:var(--ink);color:var(--paper);border-bottom:1px solid var(--lineD)}
.mm-logo{font-weight:900;font-size:26px;letter-spacing:-.045em;line-height:1}
.mm-nav{display:flex;gap:26px}
.mm-nav a:hover,.mm-lang a:hover{color:var(--mutedD)}
.mm-right{display:flex;align-items:center;gap:20px}
.mm-lang b{font-weight:500}.mm-lang a{color:var(--mutedD)}
@media(max-width:980px){.mm-nav{display:none}.mm-h .btn{display:none}}
/* hero */
.mm-hero{position:relative;min-height:calc(100vh - 63px);display:flex;flex-direction:column;justify-content:flex-end;color:var(--paper);overflow:hidden}
.mm-hero .bg{position:absolute;inset:0}
.mm-hero .bg:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,14,14,.35) 0%,rgba(14,14,14,.55) 45%,rgba(14,14,14,.92) 100%)}
.mm-hero .in{position:relative;padding:120px 4vw 44px}
.mm-hero h1{max-width:1200px;font-weight:800;font-stretch:75%;font-size:clamp(46px,7.2vw,124px);line-height:.9;letter-spacing:-.025em}
.mm-hero .row{display:flex;flex-wrap:wrap;gap:28px 64px;align-items:flex-end;justify-content:space-between;margin-top:36px}
.mm-hero .lead{max-width:560px;font-size:18px;line-height:28px}
.mm-hero .ctas{display:flex;flex-wrap:wrap;gap:12px}
.mm-strip{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 24px;padding:20px 4vw;color:var(--mutedD);border-top:1px solid var(--lineD)}
.mm-strip a:hover{color:var(--paper)}
/* sections */
.mm-sec{padding-top:112px;padding-bottom:112px}
.mm-k{color:var(--muted);margin-bottom:28px}
.dark .mm-k{color:var(--mutedD)}
.mm-h2{font-weight:800;font-size:clamp(34px,5vw,80px);line-height:.95;letter-spacing:-.02em;max-width:1100px}
.mm-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:40px;margin-top:72px}
.mm-col{border-top:1px solid var(--ink);padding-top:20px}
.mm-col .mono{margin-bottom:14px}
.mm-col p:not(.mono){font-size:16px;line-height:24px;color:var(--graph)}
/* services */
.mm-svc{display:flex;flex-wrap:wrap;align-items:baseline;gap:14px 40px;border-top:1px solid var(--ink);padding:32px 0;transition:background .2s}
.mm-svc:last-child{border-bottom:1px solid var(--ink)}
.mm-svc:hover h3{color:var(--muted)}
.mm-svc .n{flex:0 0 56px}
.mm-svc h3{flex:1 1 360px;font-weight:800;font-stretch:75%;font-size:clamp(32px,4vw,60px);line-height:.95;letter-spacing:-.02em}
.mm-svc p{flex:1 1 320px;font-size:16px;line-height:24px;color:var(--graph)}
.mm-svc .p{flex:0 0 170px;text-align:right}
@media(max-width:700px){.mm-svc .p{text-align:left}}
/* case */
.mm-case{display:flex;flex-wrap:wrap;gap:48px}
.mm-case .ph{flex:999 1 560px;min-height:640px;position:relative}
.mm-case .ph img{position:absolute;inset:0}
.mm-case .tx{flex:1 1 340px;display:flex;flex-direction:column;justify-content:space-between;gap:40px}
.mm-case h2{font-weight:800;font-stretch:75%;font-size:clamp(48px,6vw,96px);line-height:.9;letter-spacing:-.02em}
.mm-case .tx>div>p{margin-top:24px;font-size:18px;line-height:28px}
.mm-dl{margin:0}
.mm-dl div{display:flex;justify-content:space-between;gap:16px;border-top:1px solid var(--lineD);padding:12px 0}
.mm-dl div:last-child{border-bottom:1px solid var(--lineD)}
.mm-dl dt{color:var(--mutedD)}.mm-dl dd{margin:0;text-align:right}
@media(max-width:700px){.mm-case .ph{min-height:420px}}
/* grid */
.mm-top{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:40px}
.mm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:40px 24px}
.mm-card .im{aspect-ratio:4/5;overflow:hidden;background:var(--paper2)}
.mm-card img{transition:transform .6s}
.mm-card:hover img{transform:scale(1.03)}
.mm-card .cap{display:flex;justify-content:space-between;margin-top:14px}
.mm-card .cap span+span{color:var(--muted)}
/* method */
.mm-meth{background:var(--paper2)}
.mm-meth ol{list-style:none;margin:64px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:32px}
/* founder */
.mm-f{background:var(--graph);color:var(--paper)}
.mm-f .wrap{display:flex;flex-wrap:wrap;gap:56px}
.mm-f .ph{flex:1 1 340px;min-height:600px;position:relative}
.mm-f .ph img{position:absolute;inset:0;filter:grayscale(1) contrast(1.05)}
.mm-f .tx{flex:999 1 480px;display:flex;flex-direction:column;justify-content:space-between;gap:48px}
.mm-f .q{max-width:780px;font-weight:800;font-size:clamp(30px,3.4vw,54px);line-height:1;letter-spacing:-.02em}
.mm-f .bot{display:flex;flex-wrap:wrap;gap:32px 64px;align-items:flex-end;justify-content:space-between}
.mm-f .bot p{max-width:460px;font-size:16px;line-height:24px}
.mm-lock{display:inline-flex;flex-direction:column;gap:8px}
.mm-lock b{font-weight:900;font-size:56px;line-height:.86;letter-spacing:-.045em}
.mm-lock span{display:flex;justify-content:space-between;font-family:'IBM Plex Mono',monospace;font-size:9px;letter-spacing:.06em}
/* faq */
.mm-faq{max-width:1040px;border-bottom:1px solid var(--ink)}
.mm-faq details{border-top:1px solid var(--ink);padding:24px 0}
.mm-faq summary{cursor:pointer;list-style:none;font-weight:700;font-size:22px;line-height:28px;display:flex;justify-content:space-between;gap:24px}
.mm-faq summary::-webkit-details-marker{display:none}
.mm-faq summary:after{content:"+";font-family:'IBM Plex Mono',monospace;font-weight:400}
.mm-faq details[open] summary:after{content:"–"}
.mm-faq details p{margin-top:16px;max-width:760px;font-size:16px;line-height:24px;color:var(--graph)}
/* contact */
.mm-c h2{font-weight:800;font-stretch:75%;font-size:clamp(56px,9vw,160px);line-height:.88;letter-spacing:-.025em;margin-bottom:56px}
.mm-c .wrap{display:flex;flex-wrap:wrap;gap:48px;justify-content:space-between;align-items:flex-end}
.mm-c .lead{max-width:560px;font-size:18px;line-height:28px}
.mm-c .ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}
.mm-c .info{display:grid;gap:20px}
.mm-c .info span{color:var(--mutedD);display:block}
/* footer */
.mm-ft{padding:40px 4vw 28px;border-top:1px solid var(--lineD);overflow:hidden}
.mm-ft .big{text-align:center;font-weight:900;font-size:15.6vw;line-height:.82;letter-spacing:-.045em;white-space:nowrap}
.mm-ft .row{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px 32px;margin-top:28px;color:var(--mutedD)}
.mm-ft .row a:hover{color:var(--paper)}

/* page hero (no photo variant) */
.mm-ph{padding-top:96px;padding-bottom:88px}
.mm-ph h1{max-width:1200px;font-weight:800;font-stretch:75%;font-size:clamp(50px,8vw,136px);line-height:.88;letter-spacing:-.025em}
.mm-ph .row{display:flex;flex-wrap:wrap;gap:32px 64px;align-items:flex-end;justify-content:space-between;margin-top:48px}
.mm-ph .lead{max-width:600px;font-size:19px;line-height:29px}
.mm-ph .ctas{display:flex;flex-wrap:wrap;gap:12px}
.mm-band{position:relative;height:62vh;min-height:380px}
.mm-band img{position:absolute;inset:0}
.mm-clock{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px 24px;padding:20px 4vw}
.mm-clock span{color:var(--mutedD)}.mm-clock span.on{color:var(--paper)}
/* problems */
.mm-prob{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:0 40px;margin-top:64px}
.mm-prob>div{border-top:1px solid var(--ink);padding:24px 0 40px}
.mm-prob .mono{color:var(--muted);margin-bottom:8px}
.mm-prob .t{font-weight:700;font-size:22px;line-height:28px;margin-bottom:24px}
.mm-prob p:last-child{font-size:16px;line-height:24px;color:var(--graph)}
/* steps */
.mm-steps{list-style:none;margin:0;padding:0}
.mm-steps li{display:flex;flex-wrap:wrap;gap:12px 40px;align-items:baseline;border-top:1px solid var(--lineD);padding:28px 0}
.mm-steps li:last-child{border-bottom:1px solid var(--lineD)}
.mm-steps .n{flex:0 0 56px}
.mm-steps b{flex:1 1 360px;font-weight:800;font-stretch:75%;font-size:clamp(28px,3.2vw,48px);line-height:1;letter-spacing:-.02em}
.mm-steps span:last-child{flex:1 1 320px;font-size:16px;line-height:24px;color:var(--paper2)}
/* gallery */
.mm-gal{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}
.mm-gal figure{margin:0;overflow:hidden;background:var(--paper2)}
.mm-gal figure.w{grid-column:1/-1;aspect-ratio:16/8}
.mm-gal figure.t{aspect-ratio:4/5}
.mm-gal video{display:block;width:100%;height:100%;object-fit:cover}
.mm-facts{margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));border-bottom:1px solid var(--ink)}
.mm-facts div{padding:20px 20px 20px 0}
.mm-facts dt{color:var(--muted)}.mm-facts dd{margin:6px 0 0}
.mm-list{list-style:none;margin:0;padding:0;max-width:1100px;border-bottom:1px solid var(--ink)}
.mm-list li{display:flex;flex-wrap:wrap;gap:8px 40px;border-top:1px solid var(--ink);padding:24px 0}
.mm-list b{flex:1 1 340px;font-weight:700;font-size:24px;line-height:30px}
.mm-list span{flex:1 1 380px;font-size:16px;line-height:24px;color:var(--graph)}
.mm-next{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;margin-top:80px;padding-top:24px;border-top:1px solid var(--lineD)}
