/* Project stories: quiet editorial copy and a scroll-revealed image sequence. */
body.work-body #modal .modal-panel{scroll-behavior:auto;overscroll-behavior:contain;background:#f7f7f4;--story-paper:#f7f7f4}
body.work-body #modal .panel-nav{position:relative;top:auto;padding:20px 5.3%;border:0;min-height:0;background:transparent}
body.work-body #modal .exit{border:0;padding:8px 0;font-size:14px;background:transparent}
body.work-body #modal .story-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin:30px 8% 74px}
body.work-body #modal .story-heading h2.ptitle{font-size:clamp(64px,8vw,138px)!important;line-height:1.02!important;letter-spacing:-.065em!important;max-width:13ch;margin:0;overflow-wrap:anywhere}
body.work-body #modal .story-category{font-size:13px;line-height:1.4;color:#687063;text-align:right;padding-bottom:10px;max-width:180px;flex-shrink:0}
body.work-body #modal .panel-grid{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:7vw;margin:0 8%;align-items:start}
body.work-body #modal .panel-body{position:sticky;top:35px;padding:0 0 70px;border:0;min-width:0;align-self:start;background:transparent}
body.work-body #modal .panel-body .sublabel,body.work-body #modal #mPid{display:none}
body.work-body #modal .summary p{font-size:clamp(16px,1.28vw,19px);line-height:1.6;color:#687063;margin:0 0 26px;letter-spacing:-.01em}
body.work-body #modal .summary p:first-child{font-size:clamp(23px,2.15vw,33px);line-height:1.28;color:#242923;letter-spacing:-.035em;margin-bottom:42px}
body.work-body #modal .summary .project-source{font-size:14px;margin:35px 0}
body.work-body #modal .project-source a{color:#242923;text-decoration-thickness:1px;text-underline-offset:5px}
body.work-body #modal .spec{display:flex;flex-wrap:wrap;gap:24px;border:0;margin-top:36px;padding:0}
body.work-body #modal .spec .cell{border:0;padding:0;background:transparent;max-width:230px}
body.work-body #modal .spec .cell .k{font-size:12px!important;margin-bottom:5px;color:#7b8276}
body.work-body #modal .spec .cell .v{font-size:15px!important;line-height:1.4!important;color:#454d40}
body.work-body #modal .story-art{min-width:0}
body.work-body #modal .panel-vis{display:block!important;background:transparent;padding:0!important;border:0;min-height:0!important;height:auto!important;overflow:visible}
body.work-body #modal #mHero{display:block;width:100%;height:auto!important;max-height:none!important;object-fit:contain;position:static;transform:none!important;border-radius:0}
body.work-body #modal .story-image{position:relative;margin:0;line-height:0;isolation:isolate;cursor:zoom-in!important}
body.work-body #modal .story-image img{display:block;width:100%;height:auto!important;max-height:none!important;object-fit:contain!important;transform:none!important;border-radius:0!important;background:transparent!important;opacity:1!important;filter:none!important}
body.work-body #modal .story-image canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:2}
body.work-body #modal .story-image:focus-visible{outline:2px solid #69765d;outline-offset:5px}
body.work-body #modal .mosaic-wrap{padding:0;border:0;margin-top:24px}
body.work-body #modal .mosaic-head{display:none}
body.work-body #modal .mosaic{display:flex!important;flex-direction:column;gap:24px;columns:auto;padding:0}
body.work-body #modal .mosaic figure{display:block;width:100%;margin:0;padding:0;height:auto!important;background:transparent;overflow:visible;transform:none!important;opacity:1!important}
body.work-body #modal .mosaic figure img{height:auto!important;max-height:none!important}
body.work-body #modal .mosaic figure figcaption{display:none}
body.work-body #modal .panel-foot{display:none}
body.work-body #modal .story-next{margin:110px 8% 70px;border-top:1px solid #d7dbd1;padding:35px 0 0;display:grid;grid-template-columns:1fr 1.4fr;gap:45px;align-items:center}
body.work-body #modal .story-next>span{align-self:start;color:#737d69;font-size:14px}
body.work-body #modal .story-next button{display:flex;align-items:center;gap:26px;text-align:left;border:0;background:none;padding:0;color:#242923;font-family:inherit;width:100%;cursor:pointer}
body.work-body #modal .story-next img{width:32%;max-height:260px;object-fit:contain;transition:transform .5s}
body.work-body #modal .story-next button:hover img{transform:translateY(-7px)}
body.work-body #modal .story-next strong{font-size:clamp(25px,3vw,44px);font-weight:400;line-height:1.12;letter-spacing:-.04em}
body.work-body #modal .story-next small{display:block;font-size:14px;margin-top:16px;letter-spacing:0}
body.work-body #modal .story-progress{height:2px;position:sticky;top:0;z-index:20;background:#58654b;transform:scaleX(0);transform-origin:left;margin-bottom:-2px;pointer-events:none}
body.work-body #modal.open .story-heading{animation:story-enter .65s cubic-bezier(.2,.7,.2,1) both}
@keyframes story-enter{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1500px){body.work-body #modal .panel-grid,body.work-body #modal .story-heading,body.work-body #modal .story-next{max-width:1510px;margin-left:auto;margin-right:auto;width:84%}}
@media(max-width:800px){body.work-body #modal .story-heading{margin:24px 6% 42px;display:block}body.work-body #modal .story-heading h2.ptitle{font-size:clamp(50px,10vw,80px)!important;max-width:16ch}body.work-body #modal .story-category{text-align:left;margin-top:20px;max-width:none}body.work-body #modal .panel-grid{grid-template-columns:1fr;margin:0 6%;gap:25px}body.work-body #modal .panel-body{position:static;padding:0 0 20px}body.work-body #modal .summary p:first-child{font-size:25px;margin-bottom:25px}body.work-body #modal .summary p{font-size:16px}body.work-body #modal .spec{margin-top:26px}body.work-body #modal .story-next{margin:64px 6% 42px;display:block;padding-top:22px}body.work-body #modal .story-next button{margin-top:30px}body.work-body #modal .story-next img{width:36%}body.work-body #modal .mosaic{gap:18px}body.work-body #modal .mosaic-wrap{margin-top:18px}}
@media(prefers-reduced-motion:reduce){body.work-body #modal.open .story-heading{animation:none}body.work-body #modal .story-next img{transition:none}}
