@font-face{font-family:Jost;src:url('assets/fonts/Jost-Black.ttf') format('truetype');font-weight:900;font-display:swap}
@font-face{font-family:Outfit;src:url('assets/fonts/Outfit-Regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Outfit;src:url('assets/fonts/Outfit-SemiBold.ttf') format('truetype');font-weight:600;font-display:swap}
:root{--cream:#F5E8CE;--ink:#171A17;--coral:#D94F50;--jade:#206B5D;--mustard:#D6A53B;--orange:#D85A28;--gutter:clamp(24px,5vw,96px);--line:#171a1733;--ease:cubic-bezier(.16,1,.3,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px;scrollbar-color:var(--jade) var(--cream);scrollbar-width:thin}body{margin:0;background:var(--cream);color:var(--ink);font:400 18px/1.55 Outfit,sans-serif}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none;text-underline-offset:5px}button{cursor:pointer}button:disabled{cursor:default}button{color:inherit}img{display:block;max-width:100%;height:auto}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:Jost,sans-serif;font-weight:900;line-height:1.02;letter-spacing:-.04em}h2{font-size:clamp(42px,5.6vw,86px);text-wrap:balance}h2 em{font-style:normal;color:var(--jade)}em{font-style:normal}p{max-width:70ch}svg{display:inline-block}::selection{background:var(--mustard);color:var(--ink)}:focus-visible{outline:3px solid var(--orange);outline-offset:5px}input,textarea{caret-color:var(--jade)}[hidden]{display:none!important}.svg-defs{position:absolute;width:0;height:0;overflow:hidden}.icon{width:24px;height:24px;flex-shrink:0;vertical-align:middle}.icon-button,.icon-link{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid transparent;background:transparent;transition:background .2s,transform .2s}.icon-link:hover,.icon-button:hover{background:#206b5d16;transform:translateY(-2px)}.skip{position:fixed;z-index:100;top:8px;left:12px;padding:14px;background:var(--ink);color:var(--cream);transform:translateY(-150%)}.skip:focus{transform:none}.section{padding:110px var(--gutter)}
/* Navigation and a shared tactile control system. */
.header{height:90px;padding:0 3vw;display:flex;align-items:center;justify-content:space-between;gap:18px;background:var(--cream);position:sticky;top:0;z-index:40;border-bottom:1px solid var(--line)}.brand{width:200px;flex:none}.brand img{width:100%;height:auto}.header nav{display:flex;gap:21px;white-space:nowrap;font-size:14px}.header nav a{padding:15px 0;position:relative}.header nav a:after{content:'';position:absolute;inset:auto 0 8px;height:2px;background:var(--jade);transform:scaleX(0);transform-origin:left;transition:transform .25s}.header nav a:hover:after,.header nav a[aria-current]:after{transform:scaleX(1)}.social-icons{display:flex;gap:2px;align-items:center}.header-social .icon-link{width:32px;height:42px}.header-social .icon{width:19px;height:19px}.button{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:56px;padding:16px 24px;border:1px solid transparent;border-radius:32px;font-size:16px;font-weight:600;line-height:1.3;overflow:hidden;isolation:isolate;transition:transform .25s var(--ease),box-shadow .25s,background .25s}.button.small{min-height:45px;padding:10px 17px;font-size:14px;gap:9px}.button:after{content:'';position:absolute;inset:0;background:currentColor;opacity:0;transition:opacity .2s;pointer-events:none}.button:hover:after{opacity:.08}.button:hover{transform:translateY(-2px);box-shadow:0 8px 24px #171a1724}.button:active{transform:scale(.98);box-shadow:none}.dark{background:var(--ink);color:var(--cream)}.jade{background:var(--jade);color:var(--cream)}.cream{background:var(--cream);color:var(--ink)}.mustard{background:var(--mustard);color:var(--ink)}.text-link{display:inline-flex;align-items:center;gap:10px;font-size:16px;font-weight:600;padding:10px 0}.text-link:hover{text-decoration:underline}.text-link>.icon:last-child{transition:transform .25s}.text-link:hover>.icon:last-child{transform:translateX(3px)}.menu-toggle{display:none;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:transparent;align-items:center;justify-content:center;flex-direction:column;gap:6px;flex:none}.menu-toggle span{width:18px;height:2px;background:var(--ink);transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}.mobile-menu{position:fixed;inset:90px 0 auto;background:var(--cream);z-index:39;padding:20px var(--gutter) 28px;box-shadow:0 18px 30px #171a1720;max-height:calc(100dvh - 90px);overflow:auto}.mobile-menu>a{font:900 28px/1.3 Jost;display:block;padding:8px 0}.mobile-menu .social-icons{border-top:1px solid var(--line);padding-top:15px;margin-top:14px}
/* Real photographs fill the headline; the director anchors the stage. */
.hero{background:var(--jade);color:var(--cream);position:relative;overflow:hidden;padding:0 var(--gutter)}.hero-top{display:flex;justify-content:space-between;font-size:12px;padding-top:20px;letter-spacing:.04em}.hero h1{text-align:center;padding-top:27px;position:relative}.hero-lead,.hero-tail{display:block;font:400 21px/1.3 Outfit;letter-spacing:.22em}.hero-word{display:block;position:relative;font:900 clamp(100px,22.2vw,390px)/.96 Jost;letter-spacing:-.06em;margin:5px -10px 0;isolation:isolate}.word-photo{display:block;position:relative;z-index:1;background-image:url('assets/photos/direccion-estudio-1920.webp');background-size:cover;background-position:50% 35%;color:var(--cream)}@supports (-webkit-background-clip:text) or (background-clip:text){.word-photo{-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-stroke:.5px #f5e8ce55}}.word-photo.second{position:absolute;inset:0;opacity:0;pointer-events:none}.hero-tail{font-size:14px;letter-spacing:.18em;text-align:right;margin-right:15px}.hero-art{position:relative;max-width:960px;height:435px;margin:-22px auto 0;pointer-events:none}.character{position:absolute;bottom:0;height:100%;object-fit:contain;object-position:bottom;max-width:none;transform:translate3d(0,var(--hero-shift,0px),0)}.c-israel{height:100%;width:36%;left:29%;z-index:4}.c-ruben{height:81%;width:29%;left:55%;z-index:3}.c-mambolet1{height:79%;width:30%;left:9%;z-index:2}.c-mambolet2{height:77%;width:30%;right:-1%;z-index:2}.star-one{position:absolute;width:72px;left:7%;top:24%;transform:rotate(calc(var(--hero-turn,0)*1deg))}.hero-actions{display:flex;justify-content:center;gap:28px;align-items:center;margin:16px 0 28px;position:relative;z-index:5}.hero-actions .button{padding:17px 26px}.hero-actions .text-link{font-size:15px}.hero-bottom{border-top:1px solid #f5e8ce55;display:flex;align-items:center;justify-content:space-between;min-height:63px;gap:15px;font-size:12px}.scroll-cue{display:flex;align-items:center;gap:12px}.motion-toggle{display:flex;align-items:center;gap:9px;background:none;border:0;padding:12px 0;font-size:12px}.motion-toggle .icon{width:16px;height:16px}.hero-bottom>span{opacity:.9}
/* Two identical groups, including their final spacing, create a seamless loop. */
.marquee{overflow:hidden;background:var(--coral);color:var(--ink);padding:22px 0}.marquee-track{display:flex;width:max-content;animation:marquee 24s linear infinite}.marquee-group{display:flex;align-items:center;flex:none;gap:38px;padding-right:38px}.marquee-group span{font:900 clamp(28px,3.1vw,48px)/1.12 Jost;white-space:nowrap}.marquee-group img{width:35px;height:35px;filter:brightness(.15)}@keyframes marquee{to{transform:translateX(-50%)}}
.show-intro{display:grid;grid-template-columns:1.15fr 1fr;gap:10%;align-items:start}.show-description>p:first-child{font-size:25px;line-height:1.4;margin-bottom:23px}.show-description>p:nth-child(2){font-size:18px;line-height:1.65}.show-description .text-link{margin-top:20px}.show-photo{margin-top:52px;position:relative;overflow:hidden;aspect-ratio:2.2;border-radius:6px;background:#ebe9e3}.show-photo>img{width:100%;height:100%;object-fit:cover;object-position:50% 47%;transform:scale(1.03) translate3d(0,var(--photo-shift,0px),0)}.show-photo figcaption{position:absolute;left:24px;bottom:20px;display:flex;align-items:center;gap:10px;background:var(--cream);padding:12px 18px;border-radius:30px;font-size:14px}.show-notes{display:grid;grid-template-columns:repeat(3,1fr);gap:5%;margin-top:45px}.show-notes article{display:grid;grid-template-columns:62px 1fr;column-gap:18px;align-items:center}.note-icon{grid-row:1/3;background:var(--mustard);width:62px;height:62px;border-radius:50%;display:grid;place-items:center}.note-icon .icon{width:34px;height:34px}.show-notes article:nth-child(2) .note-icon{background:var(--coral)}.show-notes article:nth-child(3) .note-icon{background:var(--jade);color:var(--cream)}.show-notes h3{font-size:24px;letter-spacing:-.02em}.show-notes p{font-size:16px;line-height:1.45;margin-top:8px}
/* Transform-based parallax also works in mobile browsers. */
.cinema{height:820px;position:relative;overflow:hidden;background:var(--ink);color:var(--cream);isolation:isolate;display:flex;align-items:center;padding:60px var(--gutter)}.cinema-backdrop{position:absolute;inset:-17% 0;z-index:-2;transform:translate3d(0,var(--cinema-shift,0px),0)}.cinema-backdrop img{width:100%;height:100%;object-fit:cover;object-position:50% 42%}.cinema-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#101710d9,#10171055 70%,#10171044)}.cinema-content>p{font-size:17px;margin-bottom:24px}.cinema h2{font-size:clamp(78px,10vw,150px);line-height:.98;max-width:750px}.cinema h2 em{color:var(--mustard)}.cinema-video{margin-top:36px;display:flex;align-items:center;gap:20px;color:var(--cream);padding:0;border:0;background:transparent;text-align:left;font-size:21px}.mini-video{position:relative;width:165px;aspect-ratio:16/9;overflow:hidden;border-radius:6px;display:block;box-shadow:0 9px 30px #0005}.mini-video img{width:100%;height:100%;object-fit:cover}.mini-video>.icon{position:absolute;inset:0;margin:auto;background:var(--cream);color:var(--ink);padding:12px;width:48px;height:48px;border-radius:50%;transition:transform .25s}.cinema-video:hover .mini-video>.icon{transform:scale(1.12)}.cinema-video small{display:flex;align-items:center;gap:12px;font-size:13px;margin-top:6px}.cinema-video small .icon{width:18px}.cinema-stamp{position:absolute;right:var(--gutter);bottom:35px;display:flex;align-items:center;gap:12px;font-size:14px}
/* A fixed stage lets the story advance in front of it. */
.legacy{background:var(--jade);color:var(--cream);display:grid;grid-template-columns:46% 54%;position:relative;padding:0 var(--gutter);--legacy-new:0;isolation:isolate}.legacy-waves{position:absolute;inset:0;overflow:hidden;z-index:-1;pointer-events:none}.legacy-waves i{position:absolute;top:12%;left:-55%;width:150%;height:60%;border:1px solid #f5e8ce26;border-radius:48%;transform:translate3d(0,var(--wave-shift,0px),0) rotate(-25deg)}.legacy-waves i:nth-child(2){left:-48%;top:13%}.legacy-waves i:nth-child(3){left:-41%;top:14%}.legacy-waves i:nth-child(4){left:-34%;top:15%}.legacy-stage{position:sticky;top:90px;height:calc(100svh - 90px);max-height:920px;min-height:650px;align-self:start;pointer-events:none}.legacy-seventy{position:absolute;left:-8%;top:12%;font:900 clamp(170px,27vw,430px)/1 Jost;color:var(--mustard);letter-spacing:-.08em;opacity:.5}.legacy-seventy>span{font-size:.45em;vertical-align:top}.legacy-founder{position:absolute;left:15%;bottom:12%;width:auto;height:75%;object-fit:contain;opacity:calc(1 - var(--legacy-new))}.legacy-orbits{position:absolute;width:170px;right:0;top:13%;opacity:.7;transform:rotate(calc(var(--legacy-new)*50deg))}.legacy-current{position:absolute;inset:13% -6% 12%;display:flex;align-items:end;justify-content:center;opacity:var(--legacy-new);transform:translateY(calc((1 - var(--legacy-new))*30px))}.legacy-current>img{height:100%;width:58%;object-fit:contain;object-position:bottom}.legacy-current>img:last-child{height:81%;width:43%;margin-left:-11%}.legacy-caption{position:absolute;bottom:6%;left:10%;font-size:11px;line-height:1.7;letter-spacing:.1em}.legacy-origin-caption{opacity:calc(1 - var(--legacy-new))}.legacy-now-caption{opacity:var(--legacy-new)}.legacy-story{position:relative;padding-left:12%}.legacy-chapter{min-height:87svh;padding:110px 0;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.legacy h2{font-size:clamp(42px,4.8vw,75px)}.legacy h2 em{color:var(--mustard)}.legacy-chapter>p{font-size:21px;line-height:1.6;margin-top:30px;max-width:450px}.legacy-chapter .button{margin-top:30px}.commemorative{width:min(100%,360px);margin-top:35px}.commemorative-image{position:relative;aspect-ratio:16/9;overflow:hidden;border:1px solid #f5e8ce55;border-radius:5px}.commemorative-image img{width:100%;height:100%;object-fit:cover;opacity:.7}.commemorative-image>.icon{position:absolute;inset:0;margin:auto;width:46px;height:46px;padding:13px;background:var(--cream);color:var(--jade);border-radius:50%}.commemorative>div:last-child{padding-top:12px;display:flex;flex-direction:column;gap:3px;font-size:15px}.commemorative span{font-size:12px;color:#e6d8bb}
.cast h2{max-width:650px}.cast-grid{display:grid;grid-template-columns:1.1fr 1fr 1.25fr;gap:40px;margin-top:55px}.cast-image{position:relative;height:430px;display:flex;justify-content:center;align-items:end;isolation:isolate}.cast-initial{position:absolute;inset:0;display:grid;place-items:center;font:900 clamp(260px,31vw,440px)/1 Jost;letter-spacing:-.04em;z-index:-1;color:var(--mustard);text-align:center;overflow:hidden}.cast-image>img{height:100%;width:auto;max-width:95%;object-fit:contain;object-position:bottom}.cast-ruben .cast-image>img{height:85%}.cast-ruben .cast-initial{color:var(--coral)}.cast-mambolets .cast-initial{color:var(--jade)}.cast-mambolets .cast-image>img{width:52%;max-width:none;height:83%}.cast-mambolets .cast-image>img:last-child{margin-left:-8%;height:86%}.cast-info{border-top:1px solid var(--line);margin-top:28px;padding-top:24px}.cast-info h3{font-size:28px}.cast-info>span{display:block;font-size:14px;font-weight:600;margin-top:8px}.cast-info p{font-size:16px;margin-top:14px;max-width:29ch}
.repertoire{background:var(--coral);overflow:hidden}.repertoire-heading{display:flex;align-items:end;justify-content:space-between;gap:40px}.repertoire h2{font-size:clamp(40px,4.6vw,70px)}.repertoire h2 em{color:var(--ink)}.repertoire-heading>p{font-size:17px;max-width:35ch}.record-shelf{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:24px;margin-top:48px}.record-art{display:block;position:relative;aspect-ratio:1;border-radius:4px;box-shadow:0 12px 26px #171a1726;overflow:hidden;background:var(--ink)}.record-art img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease)}.record-art:hover img{transform:scale(1.06)}.record-play{position:absolute;right:12px;bottom:12px;width:40px;height:40px;background:var(--cream);border-radius:50%;display:grid;place-items:center}.record-play .icon{width:18px;height:18px}.record h3{font-size:21px;margin-top:18px;letter-spacing:-.02em}.platform{display:flex;align-items:center;gap:8px;font-size:13px;margin-top:10px;min-height:40px}.platform .icon{width:20px;height:20px}.platform .icon:last-child{width:16px;margin-left:auto}.platform:hover{text-decoration:underline}
.events{display:grid;grid-template-columns:1fr 1fr;gap:10%}.events h2{font-size:clamp(43px,4.6vw,73px)}.events-intro>p{font-size:19px;margin-top:28px;max-width:39ch}.event-photo{margin-top:32px;border-radius:5px;overflow:hidden;aspect-ratio:1.6}.event-photo img{width:100%;height:100%;object-fit:cover}.event-list{border-top:1px solid var(--line);align-self:center}.event-list>a{display:grid;grid-template-columns:44px 1fr 24px;gap:20px;padding:35px 0;border-bottom:1px solid var(--line);transition:color .2s}.event-list>a:hover{color:var(--jade)}.event-icon{display:flex;align-items:start;padding-top:2px}.event-icon .icon{width:32px;height:32px}.event-list>a>.icon{align-self:center;transition:transform .2s}.event-list>a:hover>.icon{transform:translateX(5px)}.event-list h3{font-size:29px;letter-spacing:-.03em}.event-list p{font-size:16px;margin-top:10px;max-width:35ch}
.gallery{background:var(--ink);color:var(--cream)}.gallery h2 em{color:var(--mustard)}.gallery-heading{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:40px}.gallery-heading p{margin-top:22px;font-size:19px}.gallery-filters{display:flex;gap:8px;flex-wrap:wrap}.filter{min-height:44px;border:1px solid #f5e8ce66;background:transparent;color:var(--cream);border-radius:25px;font-size:14px;padding:10px 20px}.filter.active,.filter:hover{background:var(--cream);color:var(--ink)}.gallery-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:16px}.gallery-item{grid-column:span 4;position:relative;aspect-ratio:1.45;padding:0;border:0;background:#31372e;border-radius:4px;overflow:hidden;text-align:left;color:var(--cream)}.gallery-item:nth-child(6n+1){grid-column:span 7;aspect-ratio:1.75}.gallery-item:nth-child(6n+2){grid-column:span 5;aspect-ratio:1.25}.gallery-item:nth-child(6n){grid-column:span 12;aspect-ratio:2.5}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .55s var(--ease)}.gallery-item:hover img{transform:scale(1.045)}.gallery-caption{position:absolute;inset:auto 0 0;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:35px 20px 16px;background:linear-gradient(transparent,#101510ce);font-size:14px}.gallery-caption .icon{width:20px;height:20px}
.live-archive{background:var(--mustard)}.archive-heading{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:42px}.archive-heading h2{font-size:clamp(43px,4.8vw,73px)}.archive-heading .text-link{white-space:nowrap}.video-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:40px 25px}.video-card>button{width:100%;aspect-ratio:16/9;position:relative;overflow:hidden;border:0;padding:0;border-radius:6px;background:var(--ink)}.video-card>button img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease)}.video-card>button:hover img{transform:scale(1.04)}.video-play{position:absolute;inset:0;margin:auto;width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:var(--cream);color:var(--ink);box-shadow:0 5px 25px #0004;transition:transform .2s}.video-card>button:hover .video-play{transform:scale(1.1)}.video-card h3{font-size:28px;margin-top:20px}.video-card p{font-size:16px;margin-top:6px}.video-fallback{display:inline-flex;align-items:center;gap:8px;font-size:13px;margin-top:7px;padding:8px 0}.video-fallback:hover{text-decoration:underline}.video-fallback .icon{width:17px;height:17px}
.faq{display:grid;grid-template-columns:.85fr 1.15fr;gap:10%}.faq h2{font-size:clamp(43px,4.8vw,73px)}.faq-items{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{display:flex;align-items:center;justify-content:space-between;gap:20px;list-style:none;font-size:18px;font-weight:600;padding:23px 0;cursor:pointer}summary::-webkit-details-marker{display:none}summary>.icon{width:22px;height:22px;transition:transform .25s}details[open] summary>.icon{transform:rotate(45deg)}details p{padding:0 25px 25px 0;font-size:17px;line-height:1.65}
.booking{background:var(--mustard);display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:start}.booking h2{font-size:clamp(43px,4.8vw,74px)}.booking-copy>p{font-size:25px;margin-top:28px}.booking-contact{margin-top:32px;display:flex;flex-direction:column;gap:4px;font-size:18px}.booking-contact strong{font-size:23px}.booking-contact span{font-size:14px;margin-bottom:14px}.booking-contact a:last-child{font-size:16px;overflow-wrap:anywhere}.booking-contact a:hover{text-decoration:underline}.direct-whatsapp{margin-top:16px}.booking-photo{aspect-ratio:1.9;overflow:hidden;border-radius:6px;margin-top:30px}.booking-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 48%}.booking-form{padding:38px;background:var(--cream);border-radius:16px;box-shadow:0 20px 42px #171a171a}.booking-form h3{font-size:28px}.booking-form>p{font-size:16px;margin-top:12px}.form-fields{display:grid;grid-template-columns:1fr 1fr;gap:25px 20px;margin:30px 0}.field{display:flex;flex-direction:column;gap:6px;font-size:14px;font-weight:600;min-width:0}.field.full{grid-column:1/-1}.optional{font-size:12px;font-weight:400;color:#575a4e}.field input,.field select,.field textarea{width:100%;min-width:0;min-height:48px;padding:12px 0;border:0;border-bottom:1px solid #171a1777;border-radius:0;background:transparent;color:var(--ink);font-size:16px;font-weight:400}.field input::placeholder,.field textarea::placeholder{color:#616356}.field textarea{resize:vertical}.booking-form>.button{width:100%}.booking-form .form-note{font-size:12px;line-height:1.6;margin-top:16px;color:#505648}.form-note a{text-decoration:underline}.booking-result{border-top:1px solid var(--line);padding-top:24px;margin-top:24px}.booking-result h4{font-size:20px;margin:0 0 16px}.booking-result>#message-preview{white-space:pre-wrap;overflow-wrap:anywhere;font-size:15px;margin-bottom:20px}
.footer{background:var(--jade);color:var(--cream);padding:65px var(--gutter) 35px}.footer-top{display:flex;align-items:center;gap:35px;padding-bottom:42px;border-bottom:1px solid #f5e8ce44}.footer-logo{width:365px}.footer-top>p{font:900 clamp(25px,3vw,46px)/1.05 Jost;letter-spacing:-.04em;margin-left:auto}.back-top{width:48px;height:48px;flex:none;border:1px solid #f5e8ce77;border-radius:50%;display:grid;place-items:center}.footer-columns{display:grid;grid-template-columns:1.1fr .75fr 1.15fr;gap:50px;padding:40px 0}.footer-columns h3{font:600 17px/1.3 Outfit;letter-spacing:0;margin-bottom:18px}.footer-columns p{font-size:14px;margin-top:15px;opacity:.9}.footer-columns>.social-icons{gap:5px}.footer .icon-link{border-color:#f5e8ce55}.footer .icon-link:hover{background:var(--cream);color:var(--jade)}.footer-columns nav{display:flex;flex-wrap:wrap;align-content:start;gap:7px 20px}.footer-columns nav h3{width:100%}.footer-columns nav a{font-size:14px;min-width:40%}.footer-columns nav a:hover{text-decoration:underline}.footer-representation>a{display:block;font-size:14px;margin-bottom:13px;overflow-wrap:anywhere}.footer-representation img{width:112px;height:auto;max-height:48px;object-fit:contain;object-position:left;margin-top:18px}.footer-legal{border-top:1px solid #f5e8ce44;padding-top:24px;display:flex;align-items:center;justify-content:space-between;gap:22px;font-size:12px}.footer-legal nav{display:flex;gap:25px;flex-wrap:wrap}.footer-legal a:hover{text-decoration:underline}.powered-by{display:flex;justify-content:flex-end;margin-top:28px;padding-right:80px}.powered-by a{display:flex;align-items:center;gap:14px;font-size:12px}.powered-by img{width:150px;max-height:43px;object-fit:contain}.whatsapp-float{position:fixed;right:24px;bottom:24px;width:58px;height:58px;border:1px solid #f5e8ce77;border-radius:50%;background:var(--jade);color:var(--cream);box-shadow:0 8px 26px #171a1744;display:flex;align-items:center;justify-content:center;z-index:45;transition:transform .25s}.whatsapp-float>.icon{width:30px;height:30px}.whatsapp-float>span{position:absolute;right:72px;width:max-content;padding:9px 15px;border-radius:22px;background:var(--ink);color:var(--cream);font-size:13px;opacity:0;pointer-events:none;transform:translateX(8px);transition:opacity .2s,transform .2s}.whatsapp-float:hover{transform:translateY(-3px)}.whatsapp-float:hover>span,.whatsapp-float:focus-visible>span{opacity:1;transform:none}
/* Full-screen media, with native dialog focus containment. */
.media-dialog{width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;border:0;border-radius:0;background:#101510;color:var(--cream);padding:24px max(24px,4vw);overflow:auto}.media-dialog::backdrop{background:#101510f5}.dialog-header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.dialog-header h2{font:400 18px/1.4 Outfit;letter-spacing:0}.dialog-header .icon-button{border-color:#f5e8ce66;flex:none}.dialog-header .icon-button:hover{background:#f5e8ce22}#video-player{height:min(72dvh,calc(92vw * .5625));min-height:200px;background:#000;display:grid;place-items:center}#video-player iframe,#video-player video{width:100%;height:100%;border:0}#video-dialog>.text-link{font-size:14px;margin-top:16px}.media-privacy{font-size:12px;opacity:.85;margin-top:6px}.media-privacy a{text-decoration:underline}.lightbox-stage{height:calc(100dvh - 175px);display:grid;grid-template-columns:48px minmax(0,1fr) 48px;align-items:center;gap:15px}.lightbox-stage>img{width:100%;height:100%;min-height:0;object-fit:contain;user-select:none}.lightbox-stage>.icon-button{border-color:#f5e8ce66}.lightbox-stage>.icon-button:hover{background:#f5e8ce22}#gallery-prev .icon{transform:rotate(180deg)}.lightbox-caption{display:flex;justify-content:space-between;gap:20px;margin-top:15px;font-size:15px}.lightbox-caption>span{font-variant-numeric:tabular-nums;white-space:nowrap}.dialog-open{overflow:hidden}.ripple{position:absolute;width:25px;height:25px;border-radius:50%;background:currentColor;opacity:.14;pointer-events:none;animation:ripple .55s ease-out forwards}@keyframes ripple{to{transform:scale(22);opacity:0}}.title-arrived{animation:title-wipe .65s var(--ease) both}@keyframes title-wipe{from{clip-path:inset(0 0 85% 0);transform:translateY(12px)}to{clip-path:inset(0);transform:none}}
.legal-page{padding:70px var(--gutter) 100px;max-width:1040px;margin:auto}.legal-page h1{font-size:clamp(38px,5vw,64px);margin:30px 0}.legal-page h2{font:600 24px/1.35 Outfit;letter-spacing:-.01em;margin:35px 0 12px}.legal-page p,.legal-page li{font-size:17px;line-height:1.7;margin:12px 0}.legal-page a{text-decoration:underline}.legal-page .legal-status{padding:20px;background:#d6a53b33;border-radius:8px}.legal-page .legal-date{font-size:14px;color:#596050}.legal-header{position:relative}.legal-footer{background:var(--jade);color:var(--cream);padding:30px var(--gutter);display:flex;justify-content:space-between;gap:24px;font-size:14px}
@media(min-width:1700px){.hero-art{height:510px}.hero h1{padding-top:45px}.hero-word{font-size:390px}.hero{padding-left:var(--gutter);padding-right:var(--gutter)}}
@media(max-width:1250px){.header{padding:0 25px;gap:15px}.brand{width:180px}.header nav{gap:15px;font-size:13px}.header-social{display:none}.cast-image{height:350px}.cast-info h3{font-size:24px}.show-notes article{grid-template-columns:48px 1fr;gap:12px}.note-icon{width:48px;height:48px}.note-icon .icon{width:28px;height:28px}.show-notes h3{font-size:21px}.show-notes p{font-size:15px}.record-shelf{gap:18px}.record h3{font-size:18px}.booking-form{padding:28px}.footer-columns{gap:30px}.footer-logo{width:300px}}
@media(max-width:950px){.header nav{display:none}.menu-toggle{display:flex}.header-booking{margin-left:auto}.header-social{display:block}.header{gap:18px}.hero-art{height:370px;margin-top:8px}.hero-lead{font-size:17px}.hero-tail{font-size:12px}.hero-word{font-size:22vw}.show-intro{gap:6%}.show-description>p:first-child{font-size:22px}.show-description>p:nth-child(2){font-size:17px}.show-notes article{display:block}.note-icon{margin-bottom:16px}.show-notes h3{font-size:23px}.cinema{height:740px}.legacy{grid-template-columns:43% 57%}.legacy-story{padding-left:10%}.legacy h2{font-size:46px}.legacy-chapter>p{font-size:19px}.legacy-stage{min-height:560px}.legacy-founder{left:0}.legacy-current{inset:22% -13% 15%}.cast-grid{gap:22px}.cast-image{height:305px}.cast-initial{font-size:280px}.cast-info h3{font-size:21px}.cast-info p{font-size:15px}.repertoire-heading{display:block}.repertoire-heading>p{margin-top:25px}.record-shelf{grid-template-columns:repeat(5,180px);overflow:auto;padding-bottom:15px;scroll-snap-type:x mandatory}.record{scroll-snap-align:start}.events{gap:6%}.events h2{font-size:48px}.event-list h3{font-size:23px}.event-list>a{gap:12px;grid-template-columns:35px 1fr 20px}.gallery-heading{display:block}.gallery-filters{margin-top:26px}.gallery-item{grid-column:span 6}.gallery-item:nth-child(6n+1),.gallery-item:nth-child(6n+2){grid-column:span 6;aspect-ratio:1.25}.archive-heading{display:block}.archive-heading .text-link{margin-top:20px}.booking{gap:5%}.booking h2{font-size:45px}.form-fields{grid-template-columns:1fr}.booking-contact a:last-child{font-size:14px}.footer-columns{grid-template-columns:1fr 1fr}.footer-representation{grid-column:2;grid-row:1/3}.footer-columns nav{grid-column:1}.footer-top>p{font-size:30px}.footer-legal{align-items:start}.footer-legal nav{gap:10px 20px;justify-content:flex-end}}
@media(max-width:760px){html{scroll-padding-top:83px}.section{padding:70px 24px}.header{height:78px;padding:0 20px;gap:10px}.brand{width:190px;max-width:calc(100% - 108px)}.header-social{display:none}.header-booking.button{width:44px;min-height:44px;padding:10px;gap:0}.header-booking span{display:none}.header-booking .icon{width:23px;height:23px}.mobile-menu{top:78px;max-height:calc(100dvh - 78px)}.hero{padding:0 20px}.hero-top{font-size:10px;padding-top:18px}.hero-top>span:last-child{display:none}.hero h1{padding-top:29px}.hero-lead{font-size:14px;letter-spacing:.14em}.hero-word{font-size:22.5vw;margin:9px -6px 0;line-height:1.04}.hero-tail{text-align:center;margin:8px 0 0;font-size:11px;letter-spacing:.18em}.hero-art{height:330px;margin:25px -20px 0}.c-israel{width:45%;left:23%;height:100%}.c-ruben{width:34%;left:46%;height:79%}.c-mambolet1{width:34%;left:1%;height:73%}.c-mambolet2{width:32%;right:-1%;height:73%}.star-one{width:40px;left:7%;top:10%}.hero-actions{flex-wrap:wrap;gap:10px 22px;margin:24px 0 20px}.hero-actions .button{font-size:14px;padding:15px 20px;min-height:52px;gap:10px}.hero-actions .text-link{font-size:13px}.hero-actions .icon{width:21px;height:21px}.hero-bottom{min-height:58px;font-size:11px}.hero-bottom>span{display:none}.motion-toggle{font-size:11px}.marquee{padding:17px 0}.marquee-group{gap:24px;padding-right:24px}.marquee-group span{font-size:31px}.marquee-group img{width:26px;height:26px}.show-intro{grid-template-columns:1fr;gap:30px}h2{font-size:clamp(40px,11.5vw,66px)}.show-description>p:first-child{font-size:23px}.show-description>p:nth-child(2){font-size:17px}.show-photo{aspect-ratio:1.25;margin-top:35px;overflow:hidden}.show-photo>img{object-position:50% 50%}.show-photo figcaption{font-size:11px;bottom:12px;left:12px;right:12px;padding:10px 12px;gap:7px;width:max-content;max-width:calc(100% - 24px)}.show-photo figcaption .icon{width:16px;height:16px}.show-notes{gap:20px;margin-top:32px}.show-notes h3{font-size:20px;line-height:1.1}.show-notes p{font-size:13px;line-height:1.5}.note-icon{width:43px;height:43px;margin-bottom:15px}.note-icon .icon{width:27px;height:27px}.cinema{height:650px;padding:45px 24px}.cinema-backdrop{inset:-16% -30%}.cinema-backdrop img{object-position:53% 50%}.cinema-shade{background:linear-gradient(90deg,#101710bd,#10171044)}.cinema-content>p{font-size:14px;margin-bottom:25px}.cinema h2{font-size:clamp(74px,19vw,110px)}.cinema-video{gap:14px;font-size:17px;margin-top:28px}.mini-video{width:124px}.cinema-video small{font-size:12px;gap:8px}.cinema-stamp{left:24px;right:auto;bottom:27px;font-size:12px}.legacy{display:block;padding:0 24px}.legacy-stage{top:78px;height:430px;min-height:0;opacity:.27;margin-left:-24px;margin-right:-24px;overflow:hidden}.legacy-story{padding:0;margin-top:-430px;position:relative}.legacy-seventy{font-size:270px;left:0;top:8%}.legacy-founder{height:92%;left:3%;bottom:0}.legacy-orbits{width:150px;right:0;top:17%}.legacy-current{inset:0 0 0 5%}.legacy-caption{display:none}.legacy h2{font-size:clamp(40px,10.6vw,65px);text-shadow:0 2px 15px #206b5d55}.legacy-chapter{min-height:640px;padding:75px 0}.legacy-chapter>p{font-size:18px;margin-top:24px;max-width:31ch}.legacy-chapter .button{font-size:14px;gap:12px}.commemorative{max-width:310px;margin-top:30px}.legacy-waves i{width:220%;height:50%;left:-140%;top:20%}.legacy-waves i:nth-child(2){left:-130%;top:21%}.legacy-waves i:nth-child(3){left:-120%;top:22%}.legacy-waves i:nth-child(4){left:-110%;top:23%}.cast-grid{grid-template-columns:1fr 1fr;gap:40px 18px;margin-top:38px}.cast-image{height:300px}.cast-initial{font-size:clamp(160px,42vw,260px)}.cast-info{margin-top:22px;padding-top:18px}.cast-info h3{font-size:23px;overflow-wrap:anywhere}.cast-info>span{font-size:12px}.cast-info p{font-size:14px}.cast-mambolets{grid-column:1/-1;display:grid;grid-template-columns:1.15fr 1fr;gap:20px;align-items:end}.cast-mambolets .cast-image{height:320px}.cast-mambolets .cast-initial{font-size:clamp(180px,47vw,310px)}.cast-mambolets .cast-info{padding-bottom:22px}.repertoire h2{font-size:clamp(38px,10.8vw,58px)}.repertoire-heading>p{font-size:16px}.record-shelf{grid-template-columns:repeat(5,200px);gap:20px;margin-right:-24px;padding-right:24px;margin-top:35px}.record h3{font-size:21px}.events{grid-template-columns:1fr;gap:38px}.events h2{font-size:clamp(40px,11vw,60px)}.events-intro>p{font-size:18px;margin-top:24px}.event-photo{aspect-ratio:1.5}.event-list>a{grid-template-columns:34px 1fr 22px;gap:15px;padding:28px 0}.event-list h3{font-size:25px}.event-list p{font-size:15px}.gallery-heading p{font-size:17px}.gallery-grid{gap:12px}.gallery-item,.gallery-item:nth-child(6n+1),.gallery-item:nth-child(6n+2){grid-column:span 6;aspect-ratio:.86}.gallery-item:nth-child(6n){grid-column:span 12;aspect-ratio:1.5}.gallery-caption{font-size:12px;padding:35px 12px 12px;gap:7px;line-height:1.3}.gallery-caption .icon{width:16px;height:16px}.gallery-filters{gap:7px}.filter{padding:10px 18px;font-size:13px}.archive-heading h2{font-size:clamp(39px,10.5vw,62px)}.video-grid{grid-template-columns:1fr;gap:32px}.video-card h3{font-size:27px;margin-top:17px}.video-card p{font-size:15px}.video-play{width:55px;height:55px}.faq{grid-template-columns:1fr;gap:35px}.faq h2{font-size:clamp(44px,12vw,65px)}summary{font-size:17px;gap:18px}details p{font-size:16px}.booking{grid-template-columns:1fr;gap:35px}.booking h2{font-size:clamp(42px,11.4vw,64px)}.booking-copy>p{font-size:23px}.booking-contact a:last-child{font-size:16px}.booking-photo{aspect-ratio:1.6}.booking-form{padding:28px 23px;border-radius:13px}.booking-form h3{font-size:26px}.form-fields{grid-template-columns:1fr 1fr;gap:23px 16px}.booking-form>.button{font-size:15px;gap:9px}.footer{padding:45px 24px 100px}.footer-top{flex-wrap:wrap;gap:28px;padding-bottom:30px}.footer-logo{width:255px}.footer-top>p{order:3;margin:0;width:100%;font-size:34px}.back-top{margin-left:auto;width:42px;height:42px}.footer-columns{display:flex;flex-wrap:wrap;gap:32px;padding:32px 0}.footer-columns>div:first-child{width:100%}.footer-columns nav{width:38%}.footer-representation{width:calc(62% - 32px)}.footer-columns h3{font-size:16px}.footer-columns nav a{width:100%;font-size:14px}.footer-columns p{font-size:13px}.footer-representation>a{font-size:13px}.footer-representation img{width:105px}.footer-legal{display:block;font-size:12px}.footer-legal nav{justify-content:flex-start;margin-top:17px;gap:14px 18px}.powered-by{padding-right:0;margin-top:36px}.powered-by a{gap:12px}.powered-by img{width:140px;max-height:40px}.whatsapp-float{right:18px;bottom:max(18px,env(safe-area-inset-bottom));width:55px;height:55px}.whatsapp-float>span{display:none}.media-dialog{padding:18px 16px}.dialog-header h2{font-size:15px}.dialog-header{gap:14px}.lightbox-stage{grid-template-columns:36px minmax(0,1fr) 36px;gap:3px;height:calc(100dvh - 175px)}.lightbox-stage>.icon-button{width:34px;height:44px;border:0}.lightbox-caption{font-size:14px}#video-player{height:55dvh;min-height:190px}#video-dialog>.text-link{font-size:13px}.legal-header .brand{max-width:none}.legal-page{padding:40px 24px 70px}.legal-footer{display:block}.legal-footer>a{display:inline-block;margin-top:15px}}
@media(max-width:370px){.hero-art{height:285px}.hero-actions{gap:6px 20px}.hero-actions .button{padding:14px 18px}.hero-top{font-size:9px}.hero-word{font-size:22vw}.hero-lead{font-size:12px}.hero-tail{font-size:10px}.show-notes{gap:12px}.show-notes h3{font-size:18px}.show-notes p{font-size:12px}.show-photo figcaption{font-size:10px}.cast-image{height:260px}.cast-info h3{font-size:21px}.cast-mambolets .cast-image{height:260px}.cast-mambolets .cast-info{padding-bottom:0}.cast-mambolets{gap:12px}.legacy h2{font-size:36px}.cinema-video{gap:10px;font-size:15px}.mini-video{width:108px}.cinema h2{font-size:71px}.form-fields{grid-template-columns:1fr}.footer-logo{width:220px}.footer-top{gap:18px}.footer-columns nav,.footer-representation{width:100%}.gallery-caption{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.character,.cinema-backdrop,.show-photo>img,.legacy-waves i{transform:none!important}.legacy-stage{position:relative;top:0;opacity:1}.legacy-story{margin-top:0}.legacy-chapter{min-height:0;padding:55px 0}.legacy-current,.legacy-now-caption{display:none}.legacy-founder,.legacy-origin-caption{opacity:1}.legacy-waves{display:none}}
html.motion-paused{scroll-behavior:auto}html.motion-paused *{animation-play-state:paused!important}html.motion-paused .character,html.motion-paused .cinema-backdrop,html.motion-paused .show-photo>img,html.motion-paused .legacy-waves i{transform:none!important}html.motion-paused .word-photo.second{transition:none}
.commemorative-open{border:0;background:none;color:inherit;padding:0;width:100%;text-align:left}.commemorative-open>div:last-child{padding-top:12px;display:flex;flex-direction:column;gap:3px;font-size:15px}.commemorative-open:hover .commemorative-image>.icon{transform:scale(1.1)}.film-pending{position:relative;width:100%;height:100%;overflow:hidden}.film-pending>img{width:100%;height:100%;object-fit:contain;opacity:.55}.film-pending>p{position:absolute;bottom:12%;left:0;width:100%;text-align:center;font:600 clamp(20px,4vw,40px)/1.3 Outfit;max-width:none;padding:20px;background:#101510aa}
/* Official palette pairings with readable contrast at each text size. */
.legacy h2 em{color:var(--cream);text-decoration:underline;text-decoration-color:var(--mustard);text-decoration-thickness:3px;text-underline-offset:9px}.booking h2 em,.archive-heading h2 em{color:var(--ink)}.repertoire-heading>p{font-size:20px;font-weight:600}.platform{background:var(--cream);border-radius:22px;padding:7px 12px}.legacy h2{text-shadow:none}.hero-top{font-size:12px}.hero-tail{font-size:12px}.show-photo figcaption{font-size:12px}
@media(max-width:760px){.repertoire-heading>p{font-size:19px}.hero-top{font-size:11px}.hero-tail{font-size:11px}.show-photo figcaption{font-size:11px}}
.marquee-group{min-width:100vw;justify-content:space-around}
.header nav,.header-booking,.mobile-menu>a{text-transform:uppercase}.header nav{font-size:13px;letter-spacing:.025em}.header-booking.button{font-size:13px}
/* A finite stage keeps the composition intact on ultrawide displays. */
:root{--site-width:1600px;--gutter:clamp(24px,5vw,80px)}
html{background:#171a17}body{max-width:var(--site-width);margin-inline:auto;box-shadow:0 20px 90px #0003}
.header{padding-inline:clamp(20px,3vw,48px)}.mobile-menu{max-width:1600px;margin-inline:auto}
.hero-word{font-size:clamp(100px,22.2vw,350px);letter-spacing:-.045em}
.word-photo{-webkit-text-stroke:0!important;background-size:120% auto;transition:none;background-repeat:no-repeat}

.hero{isolation:isolate}.hero-stage{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden}
.hero-stage svg{position:absolute;width:100%;height:100%;inset:0}
.stage-rays{opacity:.1;transform-origin:50% 100%;animation:stage-sweep 16s ease-in-out infinite alternate}
.stage-arcs{opacity:.28;transform-origin:50% 100%;animation:stage-breathe 12s ease-in-out infinite alternate}
.hero-top,.hero-bottom{position:relative}.hero-stage:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#206b5d66,transparent 50%,#206b5daa)}
@keyframes stage-sweep{from{transform:rotate(-7deg) scale(1.15)}to{transform:rotate(7deg) scale(1.15)}}
@keyframes stage-breathe{from{transform:translateY(32px) scale(.96)}to{transform:translateY(-15px) scale(1.04)}}
.stage-paused .hero-stage svg{animation-play-state:paused}
.marquee-group{min-width:min(100vw,1600px)}
.show-photo>img{transform:none;image-rendering:auto}.show-photo{aspect-ratio:1.9}.show-photo>img{object-position:50% 58%}
.cinema-backdrop{opacity:var(--cinema-fade,1)}
.cinema-shade{background:linear-gradient(90deg,#101710dc,#10171045 80%),linear-gradient(0deg,#171a17b3,transparent 25%,transparent 75%,#171a1755)}
.booking-photo{aspect-ratio:1.5;position:relative}
.booking-photo img{position:absolute;width:142%;max-width:none;height:142%;left:-31%;top:-35%;object-fit:cover;object-position:50% 66%}
/* Hover color is shared by navigation, text actions, and platform controls. */
.header nav a,.mobile-menu>a,.footer-columns nav a,.footer-legal a,.footer-representation>a,.booking-contact a,.text-link,.video-fallback,.scroll-cue{transition:color .2s,background-color .2s}
.header nav a{padding-inline:5px;border-radius:5px}.header nav{gap:14px}
.header nav a:hover,.header nav a:focus-visible,.mobile-menu>a:hover{color:var(--jade);background:#206b5d13}
.footer-columns nav a{text-transform:uppercase;letter-spacing:.04em;padding:4px 7px;margin-left:-7px;border-radius:4px}
.footer a:hover,.footer a:focus-visible{color:var(--mustard)}.footer-columns nav a:hover{background:#f5e8ce12;text-decoration:none}
.text-link:hover,.video-fallback:hover,.booking-contact a:hover{color:var(--jade)}.hero .text-link:hover,.hero .scroll-cue:hover,.legacy .text-link:hover{color:var(--mustard)}
.button.jade:hover,.button.dark:hover{background:var(--jade)}.button.mustard:hover{background:var(--cream)}.button.cream:hover{background:var(--mustard)}
.event-list>a:hover{background:#206b5d0d}.filter{transition:background-color .2s,color .2s}.gallery-item{transform-origin:0 0}
.platform-options{display:flex;gap:9px;margin-top:15px}.platform-options .platform{margin:0;min-width:45px;width:45px;height:45px;min-height:45px;padding:11px;border:1px solid #171a1733;border-radius:50%;justify-content:center;transition:background .2s,color .2s,transform .2s}.platform-options .icon,.platform-options .icon:last-child{width:22px;height:22px;margin:0}.platform-options .platform:hover{background:var(--ink);color:var(--cream);transform:translateY(-2px)}
.record-rank{position:absolute;left:12px;top:12px;width:34px;height:34px;border-radius:50%;background:var(--cream);color:var(--ink);display:grid;place-items:center;font-size:15px;font-weight:600;z-index:1}.record-shelf h3{min-height:44px}.repertoire-source{font-size:13px;margin-top:28px;max-width:85ch}.repertoire-source a{text-decoration:underline}.repertoire-source a:hover{color:var(--cream);background:var(--ink)}
.media-dialog{width:min(1120px,calc(100vw - 32px));height:auto;max-width:1120px;max-height:92dvh;inset:0;margin:auto;padding:24px;border-radius:14px;box-shadow:0 24px 80px #0007}
.media-dialog::backdrop{background:#101510d9}#video-player{height:auto;aspect-ratio:16/9;min-height:0;max-height:68dvh}#video-player iframe{aspect-ratio:16/9}
.lightbox-stage{height:min(68dvh,720px)}.lightbox-caption{margin-bottom:3px}
@media(min-width:1700px){.hero-art{height:435px}.hero-word{font-size:350px}}
@media(max-width:950px){.hero-word{font-size:22vw}.word-photo{background-size:130% auto}}
@media(max-width:760px){.hero-word{font-size:22.5vw}.hero-stage{left:-35%;right:-35%}.stage-rays{opacity:.13}.hero-bottom{justify-content:center}.show-photo{aspect-ratio:1.25}.show-photo>img{object-position:50% 57%}.booking-photo{aspect-ratio:1.35}.booking-photo img{width:136%;height:136%;left:-25%;top:-28%}.media-dialog{width:calc(100vw - 20px);padding:16px 12px;border-radius:10px}.lightbox-stage{height:65dvh}.lightbox-caption{font-size:13px}.repertoire-source{font-size:12px}.record-shelf h3{min-height:42px}}
@media(prefers-reduced-motion:reduce){.hero-stage svg{animation:none}.cinema-backdrop{opacity:1}.word-photo{background-position:50% 35%!important}.gallery-item{transform:none!important}.hero-stage .stage-rays{transform:none}}

.repertoire-source{background:var(--cream);padding:12px 16px;border-radius:4px;width:fit-content}.hero-bottom{padding-block:10px}
/* Full-bleed color, with the established 1440px usable composition centered inside it. */
html{background:var(--cream)}body{max-width:none;width:100%;margin:0;box-shadow:none}
.section,.hero,.legacy,.footer{padding-inline:max(var(--gutter),calc((100% - 1440px)/2))}
.header{padding-inline:max(24px,calc((100% - 1504px)/2))}.mobile-menu{max-width:none;padding-inline:max(24px,calc((100% - 1440px)/2))}
.marquee-group{min-width:100vw}.hero-stage{max-width:none}.hero-word{max-width:1460px;margin-inline:auto}
/* The photograph stays pinned as the real page content travels over it. */
.cinema{display:block;height:180svh;min-height:1100px;padding:0;overflow:clip}
.cinema-pin{position:sticky;top:90px;height:calc(100svh - 90px);min-height:480px;width:100%;overflow:hidden;isolation:isolate}
.cinema-backdrop{position:absolute;inset:0;transform:none!important;opacity:1!important;z-index:-2}
.cinema-backdrop img{object-position:50% 44%}.cinema-shade{z-index:-1}
.cinema-content{position:absolute;top:62svh;left:max(var(--gutter),calc((100% - 1440px)/2));right:max(var(--gutter),calc((100% - 1440px)/2));z-index:2}
.cinema-stamp{right:max(var(--gutter),calc((100% - 1440px)/2));bottom:70px;z-index:2}
.show-photo{clip-path:inset(0 var(--photo-inset,0%));border-radius:6px}
/* Quiet musical drawing: a rotating orbit behind the cast, a staff behind the records. */
.cast,.repertoire{position:relative;isolation:isolate;overflow:clip}
.cast-rhythm{position:absolute;inset:-5% -8%;z-index:-1;pointer-events:none;overflow:hidden;color:var(--jade);opacity:.19}
.cast-rhythm svg{position:absolute;width:min(1500px,100%);height:100%;right:-16%;top:5%;transform:rotate(var(--cast-turn,0deg));transform-origin:center}
.music-score{position:absolute;inset:0;z-index:-1;color:var(--ink);opacity:.14;pointer-events:none;overflow:hidden}
.music-score svg{position:absolute;width:max(1600px,100%);height:100%;left:50%;top:0;transform:translate(-50%,var(--score-shift,0px))}
/* Entrances have a stable initial state and keep their finished state. */
.entrance-ready{opacity:0;transform:translateY(38px);transition:opacity .7s ease var(--entrance-delay,0ms),transform .9s var(--ease) var(--entrance-delay,0ms),clip-path .95s var(--ease) var(--entrance-delay,0ms)}
.entrance-heading{opacity:1;transform:translateY(30px);clip-path:inset(0 0 100% 0)}
.entrance-photo{transform:none;clip-path:inset(0 14% 0 14%)}
.entrance-ready.has-entered{opacity:1;transform:none;clip-path:inset(0)}
.entrance-ready:focus-within{opacity:1;transform:none;clip-path:inset(0);transition:none}
@media(min-width:1700px){.hero{padding-inline:max(var(--gutter),calc((100% - 1440px)/2))}}
@media(max-width:760px){.section,.legacy,.footer{padding-inline:24px}.hero{padding-inline:20px}.header{padding-inline:20px}.hero-stage{left:-35%;right:-35%}.cinema{height:160svh;min-height:1000px}.cinema-pin{top:78px;height:calc(100svh - 78px);min-height:400px}.cinema-content{top:55svh;left:24px;right:24px}.cinema-stamp{right:24px;bottom:50px}.cast-rhythm{inset:0 -50%}.cast-rhythm svg{width:1000px;max-width:none;right:-20%}.music-score svg{width:1100px}.entrance-ready{transform:translateY(24px)}.entrance-photo{transform:none}.entrance-ready.has-entered{transform:none}}
@media(prefers-reduced-motion:reduce){.entrance-ready{opacity:1;transform:none;clip-path:none}.show-photo{clip-path:none}.cast-rhythm svg,.music-score svg{transform:none}.cinema{height:820px;min-height:0}.cinema-pin{position:absolute;inset:0;height:100%;min-height:0}.cinema-content{top:22%}}

.entrance-ready:not(.has-entered){transition:none;transform:translateY(var(--entrance-y,38px))}.entrance-photo:not(.has-entered){transform:none}
@media(prefers-reduced-motion:reduce){.entrance-ready:not(.has-entered){transform:none;opacity:1;clip-path:none}}
/* A record at the center of the stage; progress is driven by actual local assets. */
.page-loader{display:none}.is-loading{overflow:hidden}.is-loading body{overflow:hidden}.is-loading .page-loader{display:flex}
.page-loader{position:fixed;inset:0;z-index:1000;background:var(--jade);color:var(--cream);flex-direction:column;align-items:center;justify-content:center;overflow:hidden;isolation:isolate;clip-path:inset(0);transition:clip-path .65s cubic-bezier(.76,0,.24,1)}
.page-loader.loader-leaving{clip-path:inset(0 0 100% 0);pointer-events:none}
.loader-logo{position:absolute;top:clamp(30px,5vh,65px);width:220px;height:auto}.loader-center{position:relative;width:min(470px,80vw);text-align:center}.loader-disc{position:absolute;width:300px;height:300px;left:50%;top:50px;transform:translate(-50%,-50%);border-radius:50%;border:1px solid #f5e8ce22;box-shadow:0 16px 60px #171a1722;background:repeating-radial-gradient(circle at center,transparent 0 13px,#f5e8ce18 14px 15px);z-index:-1}.loader-disc span{position:absolute;inset:30%;border:2px dashed var(--mustard);border-radius:50%;animation:loader-turn 9s linear infinite}
.loader-counter{font:900 clamp(110px,15vw,200px)/1 Jost;letter-spacing:-.04em;max-width:none;font-variant-numeric:tabular-nums;white-space:nowrap}.loader-percent{font-size:.26em;vertical-align:top;display:inline-block;margin-top:.55em;margin-left:8px}.loader-caption{font-size:13px;letter-spacing:.1em;margin:28px auto 24px}.loader-progress{height:3px;background:#f5e8ce33;overflow:hidden;max-width:290px;margin:auto}.loader-progress>span{display:block;width:var(--load-progress,0%);height:100%;background:var(--mustard);transition:width .18s linear}.loader-status{min-height:24px;font-size:13px;margin:18px auto 0}.loader-skip{margin:18px auto 0;min-height:44px;padding:10px 22px;border:1px solid #f5e8ce88;border-radius:24px;background:transparent;color:var(--cream);font-size:14px}.loader-skip:hover{background:var(--cream);color:var(--jade)}.loader-foot{position:absolute;bottom:35px;font-size:11px;letter-spacing:.1em}.loader-stage{position:absolute;inset:0;z-index:-2;pointer-events:none}.loader-stage i{position:absolute;width:110vw;height:110vw;min-width:800px;min-height:800px;left:50%;top:85%;border:1px solid #f5e8ce22;border-radius:50%;transform:translate(-50%,-50%)}.loader-stage i:nth-child(2){width:90vw;height:90vw;min-width:650px;min-height:650px}.loader-stage i:nth-child(3){width:70vw;height:70vw;min-width:500px;min-height:500px}
@keyframes loader-turn{to{transform:rotate(360deg)}}
@media(max-width:760px){.loader-logo{width:185px}.loader-disc{width:230px;height:230px;top:35px}.loader-foot{font-size:9px;letter-spacing:.06em}.loader-caption{font-size:11px}.loader-status{font-size:12px}.loader-counter{font-size:120px}}
@media(prefers-reduced-motion:reduce){.page-loader{transition:opacity .1s}.page-loader.loader-leaving{clip-path:none;opacity:0}.loader-disc span{animation:none}.loader-progress>span{transition:none}}

main{overflow-anchor:none}

/* The notes follow the scroll independently of the musical staff. */
.music-score g[fill] path{transform-box:fill-box;transform-origin:center;transform:translate(0,var(--note-travel,0px)) rotate(var(--note-turn,0deg))}
.music-score g[fill] path:nth-child(2){transform:translate(calc(var(--note-travel,0px) * -.35),calc(var(--note-travel,0px) * -.7)) rotate(calc(var(--note-turn,0deg) * -1))}
.music-score g[fill] path:nth-child(3){transform:translate(calc(var(--note-travel,0px) * .4),calc(var(--note-travel,0px) * .6)) rotate(calc(var(--note-turn,0deg) * .6))}
@media(prefers-reduced-motion:reduce){.music-score g[fill] path{transform:none!important}}

/* Technical delivery: editorial legal pages and a short commercial summary. */
.footer-discovery{max-width:74ch;font-size:16px;line-height:1.65;margin:0 0 32px;color:var(--cream)}
.footer-discovery a{color:var(--mustard);text-underline-offset:4px;text-decoration:underline}
.footer-discovery a:hover{color:var(--cream)}
.legal-document .legal-page{width:100%;max-width:960px;padding:52px 40px 90px}
.legal-document .legal-page h1{max-width:16ch;overflow-wrap:anywhere}
.legal-document .legal-page section{scroll-margin-top:30px}
.legal-document .legal-page a{overflow-wrap:anywhere;color:var(--jade);text-underline-offset:4px}
.legal-document .legal-page a:hover{color:var(--ink);text-decoration-thickness:2px}
.legal-document .legal-header{height:auto;min-height:90px;gap:24px;padding:22px max(24px,calc((100% - 1440px)/2))}
.legal-document .legal-header .brand{width:225px;max-width:55%}
.legal-document .legal-header .text-link{white-space:normal;text-align:right;font-size:16px}
.legal-document .legal-footer{display:flex;flex-wrap:wrap;align-items:center;padding:36px max(24px,calc((100% - 1440px)/2));gap:24px}
.legal-footer nav{display:flex;gap:16px 24px;flex-wrap:wrap;width:100%}
.legal-footer a{font-size:16px;text-underline-offset:4px}
.legal-footer a:hover{color:var(--mustard);text-decoration:underline}
.legal-footer p{font-size:14px;line-height:1.6}
.legal-powered{margin-left:auto;display:flex;align-items:center;gap:14px}
.legal-powered img{width:150px;height:auto}
@media(max-width:600px){.legal-document .legal-page{padding:30px 24px 60px}.legal-document .legal-header .brand{width:190px}.legal-document .legal-page h1{font-size:38px}.legal-powered{margin-left:auto}.legal-document .legal-footer{padding-bottom:40px}}

/* Master 2 — live dates and compact, centered media windows. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.agenda{position:relative;isolation:isolate;overflow:hidden;background:var(--jade);color:var(--cream)}
.agenda-backdrop{position:absolute;inset:-64px 0;z-index:-2;pointer-events:none;transform:translateY(var(--agenda-shift,0px))}
.agenda-backdrop img{width:100%;height:104%;object-fit:cover;object-position:66% 15%;filter:saturate(.95);transform:translateY(-3%)}
.agenda:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(110deg,#103d34e6,#153f3670 65%,#153f3699)}
.agenda-heading{display:flex;align-items:end;justify-content:space-between;gap:32px;margin-bottom:44px}
.agenda-heading h2{max-width:750px}.agenda-heading h2 em{color:var(--mustard)}
.agenda-heading>p{font-size:21px;line-height:1.5;max-width:28ch;margin-bottom:8px}
.agenda-bill{background:var(--cream);color:var(--ink);border-radius:12px;overflow:hidden;box-shadow:0 20px 50px #102e3433}
.agenda-table{width:100%;border-collapse:collapse;text-align:left}
.agenda-table th{padding:22px 28px;font:600 13px/1.3 Outfit;letter-spacing:.1em;text-transform:uppercase;background:var(--mustard);color:var(--ink)}
.agenda-table td{padding:28px;border-bottom:1px solid #206b5d33;vertical-align:middle;font-size:18px}
.agenda-table th:first-child{width:18%}.agenda-table th:nth-child(2){width:30%}
.agenda-date{display:flex;align-items:center;gap:12px;color:var(--jade);white-space:nowrap}
.agenda-date strong{font:900 48px/1 Jost}.agenda-date>span{font-weight:700;line-height:1.2}.agenda-date small{display:block;font-size:12px;font-weight:400;margin-top:5px}
.agenda-venue{font-weight:600}.agenda-event-title{display:block;font-size:15px;font-weight:400;line-height:1.5;margin-top:8px;color:var(--jade)}.agenda-access{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.agenda-access .button{padding:12px 18px;font-size:14px;min-height:44px}
.agenda-free{display:inline-flex;align-items:center;min-height:44px;padding:10px 18px;border:1px solid var(--jade);border-radius:30px;color:var(--jade);font-size:15px;font-weight:600}
.agenda-band{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 16px;border:1px solid #206b5d66;border-radius:26px;background:transparent;color:var(--jade);font:500 14px/1.2 Outfit;text-decoration:none}
.agenda-band:disabled{border-style:dashed;cursor:default;flex-direction:column;gap:3px}.agenda-band small{font-size:11px}
.agenda-empty td{text-align:center;padding:40px 24px;background:url('assets/ritmo-dialogo.svg') right center/600px auto no-repeat}
.agenda-calendar{width:54px;height:54px;color:var(--jade);margin:0 auto 16px}.agenda-empty h3{font:600 clamp(23px,3vw,34px)/1.15 Outfit;letter-spacing:-.02em}.agenda-empty p{font-size:17px;line-height:1.5;margin:14px auto 0;max-width:35ch}
.agenda-footer{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 28px}
.agenda-footer>p{margin:0;font-size:18px;line-height:1.4}.agenda-footer>p strong{font-weight:600;color:var(--jade)}.agenda-footer>.button{font-size:15px;min-height:48px;padding:14px 24px}.agenda-footer>.button:hover{background:var(--ink)}.agenda-band-note{font-size:14px;display:flex;align-items:center;gap:10px}.agenda-band-note>span{font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--jade)}
.media-dialog{position:fixed;inset:auto;top:50%;left:50%;transform:translate(-50%,-50%);margin:0;width:min(1120px,calc(100vw - 48px));height:fit-content;min-height:0;max-height:calc(100dvh - 48px);padding:24px;background:var(--cream) url('assets/ritmo-dialogo.svg') right bottom/600px auto no-repeat;color:var(--ink);border:1px solid #206b5d44;border-radius:18px;box-shadow:0 24px 80px #103d3459;overflow:auto;overscroll-behavior:contain}
.media-dialog::backdrop{background:#153f36b8;backdrop-filter:blur(4px)}
.dialog-header{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:16px;margin:0 0 20px}
.dialog-header h2{grid-column:2;text-align:center;font:600 clamp(16px,2vw,22px)/1.25 Outfit;color:var(--jade);margin:0;max-width:none}
.dialog-header .icon-button{grid-column:3;width:44px;height:44px;border-color:#206b5d66;background:var(--cream);color:var(--jade)}
.media-dialog .icon-button:hover{background:var(--jade);color:var(--cream)}
#video-player{width:min(100%,calc((100dvh - 240px)*1.7778));height:auto;min-height:0;max-height:none;aspect-ratio:16/9;margin-inline:auto;overflow:hidden;border-radius:8px;background:var(--ink)}
#video-dialog:has(.film-pending) #video-player{width:100%;aspect-ratio:auto;background:transparent}
.film-pending{height:auto;display:grid;justify-items:center;gap:18px;overflow:visible}
.film-pending>img{width:auto;max-width:100%;height:auto;max-height:54dvh;object-fit:contain;opacity:1;border-radius:8px}
.film-pending>p{position:static;width:auto;max-width:100%;padding:0;margin:0;text-align:center;font:600 clamp(18px,2.4vw,28px)/1.3 Outfit;background:none;color:var(--jade)}
#video-dialog>.text-link{display:flex;justify-content:center;width:fit-content;max-width:100%;margin:18px auto 0;text-align:center;font-size:14px;color:var(--jade)}
#video-dialog>.text-link[hidden]{display:none}.media-privacy{text-align:center;max-width:none;font-size:12px;margin:8px auto 0;opacity:1}
.lightbox-stage{height:auto;min-height:0;grid-template-columns:44px minmax(0,1fr) 44px;gap:16px}
.lightbox-stage>img{width:auto;max-width:100%;height:auto;max-height:min(64dvh,720px);justify-self:center;object-fit:contain;border-radius:6px}
.lightbox-stage>.icon-button{width:44px;height:44px;border:1px solid #206b5d66;background:var(--cream);color:var(--jade)}
.lightbox-caption{display:grid;grid-template-columns:1fr auto;align-items:center;gap:16px;margin:18px 0 0;padding-top:14px;border-top:1px solid #206b5d33;font-size:15px}
.lightbox-caption p{justify-self:center;text-align:center;margin:0;padding-left:60px}.lightbox-caption>span{color:var(--jade)}
@media(max-width:1120px) and (min-width:951px){.header nav{gap:5px;font-size:11px}.header nav a{padding-inline:3px}}
@media(max-width:760px){
 .agenda-heading{display:block;margin-bottom:28px}.agenda-heading>p{font-size:18px;margin-top:22px}.agenda-heading h2{font-size:clamp(42px,11vw,66px)}
 .agenda-table th{font-size:10px;letter-spacing:.03em;padding:15px 10px}.agenda-table th:first-child{width:auto}.agenda-table th:nth-child(2){width:auto}
 .agenda-table tr:not(.agenda-empty){display:grid;grid-template-columns:1fr 1fr}.agenda-table thead tr{display:table-row!important}.agenda-table thead{display:table;width:100%}
 .agenda-table tbody,.agenda-table .agenda-empty{display:block}.agenda-empty td{display:block;padding:32px 20px}.agenda-empty h3{font-size:25px}.agenda-empty p{font-size:16px}
 .agenda-table tbody tr:not(.agenda-empty){padding:20px;gap:20px 16px;border-bottom:1px solid #206b5d33}.agenda-table tbody tr:not(.agenda-empty) td{padding:0;border:0;font-size:16px}
 .agenda-table tbody tr:not(.agenda-empty) td:before{content:attr(data-label);display:block;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--jade);margin-bottom:10px}
 .agenda-table tbody tr:not(.agenda-empty) td:last-child{grid-column:1/-1}.agenda-date strong{font-size:38px}
 .agenda-footer{align-items:center;flex-direction:column;gap:20px;padding:24px 18px;text-align:center}.agenda-footer .text-link{font-size:14px}.agenda-band-note{font-size:13px}
 .media-dialog{width:calc(100vw - 24px);max-height:calc(100dvh - 32px);padding:16px 12px;border-radius:14px;background-size:420px auto}
 .dialog-header{grid-template-columns:44px minmax(0,1fr) 44px;gap:8px;margin-bottom:16px}.dialog-header h2{font-size:16px}
 #video-player{width:100%}.film-pending{gap:16px}.film-pending>img{max-height:58dvh}.film-pending>p{font-size:19px;max-width:24ch}
 .lightbox-stage{grid-template-columns:1fr 1fr;gap:12px}.lightbox-stage>img{grid-column:1/-1;grid-row:1;max-height:56dvh}.lightbox-stage>#gallery-prev{grid-row:2;grid-column:1;justify-self:end}.lightbox-stage>#gallery-next{grid-row:2;grid-column:2;justify-self:start}
 .lightbox-caption{font-size:13px;gap:10px;margin-top:16px;padding-top:12px}.lightbox-caption p{padding-left:0;justify-self:center;text-align:center}
 #video-dialog>.text-link{font-size:12px;gap:6px}.media-privacy{font-size:11px}
}
@media(prefers-reduced-motion:reduce){.agenda-backdrop{transform:none}}

/* Readable schedule and a compact choice of directions. */
.agenda-date>span{font-size:12px}.agenda-hour{display:block;font-size:14px;font-weight:500;line-height:1.5;margin-top:12px;color:var(--jade)}
.agenda-location{display:inline-flex;flex-direction:column;justify-content:center;min-height:44px;color:var(--jade);text-decoration:underline;text-underline-offset:4px;transition:color .2s}
.agenda-location>span{display:block;margin-top:6px;font-size:13px;font-weight:400}.agenda-location:hover{color:#a63724}
.venue-dialog{width:min(540px,calc(100vw - 32px));text-align:center;padding:24px 24px 30px}
.venue-pin{display:block;width:54px;height:54px;color:var(--jade);margin:0 auto 20px}
#venue-name{font:600 clamp(24px,4vw,32px)/1.2 Outfit;margin:0 0 12px;color:var(--jade)}
#venue-address{font-size:17px;line-height:1.5;max-width:33ch;margin:0 auto 28px}
.venue-options{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.venue-options .button{font-size:16px;padding:14px 22px;min-height:48px}
.venue-hint{font-size:13px;margin:20px 0 0;color:var(--jade)}
@media(max-width:760px){.agenda-date{gap:8px}.agenda-date>span{font-size:10px}.agenda-hour{font-size:13px}.venue-dialog{padding:16px 16px 26px}.venue-options{flex-direction:column}.venue-options .button{justify-content:center}}

/* The photograph stays pinned while the events scroll over it, including iOS. */
.agenda.section{padding:0;overflow:clip}
.agenda-backdrop{position:sticky;inset:auto;top:90px;height:calc(100svh - 90px);margin-bottom:calc(90px - 100svh);transform:none;overflow:hidden}
.agenda:before{display:none}
.agenda-backdrop:after{content:'';position:absolute;inset:0;background:linear-gradient(110deg,#103d34e6,#153f3670 65%,#153f3699)}
.agenda-content{position:relative;padding:110px max(var(--gutter),calc((100% - 1440px)/2)) 32svh;min-height:140svh}
/* Keep the mobile backdrop as tall as Safari with its toolbars collapsed.
   svh leaves a jade gap when those bars retract during a scroll. */
@media(max-width:760px){.agenda-backdrop{top:78px;height:calc(100lvh - 78px);margin-bottom:calc(78px - 100lvh)}.agenda-content{padding:70px 24px 26svh;min-height:140svh}}
@media(prefers-reduced-motion:reduce){.agenda-backdrop{position:absolute;inset:0;height:100%;margin:0}.agenda-content{min-height:0;padding-bottom:80px}}

/* Equal desktop columns and balanced access controls. */
.agenda-table{table-layout:fixed}
.agenda-table th,.agenda-table th:first-child,.agenda-table th:nth-child(2){width:25%}
.agenda-access{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}
.agenda-free,.agenda-access>.button,.agenda-access>.agenda-band{justify-content:center;text-align:center;width:100%;padding-inline:10px}
.venue-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.venue-options .button{padding:14px 10px;gap:8px;font-size:14px;justify-content:center}
@media(min-width:761px) and (max-width:1120px){.agenda-table th,.agenda-table td{padding-inline:18px}.agenda-access{grid-template-columns:1fr}.agenda-date strong{font-size:40px}.agenda-date>span{font-size:10px}}
@media(max-width:760px){.agenda-table{table-layout:auto}.venue-options{grid-template-columns:1fr}.venue-options .button{font-size:16px}}

/* Alternating dates stay distinct on desktop and stacked mobile cards. */
.agenda-table tbody tr:nth-child(even){background:#e0e5d5}
@media(max-width:760px){
 /* Keep column associations for assistive technology; each mobile cell has its own label. */
 .agenda-table thead{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0}
}

/* Mobile Safari: overlapping grid layers replace the negative-margin sticky layer.
   No negative stacking or transformed image; photo fallback also covers late paints. */
@media(max-width:760px){
 .agenda.section{display:grid;grid-template-columns:minmax(0,1fr);background-image:linear-gradient(110deg,#103d34e6,#153f3670 65%,#153f3699),url('assets/photos/israel-escenario-1920.webp');background-size:cover;background-position:66% 15%}
 .agenda-backdrop,.agenda-content{grid-area:1/1}
 .agenda-backdrop{align-self:start;width:100%;margin:0;z-index:0;height:calc(100lvh - 78px)}
 .agenda-backdrop img{position:absolute;top:-3%;left:0;height:104%;transform:none}
 .agenda-content{z-index:1;min-width:0}
}
@media(max-width:760px) and (prefers-reduced-motion:reduce){.agenda.section{display:block}.agenda-backdrop{position:absolute;inset:0;height:100%}.agenda-content{min-height:0}}

/* Explicit album navigation; only horizontal touch gestures inside the shelf. */
.record-navigation{display:none}
@media(max-width:950px){
 .record-shelf{overflow-x:auto;overflow-y:hidden;scrollbar-width:none;touch-action:pan-x pinch-zoom;overscroll-behavior:contain;padding-block:4px 12px}
 .record-shelf::-webkit-scrollbar{display:none;width:0;height:0}
 .record-shelf .record.entrance-ready{transform:none}
 .record-navigation{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:18px}
 .record-navigation>p{font-size:14px;line-height:1.4}
 .record-navigation>div{display:flex;gap:10px;flex:none}
 .record-navigation .icon-button{width:48px;height:48px;border:1px solid #171a1766;background:var(--cream);color:var(--ink)}
 .record-navigation .icon-button:hover:not(:disabled){background:var(--mustard)}
 .record-navigation .icon-button:disabled{opacity:.4;transform:none;cursor:default}
 #record-prev .icon{transform:rotate(180deg)}
}
