/* Program selection and one horizontal row keep a growing gallery compact. */
.ex-by-program .ex-section-head{margin-bottom:18px}
.ex-programs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:16px}
.ex-programs button{display:flex;align-items:center;justify-content:center;gap:9px;min-height:52px;border:1px solid #cfe4eb;border-radius:12px;padding:11px 14px;background:#edf6fa;color:#09253a;font-weight:750;line-height:1.3;text-align:center;cursor:pointer}
.ex-programs button svg{width:23px;height:23px;flex-shrink:0;color:#087fad}
.ex-programs button[aria-selected=true]{background:#25707b;border-color:#25707b;color:white;box-shadow:inset 0 -3px #f1e454}
.ex-programs button[aria-selected=true] svg{color:#f1e454}
.ex-programs button:focus-visible,.ex-gallery-toolbar :is(button,select):focus-visible{outline:3px solid #1a96c4;outline-offset:3px}
.ex-gallery-toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.ex-destination-filter{display:flex;align-items:center;gap:9px;font-size:.875rem;font-weight:650;color:#25707b}
.ex-destination-filter select{min-height:44px;max-width:240px;border:1px solid #cfe4eb;border-radius:100px;padding:9px 35px 9px 14px;background:white;color:#09253a;font:600 .9375rem/1.3 Figtree,system-ui,sans-serif;cursor:pointer}
.ex-destination-filter select:disabled{opacity:.5;cursor:default}
.ex-favorites-filter{min-height:44px;border:1px solid #cfe4eb;border-radius:100px;padding:9px 16px;background:white;color:#09253a;font-weight:650;cursor:pointer}
.ex-favorites-filter[aria-pressed=true]{background:#fff4f5;color:#a82d48;border-color:#ecc9d1}
.ex-favorites-filter:disabled{opacity:.5;cursor:default}
.ex-gallery-position{margin-left:auto;color:#25707b;font-size:.875rem;font-variant-numeric:tabular-nums;white-space:nowrap}
.ex-by-program .ex-gallery-controls:not([hidden]){margin:0;gap:8px}
.ex-ready .ex-by-program #ex-gallery-track{--ex-card-width:calc((100% - 48px)/4);display:flex;overflow-x:auto;gap:16px;padding:4px 2px 10px;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#b8d8e3 #f4f9fb;overscroll-behavior-x:contain}
.ex-ready .ex-by-program #ex-gallery-track>.ex-card{flex:0 0 var(--ex-card-width);scroll-snap-align:start;scroll-snap-stop:always}
.ex-ready .ex-by-program #ex-gallery-track:focus-visible{outline:3px solid #25707b;outline-offset:3px}
.ex-by-program .ex-empty{padding:32px 24px;text-align:center;min-height:180px;border:1px solid #dcebf1}
.ex-by-program .ex-empty p{margin:0 auto 18px;max-width:600px}
.ex-by-program .ex-empty .ex-button{min-height:44px}
.ex-programs[hidden],.ex-gallery-toolbar[hidden],.ex-ready .ex-by-program #ex-gallery-track[hidden],.ex-by-program .ex-empty[hidden],.ex-by-program .ex-empty [hidden]{display:none}
@media(min-width:761px){
 .ex-by-program{padding-block:24px;max-width:1440px}
 .reference-home.experience-page main .ex-by-program .ex-section-head>p{font-size:.875rem!important;line-height:1.3!important}
 .ex-by-program .ex-card-copy{padding:12px 14px 13px}
 .reference-home.experience-page main .ex-by-program .ex-card h3{font-size:1.125rem!important;line-height:1.2!important;margin-bottom:6px}
 .ex-by-program .ex-location{margin-bottom:7px}
 .ex-by-program .ex-program-tag{display:none}
 .reference-home.experience-page main .ex-by-program .ex-card-copy>p:not(.ex-location){display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;margin:9px 0 8px;line-height:1.4!important}
 .ex-by-program .ex-more{min-height:36px}
}
@media(min-width:761px) and (max-width:1100px){
 .ex-ready .ex-by-program #ex-gallery-track{--ex-card-width:calc((100% - 32px)/3)}
 .ex-programs button{padding-inline:9px;gap:6px}
 .ex-programs button svg{width:20px;height:20px}
}
@media(max-width:760px){
 .ex-programs{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .ex-programs button{padding:10px 8px;gap:7px;min-height:56px}
 .ex-programs button svg{width:21px;height:21px}
 .ex-ready .ex-by-program #ex-gallery-track{--ex-card-width:min(84vw,360px);gap:18px;padding-inline:max(0px,calc((100% - var(--ex-card-width))/2));scrollbar-width:none}
 .ex-ready .ex-by-program #ex-gallery-track>.ex-card{scroll-snap-align:center}
 .ex-gallery-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}
 .ex-destination-filter{flex:1;min-width:0}
 .ex-destination-filter>span{display:none}
 .ex-destination-filter select{width:100%;max-width:none;min-width:0;padding-right:25px}
 .ex-favorites-filter{padding-inline:13px}
 .ex-gallery-position{margin-left:0}
 .ex-by-program .ex-gallery-controls:not([hidden]){margin-left:auto}
 .ex-by-program .ex-empty{padding:25px 18px}
}
@media print{
 .ex-programs,.ex-gallery-toolbar{display:none!important}
 .ex-ready .ex-by-program #ex-gallery-track{display:grid!important;overflow:visible;grid-template-columns:repeat(3,minmax(0,1fr))}
 .ex-ready .ex-by-program #ex-gallery-track>.ex-card{display:flex!important;break-inside:avoid}
 .ex-by-program .ex-empty{display:none!important}
}
