.photo-gallery-page{background:#f7f8fb}
.photo-gallery-content{padding-block:42px 76px!important}
.album-collection-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:30px}
.album-section-label{display:block;color:#9c4b13;font-size:.8125rem;letter-spacing:.13em;font-weight:750;margin-bottom:10px;line-height:1.6}
body.mission-public-site main#main.photo-gallery-page .album-collection-heading h2{font-size:clamp(1.6rem,2.1vw,2rem)!important;line-height:1.35!important;letter-spacing:-.035em;max-width:none;margin:0;color:#10223c}
.album-collection-counts{display:flex;gap:10px;flex-shrink:0;flex-wrap:wrap}
.album-collection-counts>span,.album-detail-count{display:inline-flex;align-items:center;gap:7px;padding:9px 14px;border:1px solid #dce3ed;border-radius:7px;background:#fff;font-size:1rem;color:#526075;line-height:1.5}
.album-collection-counts strong{color:#122945;font-weight:750}
.album-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 24px}
.album-card{min-width:0;background:#fff;border:1px solid #dde3ed;border-radius:13px;overflow:hidden;box-shadow:0 3px 12px #1a2d4f05;transition:box-shadow .2s ease,border-color .2s ease,transform .2s ease}
.album-card:hover{border-color:#f4a35f;box-shadow:0 14px 28px #142b4b12;transform:translateY(-4px)}
.album-card-link{display:flex;flex-direction:column;height:100%;text-decoration:none!important;color:#10223c}
.album-card-cover{position:relative;aspect-ratio:16/10;background:#e9edf3;overflow:hidden}
.album-card-cover::after{content:"";position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#08182a5c);pointer-events:none}
.album-card-cover img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .4s ease}
.album-card:hover .album-card-cover img{transform:scale(1.035)}
.album-photo-count{position:absolute;left:16px;bottom:16px;z-index:1;display:inline-flex;align-items:center;gap:8px;border:1px solid #ffffff59;border-radius:6px;padding:7px 10px;color:#fff;background:#102139e8;font-size:.875rem;font-weight:650;line-height:1.4}
.album-cover-placeholder{display:grid;place-items:center;height:100%;font-size:4rem;color:#516981;background:linear-gradient(135deg,#e9eff5,#dce7f0)}
.album-card-copy{padding:22px 24px 20px;display:flex;flex-direction:column;flex:1}
.album-card-number{color:#68758a;font-weight:650;font-size:.75rem;letter-spacing:.14em;line-height:1.6;margin-bottom:9px}
body.mission-public-site main.photo-gallery-page .album-card h3{font-size:1.1875rem!important;font-weight:750;line-height:1.55!important;letter-spacing:-.018em;color:#12233c;margin:0 0 22px;overflow-wrap:break-word}
.album-card-action{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:auto;padding-top:15px;border-top:1px solid #e9edf3;font-size:1rem;font-weight:750;color:#9d4200;line-height:1.5}
.album-action-arrow{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;background:#fff0e3;border-radius:50%;font-size:1.2rem;color:#b64a00;transition:background .2s ease,color .2s ease}
.album-card:hover .album-action-arrow{background:#e8630a;color:#fff}
.album-card-link:focus-visible{outline:3px solid #c45200!important;outline-offset:-4px}
.gallery-back-link{display:inline-flex;align-items:center;gap:10px;color:#15395e;font-size:1rem;line-height:1.5;font-weight:650;margin-bottom:30px;text-decoration:underline;text-underline-offset:5px}
.album-detail-count{background:#fff3e6;border-color:#ffddbd;color:#8a3f08;font-weight:650}
.album-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.album-photo-card{min-width:0;margin:0;border:1px solid #dce3ed;border-radius:11px;overflow:hidden;background:#fff}
.album-photo-card>a{display:block;position:relative;aspect-ratio:16/10;overflow:hidden;background:#e9edf3}
.album-photo-card img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.album-photo-card>a:hover img{transform:scale(1.025)}
.photo-enlarge{position:absolute;right:12px;bottom:12px;display:grid;place-items:center;background:#102139e8;color:#fff;border:1px solid #ffffff55;border-radius:7px;width:38px;height:38px}
.album-photo-card figcaption{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:16px 18px;line-height:1.6;color:#66748a}
.album-photo-card figcaption>span:first-child{font-size:.8125rem;font-weight:750;letter-spacing:.08em;color:#263c58}
.album-photo-card figcaption>span:last-child{font-size:.875rem;color:#9c4300}
.album-end-navigation{display:flex;justify-content:center;margin-top:38px}
.gallery-empty{padding:28px;border:1px dashed #aebed0;background:#fff;border-radius:10px;color:#44566f}
.media-lightbox-controls output{align-self:center;color:#cbd9e7;font-size:.9375rem;white-space:nowrap}
#media-lightbox .media-lightbox-controls{font-size:1rem;gap:12px;align-items:center}
#media-lightbox .media-lightbox-controls button{min-height:44px}
#media-lightbox .media-lightbox-header button{min-width:44px;min-height:44px}
html[data-theme=dark] .photo-gallery-page{background:#0f2235}
html[data-theme=dark] :is(.album-card,.album-photo-card,.album-collection-counts>span,.gallery-empty){background:#172f46;border-color:#3d536a;color:#e0eaf3}
html[data-theme=dark] body.mission-public-site main#main.photo-gallery-page :is(.album-card h3,.album-collection-heading h2){color:#eef4fc!important}
html[data-theme=dark] :is(.album-card-number,.album-collection-counts strong,.album-photo-card figcaption>span:first-child,.gallery-back-link){color:#d2e2f1}
html[data-theme=dark] :is(.album-section-label,.album-card-action,.album-photo-card figcaption>span:last-child){color:#ffbc87}
html[data-theme=dark] .album-card-action{border-color:#3d536a}
html[data-contrast=true] :is(.album-card,.album-photo-card,.album-card-action,.album-photo-card figcaption,.album-collection-counts>span){background:#000!important;color:#ffeb3b!important;border-color:#ffeb3b!important}
html[data-contrast=true] body.mission-public-site main#main.photo-gallery-page :is(h1,h2,h3,a,span,strong){color:#ffeb3b!important}
html[data-contrast=true] :is(.video-play-circle,.video-duration,.album-photo-count,.album-action-arrow,.photo-enlarge){background:#000!important;color:#ffeb3b!important;border:1px solid #ffeb3b}
@media(max-width:1050px){.album-card-grid,.album-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.album-card-copy{padding:20px}.album-collection-heading{align-items:flex-start}}
@media(max-width:700px){.photo-gallery-content{padding-block:30px 48px!important}.album-collection-heading{flex-direction:column;align-items:flex-start;gap:16px;margin-bottom:24px}.album-card-grid,.album-photo-grid{grid-template-columns:minmax(0,1fr);gap:22px}.album-card-copy{padding:20px}.album-card-cover{aspect-ratio:16/10}.album-photo-card figcaption{padding:14px 16px}.album-section-label{font-size:.75rem}.gallery-back-link{margin-bottom:24px}#media-lightbox .media-lightbox-controls{flex-wrap:wrap;justify-content:center}#media-lightbox .media-lightbox-controls output{order:-1;width:100%;text-align:center}.album-collection-counts>span,.album-detail-count{padding:7px 12px}}
.video-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.video-card-cover{aspect-ratio:16/9}
.video-play-circle{position:absolute;top:50%;left:50%;z-index:1;transform:translate(-50%,-50%);display:grid;place-items:center;width:66px;height:66px;border-radius:50%;background:#fff;color:#d45206;box-shadow:0 4px 24px #091a3a40;transition:background .2s ease,color .2s ease}
.video-play-circle svg{margin-left:-4px}
.video-card:hover .video-play-circle{background:#d85408;color:#fff}
.video-duration{position:absolute;z-index:1;right:14px;bottom:14px;padding:5px 9px;background:#0b1c31e8;color:#fff;border-radius:5px;font-size:.9375rem;font-weight:650;line-height:1.5;font-variant-numeric:tabular-nums}
.video-card .album-card-copy h3{margin-bottom:10px!important}
.video-card-description{margin:0 0 22px;color:#5e6e83}
body.mission-public-site main#main .video-card-description{font-size:1.0625rem!important;line-height:1.7!important}
#video-gallery-player{box-sizing:border-box;width:min(1180px,94vw);max-width:94vw;max-height:94dvh;margin:auto;border:1px solid #405570;border-radius:14px;padding:22px;background:#101d2f;color:#fff;overflow:auto}
#video-gallery-player::backdrop{background:#071326df;backdrop-filter:blur(4px)}
.video-player-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:18px}
body.mission-public-site main#main #video-gallery-player h2{font-size:1.25rem!important;line-height:1.6!important;color:#fff!important;max-width:none;margin:0;letter-spacing:normal}
.video-player-heading button{flex:0 0 44px;width:44px;height:44px;border:1px solid #66778e;border-radius:7px;background:#ffffff0c;color:#fff;font-size:1.7rem;cursor:pointer}
#video-gallery-player video{display:block;width:100%;max-height:65dvh;aspect-ratio:16/9;object-fit:contain;background:#000;border-radius:6px}
.video-player-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;margin-top:18px}
body.mission-public-site main#main #video-gallery-player .video-playback-note{font-size:.9375rem!important;color:#cfdaea!important;line-height:1.7!important;margin:0;flex:1 1 340px}
.video-player-links{display:flex;gap:18px;flex-wrap:wrap;align-items:center}.video-player-links>a{color:#ffbc87;font-size:.9375rem;line-height:1.7;text-decoration:underline;text-underline-offset:4px;min-height:44px;display:inline-flex;align-items:center}
body.mission-public-site main#main #video-gallery-player .video-playback-error{color:#ffcea6!important;font-size:1rem!important;margin-bottom:0}
@media(max-width:700px){.video-card-grid{grid-template-columns:minmax(0,1fr);gap:22px}#video-gallery-player{padding:16px}.video-player-heading{gap:12px}.video-play-circle{width:56px;height:56px}.video-card-cover{aspect-ratio:16/9}.video-player-footer{align-items:flex-start;gap:12px}.video-player-footer>a{min-height:44px;display:inline-flex;align-items:center}}
