:root{--black:#101010;--red:#f0442e;--paper:#f4f1eb}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--black);font-family:Manrope,Arial,sans-serif}header{height:82px;display:flex;align-items:center;justify-content:space-between;padding:0 5.5vw;border-bottom:1px solid #d6d2ca}header>a:last-child{color:var(--black);text-transform:uppercase;text-decoration:none;font-weight:800;font-size:.68rem;letter-spacing:.1em}.brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:#000;font:900 2.1rem/.7 'Barlow Condensed',sans-serif;letter-spacing:-1px;line-height:1}.brand span{color:#000}.brand small{display:inline-block;color:#f0442e;font-size:.76rem;letter-spacing:4px;margin-left:2px;margin-top:0}main{padding:80px 5.5vw 120px}.tag{font-size:.68rem;color:var(--red);font-weight:800;letter-spacing:.15em}.tag:before{content:"";display:inline-block;width:24px;height:2px;background:var(--red);vertical-align:middle;margin-right:8px}h1{font:900 clamp(4.8rem,9vw,9rem)/.76 'Barlow Condensed',sans-serif;letter-spacing:-.05em;margin:27px 0}.intro{max-width:400px;line-height:1.8;color:#58534c;font-size:.86rem;margin-bottom:60px}

/* Full-view responsive grid — every image shown at full width */
.photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}
.photo-grid img{width:100%;height:320px;object-fit:cover;display:block;cursor:zoom-in;filter:saturate(.86);transition:transform .35s,filter .35s}
.photo-grid img:hover{transform:scale(1.03);filter:saturate(1.2)}
.photo-grid img:nth-child(1){grid-column:span 2;height:460px}
/* Portrait photos stay straight (upright) and fully visible — never rotated
   into a landscape crop. They render centered over a dark background. */
.photo-grid img.portrait{object-fit:contain;background:#0f0f0f;max-height:560px;height:auto;aspect-ratio:auto;align-self:center}
@media(max-width:720px){header{padding:0 7vw}main{padding:65px 7vw}h1{font-size:4.5rem}.photo-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.photo-grid img,.photo-grid img:nth-child(n){height:200px;margin:0}.photo-grid img:nth-child(1){grid-column:span 2;height:260px}.photo-grid img.portrait{height:auto;max-height:440px;object-fit:contain}}

/* Lightbox / fullscreen modal */
.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.94);z-index:1000;display:none;align-items:center;justify-content:center;padding:30px;cursor:zoom-out}
.lightbox.open{display:flex}
.lightbox img{max-width:95vw;max-height:92vh;object-fit:contain;box-shadow:0 20px 60px rgba(0,0,0,.6);border-radius:4px}
.lightbox .close{position:absolute;top:18px;right:26px;font:900 2.4rem/1 'Barlow Condensed',sans-serif;color:#fff;cursor:pointer;background:none;border:none;padding:8px;z-index:1001}
.lightbox .nav{position:absolute;top:50%;transform:translateY(-50%);width:52px;height:52px;border-radius:50%;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);color:#fff;font:900 1.6rem/1 'Barlow Condensed',sans-serif;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .25s}
.lightbox .nav:hover{background:rgba(255,255,255,.28)}
.lightbox .prev{left:22px}.lightbox .next{right:22px}
.lightbox .counter{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);color:#fff;font:800 .8rem/1 'Manrope',sans-serif;letter-spacing:.15em}
@media(max-width:720px){.lightbox .nav{width:42px;height:42px}.lightbox .prev{left:8px}.lightbox .next{right:8px}}
