/* A night at Pont Aeri: event-led layout, real media, readable archive. */
.experience-hero{max-width:1440px;margin:auto;display:grid;grid-template-columns:1.25fr .8fr;gap:8%;padding:56px 6% 60px;align-items:center}.event-hero-copy .eyebrow{color:var(--brand-light);margin-bottom:20px}.hero-event-date{font:600 1.4rem var(--display);letter-spacing:.08em;margin-bottom:22px}.experience-hero h1{font-size:clamp(4rem,7.5vw,7.2rem);line-height:.9;margin:0 0 24px}.experience-hero h1 span{color:var(--brand-light)}.hero-event-venue{font-size:1.35rem;color:#d7e6ef;margin:0 0 28px}.hero-event-artists{font:700 clamp(1.8rem,3vw,2.8rem)/1.05 var(--display);text-transform:uppercase}.hero-event-support{font-size:1rem;color:var(--muted)}.hero-event-actions{display:flex;align-items:center;flex-wrap:wrap;gap:24px;margin-top:30px}.hero-event-note{font-size:.875rem;color:var(--muted);margin-top:22px;max-width:390px}.hero-event-poster{margin:0;max-width:395px;width:100%;justify-self:end}.hero-event-poster img{width:100%;height:auto;max-height:530px;object-fit:contain}.hero-event-poster .photo-link{background:none}.hero-event-poster figcaption{margin:12px 0 0;text-align:right;font-size:.75rem}.mobile-ticket{display:none}.page-heading{padding-top:48px;padding-bottom:45px}.page-heading h1{font-size:clamp(3.4rem,6vw,6rem)}.section{padding-top:78px;padding-bottom:78px}.full-footer .footer-main h2{font-size:clamp(3.7rem,7vw,7rem)}.section-top .text-link{white-space:normal}.no-event{display:block;min-height:450px}.no-event h1{margin:24px 0}.no-event>p{max-width:500px}
@media(max-width:900px){.experience-hero{gap:5%;grid-template-columns:1.1fr .9fr;padding-top:40px}.experience-hero h1{font-size:5rem}.hero-event-date{font-size:1.2rem}.hero-event-artists{font-size:2rem}.hero-event-venue{font-size:1.2rem}.hero-event-actions{gap:20px}}
@media(max-width:600px){body{padding-bottom:80px}.site-header .header-cta{display:none}.experience-hero{grid-template-columns:1fr;padding:32px 6% 40px;gap:28px}.event-hero-copy .eyebrow{font-size:.8125rem;margin-bottom:15px}.hero-event-date{font-size:1.15rem;margin-bottom:16px}.experience-hero h1{font-size:clamp(4rem,16vw,5.6rem);margin-bottom:20px}.hero-event-venue{margin-bottom:20px}.hero-event-artists{font-size:2rem;margin-bottom:12px}.hero-event-actions{margin-top:24px}.hero-event-actions .text-link{font-size:.875rem}.hero-event-poster{max-width:360px;justify-self:center}.hero-event-poster img{max-height:none}.hero-event-poster figcaption{text-align:left}.hero-event-note{margin-bottom:0}.mobile-ticket{position:fixed;bottom:0;left:0;right:0;z-index:30;background:#071019f5;backdrop-filter:blur(12px);border-top:1px solid #37556d;padding:12px 5% max(12px,env(safe-area-inset-bottom));display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:78px}.mobile-ticket strong{font-size:.875rem;letter-spacing:.02em}.mobile-ticket small{display:block;font-size:.8125rem;color:var(--muted)}.mobile-ticket .button{padding:12px 18px;font-size:.9375rem}.page-heading{padding-top:35px;padding-bottom:35px}.page-heading h1{font-size:3.5rem}.section{padding-top:55px;padding-bottom:55px}}

.film-section{display:grid;grid-template-columns:.8fr 1.35fr;gap:8%;align-items:center;border-bottom:1px solid var(--line)}.film-section h2{font-size:clamp(3.2rem,5vw,5rem);margin-bottom:28px}.film-section .eyebrow{color:var(--brand-light)}.film-copy{color:var(--muted);font-size:1rem}.film-section .text-link{font-size:.875rem}.media-player{min-width:0;width:100%;scroll-margin-top:110px}.player-stage{aspect-ratio:16/9;background:#000;border:1px solid #294b63;position:relative;min-height:245px}.player-cover{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:18px;background:#02070d}.player-brand{width:160px;height:78px;object-fit:cover}.player-cover-title{font:600 clamp(1.3rem,2.5vw,2rem)/1.12 var(--display);text-align:center;max-width:90%;color:#f7faff}.play-button{background:var(--brand);color:#050c12;border:0;padding:13px 22px;display:inline-flex;gap:14px;align-items:center;cursor:pointer;font-size:1rem;font-weight:700}.play-button:hover{background:var(--brand-light)}.play-button span{font-size:.875rem}.player-stage iframe{position:absolute;inset:0;width:100%;height:100%;border:0;background:#000}.player-foot{display:flex;justify-content:space-between;gap:15px;font-size:.8125rem;color:var(--muted);margin-top:12px;flex-wrap:wrap}.player-foot a{text-decoration:underline;text-underline-offset:3px}.hymn-player-section{display:grid;grid-template-columns:.9fr 1.25fr;align-items:center;gap:8%;background:var(--brand-deep);border-top:1px solid #096a9a;border-bottom:1px solid #096a9a;padding-left:6%;padding-right:6%}.hymn-player-section h2{font-size:clamp(4rem,8vw,8rem);margin:15px 0 30px;line-height:.88}.hymn-player-section h2 span{color:var(--brand-light)}.hymn-player-section .meta,.hymn-player-section .references{color:#c1ddec}.hymn-player-section p{font-size:1.0625rem}.hymn-player-section .player-foot{color:#c5dce9}.filter-buttons{display:flex;gap:8px;flex-wrap:wrap}.filter-buttons button,.filter-reset{border:1px solid #405566;color:#e9f3fa;background:#0b1721;cursor:pointer;font:500 .9375rem var(--body);padding:11px 18px}.filter-buttons button:hover,.filter-reset:hover{border-color:var(--brand-light)}.filter-buttons button[aria-pressed=true]{background:var(--brand);color:#030a0f;border-color:var(--brand)}.filter-count{font-size:.875rem;color:var(--muted);margin-top:18px}.listening-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;margin-top:30px;margin-bottom:30px}.listening-card{min-width:0;border:1px solid #2a3f50;background:#0b1721;padding:26px;display:flex;flex-direction:column;scroll-margin-top:115px}.session-heading{flex:1}.session-heading .eyebrow{color:var(--brand-light);margin:0 0 13px;font-size:.875rem}.session-heading h3{font-size:2.5rem;margin-bottom:17px}.session-heading>p:last-child{font-size:1rem;color:#bbcbd7;margin-bottom:25px}.listening-card .player-stage{min-height:260px}.listening-card:target{border-color:var(--brand-light);background:#122737}.listening-card .player-cover-title{font-size:1.5rem}
.artist-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:1fr;gap:22px;border:0}.artist-card{display:inline-block;width:100%;min-height:0;break-inside:avoid;border:1px solid var(--line);padding:28px;margin:0 0 22px;vertical-align:top;background:#0a141e}.artist-card h3{font-size:2.6rem;margin:22px 0 20px}.artist-grid>.artist-expanded{display:flex;flex-direction:column;align-items:stretch;min-width:0;padding:0;margin:0}.artist-portrait{margin:0;position:relative;flex:none}.artist-portrait img{display:block;width:100%;height:auto;aspect-ratio:1.15;object-fit:cover;background:#101d29}.artist-portrait figcaption{position:absolute;left:0;bottom:0;right:0;text-align:right;background:linear-gradient(0deg,#000c,transparent);padding:18px 12px 10px;margin:0;color:#e8f2fa;font-size:.75rem}.artist-card-body{padding:28px;flex:1;display:grid;grid-template-rows:auto auto 1fr auto minmax(3rem,auto);gap:16px;min-width:0}.artist-card-body>p{font-size:1rem;color:#c2d0dc;margin:0}.artist-card-body .artist-index{font-size:.75rem;color:var(--brand-light);line-height:1.5;display:block;min-height:3em}.artist-card-body h3{font-size:2.8rem;line-height:1.05;min-height:2.1em;margin:0}.artist-period{border-top:1px solid var(--line);padding-top:15px;margin:0;font-size:.875rem}.artist-period summary{cursor:pointer;font-weight:600}.artist-period p{font-size:.9375rem;margin:14px 0 0}.artist-listen{display:inline-block;justify-self:start;align-self:end;margin:0;font-size:.9375rem;color:var(--brand-light);border-bottom:1px solid #357ea4;padding-bottom:6px}.artist-card-body .references{font-size:.75rem}.archive-filters{display:flex;align-items:end;gap:20px;flex-wrap:wrap;padding:26px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:35px 0 18px}.archive-filters label{display:flex;flex-direction:column;gap:10px;font-size:.875rem;color:var(--muted);flex:1;min-width:180px}.archive-filters select{appearance:auto;background:#0d1a25;color:var(--ink);border:1px solid #405566;padding:12px 14px;font:500 1rem var(--body);border-radius:0;width:100%}.archive-filters select:focus-visible{outline:2px solid var(--brand-light);outline-offset:3px}.filter-reset{min-height:47px}.archive-visuals .poster-grid{margin-top:30px}.poster-story{border-top:1px solid #2f475a;margin-top:22px;padding:17px 0 0}.poster-story summary{font-size:.9375rem;font-weight:600;color:var(--brand-light);cursor:pointer}.poster-story h4{font:700 1.8rem/1.05 var(--display);margin:20px 0 15px;color:#edf6fc}.poster-story p{font-size:1rem;color:#bbccd8}.archive-empty{border:1px solid #34526a;padding:30px;margin:30px 0}.archive-empty h3{font-size:2rem;margin-bottom:15px}.archive-empty p{margin:0;font-size:1rem}.practical-links{display:flex;flex-wrap:wrap;gap:20px 28px;margin-top:28px}.practical-links .text-link{font-size:.9375rem}.calendar-note{font-size:.8125rem!important;color:var(--muted);margin-top:18px}.event-clarification{margin-top:25px;padding:18px 20px;border-left:3px solid var(--brand);background:#0c1d2b}.event-clarification summary{font-size:.9375rem;font-weight:600;cursor:pointer}.event-clarification p{font-size:.9375rem;margin:16px 0}.event-clarification .text-link{font-size:.875rem}.event-faq{border-top:1px solid var(--line);padding-top:50px}.event-faq h2{font-size:clamp(2.5rem,4vw,4rem);margin-bottom:35px}.event-faq details{padding:22px 0;border-bottom:1px solid var(--line)}.event-faq summary{font-size:1.125rem;font-weight:600;cursor:pointer}.event-faq details p{font-size:1rem;margin:20px 0}.event-faq .text-link{font-size:.9375rem}.no-upcoming h2{margin:20px 0 30px}
.image-viewer{width:min(1100px,94vw);max-height:94dvh;background:#08131d;color:#eef7ff;border:1px solid #467293;padding:18px 22px;overflow:auto}.image-viewer::backdrop{background:#000d;backdrop-filter:blur(6px)}.viewer-top,.viewer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px}.viewer-top p{font-size:1rem;font-weight:600;margin:0}.viewer-top button,.viewer-bottom button{font:500 .9375rem var(--body);background:#173047;color:#f4faff;border:1px solid #456780;padding:10px 14px;cursor:pointer;white-space:nowrap}.viewer-top button:hover,.viewer-bottom button:hover{background:#235b81}.viewer-bottom button:disabled{opacity:.4;cursor:default}.viewer-image-wrap{display:flex;align-items:center;justify-content:center;min-height:100px;margin:18px 0}.viewer-image{max-width:100%;width:auto;max-height:70dvh;height:auto;object-fit:contain}.viewer-bottom a{font-size:.875rem;text-decoration:underline;text-underline-offset:3px}.is-expired .hero-event-date:after{content:' · Fiesta pasada';font-size:1rem;color:var(--muted)}[hidden]{display:none!important}
@media(max-width:1000px){.artist-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.film-section{gap:5%;grid-template-columns:1fr 1.4fr}.hymn-player-section{gap:5%}.listening-grid{gap:22px}.listening-card{padding:20px}.player-stage{min-height:230px}.listening-card .player-stage{min-height:245px}}
@media(max-width:760px){.film-section,.hymn-player-section{grid-template-columns:1fr;gap:32px}.film-section h2{font-size:3.4rem}.hymn-player-section h2{font-size:5.7rem}.listening-grid{grid-template-columns:1fr}.listening-card .player-stage{min-height:270px}.player-stage{min-height:265px}.image-viewer{padding:14px;width:96vw}.viewer-top{gap:12px}.viewer-top p{font-size:.875rem}.viewer-bottom{gap:10px}.viewer-bottom button{font-size:.8125rem;padding:10px}.viewer-bottom a{font-size:.75rem}}
@media(max-width:600px){.artist-grid{grid-template-columns:1fr}.artist-card{padding:25px}.artist-expanded{padding:0}.artist-card-body{padding:26px}.artist-portrait img{aspect-ratio:1.3}.filter-buttons{gap:8px}.filter-buttons button{font-size:.875rem;padding:10px 14px}.session-heading h3{font-size:2.25rem}.listening-card{padding:20px}.listening-card .player-stage,.player-stage{min-height:250px}.player-foot{font-size:.75rem;gap:8px}.player-brand{width:140px;height:65px}.player-cover{gap:15px}.archive-filters{gap:18px;align-items:stretch}.archive-filters label{min-width:100%;flex:auto}.filter-reset{align-self:start}.event-clarification{padding:16px}.event-lineup h3{font-size:2.1rem}.event-faq summary{font-size:1.0625rem}.practical-links{gap:22px}.viewer-image{max-height:65dvh}.viewer-bottom{flex-wrap:wrap}.viewer-bottom a{order:3;flex-basis:100%;text-align:center}.film-section .media-player{min-width:0}.hymn-player-section p{font-size:1rem}}

.future-events{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:24px}.future-event{padding:26px;border:1px solid var(--line);background:#0b1721}.future-event h3{font-size:2.5rem;margin:18px 0}.future-event p{font-size:1rem}

.player-stage{width:100%;min-width:0}
@media(max-width:600px){.player-stage{aspect-ratio:auto;height:250px}.listening-card .player-stage{height:270px}}

/* Historical names without a verified portrait have their own compact closing section. */
.artist-names-section{border-top:1px solid var(--line)}
.artist-names-section h2{font-size:clamp(2.7rem,4.5vw,4.5rem);margin:18px 0 32px}
.artist-names-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:1fr;gap:16px}
.artist-name-card{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;text-align:left;gap:16px;padding:20px 16px;margin:0;min-width:0;border-top:2px solid var(--brand);scroll-margin-top:110px}
.artist-name-card img{display:block;flex:0 0 60px;width:60px;height:60px;object-fit:contain}
.artist-name-card h3{font-size:1.65rem;line-height:1.05;margin:0;overflow-wrap:anywhere}
.artist-portrait img{object-position:50% 25%}.portrait-link{display:block}.portrait-link:hover img{filter:brightness(1.08)}
#tonet .artist-portrait img{object-position:55% 29%}#julio-navas .artist-portrait img{object-fit:contain}#bolo-uri .artist-portrait img{object-fit:contain}#sonic .artist-portrait img{object-fit:contain;image-rendering:auto}
.image-unavailable{display:flex;align-items:center;justify-content:center;min-height:180px;padding:24px;font-size:.9rem;color:#c9dce9;background:#0d2332}.viewer-error{padding:40px;text-align:center}
@media(max-width:1100px){.artist-names-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.artist-names-grid{grid-template-columns:1fr;gap:12px}.artist-name-card{padding:14px 18px;gap:20px}.artist-name-card h3{font-size:1.9rem}.artist-name-card img{flex-basis:64px;width:64px;height:64px}}

.archive-filters input{background:#0d1a25;color:var(--ink);border:1px solid #405566;padding:12px 14px;font:500 1rem var(--body);width:100%;border-radius:0;min-height:47px}.archive-filters input:focus-visible{outline:2px solid var(--brand-light);outline-offset:3px}.archive-filters label:first-child{flex:2}
