:root{
  --bg:#ffffff; --fg:#000000;
  --maxw: 2360px; --pad: 18px; --gap: 28px;
  --logo-h: 30px; --nav-fz: 18px;
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0; background:var(--bg); color:var(--fg);
  font-family: "Helvetica Neue", Helvetica, Arial, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  line-height:1.45; -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
}
a{color:inherit; text-decoration:none}
.header{position:sticky; top:0; z-index:10; background:var(--bg); border-bottom:1px solid rgba(0,0,0,.06)}
.nav{max-width:var(--maxw); margin:0 auto; display:flex; align-items:center; justify-content:space-between; padding:12px var(--pad)}
.nav .left{display:flex; gap:16px; align-items:center}
.nav .left a{font-size:var(--nav-fz); letter-spacing:.02em; text-transform:uppercase}
.nav .right img{height:var(--logo-h); display:block}
.main{max-width:var(--maxw); margin:0 auto; padding: min(6vh,56px) var(--pad) 72px}
.gallery{display:flex; flex-direction:column; gap:var(--gap); align-items:center}
.gallery figure{margin:0; width:100%}
.gallery img{display:block; margin:0 auto; width:100%; height:auto}
.info-wrap{display:flex; flex-direction:column; align-items:center}
.info-logo{height:80px; margin:6px auto 28px}
.info-text{max-width:720px; width:100%; font-size:16px; letter-spacing:.01em}
.info-text p{margin:0 0 10px}
.footer{max-width:var(--maxw); margin:32px auto 56px; padding:0 var(--pad); font-size:12px; color:#666}
@media (max-width: 720px){
  :root{ --gap:20px; --logo-h:30px; --nav-fz:13px }
  .info-logo{height:68px}
}