/* Full-width media, readable text. Only individual portfolio projects. */
.msm-project{--project-gap:clamp(8px,1.1vw,18px)}
.msm-project .project-hero__image{width:100%;margin:0}
.msm-project .project-hero__image img{display:block;width:100%;height:auto;max-height:none;object-fit:contain}
.msm-project-summary{display:grid;grid-template-columns:1fr 1.4fr;gap:clamp(32px,7vw,110px);padding-block:clamp(60px,8vw,115px)}
.msm-project-summary h2{font-size:clamp(32px,4vw,56px);line-height:1;letter-spacing:-.055em;margin:0}
.msm-project-summary>div:last-child{font-size:clamp(17px,1.7vw,22px);line-height:1.65;overflow-wrap:anywhere}
.msm-project-summary p:last-child{margin-bottom:0}
.msm-project-content{padding-block:clamp(24px,4vw,60px);display:flow-root}
.msm-project-content>*{width:min(750px,calc(100% - 48px));margin:0 auto 28px;font-size:18px;line-height:1.7;box-sizing:border-box}
.msm-project-content>h2{font-size:clamp(30px,4vw,50px);line-height:1.1;letter-spacing:-.05em;margin-top:50px}
.msm-project-content>h3{font-size:28px;line-height:1.2;margin-top:36px}
.msm-project-content>blockquote{border-left:3px solid var(--orange);padding-left:24px}
.msm-project-content>:is(.wp-block-image,.wp-block-gallery,.gallery,.wp-block-video,.wp-block-embed,.wp-block-cover,.wp-block-columns,.msm-project-media,.alignfull){width:100%;max-width:none;margin:var(--project-gap) 0;float:none;clear:both}
.msm-project-content .wp-block-image img{display:block;width:100%;height:auto;max-width:100%}
.msm-project-content .wp-block-image a,.msm-project-content .msm-image-open{display:block;width:100%;height:100%}
.msm-project-content .msm-image-open{background:transparent;padding:0;border:0;cursor:zoom-in;line-height:0}
.msm-project-content .wp-block-gallery,.msm-project-content .gallery{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--project-gap)!important;align-items:start}
.msm-project-content .wp-block-gallery .wp-block-image,.msm-project-content .gallery .gallery-item{width:100%!important;max-width:none!important;margin:0!important;min-width:0;float:none}
.msm-project-content .wp-block-gallery .wp-block-image img{height:auto!important;aspect-ratio:4/3;object-fit:cover!important}
.msm-gallery-editorial .wp-block-gallery>.wp-block-image:nth-child(7n+1),.msm-gallery-editorial .gallery>.gallery-item:nth-child(7n+1){grid-column:1/-1}
.msm-gallery-grid .msm-project-content .wp-block-gallery,.msm-gallery-grid .msm-project-content .gallery{grid-template-columns:repeat(3,minmax(0,1fr))}
.msm-gallery-stack .msm-project-content .wp-block-gallery,.msm-gallery-stack .msm-project-content .gallery{grid-template-columns:1fr}
.msm-project-content figcaption{font-size:12px;line-height:1.5;text-align:center;padding:12px 20px;position:static!important;background:transparent!important;color:var(--muted)!important;max-height:none!important;margin:0!important}
.msm-project-content .wp-block-gallery>figcaption{grid-column:1/-1}
.msm-project-content .wp-block-video video{display:block;width:100%;height:auto;max-height:90vh;background:var(--ink)}
.msm-project-content .wp-block-embed iframe{width:100%;max-width:100%}
.msm-project-content .wp-block-columns{padding-inline:var(--project-gap);gap:var(--project-gap)}
.msm-project-content .gallery br{display:none}
.msm-project-content .gallery img{border:0!important;width:100%;height:auto}
.msm-project-content .wp-block-gallery>.wp-block-image{display:block!important;align-self:start;flex:none!important}
.msm-project-content .wp-block-gallery .wp-block-image :is(a,button){height:auto!important;margin:0!important}
.msm-project-content .gallery :is(dt,dd){margin:0!important}
.msm-project-content .gallery img{aspect-ratio:4/3;object-fit:cover}
.msm-gallery-editorial .wp-block-gallery>.wp-block-image:nth-child(7n+1) img,.msm-gallery-editorial .gallery>.gallery-item:nth-child(7n+1) img{aspect-ratio:16/9}
.msm-gallery-stack .wp-block-gallery .wp-block-image img,.msm-gallery-stack .gallery img{aspect-ratio:auto}
.msm-project-content .wp-block-gallery{--wp--style--unstable-gallery-gap:var(--project-gap);--wp--style--gallery-gap-default:var(--project-gap)}
.msm-project-content :is(.wp-block-gallery>.wp-block-image,.gallery-item){position:relative}
.msm-project-content :is(.wp-block-gallery>.wp-block-image>figcaption,.gallery-caption){position:absolute!important;inset:auto 0 0!important;background:linear-gradient(transparent,rgba(0,0,0,.8))!important;color:#fff!important;padding:24px 12px 10px!important;pointer-events:none}
.msm-project-film{margin:clamp(30px,5vw,75px) 0;background:var(--ink);color:var(--paper);padding-top:1px}
.msm-project-film h2{font-size:clamp(28px,4vw,52px);letter-spacing:-.05em;line-height:1.1;padding-block:32px;margin:0}
.msm-project-film>video{display:block;width:100%;height:auto;max-height:90vh;object-fit:contain;background:#111}
.msm-film-cover{position:relative;aspect-ratio:16/9;display:grid;place-items:center;min-height:300px;isolation:isolate}
.msm-film-cover>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.35;z-index:-1}
.msm-film-action{text-align:center;padding:30px;display:grid;justify-items:center;gap:18px}
.msm-film-action p{max-width:450px;font-size:13px;margin:0}.msm-film-action .button{color:#111}
.msm-film-cover>iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.msm-project-content a:not(.msm-image-open){text-underline-offset:4px}
@media(max-width:750px){.msm-project-summary{grid-template-columns:1fr;gap:25px}.msm-project-content .wp-block-gallery,.msm-gallery-grid .msm-project-content .wp-block-gallery,.msm-project-content .gallery{grid-template-columns:1fr!important}.msm-project-content>*{font-size:17px}.msm-film-cover{aspect-ratio:auto;min-height:360px}.msm-film-cover:has(iframe){aspect-ratio:16/9;min-height:0}.msm-project .project-hero__inner{align-items:start}}
@media(max-width:750px){.msm-mobile-2 .msm-project-content :is(.wp-block-gallery,.gallery){grid-template-columns:repeat(2,minmax(0,1fr))!important}.msm-mobile-2 .msm-project-content :is(.wp-block-image,.gallery-item){grid-column:auto!important}.msm-mobile-2 .msm-project-content :is(.wp-block-gallery,.gallery) img{aspect-ratio:1/1!important;object-fit:cover!important}.msm-mobile-2 .msm-project-content figcaption{padding:8px 4px;font-size:11px}.msm-project{--project-gap:8px}}
