/* Galeria — visual archive from existing post media */
.photo-gallery{min-height:70vh;background:#f6f8fb}
.photo-gallery__hero{padding:clamp(3rem,6vw,5.5rem) 0;background:#0b1624;color:#fff}
.photo-gallery__hero .container{max-width:900px}
.photo-gallery__eyebrow{margin:0 0:.55rem;color:#1682ff;font-size:.76rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.photo-gallery__hero h1{margin:0;font-size:clamp(2.5rem,5vw,4.7rem);line-height:.95}
.photo-gallery__hero p:last-child{max-width:720px;margin:1.15rem 0 0;color:#cbd6e3;font-size:1.05rem;line-height:1.7}
.photo-gallery__content{padding-block:clamp(2.5rem,5vw,5rem)}
.gallery-years{margin-bottom:3rem;padding:1.15rem;background:#fff;border:1px solid #dfe5ed;border-radius:12px;box-shadow:0 8px 24px rgb(14 35 58 / 5%)}
.gallery-years__heading{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:1rem}
.gallery-years__heading p{margin:0;color:#748197;font-size:.74rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.gallery-years__heading strong{color:#12233b;font-size:1.2rem}
.gallery-years ul{display:flex;flex-wrap:wrap;gap:.55rem;margin:0;padding:0;list-style:none}
.gallery-years a{display:flex;align-items:center;gap:.5rem;padding:.62rem .78rem;border:1px solid #dfe5ed;border-radius:8px;background:#f8fafc;color:#12233b;text-decoration:none;transition:border-color 160ms ease,background 160ms ease,color 160ms ease}
.gallery-years a:hover{border-color:#1682ff;color:#0878f9}
.gallery-years a[aria-current="page"]{border-color:#1682ff;background:#1682ff;color:#fff}
.gallery-years a span{font-weight:800}
.gallery-years a small{font-size:.68rem;opacity:.72}
.gallery-year__heading{margin-bottom:2rem}
.gallery-year__heading p{margin:0 0:.25rem;color:#1682ff;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.gallery-year__heading h2{margin:0;color:#12233b;font-size:clamp(1.8rem,3vw,2.5rem)}
.photo-story+.photo-story{margin-top:3.5rem;padding-top:3.5rem;border-top:1px solid #dfe5ed}
.photo-story__header{display:flex;align-items:end;justify-content:space-between;gap:1.5rem;margin-bottom:1rem}
.photo-story__header time{display:block;margin-bottom:.35rem;color:#1682ff;font-size:.7rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
.photo-story__header h3{margin:0;font-size:clamp(1.2rem,2.2vw,1.65rem);line-height:1.25}
.photo-story__header h3 a{color:#12233b;text-decoration:none}
.photo-story__header h3 a:hover{color:#0878f9}
.photo-story__header>span{color:#748197;font-size:.72rem;white-space:nowrap}
.photo-story__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:155px;gap:.65rem}
.photo-story__item{display:block;overflow:hidden;border-radius:8px;background:#dfe6ee}
.photo-story__item--lead{grid-column:span 2;grid-row:span 2}
.photo-story__item img{width:100%;height:100%;object-fit:cover;transition:transform 220ms ease}
@media(hover:hover) and (pointer:fine){.photo-story__item:hover img{transform:scale(1.025)}}
.gallery-pagination{margin-top:3rem}
.gallery-pagination ul{display:flex;justify-content:center;gap:.4rem;margin:0;padding:0;list-style:none}
.gallery-pagination a,.gallery-pagination span{display:grid;min-width:38px;height:38px;place-items:center;border-radius:6px;background:#fff;color:#12233b;text-decoration:none}
.gallery-pagination .current{background:#1682ff;color:#fff}
@media(max-width:900px){.photo-story__grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:140px}}
@media(max-width:620px){.photo-story__header{align-items:start;flex-direction:column;gap:.4rem}.photo-story__grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:120px}.photo-story__item--lead{grid-column:span 2;grid-row:span 2}}

@media(max-width:620px){.gallery-years{padding:.9rem}.gallery-years__heading{align-items:center}.gallery-years ul{flex-wrap:nowrap;overflow-x:auto;padding-bottom:.2rem;scrollbar-width:thin}.gallery-years li{flex:0 0 auto}.gallery-years a{flex-direction:column;align-items:flex-start;gap:.12rem;min-width:82px}.gallery-years a small{font-size:.64rem}}
