@font-face{font-family:Manrope;src:url('../fonts/manrope-latin-wght-normal.woff2') format('woff2');font-weight:200 800;font-display:swap}
:root{font-family:Manrope,Arial,sans-serif;color:#22211f;background:#fff;font-synthesis:none;--muted:#686763;--line:#deddd9;--ink:#22211f;--paper:#f4f4f1}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;max-width:100%;height:auto}figure,p,h1,h2,h3{margin:0}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid #6a343f;outline-offset:6px}.wrap{width:calc(100% - 112px);max-width:1600px;margin-inline:auto}.site-header{min-height:124px;display:flex;align-items:center;justify-content:space-between;gap:36px;border-bottom:1px solid var(--line)}.brand{width:330px;flex-shrink:0}.brand img{width:100%;height:auto}.main-nav{display:flex;align-items:center;gap:28px;font-size:13px;font-weight:600}.main-nav a{padding:12px 0;position:relative}.main-nav a::after{content:'';position:absolute;left:0;right:0;bottom:5px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .2s}.main-nav a:hover::after,.main-nav a[aria-current=page]::after{transform:scaleX(1)}.skip-link{position:fixed;top:-80px;left:20px;background:white;padding:12px;z-index:9999}.skip-link:focus{top:10px}.home-intro{padding-top:40px}.eyebrow-row{display:flex;align-items:center;justify-content:space-between;gap:24px}.eyebrow{font-size:12px;font-weight:650;letter-spacing:.12em;text-transform:uppercase;display:flex;align-items:center;gap:12px}.small-rule{height:1px;width:28px;background:var(--ink)}.edition{font-size:12px;color:var(--muted)}h1{font-size:clamp(64px,8.6vw,136px);font-weight:450;letter-spacing:-.065em;line-height:1.02}.home-intro h1{margin:27px 0 30px}.home-intro h1 span{padding-left:13.5%}.hero-foot{display:flex;justify-content:space-between;align-items:end;margin-bottom:30px;gap:20px}.hero-foot p{font-size:13px;line-height:1.9}.text-link{font-size:14px;border-bottom:1px solid var(--ink);padding-bottom:8px;display:inline-flex;gap:42px;align-items:center}.text-link span{font-size:20px}.diptych{display:grid;grid-template-columns:1.32fr 1fr;gap:20px;align-items:end}.diptych figure:first-child img{width:100%;aspect-ratio:1.51;object-fit:cover}.diptych figure:last-child img{width:100%;aspect-ratio:1.51;object-fit:cover}.diptych figcaption{display:flex;justify-content:space-between;gap:12px;font-size:11px;color:var(--muted);padding-top:12px;line-height:1.6}.about{display:grid;grid-template-columns:1fr 2fr;gap:60px;padding-block:100px}.about .eyebrow{align-self:start;padding-top:8px}.intro-copy{font-size:clamp(21px,2.15vw,32px);line-height:1.65;letter-spacing:-.025em;max-width:930px}.routes{padding-bottom:110px;scroll-margin-top:40px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:25px;padding-bottom:30px;border-bottom:1px solid var(--line);margin-bottom:34px}.section-heading h2{font-size:36px;font-weight:450;letter-spacing:-.045em}.section-heading p{font-size:13px;color:var(--muted)}.route-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.route-image{background:var(--paper);overflow:hidden}.route-image img{width:100%;aspect-ratio:1.4;object-fit:cover;transition:transform .5s}.route-card:hover .route-image img{transform:scale(1.025)}.route-meta{display:flex;justify-content:space-between;align-items:center;margin-top:19px;font-size:12px;color:var(--muted)}.route-meta>span:last-child{font-size:24px;color:var(--ink)}.route-card h3{font-size:25px;line-height:1.3;font-weight:500;letter-spacing:-.035em;max-width:290px;margin-top:10px}.route-card>p{font-size:14px;color:var(--muted);margin-top:10px}.site-footer{border-top:1px solid var(--ink);padding-block:40px 28px}.footer-top{display:flex;justify-content:space-between;gap:32px;align-items:start}.footer-title{font-size:25px;line-height:1.13;letter-spacing:-.045em}.footer-title span{display:block;font-size:12px;letter-spacing:0;color:var(--muted);margin-top:14px}.footer-top>p{font-size:14px;line-height:1.9}.back-top{font-size:13px;display:flex;gap:25px}.footer-bottom{display:flex;justify-content:space-between;gap:24px;align-items:end;margin-top:48px}.footer-bottom>p{font-size:12px;color:var(--muted);line-height:1.8}.anniversary-logos{display:flex;gap:26px;align-items:center}.anniversary-logos img{width:auto;height:65px;object-fit:contain}
@media(min-width:1600px){.wrap{width:calc(100% - 160px)}}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.site-header{gap:24px;min-height:108px}.brand{width:270px}.main-nav{gap:18px;font-size:12px}.diptych figcaption{display:block}.diptych figcaption span{display:block}.about{gap:32px;padding-block:75px}.route-card h3{font-size:22px}}
@media(max-width:760px){.wrap{width:calc(100% - 40px)}.site-header{padding-top:25px;display:block}.brand{display:block;width:285px;max-width:100%;margin-bottom:22px}.main-nav{justify-content:space-between;gap:12px;font-size:12px;overflow-x:auto;white-space:nowrap;padding-bottom:12px}.main-nav a{min-height:44px;display:flex;align-items:center}.home-intro{padding-top:28px}.edition{display:none}.home-intro h1{font-size:clamp(47px,10.8vw,80px);margin-block:30px}.home-intro h1 span{padding-left:5%}.hero-foot{align-items:start;flex-direction:column;gap:20px}.hero-foot p{font-size:12px}.text-link{font-size:14px;gap:24px}.diptych{gap:12px;grid-template-columns:1fr 1fr;align-items:start}.diptych figcaption{font-size:10px}.about{grid-template-columns:1fr;gap:22px;padding-block:60px}.intro-copy{font-size:22px}.section-heading{align-items:start;flex-direction:column;gap:12px;margin-bottom:25px}.section-heading h2{font-size:32px}.route-grid{grid-template-columns:1fr;gap:40px}.route-card h3{max-width:none;font-size:25px}.route-image img{aspect-ratio:1.5}.routes{padding-bottom:65px}.footer-top{flex-wrap:wrap}.footer-top>p{font-size:12px}.back-top{width:100%;margin-top:5px}.footer-bottom{align-items:start;flex-direction:column;margin-top:32px;gap:30px}.anniversary-logos img{height:55px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
.gallery-intro{padding-top:32px}.breadcrumb{font-size:13px;color:var(--muted);display:inline-flex;align-items:center;gap:15px;padding-block:8px}.gallery-heading{display:grid;grid-template-columns:140px 1fr;gap:32px;margin:60px 0 48px}.chapter{font-size:68px;font-weight:400;letter-spacing:-.06em;line-height:1}.chapter span{display:block;font-size:14px;color:var(--muted);letter-spacing:0;margin-top:16px}.gallery-heading .eyebrow{margin-bottom:20px}.gallery-heading h1{font-size:clamp(44px,5.2vw,80px);max-width:1000px;line-height:1.12;letter-spacing:-.055em}.gallery-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid var(--line);padding-block:23px;font-size:13px;color:var(--muted)}.gallery-toolbar p:last-child span{margin-left:12px}.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:32px;row-gap:58px;align-items:start;padding-top:10px;padding-bottom:90px}.photo{min-width:0}.photo-surface{background:var(--paper);position:relative;display:flex;align-items:center;justify-content:center;aspect-ratio:1.26;overflow:hidden}.photo-surface img{width:100%;height:100%;object-fit:contain;max-height:100%;position:absolute;inset:0}.enlarge{position:absolute;right:12px;bottom:12px;background:white;color:var(--ink);width:32px;height:32px;display:grid;place-items:center;font-size:21px;opacity:0;transform:translateY(5px);transition:opacity .2s,transform .2s}.photo-open:hover .enlarge,.photo-open:focus-visible .enlarge{opacity:1;transform:translateY(0)}.photo-open{display:block}.photo-index{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:12px;padding-top:18px}.photo h2{font-size:17px;line-height:1.6;font-weight:550;letter-spacing:-.015em;margin-top:9px}.photo-details{margin-top:13px;font-size:13px;line-height:1.7}.photo-details summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:40px;border-top:1px solid var(--line);color:var(--muted)}.photo-details summary::-webkit-details-marker{display:none}.photo-details summary span{font-size:20px}.photo-details[open] summary span{transform:rotate(45deg)}dl{margin:12px 0 0}dt{font-size:11px;color:var(--muted);margin-top:12px}dd{margin:2px 0 0;font-size:13px}.other-routes{border-top:1px solid var(--line);padding-top:32px;padding-bottom:90px}.other-routes>div{display:grid;grid-template-columns:1fr 1fr;gap:48px;margin-top:25px}.other-routes a{display:flex;gap:25px;align-items:center;font-size:25px;line-height:1.35;letter-spacing:-.025em}.other-routes a>span:last-child{margin-left:auto}.other-number{font-size:13px;color:var(--muted);letter-spacing:0}.pswp{--pswp-bg:#171817;--pswp-icon-color:#fff;--pswp-icon-color-secondary:#171817;--pswp-icon-stroke-color:#171817}.pswp__custom-caption{position:absolute;bottom:24px;left:50%;transform:translateX(-50%);width:calc(100% - 140px);max-width:1000px;color:#fff;max-height:calc(40vh - 35px);overflow-y:auto;text-align:left;pointer-events:auto;padding:8px 5px}.pswp__custom-caption h2{font-size:20px;line-height:1.45;font-weight:500;letter-spacing:-.02em}.pswp__custom-caption dl{display:flex;flex-wrap:wrap;align-items:baseline;gap:5px 12px;margin-top:12px}.pswp__custom-caption dt{color:#bdbfbb;font-size:12px;margin:0}.pswp__custom-caption dd{font-size:13px;line-height:1.7;margin:0 15px 0 0}.pswp__counter{font-family:Manrope,Arial,sans-serif;font-size:14px}.pswp__button:focus-visible{outline:2px solid white;outline-offset:-5px}.pswp__button--arrow{background:#17181780!important}.pswp__top-bar{background:linear-gradient(#171817,transparent)}
@media(max-width:1100px){.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-heading{grid-template-columns:95px 1fr}.gallery-heading h1{font-size:58px}.main-nav{font-size:14px;gap:16px}.brand{width:250px}}
@media(max-width:760px){.main-nav{display:grid;grid-template-columns:1fr 1fr;gap:0 20px;font-size:14px;white-space:normal}.main-nav a{padding-block:8px}.gallery-intro{padding-top:22px}.gallery-heading{grid-template-columns:42px 1fr;gap:18px;margin-block:34px}.chapter{font-size:34px}.chapter span{font-size:12px;margin-top:9px}.gallery-heading h1{font-size:38px}.gallery-heading .eyebrow{font-size:11px;letter-spacing:.07em;margin-bottom:12px;line-height:1.6}.gallery-toolbar{font-size:12px;align-items:start}.gallery-toolbar p:last-child{max-width:180px;text-align:right}.photo-grid{grid-template-columns:1fr;gap:38px;padding-bottom:55px}.photo-surface{aspect-ratio:auto;min-height:0}.photo-surface img{position:static;width:100%;height:auto;max-height:70vh;object-fit:contain}.enlarge{opacity:1;transform:none}.photo h2{font-size:18px}.photo-details summary{font-size:14px}.other-routes{padding-bottom:60px}.other-routes>div{grid-template-columns:1fr;gap:28px}.other-routes a{font-size:23px}.pswp__custom-caption{width:calc(100% - 32px);bottom:18px;max-height:calc(40vh - 25px)}.pswp__custom-caption h2{font-size:17px}.pswp__custom-caption dl{display:grid;grid-template-columns:auto 1fr;gap:6px 12px}.pswp__custom-caption dt{font-size:12px}.pswp__custom-caption dd{font-size:13px;margin:0}.pswp__button--arrow{top:auto!important;bottom:0;margin-top:0!important;width:44px!important;height:44px!important}.pswp__button--arrow .pswp__icn{top:6px!important;left:6px!important;width:32px!important;height:32px!important}.pswp__custom-caption{bottom:49px;max-height:calc(40vh - 65px)}}
/* Keep touch controls visible and align the SVG inside its tap target. */
@media(max-width:760px){.pswp .pswp__button--arrow{visibility:visible}.pswp__button--arrow .pswp__icn{margin-top:0!important}.diptych figcaption{font-size:12px}.eyebrow{font-size:12px}}
@media(max-width:520px){.diptych{grid-template-columns:1fr;gap:26px}.diptych figcaption{display:flex;justify-content:space-between;gap:20px}.diptych figcaption span:last-child{text-align:right;max-width:55%}}
.institution-links a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}.institution-links a:hover{text-decoration-thickness:2px}

.intro-copy{font-size:clamp(18px,1.5vw,22px);line-height:1.8;letter-spacing:-.012em}.intro-copy h2{font-size:clamp(24px,2.1vw,32px);font-weight:450;line-height:1.5;letter-spacing:-.025em;margin-bottom:30px}.intro-copy p+p{margin-top:1.25em}
