/* Photo and ticker enhancement. The original page remains usable without JS. */
.motion-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.has-gallery{isolation:isolate}
.gallery-stage{position:absolute;inset:0;perspective:1300px;perspective-origin:50% 45%;overflow:hidden;background:#172018}
.gallery-slide{position:absolute;inset:0;visibility:hidden;transform-origin:50% 50%;backface-visibility:hidden;-webkit-backface-visibility:hidden;pointer-events:none;background:#172018;overflow:hidden}
.gallery-stage.is-flipping .gallery-slide{will-change:transform;box-shadow:0 20px 45px #0005}
.gallery-slide>img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;transform:translateY(var(--gallery-parallax,0px)) scale(1.045);animation:none!important}
.has-gallery:after{z-index:3}
.has-gallery .photo-topline,.has-gallery .photo-label{z-index:4}
.gallery-controls{position:absolute;z-index:5;top:52px;left:18px;display:flex;align-items:center;gap:3px;padding:3px;border:1px solid #ffffff35;border-radius:28px;background:#172018b8;color:#fff;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.gallery-controls button{display:grid;place-items:center;flex-shrink:0;width:40px;height:40px;padding:0;border:0;border-radius:50%;background:transparent;color:inherit;font-size:20px;line-height:1;transition:background .2s,color .2s}
.gallery-controls button:hover{background:#ffffff26}
.gallery-controls button:focus-visible{outline:2px solid var(--lime,#d6fa42);outline-offset:1px}
.gallery-count{min-width:45px;padding:0 4px;text-align:center;font-size:10px;font-weight:700;letter-spacing:1px;font-variant-numeric:tabular-nums}
.gallery-controls .gallery-motion{margin-left:3px;border-left:1px solid #ffffff25;border-radius:0 22px 22px 0;font-size:19px}
.gallery-motion[aria-pressed=true]{color:var(--lime,#d6fa42)}
.gallery-stage.is-reduced .gallery-slide{transform:none!important;transition:none!important}
.gallery-stage.is-reduced .gallery-slide>img{transform:none!important}

.ticker.motion-ticker{position:relative;padding:17px 0}
.ticker.motion-ticker>.ticker-viewport{display:block;white-space:normal;overflow:hidden;mask-image:linear-gradient(to right,transparent,#000 24px,#000 calc(100% - 78px),transparent calc(100% - 48px));-webkit-mask-image:linear-gradient(to right,transparent,#000 24px,#000 calc(100% - 78px),transparent calc(100% - 48px))}
.ticker-track{display:flex;width:max-content;animation:highlights-travel var(--ticker-duration,36s) linear infinite}
.ticker-group{display:flex;align-items:center;flex:0 0 auto;justify-content:space-around;gap:38px;min-width:100vw;padding-right:38px;white-space:nowrap}
.ticker .ticker-message{font-size:13px;line-height:26px;font-weight:800;letter-spacing:1px}
.ticker .ticker-separator{font-size:20px;line-height:26px}
.ticker-toggle{position:absolute;right:12px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:38px;height:38px;padding:0;border:1px solid #171b1840;border-radius:50%;background:var(--lime,#d6fa42);color:var(--ink,#171b18);font-size:14px;font-weight:800;line-height:1;z-index:1}
.ticker-toggle:hover{background:var(--ink,#171b18);color:var(--lime,#d6fa42)}
.ticker-toggle:focus-visible{outline:2px solid var(--ink,#171b18);outline-offset:3px}
.motion-ticker:hover .ticker-track,.motion-ticker:focus-within .ticker-track,.motion-ticker.is-paused .ticker-track,.motion-ticker.is-away .ticker-track{animation-play-state:paused}
@keyframes highlights-travel{to{transform:translateX(-50%)}}
.motion-ticker.is-reduced .ticker-track{animation:none;transform:none;width:100%}
.motion-ticker.is-reduced>.ticker-viewport{mask-image:none;-webkit-mask-image:none}
.motion-ticker.is-reduced .ticker-group{min-width:0;width:100%;flex-wrap:wrap;justify-content:center;gap:10px 20px;padding:0 20px}
.motion-ticker.is-reduced .ticker-copy,.motion-ticker.is-reduced .ticker-separator:last-child{display:none}

@media(max-width:760px){
  .gallery-controls{top:50px;left:16px}
  .ticker.motion-ticker{padding:14px 0}
  .ticker-group{gap:28px;padding-right:28px}
  .ticker .ticker-message{font-size:11px;letter-spacing:.8px}
}
@media(prefers-reduced-motion:reduce){
  .gallery-slide,.gallery-slide>img{transform:none!important;transition:none!important}
  .ticker-track{animation:none!important;transform:none!important}
}
