
:root{--black:#101010;--white:#f3f2ef;--muted:#92918d;--line:rgba(255,255,255,.18);--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--black);color:var(--white);font-family:var(--sans);font-weight:300;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.site-header{height:86px;padding:0 5.4vw;display:flex;align-items:center;justify-content:space-between;position:absolute;z-index:20;top:0;left:0;width:100%;border-bottom:1px solid rgba(255,255,255,.14)}.wordmark{font-size:14px;letter-spacing:.22em;font-weight:500}.wordmark span{display:block;font-size:8px;letter-spacing:.34em;color:#aaa;margin-top:6px}.main-nav{display:flex;gap:clamp(18px,3vw,48px)}.main-nav a{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#c5c5c2;transition:color .2s}.main-nav a:hover,.main-nav a.active{color:#fff}.menu-toggle{display:none;background:none;border:0;color:white}.hero{height:min(850px,100svh);min-height:650px;position:relative;overflow:hidden;background:#222}.hero-image{width:100%;height:100%;object-fit:cover;object-position:center 48%;filter:brightness(.69)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.56),transparent 65%),linear-gradient(0deg,rgba(0,0,0,.34),transparent 35%)}.hero-copy{position:absolute;left:10.5vw;top:50%;transform:translateY(-43%)}.eyebrow{font-size:9px;letter-spacing:.28em;text-transform:uppercase;color:#a8a7a2;margin:0 0 22px}.hero h1{font-size:clamp(64px,9vw,136px);line-height:.91;letter-spacing:-.055em;font-weight:300;margin:0 0 42px}.hero h1 em,.section-pad h2 em,.page-intro h1 em,.work-feature h2 em,.about-copy h2 em,.contact-strip h2 em{font-family:var(--serif);font-weight:400}.text-link{display:inline-flex;gap:24px;align-items:center;font-size:10px;letter-spacing:.17em;text-transform:uppercase;border-bottom:1px solid #777;padding:0 0 12px;transition:gap .25s}.text-link:hover{gap:34px}.text-link span{font-size:15px}.light-link{border-color:#aaa}.hero-index,.hero-caption{position:absolute;bottom:34px;font-size:9px;letter-spacing:.18em;color:#ddd;text-transform:uppercase}.hero-index{left:5.4vw}.hero-index span{color:#777;margin:0 8px}.hero-caption{right:5.4vw}.section-pad{padding:120px 10.5vw}.intro{background:var(--white);color:#171717;padding-top:140px;padding-bottom:130px}.intro .eyebrow{color:#777}.intro h2,.section-heading h2{font-size:clamp(43px,6vw,82px);line-height:1.05;font-weight:300;letter-spacing:-.045em;margin:0}.intro-bottom{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-top:48px}.intro-bottom p{font-size:14px;line-height:1.8;color:#5d5b58;max-width:470px;margin:0}.intro .text-link{border-color:#aaa}.selected{padding-top:125px;padding-bottom:140px}.section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:52px}.section-heading .eyebrow{margin-bottom:18px}.section-heading .text-link{margin-bottom:8px}.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:8px;grid-auto-flow:dense;gap:14px;align-items:start}.photo-card{border:0;padding:0;background:#171717;position:relative;overflow:hidden;cursor:pointer;min-width:0;min-height:0;height:100%;grid-row-end:span 40;isolation:isolate}.photo-card img{width:100%;height:100%;object-fit:contain;object-position:center;transition:transform .8s cubic-bezier(.2,.7,.2,1),opacity .5s;opacity:.92}.photo-card:hover img{transform:scale(1.018);opacity:1}.photo-card:focus-visible{outline:2px solid #f3f2ef;outline-offset:4px;z-index:2}.photo-number{position:absolute;bottom:14px;left:16px;font-size:9px;letter-spacing:.2em;color:#fff;text-shadow:0 1px 8px #000}.manifesto{min-height:540px;display:flex;align-items:center;background:linear-gradient(90deg,rgba(0,0,0,.76),rgba(0,0,0,.2)),url('../images/photo-02.webp') center 40%/cover no-repeat}.manifesto-inner{padding:90px 10.5vw}.manifesto h2{font-size:clamp(48px,7vw,94px);font-weight:300;line-height:1.03;letter-spacing:-.05em;margin:0 0 38px}.manifesto h2 em{font-family:var(--serif);font-weight:400}.contact-strip{background:#e9e8e4;color:#151515;padding-top:105px;padding-bottom:110px}.contact-strip .eyebrow{color:#777}.contact-strip h2{font-size:clamp(48px,7vw,88px);font-weight:300;line-height:1.03;letter-spacing:-.05em;margin:0 0 28px}.contact-strip>p:not(.eyebrow){font-size:13px;color:#666}.contact-note{font-size:10px;color:#888;letter-spacing:.06em}.site-footer{padding:32px 5.4vw;display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);color:#999;font-size:9px;letter-spacing:.15em;text-transform:uppercase}.footer-mark{font-size:11px;letter-spacing:.22em;color:#eee}.page-intro{padding-top:190px;padding-bottom:90px}.page-intro h1{font-size:clamp(62px,9vw,126px);font-weight:300;letter-spacing:-.06em;line-height:.94;margin:0 0 36px}.page-intro>p:last-child{max-width:500px;font-size:14px;line-height:1.8;color:#aaa}.compact-intro{padding-bottom:55px}.work-feature{display:grid;grid-template-columns:1.2fr .8fr;gap:9vw;align-items:center;padding-top:30px;padding-bottom:130px}.work-feature-image{aspect-ratio:3/2;height:auto;overflow:hidden;background:#171717}.work-feature-image img{width:100%;height:100%;object-fit:contain}.work-feature-copy h2,.about-copy h2{font-size:clamp(42px,5.2vw,70px);font-weight:300;line-height:1.03;letter-spacing:-.04em;margin:0 0 30px}.work-feature-copy>p:not(.eyebrow),.about-copy>p:not(.eyebrow){font-size:13px;line-height:1.9;color:#aaa;max-width:390px;margin:0 0 30px}.work-feature-copy .text-link{margin-top:15px}.gallery-section{padding-top:20px}.gallery-toolbar{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:0 0 18px;margin-bottom:25px;color:#999;font-size:9px;letter-spacing:.18em;text-transform:uppercase}.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.gallery-grid .photo-card{aspect-ratio:auto}.about-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:10vw;padding-top:0;padding-bottom:150px;align-items:center}.about-image{aspect-ratio:1365/2048;height:auto;overflow:hidden;background:#171717}.about-image img{width:100%;height:100%;object-fit:contain;filter:grayscale(1)}.about-copy h2{margin-bottom:34px}.about-note{font-size:10px!important;color:#777!important;border-left:1px solid #777;padding-left:14px;margin-top:45px!important}.archive-years{padding-top:10px;padding-bottom:150px}.year-row{display:grid;grid-template-columns:1fr 2fr 1fr;align-items:center;padding:34px 0;border-top:1px solid var(--line)}.year-row:last-child{border-bottom:1px solid var(--line)}.year-row>span{font-family:var(--serif);font-size:48px}.year-row p{font-size:13px;color:#aaa}.year-row a{justify-self:end;font-size:10px;letter-spacing:.14em;text-transform:uppercase}.year-row a span{margin-left:18px}.publications-empty{padding-top:10px;padding-bottom:180px;min-height:430px}.large-index{font-family:var(--serif);font-size:70px;color:#777}.publications-empty h2{font-size:34px;font-weight:300;margin:20px 0}.publications-empty p{font-size:13px;line-height:1.8;color:#999;max-width:470px}.lightbox{position:fixed;inset:0;z-index:100;background:rgba(0,0,0,.96);display:none;align-items:center;justify-content:center;padding:6vh 8vw}.lightbox.visible{display:flex}.lightbox img{max-width:86vw;max-height:84vh;object-fit:contain}.lightbox button{position:absolute;background:none;border:0;color:#fff;font-size:32px;cursor:pointer}.lightbox-close{top:24px;right:35px}.lightbox-prev{left:28px}.lightbox-next{right:28px}.lightbox-count{position:absolute;bottom:22px;font-size:10px;letter-spacing:.2em;color:#aaa}.no-scroll{overflow:hidden}
@media(max-width:800px){.site-header{height:72px;padding:0 6vw}.menu-toggle{display:flex;flex-direction:column;gap:6px;cursor:pointer}.menu-toggle i{width:23px;height:1px;background:#fff;display:block}.main-nav{display:none;position:absolute;top:72px;left:0;width:100%;padding:28px 6vw 34px;background:#111;flex-direction:column;gap:22px}.main-nav.open{display:flex}.hero{min-height:600px;height:88svh}.hero-image{object-position:56% center}.hero-copy{left:7vw}.hero h1{font-size:clamp(62px,15vw,100px)}.hero-caption{display:none}.section-pad{padding:82px 7vw}.intro{padding-top:95px;padding-bottom:95px}.intro-bottom{display:block}.intro-bottom p{margin-bottom:30px}.section-heading{display:block}.section-heading>.text-link{margin-top:30px}.photo-grid,.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;grid-auto-rows:7px}.manifesto{min-height:430px}.manifesto-inner{padding:75px 7vw}.page-intro{padding-top:145px;padding-bottom:60px}.work-feature{grid-template-columns:1fr;gap:38px;padding-top:0;padding-bottom:85px}.work-feature-image{height:auto}.about-layout{grid-template-columns:1fr;gap:45px}.about-image{width:min(100%,560px)}.year-row{grid-template-columns:.7fr 2fr .7fr}.year-row>span{font-size:34px}.site-footer{padding:25px 6vw;gap:12px;flex-wrap:wrap}.site-footer span:nth-child(2){display:none}}
@media(max-width:480px){.photo-grid,.gallery-grid{grid-template-columns:1fr 1fr;grid-auto-rows:6px}.hero-index{bottom:22px}.section-pad{padding-left:6vw;padding-right:6vw}.intro h2,.section-heading h2{font-size:45px}.page-intro h1{font-size:62px}.work-feature-image{height:auto}.about-image{width:100%}.year-row{grid-template-columns:.7fr 1.7fr .7fr;gap:10px}.year-row p{font-size:11px}.year-row a{font-size:9px}}

/* Contact links */
.contact-email{display:inline-flex;align-items:center;gap:18px;margin-top:18px;padding-bottom:9px;border-bottom:1px solid #777;font-size:13px;letter-spacing:.04em;color:#151515}.contact-email span{font-size:15px}.site-footer .footer-contact{color:#eee;text-transform:none;letter-spacing:.04em;font-size:10px;border-bottom:1px solid #666;padding-bottom:5px}.site-footer .footer-contact:hover{color:#fff;border-color:#fff}

/* Instagram contact links */
.contact-instagram{display:inline-flex;align-items:center;gap:18px;margin:18px 0 0 24px;padding-bottom:9px;border-bottom:1px solid #777;font-size:13px;letter-spacing:.04em;color:#151515}.contact-instagram span{font-size:15px}.site-footer .footer-instagram{color:#eee;text-transform:none;letter-spacing:.04em;font-size:10px;border-bottom:1px solid #666;padding-bottom:5px}.site-footer .footer-instagram:hover{color:#fff;border-color:#fff}
@media(max-width:800px){.contact-instagram{margin-left:0;margin-top:22px}}


/* Editorial projects — two alternating compositions */
.projects-intro{padding-bottom:72px}
.projects-list{padding-top:10px;padding-bottom:150px}
.project-set{display:grid;grid-template-columns:1.08fr .92fr;gap:clamp(24px,5vw,76px);align-items:center;margin:0 0 clamp(90px,13vw,180px)}
.project-set:last-child{margin-bottom:0}
.project-set-images{display:grid;gap:20px;min-width:0}
.project-set-images img{width:100%;height:100%;object-fit:cover;background:#171717}
.project-set-images a{display:block;overflow:hidden;background:#171717;min-width:0}
.project-set-images a img{transition:transform .8s cubic-bezier(.2,.7,.2,1);opacity:.94}
.project-set-images a:hover img{transform:scale(1.025);opacity:1}
.project-asymmetric .project-set-images{grid-template-columns:1.15fr .85fr;align-items:stretch}
.project-asymmetric .project-image-main{aspect-ratio:3/4}
.project-asymmetric .project-image-stack{display:grid;grid-template-rows:1fr 1fr;gap:20px}
.project-asymmetric .project-image-stack a{min-height:0}
.project-asymmetric .project-image-stack img{aspect-ratio:4/5}
.project-narrative .project-set-images{grid-template-columns:1fr 1fr;align-items:start}
.project-narrative .project-image-main{aspect-ratio:5/4}
.project-narrative .project-image-secondary{aspect-ratio:5/4}
.project-narrative .project-image-wide{grid-column:1/-1;aspect-ratio:16/7}
.project-set-copy{max-width:430px}
.project-set-copy .eyebrow{margin-bottom:20px}
.project-set-copy h2{font-size:clamp(42px,5.5vw,76px);font-weight:300;line-height:1;letter-spacing:-.05em;margin:0 0 24px}
.project-set-copy h2 em{font-family:var(--serif);font-weight:400}
.project-set-copy p:not(.eyebrow){font-size:13px;line-height:1.9;color:#aaa;max-width:350px}
.project-set-copy .project-index{display:block;margin-top:32px;color:#777;font-size:9px;letter-spacing:.2em}
.projects-note{border-top:1px solid var(--line);padding-top:24px;margin-top:30px;color:#888;font-size:10px;letter-spacing:.12em;text-transform:uppercase}
@media(max-width:800px){
 .projects-list{padding-top:0;padding-bottom:90px}
 .project-set{grid-template-columns:1fr;gap:28px;margin-bottom:95px}
 .project-set-copy{order:-1;max-width:none}
 .project-set-copy h2{font-size:clamp(42px,10vw,64px)}
 .project-asymmetric .project-set-images{grid-template-columns:1.05fr .95fr;gap:9px}
 .project-asymmetric .project-image-stack{gap:14px}
 .project-set-images{gap:14px}
}
@media(max-width:480px){
 .project-asymmetric .project-set-images{grid-template-columns:1fr 1fr}
 .project-asymmetric .project-image-main{aspect-ratio:3/4}
 .project-asymmetric .project-image-stack img{aspect-ratio:1/1}
 .project-narrative .project-image-wide{aspect-ratio:5/3}
 .project-set{margin-bottom:78px}
}

/* Photographer location */
.about-location{font-size:10px;letter-spacing:.06em;color:#888;margin:-14px 0 28px}
.site-footer .footer-location{text-transform:none;letter-spacing:.04em;color:#999;font-size:10px}
