@font-face{font-family:'Gotham';src:url(../fonts/gotham-book.otf) format('opentype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Gotham';src:url(../fonts/gotham-medium.otf) format('opentype');font-weight:500;font-style:normal;font-display:swap}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:#fff;color:#111;font-family:'Gotham','Helvetica Neue',Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}
img{max-width:100%}
a{color:#111}a:hover{color:#555}
h1,h2,h3,p,figure{margin:0}
.wrap{max-width:1440px;margin:0 auto;padding-left:80px;padding-right:80px}
.row{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}

/* header */
.hdr{padding-top:40px;padding-bottom:28px}
.logo{display:block;width:292px;height:auto}
.nav{display:flex;gap:52px;margin-top:20px;flex-wrap:wrap}
.nav a{font-weight:500;font-size:12px;letter-spacing:.12em;text-decoration:none;padding:12px 0 10px;border-bottom:1px solid transparent}
.nav a.on{border-bottom-color:#111}

/* type */
.title{font-weight:500;text-transform:uppercase;letter-spacing:.03em}
.t-xl{font-size:48px}
.t-l{font-size:38px}
.t-m{font-size:22px}
.lbl{font-weight:500;font-size:10px;letter-spacing:.14em;text-transform:uppercase}
.lbl-s{font-weight:500;font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:#6b6b6b}
.muted{color:#6b6b6b}
.cta{display:inline-block;font-weight:500;font-size:11px;letter-spacing:.16em;text-transform:uppercase;text-decoration:none;padding:14px 0 8px;border-bottom:1px solid currentColor}

/* home bands */
.band{position:relative;overflow:hidden;aspect-ratio:16/9;max-height:900px;min-height:520px;background:#111}
.band>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.band .in{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding-bottom:96px;background:linear-gradient(0deg,rgba(0,0,0,.48) 0%,rgba(0,0,0,0) 48%)}
.band .wrap{width:100%;color:#fff}
.band .right{text-align:right}
.band p{margin:18px 0;font-size:15px;line-height:1.6}
.band a.cta{color:#fff}

.g4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.g3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.card{display:flex;flex-direction:column;gap:8px;text-decoration:none}
.card img{width:100%;aspect-ratio:3/4;object-fit:cover;display:block;margin-bottom:12px;background:#eee}
.card .n{font-weight:500;font-size:12px;letter-spacing:.1em}
.card .d{font-size:12px;color:#6b6b6b}

/* footer */
.foot-cta{border-top:1px solid #d6d6d6;padding-top:26px;margin-top:80px}
.foot-bot{padding-top:40px;padding-bottom:40px}
.foot-bot span{font-size:10px;letter-spacing:.1em;color:#6b6b6b}

/* work / about / contact */
.split-work{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:80px;padding-top:88px}
.body-txt{font-size:16px;line-height:1.7;color:#444;max-width:560px}
.body-txt p+p{margin-top:26px}
.split-about{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:80px;align-items:start}
.split-contact{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,1fr) minmax(0,6fr);align-items:center}
.split-contact .pic{grid-column:1}.split-contact .txt{grid-column:3}
.lnk{display:inline-block;font-size:26px;text-decoration:none;padding-bottom:6px;border-bottom:1px solid #111;margin-top:18px}

/* gallery */
.flts{display:flex;gap:56px;flex-wrap:wrap;margin-top:26px;margin-bottom:44px}
.flt{font-family:inherit;background:none;border:0;border-bottom:1px solid transparent;padding:14px 0 10px;cursor:pointer;font-weight:500;font-size:10px;letter-spacing:.14em;color:#6b6b6b;text-align:left}
.flt:hover{color:#111}
.flt.on{color:#111;border-bottom-color:#111}
.gal{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:22px;row-gap:36px}
.tile .im{width:100%;aspect-ratio:3/4;object-fit:cover;display:block;background:#efefef}
.tile.w{grid-column:span 2}
.tile.w .im{aspect-ratio:16/9}
.tile.s{grid-column:span 2;width:calc(50% - 11px);justify-self:center}
.tb{display:block;width:100%;padding:0;border:0;background:none;cursor:zoom-in}
.tb:focus-visible{outline:2px solid #111;outline-offset:3px}
.cap{display:flex;justify-content:space-between;gap:12px;margin-top:12px;font-weight:500;font-size:9px;letter-spacing:.14em;color:#6b6b6b}
.lb{position:fixed;inset:0;z-index:50;background:rgba(10,10,10,.95);display:none;flex-direction:column;align-items:center;justify-content:center;gap:20px;padding:24px}
.lb.open{display:flex}
.lb img{max-width:100%;max-height:80vh;object-fit:contain;display:block}
.lb .ctl{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:center}
.lb .pos{color:#d0d0d0;font-weight:500;font-size:10px;letter-spacing:.14em;min-width:160px;text-align:center}
.lbtn{font-family:inherit;background:none;border:1px solid rgba(255,255,255,.35);color:#fff;min-width:44px;min-height:44px;padding:0 16px;cursor:pointer;font-weight:500;font-size:10px;letter-spacing:.14em}
.lbtn:hover{border-color:#fff}

@media (max-width:760px){
.wrap{padding-left:24px;padding-right:24px}
.logo{width:220px}
.nav{gap:0;justify-content:space-between}
.t-xl,.t-l{font-size:32px}
.g4{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;row-gap:36px}
.g3{grid-template-columns:minmax(0,1fr);gap:40px}
.band{aspect-ratio:auto;height:480px;min-height:0}
.band .in{padding-bottom:56px}
.split-work,.split-about,.split-contact{grid-template-columns:minmax(0,1fr);gap:36px}
.split-work{padding-top:56px}
.split-contact .pic{grid-column:1;order:2}.split-contact .txt{grid-column:1;order:1}
.work-hero{aspect-ratio:4/5 !important}
.lnk{font-size:20px}
.flts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px 16px}
.gal{column-gap:14px;row-gap:26px}
.tile.s{width:calc(50% - 7px)}
.cnt{display:none}
.gal .cap span+span{display:none}
}
