:root{--mpa-accent:#d96b43;--mpa-paper:#f2efe9;--mpa-ink:#1d1e20;--mpa-card:#e4ded5;--mpa-line:color-mix(in srgb,var(--mpa-ink) 16%,transparent);--mpa-muted:color-mix(in srgb,var(--mpa-ink) 61%,transparent);--mpa-gutter:clamp(20px,4vw,64px);--mpa-max:1600px;--mpa-ease:cubic-bezier(.16,1,.3,1);--mpa-cols:2;--mpa-mobile-cols:1;--mpa-gap:36px;--mpa-radius:0px}
.mp-portfolio-active{background:var(--mpa-paper);color:var(--mpa-ink)}.mpa-main{background:var(--mpa-paper);color:var(--mpa-ink);overflow:clip;font-family:inherit}.mpa-main *{box-sizing:border-box}.mpa-main img{max-width:100%;height:auto}.mpa-main a{color:inherit}.mpa-shell{width:min(100%,var(--mpa-max));margin:0 auto;padding-left:var(--mpa-gutter);padding-right:var(--mpa-gutter)}
.mpa-hero{padding:clamp(150px,17vw,245px) 0 clamp(78px,8vw,125px)}.mpa-hero-meta{display:flex;justify-content:space-between;align-items:center;padding-bottom:22px;border-bottom:1px solid var(--mpa-line)}.mpa-kicker{font-size:10px;text-transform:uppercase;letter-spacing:.14em;font-weight:700}.mpa-count{font-size:11px;color:var(--mpa-muted)}.mpa-count b{color:var(--mpa-ink);font-size:14px;margin-right:4px}.mpa-hero-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);gap:clamp(40px,9vw,150px);align-items:end;padding-top:clamp(50px,7vw,95px)}.mpa-title{font-size:clamp(70px,11vw,182px);line-height:.84;letter-spacing:-.068em;font-weight:520;margin:0;max-width:8ch;text-wrap:balance;position:relative}.mpa-title:after{content:"";display:block;width:clamp(55px,7vw,100px);height:clamp(7px,.75vw,12px);background:var(--mpa-accent);margin-top:clamp(25px,3vw,45px)}.mpa-intro{font-size:clamp(17px,1.5vw,23px);line-height:1.62;color:var(--mpa-muted);max-width:600px;margin:0}
.mpa-work{padding:0 0 clamp(100px,13vw,200px)}.mpa-toolbar{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;padding:20px 0 34px;border-top:1px solid var(--mpa-line)}.mpa-filters{display:flex;flex-wrap:wrap;gap:8px}.mpa-filters button{appearance:none;border:1px solid var(--mpa-line);background:transparent;color:var(--mpa-ink);border-radius:999px;padding:10px 14px;font:inherit;font-size:11px;cursor:pointer;transition:background .28s var(--mpa-ease),color .28s var(--mpa-ease),transform .28s var(--mpa-ease),border-color .28s}.mpa-filters button:hover{transform:translateY(-2px)}.mpa-filters button.is-active{background:var(--mpa-ink);border-color:var(--mpa-ink);color:var(--mpa-paper)}.mpa-filter-status{font-size:11px;color:var(--mpa-muted);white-space:nowrap}
.mpa-grid{display:grid;gap:var(--mpa-gap)}.mpa-card{min-width:0}.mpa-card[hidden]{display:none!important}.mpa-card-link{text-decoration:none;display:block}.mpa-media{position:relative;overflow:hidden;background:var(--mpa-card);border-radius:var(--mpa-radius);isolation:isolate;transform-style:preserve-3d;transition:transform .45s var(--mpa-ease),box-shadow .45s var(--mpa-ease)}.mpa-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s var(--mpa-ease),filter .5s var(--mpa-ease)}.mpa-placeholder{height:100%;min-height:320px;display:grid;place-items:center;background:linear-gradient(145deg,var(--mpa-card),color-mix(in srgb,var(--mpa-accent) 48%,var(--mpa-paper)));color:var(--mpa-paper)}.mpa-placeholder span{font-size:clamp(70px,11vw,170px);font-weight:500;opacity:.86}.mpa-open{position:absolute;right:16px;top:16px;width:48px;height:48px;border-radius:50%;background:var(--mpa-paper);display:grid;place-items:center;font-size:18px;transform:translateY(10px) scale(.92);opacity:0;transition:opacity .35s var(--mpa-ease),transform .35s var(--mpa-ease);z-index:3}.mpa-index{position:absolute;left:16px;bottom:15px;font-size:10px;letter-spacing:.12em;color:#fff;text-shadow:0 1px 12px rgba(0,0,0,.45);z-index:3}.mpa-copy{padding:16px 0 0;border-top:1px solid var(--mpa-line);margin-top:14px}.mpa-copy-top{display:flex;justify-content:space-between;align-items:flex-start;gap:24px}.mpa-copy h2{font-size:clamp(28px,3.2vw,50px);line-height:.98;letter-spacing:-.045em;font-weight:520;margin:0}.mpa-copy-top>span{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--mpa-muted);text-align:right;max-width:180px;padding-top:6px}.mpa-copy p{margin:12px 0 0;max-width:650px;color:var(--mpa-muted);font-size:14px;line-height:1.55}
.mpa-hover-zoom .mpa-card:hover img{transform:scale(1.035)}.mpa-hover-lift .mpa-card:hover .mpa-media{transform:translateY(-7px);box-shadow:0 24px 60px rgba(29,30,32,.12)}.mpa-hover-tilt .mpa-card:hover .mpa-open,.mpa-hover-zoom .mpa-card:hover .mpa-open,.mpa-hover-lift .mpa-card:hover .mpa-open{opacity:1;transform:none}.mpa-hover-none .mpa-open{display:none}
/* Editorial: asymmetric but still predictable and easy to scan. */
.mpa-layout-editorial .mpa-grid{grid-template-columns:repeat(12,minmax(0,1fr));row-gap:clamp(45px,7vw,105px)}.mpa-layout-editorial .mpa-card{grid-column:span 6}.mpa-layout-editorial .mpa-card.is-featured{grid-column:1/-1}.mpa-layout-editorial .mpa-card-3,.mpa-layout-editorial .mpa-card-6{grid-column:span 7}.mpa-layout-editorial .mpa-card-4,.mpa-layout-editorial .mpa-card-1:not(.is-featured){grid-column:span 5}.mpa-layout-editorial .mpa-media{aspect-ratio:4/3}.mpa-layout-editorial .mpa-card.is-featured .mpa-media{aspect-ratio:16/8.4}.mpa-layout-editorial .mpa-card-3 .mpa-media,.mpa-layout-editorial .mpa-card-6 .mpa-media{aspect-ratio:16/11}.mpa-layout-editorial .mpa-card-4 .mpa-media{aspect-ratio:4/5}
/* Grid: consistent cards, columns controlled from settings. */
.mpa-layout-grid .mpa-grid{grid-template-columns:repeat(var(--mpa-cols),minmax(0,1fr));align-items:start}.mpa-layout-grid.mpa-ratio-landscape .mpa-media{aspect-ratio:4/3}.mpa-layout-grid.mpa-ratio-square .mpa-media{aspect-ratio:1}.mpa-layout-grid.mpa-ratio-portrait .mpa-media{aspect-ratio:4/5}.mpa-layout-grid .mpa-copy h2{font-size:clamp(26px,2.7vw,42px)}
/* Index: minimal list layout with visual weight still coming from project images. */
.mpa-layout-index .mpa-grid{display:block;border-top:1px solid var(--mpa-line)}.mpa-layout-index .mpa-card{border-bottom:1px solid var(--mpa-line)}.mpa-layout-index .mpa-card-link{display:grid;grid-template-columns:90px minmax(250px,.65fr) minmax(280px,1fr);gap:clamp(24px,5vw,80px);align-items:center;padding:24px 0}.mpa-layout-index .mpa-media{grid-column:3;grid-row:1;width:min(100%,560px);justify-self:end;aspect-ratio:16/10}.mpa-layout-index .mpa-copy{grid-column:2;grid-row:1;border:0;margin:0;padding:0}.mpa-layout-index .mpa-copy-top{display:block}.mpa-layout-index .mpa-copy-top>span{display:block;text-align:left;padding:0 0 12px}.mpa-layout-index .mpa-copy h2{font-size:clamp(32px,4.6vw,70px)}.mpa-layout-index .mpa-copy p{max-width:540px}.mpa-layout-index .mpa-index{position:static;color:var(--mpa-muted);text-shadow:none;display:none}.mpa-layout-index .mpa-card-link:before{content:attr(data-index);grid-column:1;grid-row:1;color:var(--mpa-muted);font-size:11px}
.mpa-empty{padding:clamp(80px,10vw,150px) 0;border-top:1px solid var(--mpa-line)}.mpa-empty>span{font-size:11px;color:var(--mpa-muted)}.mpa-empty h2{font-size:clamp(45px,7vw,100px);letter-spacing:-.055em;line-height:.95;font-weight:520;max-width:9ch;margin:22px 0}.mpa-empty p{max-width:600px;color:var(--mpa-muted);line-height:1.6}
.mpa-end{background:var(--mpa-ink);color:var(--mpa-paper);padding:clamp(90px,12vw,180px) 0}.mpa-end-grid{display:grid;grid-template-columns:.35fr 1fr;gap:clamp(40px,8vw,130px);align-items:start}.mpa-end-copy h2{font-size:clamp(55px,8.5vw,135px);line-height:.88;letter-spacing:-.06em;font-weight:520;margin:0 0 clamp(45px,7vw,90px);max-width:8ch}.mpa-end-copy a{display:flex;justify-content:space-between;align-items:center;text-decoration:none;border-top:1px solid color-mix(in srgb,var(--mpa-paper) 35%,transparent);border-bottom:1px solid color-mix(in srgb,var(--mpa-paper) 35%,transparent);padding:20px 0;font-size:clamp(18px,2vw,28px)}.mpa-end-copy a span{color:var(--mpa-accent);font-size:1.2em}
/* JS only adds is-pending after it has successfully loaded, so content never disappears when JS fails. */
.mpa-reveal.is-pending{opacity:0;transform:translateY(24px)}.mpa-reveal{transition:opacity .8s var(--mpa-ease),transform .9s var(--mpa-ease)}.mpa-reveal.is-visible{opacity:1;transform:none}.mpa-card.is-filter-enter{animation:mpaFilterIn .45s var(--mpa-ease) both}@keyframes mpaFilterIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media(max-width:1000px){.mpa-hero-grid{grid-template-columns:1.25fr .75fr;gap:50px}.mpa-layout-editorial .mpa-card,.mpa-layout-editorial .mpa-card-3,.mpa-layout-editorial .mpa-card-4,.mpa-layout-editorial .mpa-card-6{grid-column:span 6}.mpa-layout-index .mpa-card-link{grid-template-columns:60px 1fr .9fr;gap:24px}.mpa-layout-index .mpa-copy h2{font-size:clamp(30px,5vw,54px)}}
@media(max-width:760px){:root{--mpa-gutter:18px}.mpa-hero{padding-top:122px;padding-bottom:72px}.mpa-hero-meta{align-items:flex-start}.mpa-count{padding-top:1px}.mpa-hero-grid{grid-template-columns:1fr;gap:38px;padding-top:45px}.mpa-title{font-size:clamp(64px,20vw,98px);line-height:.86;max-width:7ch}.mpa-title:after{height:7px;margin-top:24px}.mpa-intro{font-size:17px;max-width:92%}.mpa-toolbar{align-items:flex-start;flex-direction:column;padding-bottom:26px}.mpa-filters{width:100%;overflow:auto;flex-wrap:nowrap;padding-bottom:3px;scrollbar-width:none}.mpa-filters::-webkit-scrollbar{display:none}.mpa-filters button{white-space:nowrap}.mpa-filter-status{display:none}.mpa-layout-editorial .mpa-grid,.mpa-layout-grid .mpa-grid{display:grid;grid-template-columns:repeat(var(--mpa-mobile-cols),minmax(0,1fr));gap:42px 14px}.mpa-layout-editorial .mpa-card,.mpa-layout-editorial .mpa-card-3,.mpa-layout-editorial .mpa-card-4,.mpa-layout-editorial .mpa-card-6,.mpa-layout-editorial .mpa-card.is-featured{grid-column:auto}.mpa-layout-editorial .mpa-media,.mpa-layout-editorial .mpa-card.is-featured .mpa-media,.mpa-layout-editorial .mpa-card-3 .mpa-media,.mpa-layout-editorial .mpa-card-4 .mpa-media,.mpa-layout-editorial .mpa-card-6 .mpa-media{aspect-ratio:4/5}.mpa-layout-grid.mpa-ratio-landscape .mpa-media{aspect-ratio:4/5}.mpa-copy{margin-top:11px;padding-top:13px}.mpa-copy-top{display:block}.mpa-copy h2{font-size:clamp(28px,9vw,42px)}.mpa-copy-top>span{display:block;text-align:left;padding:8px 0 0}.mpa-copy p{font-size:13px}.mpa-open{opacity:1;transform:none;width:42px;height:42px}.mpa-layout-index .mpa-grid{border-top:1px solid var(--mpa-line)}.mpa-layout-index .mpa-card-link{display:grid;grid-template-columns:1fr;gap:15px;padding:24px 0}.mpa-layout-index .mpa-media,.mpa-layout-index .mpa-copy{grid-column:1;grid-row:auto;width:100%}.mpa-layout-index .mpa-media{aspect-ratio:4/3}.mpa-layout-index .mpa-copy h2{font-size:38px}.mpa-end-grid{grid-template-columns:1fr;gap:50px}.mpa-end-copy h2{font-size:clamp(56px,17vw,88px)}.mpa-reveal.is-pending{transform:translateY(18px)}}
@media(prefers-reduced-motion:reduce){.mpa-reveal,.mpa-media,.mpa-media img,.mpa-open,.mpa-filters button{transition:none!important}.mpa-reveal.is-pending{opacity:1!important;transform:none!important}.mpa-card.is-filter-enter{animation:none!important}}
