/* All six portraits are physically cropped to 1200 × 1500. */
img,.hero-portrait .hero-photo,.story-frame,.client-frame,.work-frame{border-radius:2px!important;border:0;box-shadow:none}
.story-sequence{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:start}
.story-stage{min-width:0;display:grid;grid-template-rows:auto auto auto;align-content:start}
.story-stage .stage-label{margin:0 0 12px;color:#b5b6b4}
.warning-stage .stage-label{color:#C8372D}
.story-frame,.client-frame{position:relative;aspect-ratio:4/5;overflow:hidden;isolation:isolate}
.story-frame img,.client-frame .client-photo{position:static!important;width:100%!important;height:100%!important;max-width:100%;inset:auto!important;object-fit:cover;object-position:top;filter:contrast(1.12) brightness(.95)}
.story-frame::after,.client-frame::after{content:"";position:absolute;inset:0;background:url('img/edit/grain.png') repeat;opacity:.06;pointer-events:none;z-index:1}
.story-stage figcaption{margin:16px 0 0;font-size:16px;line-height:24px;max-width:280px;min-height:48px}
.holter-annotation{position:absolute;left:36.9%;top:72.8%;z-index:2;display:flex;align-items:center;transform:translate(-5px,-5px);pointer-events:none;white-space:nowrap}
.holter-annotation>i{width:10px;height:10px;border:2px solid #C8372D;border-radius:50%;background:transparent;flex-shrink:0}
.holter-annotation::after{content:"";width:24px;height:1px;background:#C8372D;order:1}
.holter-annotation>span{order:2;padding-left:6px;font-family:'Inter',Arial,sans-serif;font-size:11px;font-weight:600;letter-spacing:.12em;color:#fff;line-height:1}
.case-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;grid-template-rows:auto auto auto auto auto;align-items:stretch}
.case{grid-row:span 5;grid-template-rows:subgrid;row-gap:0}
.work-photo img{filter:contrast(1.12) brightness(.95)}
.hero-photo{filter:saturate(.9) contrast(1.05)}
.story-dots{display:none}
@media(max-width:767px){
 .story-sequence{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:0;scrollbar-width:none;padding-bottom:8px;overscroll-behavior-x:contain}
 .story-sequence::-webkit-scrollbar{display:none}
 .story-stage{flex:0 0 82%;scroll-snap-align:start;scroll-snap-stop:always}
 .story-stage figcaption{font-size:16px;max-width:280px}
 .story-dots{display:flex;justify-content:center;align-items:center;gap:0;margin-top:16px}
 .story-dots button{width:32px;height:32px;padding:12px;background:transparent;border:0;display:grid;place-items:center}
 .story-dots button::after{content:"";display:block;width:6px;height:6px;border-radius:50%;background:#777}
 .story-dots button[aria-current=true]::after{background:#C8372D}
 .case-grid{grid-template-columns:1fr;grid-template-rows:none;gap:40px}
 .case{grid-row:auto;grid-template-rows:auto auto auto auto auto}
}
