/* V35: native media, close photographic grids, and a steady descending reel. */
:root{--collection-ink:#11191c;--collection-paper:#e9e8e3}

/* Film frames preserve the actual picture. Rows share a height, not a matte. */
.film-grid,.home-films .film-grid,.films-page .film-grid{display:block}
.film-grid .work-row{display:grid;grid-template-columns:var(--row-columns);gap:clamp(16px,2.2vw,34px);align-items:start;width:100%;max-width:none;margin:0 0 clamp(46px,5vw,76px);animation:none!important;translate:none!important;transform:none!important;clip-path:none!important;opacity:1!important}
.film-grid .work-row:last-child{margin-bottom:0}
.film-grid .work-row-portrait{max-width:1080px;margin-left:auto;margin-right:auto}
.film-grid .work-row-portrait[data-count="2"]{max-width:800px}
.film-grid .work-row-portrait[data-count="1"]{max-width:360px}
.film-grid .work-tile{width:100%;min-width:0;animation:none!important;translate:none!important;transform:none!important;clip-path:none!important;opacity:1!important;margin:0;grid-column:auto!important}
.film-grid .work-row-portrait .work-tile:last-child:nth-child(odd){width:100%;justify-self:stretch;margin-top:0}
.film-grid .film-image{aspect-ratio:var(--film-ratio);background:#090e10;isolation:isolate}
.film-grid .film-image>img,.film-grid .film-image>video{object-fit:fill;transform:none!important;max-width:none;z-index:1}
.film-grid .film-image>img{transition:opacity .35s}
.film-grid .film-play{top:auto;left:18px;bottom:18px;padding:0;width:42px;height:42px;min-height:42px;background:#08101438;backdrop-filter:blur(6px);opacity:0;transform:translateY(4px);transition:opacity .25s,transform .25s;border:1px solid #ffffff80;z-index:3}
.film-grid .film-open:hover .film-play,.film-grid .film-open:focus-visible .film-play{opacity:1;transform:none}
.film-grid .film-length{top:auto;bottom:19px;right:17px;font-size:10px;z-index:3;padding:4px 7px;background:#08101472;backdrop-filter:blur(5px);border-radius:4px}
.film-grid .film-caption,.home-films .film-caption{display:block;min-height:0;padding:18px 0 0}
.film-grid .film-caption h3,.home-films .film-caption h3{font-size:clamp(22px,2vw,32px);line-height:1.2;letter-spacing:-.04em;max-width:100%;margin:0}
.film-grid .film-kind,.home-films .film-kind{display:block;font-size:9px;line-height:1.5;letter-spacing:.08em;margin:0 0 8px;color:#92a29f}
.film-grid .film-credit,.home-films .film-credit{display:block;font-size:12px;line-height:1.65;margin-top:10px;color:#abb7b3}
.film-grid .film-client{display:block;font-size:10px;line-height:1.6;color:#859792;margin-top:2px}
.work-bottom,.home-films .work-bottom{position:static;clear:both;display:flex;align-items:center;justify-content:space-between;gap:25px;border:0;padding:0;margin:54px auto 0;max-width:1600px;transform:none}
.home-films .work-bottom>.page-text-link{border:1px solid #b7c5be55;border-radius:50px;padding:0 24px;font-size:13px;min-height:50px;gap:0;text-decoration:none}
.home-films .work-bottom>.page-text-link>span{display:none}
.work-bottom>a:last-child{font-size:12px;text-decoration:none;color:#a4b3ac;min-height:44px;display:inline-flex;align-items:center;border:0}
.work-bottom a{max-width:none!important;white-space:nowrap}
.home-films.work-section{padding-top:110px;padding-bottom:85px;overflow:visible}
.work-topline{border:0}.films-page .page-top{padding-bottom:28px;margin-bottom:28px}.films-page>.page-wrap{padding-bottom:0}.films-page .work-section{padding-bottom:60px;overflow:visible}
.films-page .work-filters{gap:6px}.films-page .work-filters button{font-size:13px}

/* Photographs carry the grid. Names, source and position live in the viewer. */
.shots-section{padding-top:100px;padding-bottom:90px;overflow:visible;background:#101719}
.shots-section .collection-heading{margin-bottom:36px;align-items:flex-end}
.collection-actions{display:flex;flex-direction:column;align-items:flex-end;gap:15px;flex-shrink:0}
.collection-cta{display:flex;align-items:center;gap:18px;font-size:14px;min-height:44px;color:#e2e8df}
.collection-cta>span{font-family:var(--reading-font);font-size:11px;color:#93a49b}
.unsplash-cta{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:50px;padding:0 22px;border:1px solid #afbeb16b;border-radius:50px;color:#e1e7dc;font-family:var(--reading-font);font-size:13px;line-height:1.3;text-decoration:none;white-space:nowrap;transition:background .2s,color .2s,border-color .2s}
.unsplash-cta svg{width:17px;height:17px;fill:currentColor;flex-shrink:0}
.unsplash-cta:hover{background:#e4e8df;color:#17221e;border-color:#e4e8df}
.featured-photo-grid{display:grid;column-count:unset;gap:12px;width:100%;max-width:1600px;margin:0 auto}
.featured-photo-row{display:grid;grid-template-columns:var(--photo-columns);gap:12px;align-items:start}
.featured-photo-pair{display:contents}
.featured-photo-grid .shot{width:100%;margin:0;break-inside:auto;display:block;padding:0}
.featured-photo-grid .shot-window{display:block;aspect-ratio:auto;overflow:hidden}
.featured-photo-grid img{position:static!important;width:100%;height:auto;max-width:none;display:block;object-fit:cover;transform:none!important;scale:1!important}
.shots-section .shot,.photograph-grid .shot{animation:none!important;translate:none!important;transform:none!important;clip-path:none!important}
.shots-section .shot button,.photograph-grid .shot button{padding:0;border:0;display:block;width:100%;border-radius:0;min-height:0}
.shot-caption,.shot-number,.collection-facts,.collection-close{display:none!important}
body[data-page="photography"],body[data-page="photography"] .footer,.photography35{background:var(--collection-paper);color:var(--collection-ink)}
.photography35 .page-wrap{max-width:1720px;padding-bottom:0}
.photography35 .page-top{align-items:flex-end;padding-bottom:30px}
.photography35 .unsplash-cta{background:#172321;color:#eceee8;border-color:#172321;margin-bottom:9px}
.photography35 .unsplash-cta:hover{background:#33443d;border-color:#33443d}
.photo-category-bar{position:relative;padding:0 0 28px}
.photo-categories{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.photo-categories button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 19px;border:1px solid transparent;border-radius:50px;color:#5d6961;font-family:var(--reading-font);font-size:13px;line-height:1.4;white-space:nowrap;transition:background .2s,color .2s}
.photo-categories button:hover{background:#13281e0a;color:#12231a}
.photo-categories button[aria-pressed="true"]{background:#172321;color:#f0f0e9;border-color:#172321}
.photography35 .photograph-grid{column-count:3;column-gap:12px;display:flow-root;padding:0 0 80px;margin:0;min-height:35svh}
.photography35 .photograph-grid .shot{margin:0 0 12px;break-inside:avoid;display:block;padding:0}
.photography35 .photograph-grid .shot[hidden]{display:none!important}
.photograph-grid .shot-window{aspect-ratio:auto;background:none}
.photograph-grid .shot-window img{display:block;position:static;width:100%;height:auto;transform:none!important}
.photography35 .will-reveal{translate:none!important;transform:none!important}

/* About keeps its accepted portrait opening. The story reads as one calm essay. */
.about35{background:#101719}
.about35-story{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(65px,9vw,150px);align-items:start;padding-top:65px;padding-bottom:110px;scroll-margin-top:100px}
.about35-archive{position:sticky;top:125px;align-self:start;margin:0;max-width:560px}
.about35-archive figure{margin:0;overflow:hidden}
.about35-archive img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:47% center}
.about35-archive>p{font-size:12px;color:#889d95;margin-top:18px}
.about35-archive>a{display:inline-flex;align-items:center;min-height:44px;font-size:13px;color:#c9bcab;margin-top:4px}
.about35-copy{max-width:650px;padding-top:0}
.about35-copy>section+section{margin-top:65px}
.about35-copy h2{font-size:clamp(27px,2.6vw,38px);font-weight:500;line-height:1.25;letter-spacing:-.035em;margin:0 0 25px;color:#edece5}
.about35-copy p{font-family:var(--reading-font);font-size:clamp(17px,1.52vw,21px);line-height:1.75;letter-spacing:-.012em;color:#b6c2bd;margin:0}
.about35-copy p+p{margin-top:20px}
.about35-experience article+article{margin-top:35px}
.about35-copy .about35-experience h3{font-family:var(--reading-font);font-size:20px;font-weight:500;line-height:1.4;letter-spacing:-.015em;margin:0 0 6px;color:#d7dfd8}
.about35-experience h3>span{font-size:12px;font-weight:400;color:#889d95;display:block;margin-top:5px}
.about35-copy .about35-role{font-size:12px;color:#c4b297;margin-bottom:16px;line-height:1.6;letter-spacing:0}
.about35-copy .about35-experience p:not(.about35-role){font-size:clamp(17px,1.4vw,20px)}
.about35-link{display:inline-flex;align-items:center;min-height:46px;font-family:var(--reading-font);font-size:13px;color:#ddc5a7;margin-top:24px;border-bottom:1px solid #bba78860}
.about35 .will-reveal{translate:none!important;transform:none!important;transition:opacity .6s}

/* A designed path alternates the composition; the camera never hunts sideways. */
@media(min-width:801px){
 .journey-chapter .story-copy,.journey-chapter:last-child .story-copy{width:min(41vw,600px);max-width:600px}
 .journey-chapter[data-side="left"] .story-copy{margin-left:0;margin-right:auto}
 .journey-chapter[data-side="right"] .story-copy{margin-left:auto;margin-right:0}
 .storycraft .journey-shade,.storycraft[data-side="left"] .journey-shade,.storycraft[data-side="right"] .journey-shade{background:none;opacity:1}
 .journey-shade:before,.journey-shade:after{content:none}
 /* Contrast stays with the passage; neighbouring bends are never curtained off. */
 .journey-chapter .story-copy{position:relative;isolation:isolate}
 .journey-chapter .story-copy:before{content:'';position:absolute;inset:-35px -100px -35px -35px;z-index:-1;pointer-events:none;background:linear-gradient(90deg,#080d11c2 0%,#080d11b8 calc(100% - 100px),#080d1100 100%);mask-image:linear-gradient(180deg,transparent,#000 35px,#000 calc(100% - 35px),transparent)}
 .journey-chapter[data-side="right"] .story-copy:before{inset:-35px -35px -35px -100px;background:linear-gradient(270deg,#080d11c2 0%,#080d11b8 calc(100% - 100px),#080d1100 100%)}
 .journey-chapter .story-copy p,.journey-chapter .story-copy h3{text-shadow:0 1px 8px #080d1180}
 .journey-chapter:first-child .story-copy{translate:0 -9svh}
 .story-copy .story-paragraph{font-size:clamp(17px,1.35vw,20px);line-height:1.72}
}

/* There are no rules crossing captions or media at the end of a collection. */
.footer35.footer-refined{display:grid;grid-template-columns:1fr auto auto;gap:12px 35px;min-height:0;padding:34px var(--pad) 28px;border:0;background:#090e10;align-items:center}
.footer35>.wordmark{font-size:25px;justify-self:start}
.footer35 .footer-contact{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 25px;border:1px solid #a9baac60;border-radius:50px;font-size:13px;color:#e1d7c5;white-space:nowrap}
.footer35 .footer-socials{display:flex;align-items:center;gap:6px;justify-self:end}
.footer35 .footer-socials a{width:44px;height:44px;min-height:44px;display:grid;place-items:center;border-radius:50%;color:#b9c7bf;transition:background .2s,color .2s}
.footer35 .footer-socials a:hover{color:#fff;background:#ffffff0c}
.footer-socials svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.footer-socials .icon-fill,.footer-socials .icon-dot,.footer-socials .icon-play{fill:currentColor;stroke:none}
.footer35 .footer-meta{grid-column:1/3;font-family:var(--reading-font);font-size:10px;line-height:1.7;color:#81958a;margin:0}
.footer35 .footer-meta>span:first-child{padding:0 8px}
.footer35 .credits-button{justify-self:end;font-size:10px;min-height:35px;color:#879a90}
body[data-page="photography"] .footer35{border:0;color:#24362d}
body[data-page="photography"] .footer35>.wordmark{color:#24362d}
body[data-page="photography"] .footer35 .footer-contact{color:#24362d;border-color:#526b5a60}
body[data-page="photography"] .footer35 .footer-socials a{color:#43594b}
body[data-page="photography"] .footer35 .footer-meta,body[data-page="photography"] .footer35 .credits-button{color:#56645c}

@media(min-width:1800px){.photography35 .photograph-grid{column-count:4}}
@media(max-width:1100px){
 .collection-actions{gap:10px}.unsplash-cta{font-size:12px;padding:0 18px}.collection-cta{font-size:13px;gap:12px}
 .about35-story{gap:6vw;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}.about35-archive{top:110px}
 .film-grid .film-caption h3{font-size:25px}
}
@media(max-width:800px){
 .about35-story{display:block;padding-top:45px;padding-bottom:70px}.about35-archive{position:static;max-width:none;display:none}.about35-copy{max-width:640px;margin:auto}.about35-copy>section+section{margin-top:48px}.about35-copy h2{font-size:30px}.about35-copy p,.about35-copy .about35-experience p:not(.about35-role){font-size:17px;line-height:1.8}
 .photography35 .photograph-grid{column-count:2;column-gap:10px;padding-bottom:60px}.photography35 .photograph-grid .shot{margin-bottom:10px}
 .photo-category-bar{padding-bottom:23px}.photo-categories{gap:5px}.photo-categories button{font-size:12px;padding:0 14px;min-height:44px}
 .photography35 .page-top{display:block}.photography35 .page-top .unsplash-cta{margin-top:28px;margin-bottom:0}
}
@media(max-width:700px){
 .films-page .work-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.films-page .work-filters button,.films-page .work-filters button:nth-child(-n+2){grid-column:auto;font-size:12px;padding:9px 8px}
 .shots-section{padding-top:65px;padding-bottom:65px}.shots-section .collection-heading{display:block;margin-bottom:25px}.collection-actions{align-items:flex-start;flex-direction:row;flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:23px}.collection-cta{flex-direction:column;align-items:flex-start;gap:2px;justify-content:center;font-size:13px}.collection-cta>span{font-size:10px}.unsplash-cta{min-height:46px;padding:0 16px;font-size:11px;gap:9px}.unsplash-cta svg{width:15px;height:15px}
 .featured-photo-grid{gap:10px}.featured-photo-row{display:block}.featured-photo-pair{display:grid;grid-template-columns:var(--pair-columns);gap:10px;margin-bottom:10px}.featured-photo-pair:last-child{margin-bottom:0}
 .home-films.work-section{padding-top:65px;padding-bottom:55px}.work-section .collection-heading{margin-bottom:25px}.work-section .collection-note{font-size:12px}.home-films .work-topline{padding-bottom:20px}
 .film-grid .work-row{display:block;margin-bottom:30px}.film-grid .work-row .work-tile+.work-tile{margin-top:30px}.film-grid .work-row-portrait{display:grid;grid-template-columns:var(--row-columns);gap:25px 12px;max-width:none}.film-grid .work-row-portrait .work-tile+.work-tile{margin-top:0}.film-grid .work-row-portrait[data-count="3"]{grid-template-columns:var(--row-columns);gap:10px}
 .film-grid .work-row-portrait .film-caption h3{font-size:17px;letter-spacing:-.025em}.film-grid .work-row-portrait[data-count="3"] .film-caption h3{font-size:14px}.film-grid .work-row-portrait .film-kind{font-size:7px;letter-spacing:.04em;margin-bottom:6px}.film-grid .work-row-portrait .film-credit{font-size:9px;margin-top:8px}.film-grid .work-row-portrait .film-client{font-size:8px}.film-grid .film-caption{padding-top:15px}.film-grid .film-caption h3{font-size:26px}.film-grid .film-play{width:35px;height:35px;min-height:35px;left:12px;bottom:12px}.film-grid .film-length{font-size:9px;right:10px;bottom:10px;padding:3px 5px}.film-grid .work-row-portrait .film-play{display:none}.film-grid .work-row-portrait .film-length{font-size:8px;right:5px;bottom:6px}
 .work-bottom,.home-films .work-bottom{margin-top:34px;gap:15px}.home-films .work-bottom>.page-text-link{font-size:12px;padding:0 18px;min-height:46px}.work-bottom>a:last-child{font-size:11px}
 .footer35.footer-refined{grid-template-columns:1fr auto;gap:18px 10px;padding-top:30px;padding-bottom:25px}.footer35>.wordmark{font-size:24px}.footer35 .footer-contact{grid-column:2;grid-row:1;min-height:46px;font-size:12px;padding:0 22px}.footer35 .footer-socials{grid-column:1/3;grid-row:2;justify-self:start;margin-left:-9px}.footer35 .footer-meta{grid-column:1;grid-row:3;font-size:9px}.footer35 .credits-button{grid-column:2;grid-row:3}
}
@media(prefers-reduced-motion:reduce){.unsplash-cta,.photo-categories button,.film-grid .film-play{transition:none}}
.storycraft.is-reading .journey-chapter[data-side] .story-copy{width:100%;max-width:none;margin:0}
.storycraft.is-reading .journey-chapter .story-copy:before{content:none}
.storycraft.is-reading .journey-chapter .story-copy{translate:none}
