:root{
  --bg:#080506;--wine:#310b13;--red:#75192b;--gold:#d9b56d;--paper:#f5efe7;--muted:rgba(255,255,255,.68);
  --line:rgba(255,255,255,.16);--pad:clamp(20px,4vw,64px);--serif:"Cormorant Garamond",Georgia,serif;--sans:"Inter",system-ui,sans-serif
}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg)}body{margin:0;background:var(--bg);color:#fff;font-family:var(--sans);overflow-x:hidden}body.modal-open{overflow:hidden}::selection{background:rgba(217,181,109,.28)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{color:inherit}.glass{background:rgba(18,10,12,.52);border:1px solid var(--line);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.glass-strong{background:rgba(8,5,6,.72);border:1px solid var(--line);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}
.stage{position:fixed;inset:0;z-index:0;overflow:hidden;background:#080506;pointer-events:none}.stage__poster,.stage__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.stage__poster{opacity:.7}.stage__video{opacity:0;transition:opacity .8s ease;filter:saturate(.74) contrast(1.05) brightness(.72)}.stage__video.is-visible{opacity:.9}.stage__wash{position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,3,4,.18),rgba(8,4,6,.42) 48%,rgba(8,5,6,.88));mix-blend-mode:multiply}.stage__spotlight{position:absolute;inset:-20%;background:radial-gradient(circle at var(--mx,50%) var(--my,28%),rgba(244,214,150,.22),rgba(244,214,150,.05) 18%,transparent 42%);transition:background .15s linear}.stage__vignette{position:absolute;inset:0;box-shadow:inset 0 0 18vw 7vw rgba(0,0,0,.92)}.stage__grain{position:absolute;inset:-50%;opacity:.1;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.78' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.42'/%3E%3C/svg%3E");animation:grain .3s steps(2) infinite}@keyframes grain{0%{transform:translate(0)}25%{transform:translate(2%,-3%)}50%{transform:translate(-3%,2%)}75%{transform:translate(1%,3%)}100%{transform:translate(-1%,-2%)}}
.curtain{position:fixed;top:0;bottom:0;width:51vw;z-index:100;background:repeating-linear-gradient(90deg,#3b0711 0,#6d1223 8%,#3c0711 17%,#8a1730 25%,#3b0711 34%);box-shadow:inset -4vw 0 7vw rgba(0,0,0,.55);transition:transform 1.6s cubic-bezier(.77,0,.18,1)}.curtain--left{left:0;transform-origin:left}.curtain--right{right:0;transform:scaleX(-1);transform-origin:right}body.curtain-open .curtain--left{transform:translateX(-102%)}body.curtain-open .curtain--right{transform:scaleX(-1) translateX(-102%)}.curtain-replay{position:fixed;right:24px;bottom:24px;z-index:55;border-radius:999px;padding:9px 13px;color:#fff;font-size:11px;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;opacity:0;transform:translateY(10px);transition:.4s}body.curtain-open .curtain-replay{opacity:.7;transform:none}.curtain-replay:hover{opacity:1}
.nav{position:fixed;z-index:60;top:0;left:0;right:0;min-height:74px;display:flex;align-items:center;gap:28px;padding:12px var(--pad);border-width:0 0 1px}.brand{display:flex;align-items:center;gap:11px;font-size:13px;font-weight:700;letter-spacing:.17em}.brand img{width:42px;height:42px;object-fit:contain;border-radius:50%}.nav__links{margin-left:auto;display:flex;align-items:center;gap:clamp(14px,2vw,30px)}.nav__links a{font-size:12px;color:rgba(255,255,255,.72);transition:.25s}.nav__links a:hover,.nav__links a.is-active{color:#fff}.nav__cta{margin-left:8px;border:1px solid rgba(255,255,255,.24);border-radius:999px;padding:10px 15px;font-size:12px;background:rgba(255,255,255,.08)}.nav__menu{display:none;background:none;border:0;font-size:22px}.mobile-menu{position:fixed;inset:0 0 0 auto;width:min(390px,92vw);z-index:80;padding:90px 30px 40px;transform:translateX(105%);transition:.45s ease;display:flex;flex-direction:column;gap:22px}.mobile-menu.is-open{transform:none}.mobile-menu>a{font-family:var(--serif);font-size:34px}.mobile-menu>button{position:absolute;right:25px;top:20px;background:none;border:0;font-size:35px}.act-progress{position:fixed;z-index:45;right:22px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:12px;align-items:flex-end}.act-progress__line{position:absolute;right:0;top:0;bottom:0;width:1px;background:rgba(255,255,255,.16)}.act-progress__line i{display:block;width:1px;height:0;background:var(--gold)}.act-progress button{position:relative;background:none;border:0;padding:2px 15px 2px 4px;display:flex;gap:7px;color:rgba(255,255,255,.38);cursor:pointer;font-size:9px;text-transform:uppercase;letter-spacing:.15em}.act-progress button b{font-weight:500}.act-progress button span{width:0;overflow:hidden;opacity:0;white-space:nowrap;transition:.25s}.act-progress button:hover,.act-progress button.is-active{color:#fff}.act-progress button:hover span,.act-progress button.is-active span{width:78px;opacity:1}
main,.footer{position:relative;z-index:10}.scene{position:relative;min-height:100vh;min-height:100svh;padding:110px var(--pad) 72px;display:flex;flex-direction:column;justify-content:space-between}.hero{padding-top:118px}.scene__top{display:flex;justify-content:space-between;gap:40px;align-items:flex-start}.scene__top p{max-width:430px;margin:0;text-align:right;font-size:clamp(16px,1.4vw,21px);line-height:1.65;text-shadow:0 3px 22px #000}.eyebrow{font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:rgba(255,255,255,.66)}.hero__bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:50px}.display{font-family:var(--serif);font-weight:400;font-size:clamp(60px,8vw,126px);line-height:.82;letter-spacing:-.045em;margin:22px 0 0;text-shadow:0 10px 35px rgba(0,0,0,.62)}.display em{color:var(--paper);font-weight:500}.hero__lead{max-width:650px;font-size:clamp(15px,1.3vw,20px);line-height:1.65;color:rgba(255,255,255,.82);text-shadow:0 3px 20px #000}.badge{width:max-content;display:inline-block;border-left:2px solid var(--paper);background:rgba(255,255,255,.1);backdrop-filter:blur(14px);padding:8px 12px;font-size:10px;letter-spacing:.18em;text-transform:uppercase}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.btn{border-radius:999px;border:1px solid rgba(255,255,255,.22);padding:12px 18px;font-size:12px;display:inline-flex;align-items:center;justify-content:center;gap:10px;cursor:pointer;transition:.3s}.btn--light{background:#fff;color:#111}.btn--light:hover{background:#e7ded4;transform:translateY(-2px)}.btn--glass{background:rgba(255,255,255,.09)}.btn--glass:hover{background:rgba(255,255,255,.18);transform:translateY(-2px)}.hero__ticket{width:min(320px,100%);padding:22px;border-radius:18px;display:flex;flex-direction:column;gap:12px}.hero__ticket:before,.hero__ticket:after{content:"";height:1px;background:repeating-linear-gradient(90deg,rgba(255,255,255,.35) 0 7px,transparent 7px 13px)}.hero__ticket span,.hero__ticket small{font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.56)}.hero__ticket strong{font-family:var(--serif);font-size:27px;line-height:1.05;font-weight:500}.breath{position:relative;z-index:10;height:58vh}.scene--content,.scene--school,.scene--shows,.scene--gallery,.scene--about,.scene--contact{gap:70px;justify-content:flex-start}.scene__heading{display:flex;justify-content:space-between;align-items:flex-start;gap:50px}.scene__heading-copy{width:min(820px,70%)}.display--section{font-size:clamp(48px,6vw,88px);line-height:.9;margin:0}.scene__heading-copy>p{max-width:620px;margin:25px 0 0 auto;font-size:16px;line-height:1.7;color:rgba(255,255,255,.72)}
.service-stage{display:grid;grid-template-columns:1fr 1fr;gap:18px}.service-feature{position:relative;min-height:510px;border-radius:24px;overflow:hidden;display:flex;align-items:flex-end;padding:0}.service-feature img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.52) saturate(.72);transition:transform .7s ease,filter .7s ease}.service-feature:first-child img{object-fit:contain;object-position:center center;background:#0b0809;filter:brightness(.68) saturate(.78)}.service-feature:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 25%,rgba(7,4,5,.92) 83%)}.service-feature:hover img{transform:scale(1.035);filter:brightness(.62) saturate(.85)}.service-feature>div{position:relative;z-index:2;padding:32px;width:min(590px,92%)}.service-feature__number{position:absolute;z-index:2;top:24px;right:26px;font-family:var(--serif);font-size:34px;color:rgba(255,255,255,.54)}.service-feature h3{font-family:var(--serif);font-weight:500;font-size:clamp(28px,3vw,43px);line-height:.98;margin:0 0 12px}.service-feature p,.service-feature li{font-size:13px;line-height:1.6;color:rgba(255,255,255,.74)}.service-feature ul{padding-left:17px;margin-bottom:0}.benefits-block{display:grid;grid-template-columns:.8fr 1.2fr;gap:45px;align-items:end;padding-top:50px}.benefits-block__intro h3,.school-gallery-head h3{font-family:var(--serif);font-size:clamp(42px,5vw,72px);font-weight:400;line-height:.95;margin:18px 0}.benefits-block__intro p{color:var(--muted);line-height:1.7}.benefits-list{border-radius:22px;padding:0 26px}.benefits-list>div{display:grid;grid-template-columns:45px 1fr;gap:20px;padding:22px 0;border-bottom:1px solid var(--line)}.benefits-list>div:last-child{border:0}.benefits-list b{font-size:10px;letter-spacing:.16em;color:var(--gold)}.benefits-list span{font-size:13px;color:var(--muted);line-height:1.55}.benefits-list strong{display:block;color:#fff;font-family:var(--serif);font-size:22px;font-weight:500;margin-bottom:3px}
.scene--school{background:linear-gradient(180deg,transparent,rgba(35,14,10,.12),transparent)}.school-hero{display:grid;grid-template-columns:1.05fr .95fr;border-radius:26px;overflow:hidden}.school-hero img{width:100%;height:620px;object-fit:cover;filter:saturate(.75) brightness(.8)}.school-hero>div{padding:clamp(28px,5vw,70px);align-self:center}.school-hero__large{font-family:var(--serif);font-size:clamp(31px,3.4vw,50px);line-height:1.02;margin:16px 0 25px}.school-hero>div>p:last-child{line-height:1.75;color:var(--muted)}.why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.why-card{border-radius:20px;padding:24px;min-height:220px}.why-card>span{font-size:28px}.why-card h3{font-family:var(--serif);font-size:25px;margin:34px 0 8px}.why-card p{margin:0;color:var(--muted);font-size:13px;line-height:1.6}.school-split{display:grid;grid-template-columns:.85fr 1.15fr;gap:50px;align-items:start}.editorial-panel{padding:30px 0}.editorial-panel h3{font-family:var(--serif);font-size:clamp(42px,5vw,70px);font-weight:400;line-height:.94;margin:18px 0}.editorial-panel p{max-width:610px;line-height:1.75;color:var(--muted)}.experience-panel{border-radius:24px;padding:32px}.experience-panel h3{font-family:var(--serif);font-size:39px;font-weight:500;margin:18px 0}.experience-panel p,.experience-panel li{font-size:14px;line-height:1.7;color:var(--muted)}.experience-panel li{padding:9px 0;border-bottom:1px solid rgba(255,255,255,.09)}.experience-panel ul{padding-left:20px}.quality-note{margin-top:25px;padding-top:20px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:25px}.quality-note strong{font-family:var(--serif);font-size:22px}.quality-note span{max-width:360px;font-size:12px;color:var(--muted)}
.poster-track-wrap{overflow:hidden;margin-left:calc(var(--pad)*-1);margin-right:calc(var(--pad)*-1);padding:20px var(--pad) 40px}.poster-track{display:flex;gap:20px;width:max-content}.poster-card{width:min(335px,75vw);position:relative;cursor:pointer;background:transparent;border:0;text-align:left;padding:0;perspective:900px}.poster-card__image{height:500px;border-radius:20px;overflow:hidden;border:1px solid var(--line);box-shadow:0 30px 70px rgba(0,0,0,.45);transition:transform .45s ease}.poster-card:hover .poster-card__image{transform:rotateY(-4deg) rotateX(2deg) translateY(-8px)}.poster-card img{width:100%;height:100%;object-fit:cover}.poster-card__meta{padding:15px 4px}.poster-card__meta span{font-size:9px;color:var(--gold);letter-spacing:.16em;text-transform:uppercase}.poster-card__meta h3{font-family:var(--serif);font-size:30px;font-weight:500;margin:5px 0}.poster-card__meta p{color:var(--muted);font-size:12px;margin:0}.poster-card__meta i{font-style:normal;float:right;color:rgba(255,255,255,.55)}
.gallery-mosaic{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:260px;gap:12px}.gallery-item{position:relative;border:0;padding:0;background:#111;overflow:hidden;border-radius:18px;cursor:pointer}.gallery-item--wide{grid-column:span 2}.gallery-item--tall{grid-row:span 2}.gallery-item img{width:100%;height:100%;object-fit:cover;filter:brightness(.8) saturate(.8);transition:.65s ease}.gallery-item:hover img{transform:scale(1.045);filter:brightness(.95) saturate(1)}.gallery-item span{position:absolute;left:15px;right:15px;bottom:14px;padding:8px 10px;background:rgba(8,5,6,.55);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.13);border-radius:999px;font-size:10px;letter-spacing:.09em;text-transform:uppercase}.school-gallery-head{max-width:760px;margin-top:20px}.school-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.school-gallery .gallery-item{height:330px}
.about-hero{display:grid;grid-template-columns:1fr 1fr;border-radius:25px;overflow:hidden}.about-hero img{width:100%;height:590px;object-fit:cover;filter:saturate(.75)}.about-hero>div{padding:clamp(30px,5vw,70px);align-self:center}.about-hero__large{font-family:var(--serif);font-size:clamp(32px,3.5vw,53px);line-height:1.02}.pill-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:30px}.pill-row span{border:1px solid var(--line);border-radius:999px;padding:9px 12px;font-size:10px;text-transform:uppercase;letter-spacing:.11em}.manifesto-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.manifesto-grid article{border-radius:22px;padding:28px;min-height:310px}.manifesto-grid article>span{font-size:10px;color:var(--gold);letter-spacing:.14em}.manifesto-grid h3{font-family:var(--serif);font-size:34px;margin:80px 0 15px}.manifesto-grid p,.manifesto-grid li{color:var(--muted);font-size:13px;line-height:1.7}.manifesto-grid ul{padding-left:18px}.scene--tickets{min-height:75vh;justify-content:center;text-align:center}.ticket-marquee{max-width:900px;margin:auto}.ticket-marquee p{max-width:620px;margin:20px auto;color:var(--muted);line-height:1.75}.ticket-marquee .actions{justify-content:center}
.contact-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:20px}.contact-form{border-radius:24px;padding:26px;display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:flex;flex-direction:column;gap:7px}.field--full{grid-column:1/-1}.field label{font-size:10px;text-transform:uppercase;letter-spacing:.14em;color:rgba(255,255,255,.62)}.field input,.field select,.field textarea,.newsletter input{width:100%;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.07);color:#fff;border-radius:12px;padding:13px;outline:none}.field select option{background:#140b0d}.field input:focus,.field select:focus,.field textarea:focus,.newsletter input:focus{border-color:rgba(217,181,109,.65);box-shadow:0 0 0 3px rgba(217,181,109,.08)}.form-note{font-size:11px;color:rgba(255,255,255,.48);line-height:1.6}.form-actions{display:flex;justify-content:flex-end;gap:10px}.form-status{font-size:12px;color:var(--gold);min-height:16px}.contact-info{display:flex;flex-direction:column;gap:10px}.contact-info article{border-radius:18px;padding:18px;display:flex;gap:15px;align-items:flex-start}.contact-info article>span{font-size:19px}.contact-info small{display:block;color:rgba(255,255,255,.48);text-transform:uppercase;letter-spacing:.14em;font-size:9px;margin-bottom:5px}.contact-info strong,.contact-info a{font-size:13px}.hours p{display:flex;justify-content:space-between;gap:30px;margin:6px 0;font-size:11px;color:var(--muted)}.hours b{color:#fff;font-weight:500}
.footer{padding:50px var(--pad);display:grid;grid-template-columns:1.2fr .7fr 1.2fr .9fr;gap:40px;border-width:1px 0 0}.footer__brand img{width:65px;height:65px;object-fit:contain;border-radius:50%}.footer__brand p{max-width:300px;font-family:var(--serif);font-size:24px;line-height:1.05}.footer strong{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.15em;color:var(--gold);margin-bottom:14px}.footer__links{display:flex;flex-direction:column;gap:9px}.footer__links a,.footer__legal,.newsletter label,.newsletter small,.newsletter span{font-size:11px;color:var(--muted);line-height:1.6}.newsletter>div{display:flex;margin:8px 0}.newsletter input{border-radius:10px 0 0 10px}.newsletter button[type=submit]{border:0;background:#fff;color:#111;padding:0 12px;border-radius:0 10px 10px 0;font-size:10px}.link-button{padding:0;border:0;background:none;text-decoration:underline;cursor:pointer;color:inherit}.footer__legal p{margin:5px 0}.whatsapp{position:fixed;right:23px;bottom:74px;z-index:50;width:50px;height:50px;border-radius:50%;display:grid;place-items:center;background:#fff;color:#101010;font-weight:700;font-size:10px;box-shadow:0 12px 38px rgba(0,0,0,.35)}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .75s ease,transform .75s ease;transition-delay:var(--delay,0ms);will-change:transform,opacity}.reveal.is-visible{opacity:1;transform:none}.modal{position:fixed;inset:0;z-index:120;display:grid;place-items:center;padding:22px;opacity:0;pointer-events:none;transition:.3s}.modal.is-open{opacity:1;pointer-events:auto}.modal__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.76)}.modal__panel{position:relative;z-index:2;width:min(1040px,96vw);max-height:90vh;border-radius:24px;overflow:auto;box-shadow:0 40px 120px rgba(0,0,0,.7)}.modal__close{position:sticky;float:right;top:12px;right:12px;z-index:5;width:42px;height:42px;border-radius:50%;border:1px solid var(--line);background:rgba(0,0,0,.58);font-size:24px;cursor:pointer}.modal__panel--show{display:grid;grid-template-columns:.75fr 1.25fr;overflow:hidden}.modal__panel--show>img{width:100%;height:100%;min-height:650px;object-fit:cover}.modal__copy{padding:50px 45px;overflow:auto;max-height:90vh}.modal__copy h2{font-family:var(--serif);font-size:55px;line-height:.95;margin:14px 0 25px}.modal__copy p{color:rgba(255,255,255,.77);line-height:1.72;font-size:14px;white-space:pre-line}.modal__copy .show-facts{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px}.show-facts span{border:1px solid var(--line);padding:8px 11px;border-radius:999px;font-size:10px}.modal__panel--gallery{max-width:1050px;padding:18px}.modal__panel--gallery img{display:block;width:100%;max-height:78vh;object-fit:contain;border-radius:14px}.modal__panel--gallery p{margin:10px 4px 2px;font-size:11px;letter-spacing:.13em;text-transform:uppercase}.modal__panel--privacy{padding:45px 50px}.modal__panel--privacy>h2{font-family:var(--serif);font-size:55px;margin:10px 0}.modal__panel--privacy>p,.privacy-sections p,.privacy-sections li{color:var(--muted);font-size:13px;line-height:1.75}.privacy-sections{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:28px}.privacy-sections section{border:1px solid var(--line);border-radius:16px;padding:20px}.privacy-sections h3{font-family:var(--serif);font-size:22px;margin:0 0 8px}.privacy-sections ul{padding-left:18px}.cookie-banner{position:fixed;z-index:110;left:20px;right:20px;bottom:20px;border-radius:18px;padding:16px 18px;display:flex;align-items:center;justify-content:space-between;gap:20px}.cookie-banner[hidden]{display:none}.cookie-banner p{margin:0;font-size:11px;color:var(--muted)}.cookie-banner>div{display:flex;gap:8px}
@media(max-width:1050px){.nav__links{display:none}.nav__menu{display:block;margin-left:auto}.nav__cta{margin-left:0}.act-progress{display:none}.service-stage{grid-template-columns:1fr}.why-grid{grid-template-columns:1fr 1fr}.school-split,.about-hero,.school-hero,.contact-grid{grid-template-columns:1fr}.school-hero img,.about-hero img{height:460px}.manifesto-grid{grid-template-columns:1fr}.manifesto-grid h3{margin-top:35px}.gallery-mosaic{grid-template-columns:1fr 1fr}.school-gallery{grid-template-columns:1fr 1fr}.footer{grid-template-columns:1fr 1fr}.modal__panel--show{grid-template-columns:.8fr 1.2fr}}
@media(max-width:720px){:root{--pad:20px}.nav{min-height:66px}.brand img{width:36px;height:36px}.nav__cta{display:none}.scene{padding-top:95px}.scene__top{flex-direction:column}.scene__top p{text-align:left}.hero__bottom{flex-direction:column;align-items:flex-start}.display{font-size:clamp(58px,19vw,90px)}.hero__ticket{display:none}.breath{height:30vh}.scene__heading{flex-direction:column}.scene__heading-copy{width:100%}.scene__heading-copy>p{margin-left:0}.display--section{font-size:clamp(50px,15vw,72px)}.benefits-block{grid-template-columns:1fr}.service-feature{min-height:520px}.why-grid{grid-template-columns:1fr}.school-hero img,.about-hero img{height:330px}.school-split{gap:10px}.quality-note{flex-direction:column}.poster-card{width:76vw}.poster-card__image{height:420px}.gallery-mosaic{grid-template-columns:1fr;grid-auto-rows:300px}.gallery-item--wide,.gallery-item--tall{grid-column:auto;grid-row:auto}.school-gallery{grid-template-columns:1fr}.school-gallery .gallery-item{height:300px}.contact-form{grid-template-columns:1fr}.field--full{grid-column:auto}.footer{grid-template-columns:1fr}.footer__legal{padding-bottom:50px}.modal__panel--show{display:block}.modal__panel--show>img{height:390px;min-height:0}.modal__copy{padding:28px 22px}.modal__copy h2{font-size:42px}.privacy-sections{grid-template-columns:1fr}.modal__panel--privacy{padding:36px 22px}.cookie-banner{flex-direction:column;align-items:flex-start}.curtain-replay{display:none}.whatsapp{bottom:18px}.scene--tickets{min-height:70vh}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.stage__grain{animation:none}.curtain,.reveal,.poster-card__image{transition:none}.reveal{opacity:1;transform:none}}


/* Cartelera navigation + readable synopsis modal */
.poster-carousel{position:relative;margin-left:calc(var(--pad)*-1);margin-right:calc(var(--pad)*-1);padding:20px 0 40px}.poster-carousel .poster-track-wrap{margin:0;padding:20px var(--pad) 40px;overflow-x:auto;overflow-y:hidden;scroll-behavior:smooth;scrollbar-width:none}.poster-carousel .poster-track-wrap::-webkit-scrollbar{display:none}.poster-arrow{position:absolute;z-index:8;top:45%;transform:translateY(-50%);width:52px;height:52px;border-radius:50%;border:1px solid rgba(255,255,255,.3);background:rgba(12,7,8,.58);backdrop-filter:blur(16px);color:#fff;font-size:23px;display:grid;place-items:center;cursor:pointer;transition:transform .25s ease,background .25s ease,border-color .25s ease}.poster-arrow:hover{background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.55);transform:translateY(-50%) scale(1.07)}.poster-arrow--prev{left:max(10px,calc(var(--pad)*.25))}.poster-arrow--next{right:max(10px,calc(var(--pad)*.25))}.poster-arrow:disabled{opacity:.28;cursor:default;transform:translateY(-50%)}
.modal__panel--show{grid-template-columns:minmax(290px,.78fr) minmax(0,1.22fr);height:min(800px,90vh);overflow:hidden}.modal__visual{position:relative;min-height:0;height:100%;overflow:hidden}.modal__visual>img{width:100%;height:100%;min-height:0;object-fit:cover}.modal__copy{height:100%;max-height:none;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:48px 45px 38px}.modal__copy h2{margin-bottom:18px}.synopsis-label{display:block;margin:0 0 14px;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}#showModalBody p{margin:0;color:rgba(255,255,255,.84);font-size:15px;line-height:1.82;white-space:normal}#showModalBody p+p{margin-top:18px}.show-nav{position:absolute;z-index:4;top:50%;transform:translateY(-50%);width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,255,255,.32);background:rgba(0,0,0,.55);backdrop-filter:blur(12px);color:white;font-size:20px;cursor:pointer;transition:.25s}.show-nav:hover{background:rgba(255,255,255,.18);transform:translateY(-50%) scale(1.07)}.show-nav--prev{left:14px}.show-nav--next{right:14px}.show-modal-footer{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:34px;padding-top:22px;border-top:1px solid var(--line)}.show-footer-nav{min-width:0;border:1px solid var(--line);background:rgba(255,255,255,.055);border-radius:14px;color:#fff;padding:14px 15px;display:grid;grid-template-columns:auto 1fr;column-gap:10px;align-items:center;text-align:left;cursor:pointer;transition:.25s}.show-footer-nav span{grid-row:1/3;font-size:20px}.show-footer-nav small{font-size:9px;letter-spacing:.15em;text-transform:uppercase;color:var(--muted)}.show-footer-nav strong{font-family:var(--serif);font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.show-footer-nav--next{grid-template-columns:1fr auto;text-align:right}.show-footer-nav--next span{grid-column:2;grid-row:1/3}.show-footer-nav:hover{background:rgba(255,255,255,.12);transform:translateY(-2px)}
@media(max-width:1050px){.modal__panel--show{grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr)}.modal__copy{padding:42px 32px 34px}.poster-arrow{width:48px;height:48px}}
@media(max-width:720px){.poster-carousel{margin-left:calc(var(--pad)*-1);margin-right:calc(var(--pad)*-1)}.poster-carousel .poster-track-wrap{padding-left:var(--pad);padding-right:var(--pad)}.poster-arrow{top:43%;width:44px;height:44px}.poster-arrow--prev{left:8px}.poster-arrow--next{right:8px}.modal{padding:10px}.modal__panel--show{display:block;height:auto;max-height:94vh;overflow-y:auto;overscroll-behavior:contain}.modal__visual{height:360px;min-height:360px}.modal__visual>img{height:100%;min-height:0}.modal__copy{height:auto;max-height:none;overflow:visible;padding:28px 22px 32px}.modal__copy h2{font-size:42px}.show-nav{width:43px;height:43px}.show-modal-footer{grid-template-columns:1fr;gap:8px}.show-footer-nav--next{text-align:right;grid-template-columns:1fr auto}.show-footer-nav--next span{grid-column:2;grid-row:1/3}.show-footer-nav--next small,.show-footer-nav--next strong{grid-column:1}}

/* Cinematic synopsis modal — clickable poster -> animated theater reveal */
.poster-card__image{position:relative}
.poster-card__open{position:absolute;left:16px;right:16px;bottom:16px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 14px;border:1px solid rgba(255,255,255,.22);border-radius:999px;background:rgba(8,5,6,.58);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);font-size:10px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;opacity:0;transform:translateY(12px);transition:opacity .3s ease,transform .3s ease,background .3s ease}
.poster-card:hover .poster-card__open,.poster-card:focus-visible .poster-card__open{opacity:1;transform:none}
.poster-card:focus-visible{outline:2px solid rgba(217,181,109,.9);outline-offset:7px;border-radius:20px}

#showModal{perspective:1400px;transition:opacity .32s ease,visibility .32s ease}
#showModal .modal__backdrop{opacity:0;backdrop-filter:blur(0);-webkit-backdrop-filter:blur(0);transition:opacity .35s ease,backdrop-filter .5s ease;background:radial-gradient(circle at 50% 30%,rgba(112,24,30,.20),rgba(0,0,0,.86) 58%)}
#showModal .modal__panel--show{opacity:0;transform:translateY(44px) scale(.94) rotateX(4deg);transform-origin:50% 60%;filter:blur(4px);transition:opacity .42s cubic-bezier(.2,.78,.2,1),transform .52s cubic-bezier(.2,.78,.2,1),filter .42s ease;border:1px solid rgba(255,255,255,.19);box-shadow:0 50px 160px rgba(0,0,0,.88),0 0 0 1px rgba(217,181,109,.08) inset}
#showModal.is-animated .modal__backdrop{opacity:1;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
#showModal.is-animated .modal__panel--show{opacity:1;transform:none;filter:none}
#showModal.is-closing .modal__panel--show{opacity:0;transform:translateY(26px) scale(.97);filter:blur(3px)}
#showModal.is-closing .modal__backdrop{opacity:0}
#showModal .modal__close{position:absolute;top:15px;right:15px;z-index:20;float:none}
#showModal .modal__visual{clip-path:inset(0 100% 0 0);transition:clip-path .72s cubic-bezier(.2,.78,.2,1) .08s}
#showModal.is-animated .modal__visual{clip-path:inset(0 0 0 0)}
#showModal .modal__copy>*{opacity:0;transform:translateY(16px);transition:opacity .45s ease,transform .45s ease}
#showModal.is-animated .modal__copy>.eyebrow{opacity:1;transform:none;transition-delay:.18s}
#showModal.is-animated .modal__copy>h2{opacity:1;transform:none;transition-delay:.24s}
#showModal.is-animated .modal__copy>.synopsis-label{opacity:1;transform:none;transition-delay:.30s}
#showModal.is-animated .modal__copy>#showModalBody{opacity:1;transform:none;transition-delay:.36s}
#showModal.is-animated .modal__copy>.show-modal-footer{opacity:1;transform:none;transition-delay:.42s}
#showModal .modal__panel--show.is-switching .modal__visual,#showModal .modal__panel--show.is-switching .modal__copy{opacity:.15;transform:translateX(-12px);filter:blur(5px);transition:opacity .16s ease,transform .16s ease,filter .16s ease}
#showModal .modal__panel--show.is-switched .modal__visual,#showModal .modal__panel--show.is-switched .modal__copy{animation:showSceneIn .34s ease both}
@keyframes showSceneIn{from{opacity:.2;transform:translateX(16px);filter:blur(4px)}to{opacity:1;transform:none;filter:none}}
#showModalBody .synopsis-text{position:relative;padding-left:18px;border-left:1px solid rgba(217,181,109,.36)}
#showModalBody .synopsis-text:before{content:"";position:absolute;left:-2px;top:0;width:3px;height:48px;border-radius:3px;background:linear-gradient(to bottom,var(--gold),transparent);box-shadow:0 0 24px rgba(217,181,109,.38)}

@media(max-width:720px){
  .poster-card__open{opacity:1;transform:none;left:12px;right:12px;bottom:12px;padding:10px 12px;background:rgba(8,5,6,.68)}
  #showModal .modal__panel--show{transform:translateY(34px) scale(.97);border-radius:20px}
  #showModal.is-animated .modal__panel--show{transform:none}
  #showModal .modal__visual{clip-path:inset(100% 0 0 0);transition-duration:.56s}
  #showModal.is-animated .modal__visual{clip-path:inset(0 0 0 0)}
}
@media(prefers-reduced-motion:reduce){
  #showModal,#showModal .modal__backdrop,#showModal .modal__panel--show,#showModal .modal__visual,#showModal .modal__copy>*,#showModal .modal__panel--show.is-switched .modal__visual,#showModal .modal__panel--show.is-switched .modal__copy{transition:none!important;animation:none!important;transform:none!important;filter:none!important;clip-path:none!important}
}


/* Modal de sinopsis — capa final de compatibilidad */
#showModal{z-index:9999;visibility:hidden}
#showModal.is-open{visibility:visible;opacity:1;pointer-events:auto}
#showModal .modal__panel--show{will-change:transform,opacity,filter}
#showModal.is-animated .modal__panel--show{animation:theaterModalEntrance .62s cubic-bezier(.18,.82,.22,1) both}
#showModal.is-animated .modal__backdrop{animation:theaterBackdropEntrance .45s ease both}
.poster-card{cursor:pointer;-webkit-tap-highlight-color:transparent}
.poster-card:active{transform:translateY(2px) scale(.995)}
@keyframes theaterModalEntrance{
  0%{opacity:0;transform:perspective(1100px) translateY(54px) scale(.92) rotateX(5deg);filter:blur(8px)}
  60%{opacity:1;filter:blur(0)}
  100%{opacity:1;transform:perspective(1100px) translateY(0) scale(1) rotateX(0);filter:none}
}
@keyframes theaterBackdropEntrance{
  from{opacity:0;backdrop-filter:blur(0);-webkit-backdrop-filter:blur(0)}
  to{opacity:1;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
}
@media(prefers-reduced-motion:reduce){
  #showModal.is-animated .modal__panel--show,#showModal.is-animated .modal__backdrop{animation:none!important;opacity:1!important}
}
