/* Complete season archives. Photographs retain their original proportions. */
.photo-history{padding-block:38px 35px;background:#111611}.year-jump{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));position:sticky;top:0;z-index:4;border-block:1px solid var(--line);background:#111611f5;backdrop-filter:blur(12px);margin-top:0}.year-jump a{padding:19px 10px 18px;text-align:center;font-family:var(--display);font-size:24px;font-weight:750;line-height:1}.year-jump a:hover,.year-jump a:focus-visible{background:#202a20;color:var(--green)}.photo-history .season-gallery{scroll-margin-top:105px}.season-story .text-link{margin-top:12px}
.season-gallery{padding-block:64px 72px;border-top:1px solid var(--line);scroll-margin-top:28px}
.season-heading{display:grid;grid-template-columns:180px minmax(0,1fr);align-items:start;gap:45px;margin-bottom:32px}
.season-heading .eyebrow{font-size:10px;letter-spacing:.12em;margin-bottom:14px}
.season-heading .season-year{font-size:clamp(60px,6.4vw,94px);color:var(--green);line-height:.9}
.season-story{max-width:840px;padding-top:3px}
.season-story h3{font-family:var(--display);font-size:32px;line-height:1.06;letter-spacing:-.02em;font-weight:800;margin:0 0 15px}
.season-story p{font-size:15px;line-height:1.85;color:#c7cec8;margin:0}
.gallery{min-width:0}
.gallery-stage{position:relative;width:100%;aspect-ratio:16/10;max-height:640px;overflow:hidden;background:#050706;border:1px solid #ffffff18}
.gallery-open{display:block;width:100%;height:100%;padding:0;border:0;background:transparent;cursor:zoom-in;touch-action:pan-y;color:inherit}
.gallery-main-image{display:block;width:100%;height:100%;object-fit:contain;object-position:center;-webkit-user-drag:none;user-select:none}
.gallery-prev,.gallery-next{position:absolute;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:46px;height:46px;border:1px solid #ffffff45;background:#080c09d9;color:#fff;font-size:25px;line-height:1;box-shadow:0 3px 18px #0005}
.gallery-prev{left:18px}.gallery-next{right:18px}
.gallery-prev:hover,.gallery-next:hover{background:var(--green);border-color:var(--green);color:var(--black)}
.gallery-toolbar{display:flex;align-items:center;justify-content:flex-end;gap:28px;padding-block:18px 17px;border-bottom:1px solid var(--line)}
.gallery-counter{font-variant-numeric:tabular-nums;font-size:12px;font-weight:650;letter-spacing:.1em;color:#e8eee8;white-space:nowrap;margin:0 auto 0 0;min-width:68px}
.gallery-play,.gallery-expand{border:0;background:transparent;color:var(--gray);padding:6px 0;font-size:11px;font-weight:650;letter-spacing:.025em;line-height:1.5;min-height:32px}
.gallery-play:hover,.gallery-expand:hover,.gallery-play[aria-pressed="true"]{color:var(--green)}
.gallery-expand{color:var(--white)}
.gallery-thumbnails{display:flex;gap:10px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-color:#606b60 #151a15;scrollbar-width:thin;padding:18px 3px 14px;margin-inline:-3px;scroll-padding-inline:3px}
.gallery-thumb{position:relative;flex:0 0 96px;height:68px;padding:3px;border:1px solid #485048;background:#080b08;opacity:.66;transition:opacity .15s,border-color .15s}
.gallery-thumb img{width:100%;height:100%;object-fit:contain;pointer-events:none;-webkit-user-drag:none}
.gallery-thumb:hover{opacity:1;border-color:#a5b0a5}
.gallery-thumb.is-selected{opacity:1;border:2px solid var(--green);padding:2px}
.gallery-thumb.is-selected:after{content:"";position:absolute;bottom:5px;right:5px;width:5px;height:5px;border-radius:50%;background:var(--green);box-shadow:0 0 0 2px #080b08}
.gallery-caption{margin:7px 0 0;max-width:900px;color:var(--gray);font-size:11px;line-height:1.7;min-height:0}
.gallery-caption:empty{display:none}
.gallery button:focus-visible{outline:2px solid var(--green);outline-offset:3px}
.gallery-open:focus-visible{outline-offset:-5px}
.gallery [hidden]{display:none!important}
html.gallery-lightbox-open,body.gallery-lightbox-open{overflow:hidden;overscroll-behavior:none}
.gallery-lightbox{position:fixed;inset:0;width:100vw;height:100vh;height:100dvh;max-width:none;max-height:none;margin:0;padding:22px 30px 20px;border:0;background:#080b09;color:var(--white);font-family:var(--body);overflow:hidden;overscroll-behavior:contain}
.gallery-lightbox[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:18px}
.gallery-lightbox::backdrop{background:#000e}
.gallery-lightbox-header{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:42px}
.gallery-lightbox-title{font-size:11px;font-weight:700;letter-spacing:.16em;line-height:1.6;text-transform:uppercase;margin:0;color:var(--gray)}
.gallery-lightbox-title strong{color:var(--green);font-weight:750}
.gallery-lightbox-close{display:flex;align-items:center;justify-content:center;gap:16px;min-height:44px;padding:7px 0 7px 18px;border:0;background:transparent;color:var(--white);font-size:11px;font-weight:650;letter-spacing:.05em}
.gallery-lightbox-close span{font-size:30px;line-height:1;font-weight:400}
.gallery-lightbox-close:hover{color:var(--green)}
.gallery-lightbox-stage{position:relative;min-width:0;min-height:0;display:grid;grid-template-columns:54px minmax(0,1fr) 54px;gap:18px;align-items:center}
.gallery-lightbox-figure{height:100%;min-width:0;min-height:0;margin:0;touch-action:pan-y;display:flex;align-items:center;justify-content:center}
.gallery-lightbox-image{width:100%;height:100%;object-fit:contain;max-width:100%;max-height:100%;-webkit-user-drag:none;user-select:none}
.gallery-lightbox-prev,.gallery-lightbox-next{display:grid;place-items:center;width:54px;height:54px;border:1px solid #586058;background:#151b15;color:var(--white);font-size:28px;line-height:1}
.gallery-lightbox-prev:hover,.gallery-lightbox-next:hover{border-color:var(--green);background:var(--green);color:var(--black)}
.gallery-lightbox-footer{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:30px;min-height:40px;padding-top:13px;border-top:1px solid #ffffff25}
.gallery-lightbox-counter{font-size:12px;font-weight:650;font-variant-numeric:tabular-nums;letter-spacing:.1em;margin:0;white-space:nowrap}
.gallery-lightbox-caption{font-size:12px;line-height:1.6;color:var(--gray);margin:0;max-width:800px;max-height:6.4em;overflow-y:auto}
.gallery-lightbox-original{font-size:10px;letter-spacing:.06em;border-bottom:1px solid var(--green);padding-block:7px;color:var(--white);white-space:nowrap}
.gallery-lightbox-original:hover{color:var(--green)}
.gallery-lightbox [hidden]{display:none!important}
.gallery-lightbox button:focus-visible,.gallery-lightbox a:focus-visible{outline:2px solid var(--green);outline-offset:4px}
@media(max-width:900px){.season-heading{grid-template-columns:130px minmax(0,1fr);gap:30px}.season-heading .season-year{font-size:72px}.season-story h3{font-size:29px}.season-story p{font-size:14px}.gallery-lightbox{padding:16px 20px}.gallery-lightbox-stage{grid-template-columns:46px minmax(0,1fr) 46px;gap:12px}.gallery-lightbox-prev,.gallery-lightbox-next{width:46px;height:46px}}
@media(max-width:650px){.season-gallery{padding-block:39px 46px;scroll-margin-top:18px}.season-heading{grid-template-columns:1fr;gap:23px;margin-bottom:24px}.season-heading .eyebrow{font-size:9px;margin-bottom:12px}.season-heading .season-year{font-size:66px}.season-story h3{font-size:29px;margin-bottom:13px}.season-story p{font-size:14px;line-height:1.85}.gallery-stage{aspect-ratio:4/3;max-height:none}.gallery-prev,.gallery-next{width:38px;height:42px;font-size:22px;background:#080c09c9}.gallery-prev{left:9px}.gallery-next{right:9px}.gallery-toolbar{gap:17px;padding-block:12px}.gallery-counter{font-size:10px;letter-spacing:.05em;min-width:54px}.gallery-play,.gallery-expand{font-size:10px;letter-spacing:0;min-height:36px}.gallery-thumbnails{gap:8px;padding-top:14px}.gallery-thumb{flex-basis:76px;height:57px}.gallery-caption{font-size:10px}.gallery-lightbox{padding:10px 12px 14px}.gallery-lightbox[open]{gap:10px}.gallery-lightbox-title{font-size:9px;letter-spacing:.1em;max-width:210px}.gallery-lightbox-close{gap:10px;font-size:10px}.gallery-lightbox-stage{display:block}.gallery-lightbox-figure{width:100%;height:100%}.gallery-lightbox-prev,.gallery-lightbox-next{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:46px;background:#080c09d9;font-size:24px}.gallery-lightbox-prev{left:0}.gallery-lightbox-next{right:0}.gallery-lightbox-footer{grid-template-columns:1fr auto;gap:9px 20px;padding-top:12px}.gallery-lightbox-counter{font-size:10px}.gallery-lightbox-caption{grid-column:1/-1;grid-row:2;font-size:11px;max-height:4.8em}.gallery-lightbox-original{font-size:9px}.gallery-lightbox-caption:empty{display:none}}
@media(prefers-reduced-motion:reduce){.gallery-thumb{transition:none}.gallery-thumbnails{scroll-behavior:auto}}
@media(max-width:650px){.photo-history{padding-block:22px 15px}.year-jump{display:flex;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#606b60 #111611;margin-top:0}.year-jump a{flex:0 0 68px;font-size:23px;padding-block:14px}.photo-history .season-gallery{scroll-margin-top:90px}}

/* Slide position is announced to assistive technology, not displayed as a photo total. */
.gallery-counter,.gallery-lightbox-counter{position:absolute;width:1px;height:1px;min-width:0;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.gallery-lightbox-original{grid-column:2;grid-row:1;justify-self:end}
