body.photo-archive{background:#f5f4ef}
.photo-archive #main-content{width:90%;max-width:1180px;padding-top:30px}
.photo-archive .back-home{font-size:11px;color:#708079;text-decoration:none;display:inline-flex;align-items:center;min-height:36px;margin-bottom:22px}
.photo-archive .archive-gallery{padding:0 0 55px;background:transparent}
.archive-heading{display:grid;grid-template-columns:1fr minmax(240px,.7fr);align-items:end;gap:32px;padding:10px 0 30px;border-bottom:1px solid #d9dfd5;margin-bottom:30px}
.archive-kicker{font:600 10px/1.7 'Poppins',sans-serif;letter-spacing:2px;color:#68816f;margin:0 0 15px}
.archive-heading h1{font:500 clamp(36px,4.3vw,55px)/1.2 'Cinzel',Georgia,serif;color:#173e38;letter-spacing:-1px;margin:0}
.archive-intro{padding-bottom:2px}.archive-intro>p{font:400 13px/1.9 'Poppins',sans-serif;color:#738175;margin:0 0 17px;max-width:360px}
.archive-count{display:inline-flex;align-items:center;gap:8px;border:1px solid #d4dfd0;border-radius:30px;background:#eaf0e5;color:#4b715c;padding:6px 12px;font:500 10px/1.6 'Poppins',sans-serif}
.archive-count:before{content:'';width:5px;height:5px;background:#6b9579;border-radius:50%}
.archive-toolbar{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:0 0 20px;font:400 10px/1.8 'Poppins',sans-serif;color:#869083}.archive-toolbar strong{font-weight:500;color:#526b58}.archive-toolbar>span:last-child{display:flex;align-items:center;gap:7px}
.archive-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;align-items:start}
.photo-archive .archive-gallery .archive-card{width:100%;max-width:none;box-sizing:border-box;margin:0;padding:13px;border:1px solid #dbe1d5;border-radius:13px;background:#fffefa;box-shadow:0 4px 15px #304c2e04;transition:border-color .3s,box-shadow .3s}
.photo-archive .archive-card .gallery-button{position:relative;display:block;width:100%;aspect-ratio:5/4;box-sizing:border-box;padding:18px;background:#eeeee5;border:1px solid #e6e6d8;border-radius:7px;cursor:zoom-in;overflow:hidden}
.photo-archive .archive-card .gallery-button img{display:block;width:100%;height:100%;max-height:none;object-fit:contain;object-position:center;border-radius:1px;filter:grayscale(1);transition:filter .4s ease,transform .4s ease;box-shadow:0 4px 13px #3443310c}
.archive-expand{position:absolute;right:12px;bottom:12px;width:31px;height:31px;display:grid;place-items:center;border:1px solid #ffffffad;border-radius:6px;color:#466549;background:#fffef6e8;opacity:0;transform:translateY(3px);transition:opacity .2s,transform .2s;pointer-events:none}
.archive-expand svg{width:16px;height:16px}
.photo-archive .archive-card figcaption{display:flex;gap:15px;align-items:start;margin:0;padding:21px 8px 10px;background:transparent;text-align:left}
.archive-number{font:400 13px/1.6 'Cinzel',Georgia,serif;color:#9aa88d;padding-right:14px;border-right:1px solid #dce3d4;flex-shrink:0}
.archive-card-copy{flex:1;min-width:0}.archive-card-copy small{display:block;font:500 8px/1.6 'Poppins',sans-serif;letter-spacing:1.6px;color:#98a18e;margin:0 0 6px}.archive-card-copy strong{display:block;font:600 17px/1.45 'Quicksand',sans-serif;color:#38543e}.archive-card-copy p{font:400 10px/1.8 'Poppins',sans-serif;color:#88927e;margin:6px 0 0}
.archive-card-arrow{font-size:19px;color:#829c7b;line-height:1.5}
.photo-archive .archive-card .gallery-button:focus-visible{outline:3px solid #087e7a;outline-offset:4px}.photo-archive .archive-card .gallery-button:focus-visible img,.photo-archive .archive-card .gallery-button:active img{filter:grayscale(0)}.gallery-button:focus-visible .archive-expand{opacity:1;transform:none}
@media(hover:hover){.photo-archive .archive-card:hover{border-color:#b8c9ae;box-shadow:0 10px 28px #304c2e0b}.photo-archive .archive-card .gallery-button:hover img{filter:grayscale(0);transform:scale(1.015)}.gallery-button:hover .archive-expand{opacity:1;transform:none}}
.archive-ending{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-top:34px;padding:22px 2px;border-top:1px solid #dce1d5}.archive-ending p{margin:0;font:400 12px/1.8 'Quicksand',sans-serif;color:#829078}.archive-ending a{font:500 11px/1.8 'Poppins',sans-serif;color:#587751;text-decoration:none;white-space:nowrap}.archive-ending a:hover{text-decoration:underline;text-underline-offset:4px}
.photo-archive #lightbox{box-sizing:border-box;width:min(1100px,94vw);max-height:94dvh;padding:18px;border:1px solid #ffffff30;border-radius:14px;background:#17231f;color:#fff}.photo-archive #lightbox::backdrop{background:#0b1712e6;backdrop-filter:blur(5px)}.photo-archive #lightbox .dialog-top{margin-bottom:15px;gap:20px}.photo-archive #image-caption{color:#d8e2d6;font-size:12px;line-height:1.6;margin:0}.photo-archive #close{flex-shrink:0;background:#ffffff0d;border:1px solid #ffffff40;color:#fff;border-radius:6px;padding:8px 11px;font-size:11px}.photo-archive #large-image{display:block;width:100%;height:auto;max-height:calc(94dvh - 110px);object-fit:contain;border-radius:3px;filter:none}
@media(max-width:760px){.photo-archive #main-content{width:92%;padding-top:17px}.photo-archive .back-home{margin-bottom:15px}.archive-heading{grid-template-columns:1fr;gap:17px;padding:8px 0 24px;margin-bottom:23px}.archive-heading h1{font-size:36px}.archive-intro{display:flex;justify-content:space-between;align-items:center;gap:20px}.archive-intro>p{font-size:11px;line-height:1.8;margin:0;max-width:260px}.archive-count{white-space:nowrap;font-size:9px;padding:6px 10px}.archive-kicker{font-size:8px;letter-spacing:1.6px;margin-bottom:13px}.archive-grid{gap:22px}.photo-archive .archive-gallery{padding-bottom:30px}.archive-toolbar{font-size:9px}.archive-toolbar>span:last-child{display:none}.archive-ending{margin-top:27px;gap:15px}.archive-ending p,.archive-ending a{font-size:10px}}
@media(max-width:620px){.archive-grid{grid-template-columns:minmax(0,1fr)}.photo-archive .archive-gallery .archive-card{padding:10px}.photo-archive .archive-card .gallery-button{padding:16px}.photo-archive .archive-card figcaption{padding:18px 7px 9px;gap:13px}.archive-card-copy strong{font-size:17px}.archive-expand{opacity:1;transform:none}.archive-ending{align-items:start;flex-direction:column;gap:10px}.archive-intro{gap:12px}.archive-intro>p{max-width:220px}.photo-archive #lightbox{width:96vw;padding:12px;border-radius:9px}.photo-archive #image-caption{font-size:10px}}
@media(prefers-reduced-motion:reduce){.photo-archive .archive-card,.photo-archive .archive-card .gallery-button img,.archive-expand{transition:none}.photo-archive .archive-card .gallery-button:hover img{transform:none}}
.a11y-reduced-motion .archive-card,.a11y-reduced-motion .archive-card .gallery-button img,.a11y-reduced-motion .archive-expand{transition:none}.a11y-reduced-motion .archive-card .gallery-button:hover img{transform:none}
/* Full frames stay visible; colour is the only scroll effect. */
.photo-archive .archive-card .gallery-button img{position:absolute;inset:18px;width:calc(100% - 36px);height:calc(100% - 36px);object-fit:contain;transition:filter .65s ease}
.photo-archive .archive-card.is-revealed .gallery-button img{filter:grayscale(0)}
.photo-archive .archive-grid{height:auto;max-height:none;overflow:visible}
@media(max-width:620px){.photo-archive .archive-card .gallery-button img{inset:16px;width:calc(100% - 32px);height:calc(100% - 32px)}}
@media(prefers-reduced-motion:reduce){.photo-archive .archive-card .gallery-button img{transition:none}}
.a11y-reduced-motion .archive-card .gallery-button img{transition:none}
