/* Participant gallery inspired by the owner's reference, using real photographs. */
.experience-page{--ex-ink:#09253a;--ex-blue:#087fad;color:var(--ex-ink)}
.experience-page header #navigation>a[aria-current=page]{color:#087fad;text-decoration:underline;text-decoration-color:#1a96c4;text-decoration-thickness:3px;text-underline-offset:8px}
.ex-container{width:94%;max-width:1800px;margin-inline:auto}
.experience-page :where(main h1,main h2,main h3){margin:0;color:var(--ex-ink)}
.ex-hero{position:relative;isolation:isolate;min-height:clamp(400px,36.64vw,690px);display:flex;align-items:center;background:#08a6ed;overflow:hidden}
.ex-hero-art{position:absolute;inset:0;z-index:-2;display:block}
.ex-hero:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#006b9ba8 0%,#007fac75 34%,transparent 55%);pointer-events:none}
.ex-hero-art img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.ex-hero-copy{width:40%;padding:38px 0 48px;margin-left:4%;color:white}
.ex-hero .ex-note{margin:0 0 14px;color:white;font:600 clamp(.75rem,1.15vw,1rem)/1.3 Figtree,system-ui,sans-serif;letter-spacing:.32em}
.ex-hero h1{position:relative;color:white;font-size:clamp(2.6rem,5.8vw,6rem);font-weight:800;line-height:.98;letter-spacing:-.025em;text-shadow:0 2px 12px #00547a38}
.ex-hero-uppercase{display:block;color:white}
.ex-hero h1 .ex-hero-script{display:block;width:100%;aspect-ratio:4.759;background:url('/assets/experiences-lettering-es.svg') left center/100% 100% no-repeat;font-size:0;color:transparent;margin-top:-.025em;text-shadow:none}
html[lang=en] .ex-hero h1 .ex-hero-script{background-image:url('/assets/experiences-lettering-en.svg');aspect-ratio:4.322}
.ex-hero-rays{position:absolute;top:-34px;right:9%;width:60px;height:60px;pointer-events:none}
.ex-hero-copy>p:not(.ex-note){max-width:480px;margin:16px 0 22px;font-size:clamp(1rem,1.6vw,1.35rem);font-weight:400;line-height:1.35;color:white;text-shadow:0 1px 8px #004d7280}
.reference-home.experience-page main .ex-hero-copy>p:not(.ex-note){font-size:clamp(1rem,1.6vw,1.35rem)!important;line-height:1.35!important}
.ex-actions{display:flex;flex-wrap:wrap;gap:10px}
.ex-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:11px 20px;border:1px solid transparent;border-radius:100px;background:#f1e454;color:#09253a;text-decoration:none;font:800 .95rem/1.25 Figtree,system-ui,sans-serif;cursor:pointer}
.ex-button.light{background:white}.ex-button.dark{background:#09253a;color:white}
.ex-button svg{width:23px;height:23px;flex-shrink:0}.ex-button:hover{box-shadow:0 5px 15px #002b4325}
.ex-statistics{position:relative;margin-top:-10px;border:4px solid white;border-radius:18px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:linear-gradient(105deg,#087eaa,#25707b);color:white;padding:24px 12px;z-index:1}
.ex-statistics>div,.ex-statistics>a{display:flex;align-items:center;justify-content:center;gap:16px;min-width:0;padding:0 14px;text-decoration:none}
.ex-statistics>:not(:first-child){border-left:1px solid #ffffff55}
.ex-statistics svg{width:38px;height:38px;flex-shrink:0;color:white}
.ex-statistics strong{display:block;font:800 clamp(1.15rem,1.8vw,1.6rem)/1.2 Outfit,system-ui,sans-serif}
.ex-statistics small{display:block;margin-top:4px;font-size:.85rem;line-height:1.25}
.ex-statistics .ex-stars{color:#f1e454;letter-spacing:.06em}
.ex-gallery{padding-top:28px;padding-bottom:32px;scroll-margin-top:100px}
.ex-filters{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:9px;margin:0 0 24px}
.ex-filters button{min-height:44px;border:1px solid #dce9ef;border-radius:100px;padding:9px 17px;background:#edf6fa;color:#09253a;font:700 .86rem/1.25 Figtree,system-ui,sans-serif}
.ex-filters button[aria-pressed=true]{background:#087eac;border-color:#087eac;color:white}
.ex-section-head{display:flex;align-items:center;justify-content:space-between;gap:22px;margin:0 0 20px}
.ex-section-head h2{font-size:clamp(1.8rem,2.6vw,2.7rem);line-height:1.1}
.ex-rays{color:#b89f00;display:inline-block;margin-right:7px;vertical-align:middle}
.ex-section-head>p{color:#087eac;font:500 1rem/1.3 'Segoe Print','Comic Sans MS',cursive;text-align:right;max-width:260px;margin:0;transform:rotate(-3deg)}
.ex-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.ex-gallery-controls{display:none}.ex-gallery-controls:not([hidden]){display:flex;justify-content:flex-end;gap:9px;margin:-6px 0 16px}.ex-gallery-controls button{display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid #cce5ee;border-radius:50%;background:#25707b;color:white;font-size:1.2rem}.ex-gallery-controls button:disabled{background:#edf5f8;color:#557383;cursor:default}
.ex-card{position:relative;min-width:0;border:1px solid #e1edf2;border-radius:14px;overflow:hidden;background:white;box-shadow:0 4px 12px #00374f08;display:flex;flex-direction:column}
.ex-card[hidden]{display:none}
.ex-photo{display:block;position:relative;aspect-ratio:3/2;overflow:hidden;background:#eaf5f9}
.ex-photo picture,.ex-photo img{display:block;width:100%;height:100%}.ex-photo img{object-fit:cover}
.ex-photo:after{content:'↗';position:absolute;bottom:8px;right:8px;width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:#ffffffed;color:#09253a;font-size:1.2rem}
.ex-favorite{position:absolute;right:10px;top:10px;z-index:1;display:grid;place-items:center;width:44px;height:44px;border:1px solid #ffffffb0;border-radius:50%;background:#ffffffed;color:#9e5364;font-size:1.5rem;line-height:1;box-shadow:0 2px 8px #001f3d16}
.ex-favorite[aria-pressed=true]{color:#cf3551;background:#fff4f5}
.ex-card-copy{padding:16px 16px 18px;display:flex;flex:1;flex-direction:column;align-items:flex-start}
.ex-card h3{font-size:clamp(1.2rem,1.7vw,1.7rem);line-height:1.1;margin-bottom:7px}
.reference-home.experience-page main .ex-card h3{font-size:clamp(1.3rem,1.7vw,1.6rem)!important;line-height:1.15!important}
.reference-home.experience-page main .ex-favorite{font-size:1.65rem!important;line-height:1!important}
.ex-location{display:flex;align-items:center;gap:5px;font-size:.87rem;line-height:1.3;margin:0 0 10px;color:#25707b}
.ex-location svg{width:17px;height:17px;flex-shrink:0;color:#087eac}
.ex-program-tag{display:inline-block;background:#f1e454;color:#09253a;border-radius:100px;padding:4px 11px;font-weight:700;font-size:.75rem;line-height:1.25}
.ex-card-copy>p:not(.ex-location){font-size:.94rem;line-height:1.4;margin:12px 0 16px}
.ex-more{margin-top:auto;min-height:36px;display:inline-flex;align-items:center;gap:8px;color:#087eac;font-size:.85rem;font-weight:700;text-underline-offset:3px}
.ex-empty{padding:32px;text-align:center;border-radius:16px;background:#f0f8fb;margin:0}
.ex-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.ex-feature{background:linear-gradient(100deg,#e5f7ff,#f9fcfe);border-block:8px solid #effaff;padding:26px 0}
.ex-feature-inner{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.5fr);align-items:center;gap:45px}
.ex-feature-photo{position:relative;display:block;padding:8px;background:white;box-shadow:0 6px 18px #09253a16;transform:rotate(-3deg);margin:0 10px;text-decoration:none}
.ex-feature-photo picture{display:block}.ex-feature-photo img{width:100%;height:auto;display:block;aspect-ratio:3/2;object-fit:cover}
.ex-feature-badge{position:absolute;top:-12px;left:-12px;background:#f1e454;color:#09253a;box-shadow:0 2px 8px #09253a20;border:4px solid white;border-radius:100px;padding:5px 13px;font-weight:800;font-size:.75rem;transform:rotate(3deg)}
.ex-feature h2{font-size:clamp(2rem,3vw,3rem);margin-bottom:10px}
.ex-feature p:not(.ex-location){max-width:720px;line-height:1.4;margin:14px 0;color:#214559}
.ex-feature-tags{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}
.ex-feature-tags span{display:flex;align-items:center;gap:7px;background:white;padding:8px 12px;border-radius:9px;font-size:.85rem}
.ex-feature-tags svg{width:22px;height:22px;color:#087eac}
.ex-destinations{padding-top:28px;padding-bottom:24px}
.ex-destination-track{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:12px}
.ex-destination{padding:0;position:relative;border:0;border-radius:10px;overflow:hidden;aspect-ratio:1.7;min-width:0;background:#25707b;color:white;cursor:pointer}
.ex-destination img{display:block;width:100%;height:100%;object-fit:cover}
.ex-destination span{position:absolute;inset:auto 0 0;padding:12px 8px 7px;background:linear-gradient(0deg,#001827f0,#00182700);font-weight:800;text-align:left;font-size:.88rem;line-height:1.25}
.ex-destination[aria-pressed=true]{outline:3px solid #1a96c4;outline-offset:3px}
.ex-final{display:flex;align-items:center;justify-content:space-between;gap:24px;background:#f1e454;border-radius:18px;margin-bottom:32px;padding:25px 32px}
.ex-final h2{font-size:clamp(1.7rem,2.5vw,2.5rem);margin-bottom:7px}.ex-final p{margin:0;line-height:1.4}.ex-final .ex-button{flex-shrink:0}
.ex-dialog{width:min(94vw,1100px);max-width:1100px;max-height:94dvh;padding:0;border:0;border-radius:18px;background:#fff;color:#09253a;box-shadow:0 20px 70px #0004}
.ex-dialog::backdrop{background:#031925d9}
.ex-dialog-head{display:flex;align-items:center;gap:15px;padding:12px 20px;border-bottom:1px solid #e3eef3}
.ex-dialog-head h2{font-size:1.15rem;line-height:1.3;margin:0;flex:1}
.ex-dialog button{display:grid;place-items:center;min-width:44px;min-height:44px;padding:6px;border:1px solid #c9e2ed;border-radius:50%;background:white;color:#09253a;font-size:1.4rem}
.ex-dialog-stage{position:relative;display:grid;place-items:center;background:#eef6fa;touch-action:pan-y pinch-zoom}
.ex-dialog-stage img{display:block;width:100%;height:min(65dvh,680px);object-fit:contain}
.ex-dialog-nav{display:flex;justify-content:center;gap:10px;padding:10px;background:#eef6fa}
.ex-dialog-caption{padding:14px 22px}.ex-dialog-caption p{margin:4px 0;font-size:.93rem;line-height:1.35}.ex-dialog-caption .ex-location{margin-top:0}
body.ex-modal-open{overflow:hidden}
@media(min-width:1801px){.ex-hero-copy{margin-left:max(4%,calc((100% - 1800px)/2));max-width:770px}.ex-grid{gap:24px}}
@media(max-width:1100px){.ex-hero{min-height:460px}.ex-hero-copy{width:41%;margin-left:4%;padding-block:30px}.ex-hero h1{font-size:clamp(2.2rem,4.5vw,3.4rem)}.ex-hero-copy>p:not(.ex-note){font-size:1rem}.ex-hero .ex-note{font-size:.9rem}.ex-hero .ex-button{font-size:.8rem;padding-inline:15px}.ex-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.ex-statistics{padding:20px 6px}.ex-statistics>div,.ex-statistics>a{gap:9px;padding:0 8px}.ex-statistics svg{width:28px;height:28px}.ex-destination-track{grid-template-columns:repeat(4,minmax(0,1fr))}.ex-feature-inner{gap:28px}}
@media(max-width:760px){.ex-container{width:90%}.ex-hero{display:block;min-height:calc(420px + 70vw)}.ex-hero-copy{width:90%;margin:0 auto;padding:28px 0 calc(70vw + 20px)}.ex-hero-art img{object-position:center top}.ex-hero h1{font-size:clamp(2.3rem,6.7vw,3.4rem);max-width:560px}.ex-hero-copy>p:not(.ex-note){max-width:500px;font-size:1rem;margin:16px 0}.ex-hero .ex-note{margin-bottom:13px}.ex-hero .ex-button{font-size:.86rem;min-height:46px}.ex-statistics{grid-template-columns:repeat(2,minmax(0,1fr));padding:16px 9px;gap:18px 0;margin-top:-9px}.ex-statistics>:nth-child(3){border-left:0}.ex-statistics>div,.ex-statistics>a{justify-content:flex-start;padding-inline:10px}.ex-statistics strong{font-size:1.2rem}.ex-statistics small{font-size:.75rem}.ex-statistics svg{width:28px;height:28px}.ex-gallery{padding-top:22px}.ex-section-head{align-items:flex-start}.ex-section-head h2{font-size:1.9rem}.ex-section-head>p{display:none}.ex-filters{gap:8px;justify-content:flex-start}.ex-filters button{font-size:.8rem;padding-inline:13px}.ex-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.ex-card h3{font-size:1.25rem}.ex-card-copy{padding:14px}.ex-card-copy>p:not(.ex-location){font-size:.9rem}.ex-feature-inner{grid-template-columns:1fr;gap:27px}.ex-feature-photo{max-width:520px;margin:12px auto;width:94%}.ex-feature{padding:25px 0}.ex-feature h2{font-size:2.2rem}.ex-destination-track{--ac-card-width:min(74vw,300px);display:flex;overflow-x:auto;gap:14px;scroll-snap-type:x mandatory;scrollbar-width:none}.ex-destination{flex:0 0 var(--ac-card-width);scroll-snap-align:center;aspect-ratio:1.8}.ex-destination span{font-size:1.1rem}.ex-final{flex-direction:column;align-items:flex-start;padding:24px;margin-bottom:24px;gap:18px}.ex-final .ex-button{width:100%}.ex-dialog-head{padding:10px 14px}.ex-dialog-stage img{height:55dvh}.ex-dialog-caption{padding:12px 16px}.ex-dialog{max-height:92dvh}.ex-dialog-head h2{font-size:1rem}}
@media(max-width:520px){.ex-grid{grid-template-columns:1fr;gap:20px}.ex-card h3{font-size:1.55rem}.ex-card-copy{padding:18px}.ex-card-copy>p:not(.ex-location){margin:12px 0}.ex-location{font-size:.95rem}.ex-program-tag{font-size:.8rem}.ex-hero{min-height:calc(400px + 88vw)}.ex-hero-copy{padding-bottom:calc(88vw + 5px)}.ex-hero h1{font-size:clamp(2.2rem,9vw,2.8rem)}.ex-actions{gap:9px}.ex-hero .ex-button{padding:11px 14px;font-size:.8rem}.ex-feature-tags{gap:7px}.ex-feature-tags span{font-size:.8rem}.ex-section-head h2{font-size:1.75rem}}
@media(max-width:760px){.ex-grid{--ex-card-width:min(84vw,360px);display:flex;overflow-x:auto;gap:18px;padding-block:4px 12px;padding-inline:max(0px,calc((100% - var(--ex-card-width))/2));scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain}.ex-grid::-webkit-scrollbar{display:none}.ex-grid>.ex-card{flex:0 0 var(--ex-card-width);scroll-snap-align:center;scroll-snap-stop:always}.ex-grid:focus-visible{outline:3px solid #25707b;outline-offset:3px}}
@media(prefers-reduced-motion:no-preference){.ex-photo img{transition:transform .3s ease}.ex-photo:hover img{transform:scale(1.025)}.ex-button,.ex-filters button,.ex-favorite{transition:background .2s,color .2s,box-shadow .2s}}
@media(max-width:520px){.ex-statistics>div,.ex-statistics>a{flex-direction:column;align-items:center;text-align:center;gap:7px;padding-inline:6px}.ex-statistics strong{font-size:1.1rem}.ex-statistics small{max-width:140px}}
@media(max-width:1100px){.ex-hero h1{font-size:clamp(2.5rem,6.4vw,4.8rem)}.ex-hero-rays{right:0;top:-28px;width:48px;height:48px}.ex-hero .ex-note{font-size:.75rem;letter-spacing:.3em}}
@media(max-width:760px){.ex-hero:before{background:linear-gradient(180deg,#006b9baa 0%,#007fac88 35%,transparent 62%)}.ex-hero h1{font-size:clamp(3rem,10.5vw,5.6rem);max-width:560px}.ex-hero h1 .ex-hero-script{max-width:540px}.ex-hero-rays{right:10%;top:-30px;width:54px;height:54px}.ex-hero-copy>p:not(.ex-note){font-size:clamp(1rem,2.8vw,1.25rem);max-width:480px}.ex-hero .ex-note{margin-bottom:16px}.ex-hero-copy{padding-top:38px}}
.reference-home.experience-page main .ex-hero-uppercase{font-size:inherit;line-height:inherit}
@media(max-width:520px){.ex-hero h1{font-size:clamp(2.75rem,12vw,4rem)}.ex-hero-rays{right:4%;top:-27px;width:43px;height:43px}}
@media(prefers-reduced-motion:reduce){.experience-page{scroll-behavior:auto}}
@media print{.ex-filters,.ex-favorite,.ex-dialog,.ex-actions,.ac-controls{display:none!important}.ex-card[hidden]{display:flex}.ex-grid{grid-template-columns:repeat(2,1fr)}.ex-card{break-inside:avoid}.ex-hero{min-height:330px}.ex-hero-copy{padding:25px;width:50%;margin:0}.ex-hero h1{font-size:2rem}.ex-hero-art img{object-fit:cover}.ex-destination-track{display:grid;grid-template-columns:repeat(4,1fr)}.ex-feature-inner{grid-template-columns:1fr 1fr}}
