*{box-sizing:border-box}body{margin:0;background:#fff;color:#000;font-family:Arial,Helvetica,sans-serif}main{max-width:1320px;margin:auto;padding:0 24px 24px}h1{font-size:26px;line-height:1.2;font-weight:400;margin:0 0 28px}section+section{margin-top:48px}.photo-row{display:flex;gap:16px;align-items:flex-start;margin-bottom:16px}.photo{display:block;flex-basis:0;min-width:0;margin:0;padding:0;border:0;background:none;cursor:zoom-in;line-height:0}.photo img{display:block;width:100%;height:auto}.photo:focus-visible,button:focus-visible{outline:2px solid #000;outline-offset:4px}dialog{width:100vw;max-width:none;height:100dvh;max-height:none;border:0;padding:48px 64px;background:#fff;color:#000}dialog::backdrop{background:#fff}dialog[open]{display:flex;align-items:center;justify-content:center}#full-photo{max-width:100%;max-height:100%;object-fit:contain}dialog button{position:absolute;border:0;background:#fff;color:#000;cursor:pointer;font-size:28px;padding:10px}#close{right:12px;top:8px;font-size:32px}#prev{left:8px;top:45%}#next{right:8px;top:45%}@media(min-width:651px){.photo-row:has(>.photo:only-child){max-width:720px}}@media(max-width:650px){main{padding:0 16px 16px}h1{font-size:24px;margin-bottom:24px}.photo-row{display:flex;gap:10px;margin-bottom:12px}.photo{width:auto;margin:0}section+section{margin-top:36px}dialog{padding:52px 10px 58px}#prev,#next{top:auto;bottom:8px}}

header{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;min-height:80px;padding:16px 0;background:#fff}header h1{margin:0;white-space:nowrap}nav{display:flex;gap:24px;margin-left:auto;font-size:16px}nav a{color:#000;text-underline-offset:3px}nav a[aria-current]{font-weight:bold}nav a:focus-visible{outline:2px solid #000;outline-offset:4px}section{scroll-margin-top:var(--header-offset,92px)}

section{border-top:1px solid #aaa;padding-top:20px}h2{font-size:21px;line-height:1.3;font-weight:400;margin:0 0 20px}section+section{margin-top:64px}@media(max-width:650px){section+section{margin-top:48px}}

@media(max-width:650px){header{min-height:68px;padding:14px 0;gap:12px}header h1{font-size:20px;margin:0}nav{gap:16px;font-size:14px}}@media(max-width:380px){header h1{font-size:18px}nav{gap:12px;font-size:13px}}

html{scroll-behavior:auto}
