.photos-section{z-index:1;max-width:1040px;margin:0 auto;padding:22px 24px 18px;position:relative}.photos-section:last-of-type{padding-bottom:44px}.photos-date{color:var(--mid);font-family:var(--script);text-align:center;margin:-8px 0 18px;font-size:22px}.photos-section[id]{scroll-margin-top:16px}.photos-intro{max-width:620px;color:var(--deep);justify-content:center;align-items:center;gap:20px;margin:0 auto 20px;font-size:15px;line-height:1.55;display:flex}.photos-intro p{margin:0}.photos-logo{flex:none;width:110px;height:auto}.photos-empty{color:var(--mid);font-family:var(--script);text-align:center;margin:0;font-size:24px}.photo-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0;padding:0;list-style:none;display:grid}.photo-thumb{cursor:zoom-in;background:#fff;border:1.5px solid #7d97c4;border-radius:14px;width:100%;padding:5px;transition:transform .18s,box-shadow .18s;display:block;box-shadow:0 0 0 4px #fff,0 0 0 5px #dbe8f6,0 4px 10px #04389024}.photo-thumb:hover{transform:translateY(-3px);box-shadow:0 0 0 4px #fff,0 0 0 5px #dbe8f6,0 8px 18px #04389033}.photo-thumb img{aspect-ratio:4/3;object-fit:cover;border-radius:9px;width:100%;display:block}.photos-todo{background:#fff3a8;border-radius:4px;padding:1px 6px}.photo-viewer{background:0 0;border:0;max-width:min(1100px,94vw);max-height:94vh;padding:0;overflow:visible}.photo-viewer::backdrop{background:#021a45e6}.photo-viewer figure{margin:0}.photo-viewer img{border-radius:10px;max-width:100%;max-height:82vh;margin:0 auto;display:block}.photo-viewer figcaption{color:#fff;text-align:center;margin-top:10px;font-size:14px}.photo-viewer-close,.photo-viewer-nav{width:46px;height:46px;color:var(--deep);cursor:pointer;background:#fff;border:0;border-radius:50%;place-items:center;font-size:30px;line-height:1;display:grid;position:fixed}.photo-viewer-close:hover,.photo-viewer-nav:hover{color:#fff;background:var(--sky)}.photo-viewer-close{top:16px;right:16px}.photo-viewer-nav{top:50%;transform:translateY(-50%)}.photo-viewer-nav.prev{left:16px}.photo-viewer-nav.next{right:16px}@media (width<=640px){.photos-section{padding-inline:16px}.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.photo-viewer-nav{top:auto;bottom:16px;transform:none}}.photo-viewer-close:focus-visible,.photo-viewer-nav:focus-visible{outline-offset:3px;outline:3px solid #fff}.photo-thumb:focus-visible{outline:3px solid var(--mid);outline-offset:4px}
