/* shared caption — MMG style: name bold caps 15px, credit 11px */
.pc-t{margin-top:22px;font:700 14px/1.3 Outfit,sans-serif;letter-spacing:.08em;text-transform:uppercase;display:flex;gap:14px;align-items:baseline}
.pc-cl{font-weight:400;color:var(--mut);font-size:12px}
.pc-cr{margin-top:6px;font-size:12px;letter-spacing:.04em;color:#555}
/* A — faithful MMG */
.pa-wrap{padding:40px 20px 0;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;row-gap:110px}
.pa{display:block;text-decoration:none;color:var(--ink);width:100%}
.pa-im{position:relative;overflow:hidden;background:#e3e3e3}.pa-im img{transition:transform 1.4s cubic-bezier(.2,.6,.2,1)}.pa:hover .pa-im img{transform:scale(1.03)}
@media(min-width:900px){.pa.l55{width:55.3%}.pa.r38{width:38.3%}.pa.r55{width:55.3%}.pa.l38{width:38.3%}.pa.fw{width:100%}.pa.c76{width:76.1%;margin:0 auto}
.pa.off{margin-top:67px}.pa.off2{margin-top:181px}}
/* B — one per screen */
.pb{display:grid;text-decoration:none;color:var(--ink);border-top:1px solid var(--line)}
.pb-im{position:relative;aspect-ratio:4/5;overflow:hidden}.pb-tx{padding:28px 24px 64px}
.pb-n{display:block;font:500 12px Outfit;letter-spacing:.2em;color:var(--mut);margin-bottom:10px}
.pb .pc-t{font-size:clamp(26px,3vw,44px);letter-spacing:.04em;margin-top:0}.pb-go{display:inline-block;margin-top:28px;font:600 11px Outfit;letter-spacing:.2em;text-transform:uppercase;border-bottom:1px solid}
@media(min-width:900px){.pb{grid-template-columns:62% 1fr;height:100vh;min-height:640px;align-items:center}.pb-im{height:100%;aspect-ratio:auto}.pb-tx{padding:0 64px}.pb.rev{grid-template-columns:1fr 62%}.pb.rev .pb-im{order:2}}
/* C — index list */
.pc-wrap{position:relative;padding-top:40px;padding-bottom:40px}
.pc-list{list-style:none;padding:0;margin:0;position:relative;z-index:2}
.pc-list a{display:grid;grid-template-columns:48px 1fr;align-items:baseline;gap:8px 16px;padding:18px 0;border-top:1px solid var(--line);text-decoration:none;color:var(--ink);transition:opacity .3s}
.pc-num{font:500 12px Outfit;color:var(--mut);letter-spacing:.15em}
.pc-name{font:700 clamp(30px,5.2vw,76px)/1 Outfit,sans-serif;text-transform:uppercase;letter-spacing:.02em}
.pc-meta{grid-column:2;font-size:13px;color:var(--mut)}
.pc-list:hover a{opacity:.28}.pc-list a:hover{opacity:1}
.pc-prev{display:none}
.pc-strip{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;margin:0 -24px 28px;padding:0 24px}
.pc-strip a{flex:0 0 68%;scroll-snap-align:start;text-decoration:none;color:var(--ink)}.pc-strip picture{aspect-ratio:4/5;overflow:hidden}.pc-strip span{display:block;margin-top:10px;font:700 12px Outfit;letter-spacing:.12em;text-transform:uppercase}
@media(min-width:900px){.pc-strip{display:none}.pc-list a{grid-template-columns:80px 1fr auto}.pc-meta{grid-column:auto;text-align:right}
.pc-prev{display:block;position:fixed;right:6vw;top:50%;transform:translateY(-50%);width:30vw;aspect-ratio:4/5;pointer-events:none;z-index:1}
.pc-p{position:absolute;inset:0;opacity:0;transition:opacity .4s}.pc-p.on{opacity:1}}
@media(min-width:900px){.pc-list{width:58%}.pc-list a{grid-template-columns:64px 1fr}.pc-meta{grid-column:2;text-align:left}}
@media(min-width:900px){.pc-wrap{display:grid;grid-template-columns:58% 1fr;gap:0 5vw;align-items:start}.pc-list{width:auto}.pc-prev{position:sticky;top:18vh;right:auto;transform:none;width:100%;max-width:440px;justify-self:end}}
@media(max-width:899px){.pa-wrap{row-gap:56px;padding:24px 0 0}.pa:not(.fw) .pa-im{aspect-ratio:4/5!important}.pa.fw .pa-im{aspect-ratio:4/3!important}}
@media(max-width:899px){.pa-wrap{padding:24px 20px 0}}.w .pa-wrap{padding-left:0;padding-right:0}
/* ---- fonts v3 (titles now Outfit, see v4) ---- */
body{font-family:Urbanist,sans-serif;font-weight:300}
h1,h2,h3,.pt,.big{font-weight:500;letter-spacing:.04em}
nav a,.btn,.lbl,.eyebrow,.kw,.filters{font-family:Outfit,serif;font-weight:500;letter-spacing:.16em}
.pc-t{font-family:Outfit,serif;font-weight:600;font-size:15px;letter-spacing:.12em}.pc-cl{font-family:Outfit,serif;font-weight:400;font-size:13px;letter-spacing:.12em}
.pc-cr{font-family:Urbanist,sans-serif;font-weight:300;font-size:12px;letter-spacing:.03em}
.hero.vid:after{display:none}
.h1q{font:500 11px Outfit,serif;letter-spacing:.24em;text-transform:uppercase;color:var(--mut);text-align:center;margin:0 0 18px}
.intro{font-family:Urbanist,sans-serif;font-weight:300}
/* project page — MMG layout */
.pj{display:grid;gap:36px;padding-top:110px;padding-bottom:40px}
.pj-t{font:500 clamp(30px,3.2vw,44px)/1.05 Outfit,serif;text-transform:uppercase;letter-spacing:.06em;margin-bottom:26px}
.pj-cr{display:grid;grid-template-columns:auto 1fr;gap:10px 22px;margin:0}
.pj-cr dt{font:500 11px Outfit,serif;letter-spacing:.16em;text-transform:uppercase;padding-top:2px}
.pj-cr dd{margin:0;font-size:14px}
.pgrid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.pg{position:relative;display:block;aspect-ratio:4/5;overflow:hidden;background:#e3e3e3;cursor:zoom-in}
.pg img{transition:transform 1s ease}.pg:hover img{transform:scale(1.03)}
@media(min-width:1000px){.pj{grid-template-columns:300px 1fr;gap:56px;padding-top:120px}.pj-side{position:sticky;top:110px;align-self:start}.pgrid{grid-template-columns:repeat(3,1fr);gap:14px}}
.pj .vids{margin-top:14px}
.lb{position:fixed;inset:0;background:rgba(245,245,245,.97);z-index:50;display:flex;align-items:center;justify-content:center}
.lb img{max-width:92vw;max-height:88vh;object-fit:contain}
.lb button{position:absolute;background:none;border:0;font:300 34px Urbanist,sans-serif;color:#131313;cursor:pointer;padding:16px}
.lb .x{top:10px;right:14px}.lb .p{left:8px;top:50%;transform:translateY(-50%)}.lb .n{right:8px;top:50%;transform:translateY(-50%)}
/* ---- fonts v4: Bareface match (Cassannet Plus -> Outfit 700/400, Radikal Thin -> Urbanist 300) ---- */
body{font-family:Urbanist,sans-serif;font-weight:300;letter-spacing:.01em}
h1,h2,h3,.pt,.big,.pj-t,.cap b,.board b,.acard b,.pc-name{font-family:Outfit,sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.pc-t,.wc-t,.city b{font-family:Outfit,sans-serif;font-weight:700;letter-spacing:.06em}
.pc-cl,.wc-cl{font-family:Outfit,sans-serif;font-weight:400;letter-spacing:.04em}
nav a,.btn,.filters{font-family:Outfit,sans-serif;font-weight:400;letter-spacing:.04em}
.lbl,.eyebrow,.kw,.pj-cr dt,.credits dt,.h1q,.form label,.wa,.pb-go{font-family:Outfit,sans-serif;font-weight:500;letter-spacing:.12em}
/* page titles: refined */
.pt{font-size:clamp(30px,4.2vw,58px);line-height:1;margin-bottom:28px}
.pj-t{font-size:clamp(26px,2.6vw,38px)}
.top{padding-top:120px}
@media(max-width:700px){.top{padding-top:96px}.pt{margin-bottom:20px}}
/* header: larger for tablet/desktop */
@media(min-width:701px){
 .hd{padding:24px 32px}
 .logo img{height:26px}
 nav a{font-size:14px;margin-left:30px;opacity:1}
 .mb{width:34px}.mb i{height:1.5px;margin:8px 0}
}
@media(min-width:1200px){nav a{font-size:15px;margin-left:38px}.logo img{height:28px}}
.open nav a,.open nav a.x{font-size:28px;font-weight:700;letter-spacing:.06em}
@media(min-width:760px){nav{display:flex}nav a.x{display:none}}
@media(min-width:760px) and (max-width:999px){nav a{font-size:13px;margin-left:22px}.logo img{height:24px}.hd{padding:22px 24px}}
/* ---- header v5: solid bar, no fades, bigger nav ---- */
:root{--hh:64px}
@media(min-width:760px){:root{--hh:92px}}
.hd{background:#f0f0f0!important;border-bottom:1px solid #E6E6E1;box-shadow:none!important;height:var(--hh);padding:0 20px!important}
.hero:after,.hero.vid:after{display:none!important}
.hero,.hx2{margin-top:var(--hh);height:calc(100vh - var(--hh))!important;height:calc(100svh - var(--hh))!important;min-height:480px!important}
.hero.short{height:calc(78vh - var(--hh))!important}
.logo img{height:25px!important;margin:0!important}
.mb{width:34px!important}.mb i{height:2px!important;margin:7px 0!important;background:#2D2926!important}
nav a{color:#2D2926;opacity:1}
@media(min-width:760px){
 .hd{padding:0 36px!important}
 .logo img{height:32px!important}
 nav a{font-size:15px!important;font-weight:400!important;letter-spacing:.06em!important;margin-left:26px!important;color:#2D2926;border-bottom-width:1px}
 .mb{width:40px!important;margin-left:30px!important}.mb i{margin:9px 0!important}
}
@media(min-width:1200px){.logo img{height:34px!important}nav a{font-size:16px!important;margin-left:40px!important}}
@media(min-width:760px) and (max-width:899px){nav a{font-size:14.5px!important;margin-left:18px!important}.logo img{height:28px!important}.hd{padding:0 24px!important}}
/* hero: Narminon flowers still */
.hx2{position:relative;overflow:hidden;background:#f0f0f0}.hx2 picture,.hx2 img{position:absolute;inset:0;width:100%;height:100%;display:block}.hx2 img{object-fit:cover;object-position:50% 14%}
@media(max-width:759px){.hx2 img{object-position:58% 8%}}@media(min-width:760px) and (max-aspect-ratio:1/1){.hx2 img{object-position:50% 10%}}
