@font-face{font-family:Alexandria;src:url('/fonts/alexandria-400.ttf');font-weight:400;font-display:swap}@font-face{font-family:Alexandria;src:url('/fonts/alexandria-600.ttf');font-weight:600;font-display:swap}@font-face{font-family:Alexandria;src:url('/fonts/alexandria-800.ttf');font-weight:800;font-display:swap}@font-face{font-family:Syne;src:url('/fonts/syne-800.ttf');font-weight:800;font-display:swap}@font-face{font-family:Outfit;src:url('/fonts/outfit-400.ttf');font-weight:400;font-display:swap}@font-face{font-family:Outfit;src:url('/fonts/outfit-600.ttf');font-weight:600;font-display:swap}
:root{--ox:#4a1325;--bone:#f2ebdd;--acid:#d7f542;--ink:#171719;--muted:#7c696b;--line:#4a13252e}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--bone);color:var(--ox)}.classy-app{font-family:Alexandria,Arial,sans-serif;font-size:15px;line-height:1.9}.classy-app[lang=en]{font-family:Outfit,Arial,sans-serif;font-size:17px;line-height:1.65}button,input,textarea,select{font:inherit}button,a{touch-action:manipulation;-webkit-tap-highlight-color:transparent}button{cursor:pointer;background:none;border:0;color:inherit}button:disabled{cursor:default;opacity:.4}a{text-decoration:none;color:inherit}p,h1,h2,h3,figure{margin:0}h1,h2,h3{line-height:1.5;letter-spacing:normal;font-weight:800}em{font-style:normal}img{max-width:100%;display:block}img:not(.brand img):not(.hero-wordmark){object-fit:contain}::selection{background:var(--acid);color:var(--ox)}:focus-visible{outline:3px solid #889c24;outline-offset:5px}h2:focus{outline:0}.section-pad{padding:95px max(6%,calc((100% - 1550px)/2))}.eyebrow,.latin{display:block;font:600 11px/1.5 Outfit,Arial,sans-serif;letter-spacing:.14em;direction:ltr}.eyebrow{overflow-wrap:anywhere}.section-kicker{display:flex;justify-content:space-between;gap:30px;align-items:center;border-top:1px solid currentColor;padding-top:22px;font-size:12px}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:57px;padding:15px 25px;font-weight:600;font-size:13px;transition:transform .2s,background .2s}.button:hover{transform:translateY(-3px)}.button.dark{background:var(--ox);color:var(--bone)}.button.acid{background:var(--acid);color:var(--ox)}.button.light-outline{border:1px solid #f2ebdd88;color:var(--bone)}.text-link{display:inline-flex;align-items:center;gap:20px;border-bottom:1px solid currentColor;padding:10px 0;font-size:13px;font-weight:600}.quiet-button{display:inline-flex;gap:12px;align-items:center;padding:12px 0;font-size:12px}.icon-button{display:grid;place-items:center;width:42px;height:42px;border:1px solid currentColor;border-radius:50%;flex-shrink:0}.skip-link{position:fixed;top:-100px;inset-inline-start:20px;z-index:300;background:var(--acid);padding:13px}.skip-link:focus{top:10px}.language-button{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:600;min-height:42px;padding:6px}.language-button[lang=en]{font-family:Outfit}.language-button[lang=ar]{font-family:Alexandria}.site-header{position:absolute;top:0;inset-inline:5%;height:108px;display:flex;align-items:center;justify-content:space-between;gap:25px;border-bottom:1px solid #f2ebdd50;color:var(--bone);z-index:25}.brand{width:190px;flex-shrink:0}.main-nav{display:flex;gap:27px;align-items:center;font-size:12px}.main-nav a{padding:12px 0}.main-nav a:hover{color:var(--acid)}.nav-actions{display:flex;align-items:center;gap:18px}.nav-book{display:flex;gap:20px;align-items:center;font-size:12px;border:1px solid #f2ebdd88;padding:12px 18px}.nav-book:hover{background:var(--acid);color:var(--ox);border-color:var(--acid)}.mobile-toggle{display:none}
.hero{position:relative;isolation:isolate;background:var(--ox);color:var(--bone);padding:140px 6% 35px}.hero-topline{display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:11px}.hero-topline>span:first-child{display:flex;gap:10px;align-items:center}.hero-topline i{display:block;width:6px;height:6px;flex-shrink:0;background:var(--acid);border-radius:50%}.hero-wordmark{position:relative;width:100%;height:auto;max-height:245px;margin:38px auto 0;object-fit:contain;z-index:0}.hero-layout{display:grid;grid-template-columns:1.1fr 1fr;direction:ltr;align-items:center;gap:8%;margin-top:-90px;position:relative;z-index:1;max-width:1600px;margin-inline:auto}.hero-figure{position:relative;min-width:0;display:flex;flex-direction:column;align-items:center;padding-top:10px}.hero-caller-art{width:100%;height:660px;object-fit:contain;object-position:center;animation:enter .8s both}.character-caption{font-size:12px;line-height:1.9;position:relative;margin-top:-5px;padding:12px 0;color:var(--acid);text-align:center}.hero-copy{direction:rtl;text-align:start;position:relative;align-self:center;padding-top:55px;min-width:0}.hero-copy>.eyebrow{color:var(--acid);margin-bottom:20px}.hero h1{font-size:clamp(38px,4.5vw,70px);line-height:1.55}.hero h1 em{color:var(--acid)}.hero-copy p{font-size:15px;line-height:2;max-width:430px;margin:23px 0 27px;color:#f2ebddd6}.scroll-cue{display:inline-flex;align-items:center;gap:12px;font-size:10px;margin-top:22px}.classy-app[lang=en] .hero-copy{direction:ltr}.classy-app[lang=en] h1,.classy-app[lang=en] h2{font-family:Syne,Arial,sans-serif;line-height:1.16;letter-spacing:-.025em}.classy-app[lang=en] .hero h1{font-size:clamp(37px,4.1vw,65px)}.classy-app[lang=en] .hero-copy p{font-size:18px;line-height:1.7}.marquee{background:var(--acid);padding:17px 0;overflow:hidden;direction:ltr}.marquee>div{display:flex;width:max-content;animation:marquee 35s linear infinite}.marquee span{font:800 29px/1.2 Syne;white-space:nowrap}.marquee b{padding:0 26px}@keyframes marquee{to{transform:translateX(-50%)}}@keyframes enter{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
.story-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:10%;margin-top:65px;align-items:center}.story-layout h2{font-size:clamp(36px,4.8vw,69px)}.story-layout h2 em{color:var(--ox);background:var(--acid);box-decoration-break:clone;padding:0 8px;-webkit-text-stroke:0}.story-copy p{font-size:15px;margin-bottom:22px;max-width:470px}.asterisk{display:block;font:60px/1 Outfit;margin-bottom:25px}.story-foot{display:flex;align-items:center;justify-content:space-between;gap:35px;border-top:1px solid var(--line);padding-top:30px;margin-top:65px;font-size:13px}.story-foot b{font-size:45px;line-height:1.2;display:inline-block;margin-inline-end:8px}.story-foot .latin{text-align:end}.cast-section{background:var(--ox);color:var(--bone)}.cast-section .section-kicker{border-color:#f2ebdd50}.cast-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin:50px 0 30px}.cast-heading h2{font-size:clamp(32px,4.5vw,62px)}.cast-heading em{color:var(--acid)}.cast-heading p{font-size:12px;max-width:280px}.cast-layout{display:grid;grid-template-columns:1fr 1.05fr;gap:7%;align-items:center;direction:ltr}.cast-stage{position:relative;min-width:0;display:flex;align-items:center;justify-content:center;flex-direction:column;background:none;border:0;border-radius:0;overflow:visible}.cast-stage>.statue-motion{width:100%;height:680px;object-fit:contain;animation:enter .4s both}.cast-stage>.eyebrow{color:var(--acid);text-align:center;margin-top:8px}.cast-content{direction:rtl;min-width:0}.classy-app[lang=en] .cast-content{direction:ltr}.cast-tabs{display:grid;grid-template-columns:1fr 1fr;gap:0 25px}.cast-tabs button{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:20px 0;border-bottom:1px solid #f2ebdd45;text-align:start;font-size:14px;color:#f2ebdd90}.cast-tabs button svg{flex-shrink:0}.cast-tabs button.active{color:var(--acid);border-color:var(--acid)}.cast-story{margin-top:35px;animation:enter .3s both}.cast-story h3{font-size:23px;line-height:1.7;color:var(--bone)}.cast-story p{font-size:14px;line-height:2;color:#f2ebddbd;max-width:450px;margin:15px 0 10px}.cast-story .text-link{font-size:12px}.dining-section{display:grid;grid-template-columns:1.1fr 1fr;gap:9%;align-items:center;direction:ltr}.dining-image{min-width:0;overflow:visible}.dining-image>img{width:100%;height:570px;object-fit:contain}.dining-copy{direction:rtl;min-width:0}.classy-app[lang=en] .dining-copy{direction:ltr}.dining-copy h2{font-size:clamp(42px,5.5vw,76px);margin:28px 0}.dining-copy p{font-size:15px;line-height:2;max-width:450px;margin-bottom:23px}.dining-copy .muted-copy{font-size:12px;color:var(--muted)}.evening-section{background:#e9e0d1}.evening-section>h2{font-size:clamp(38px,5vw,72px);margin:48px 0 0}.evening-section>h2 em{color:var(--ox);background:var(--acid);padding-inline:9px}.evening-acts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6%;margin:25px 0 40px}.evening-acts article{min-width:0}.evening-acts img{height:345px;width:100%;object-fit:contain;margin-bottom:20px}.evening-acts h3{font-size:19px;border-top:1px solid var(--line);padding-top:20px}.evening-acts p{font-size:13px;line-height:2;margin-top:12px;max-width:310px}.ensemble-section{background:var(--ox);color:var(--bone);display:grid;grid-template-columns:1.35fr 1fr;gap:7%;align-items:center;direction:ltr}.ensemble-art{display:flex;align-items:flex-end;justify-content:center;min-width:0;overflow:visible}.ensemble-art>.statue-motion{width:38%;height:520px;object-fit:contain;margin-inline:-4%}.ensemble-art>.statue-motion:nth-child(2){height:590px;z-index:1}.ensemble-copy{direction:rtl}.classy-app[lang=en] .ensemble-copy{direction:ltr}.ensemble-copy>.eyebrow{color:var(--acid)}.ensemble-copy h2{font-size:clamp(35px,4.3vw,62px);margin:25px 0 32px}.ensemble-copy p{font-size:11px;color:#f2ebddaa;margin-top:22px}.faq-section{display:grid;grid-template-columns:1fr 1.3fr;gap:10%}.faq-heading h2{font-size:clamp(42px,5.5vw,75px);margin-top:25px}.faq-item{border-bottom:1px solid var(--line)}.faq-item h3 button{display:flex;justify-content:space-between;align-items:center;text-align:start;gap:20px;width:100%;font-size:15px;font-weight:600;padding:24px 0}.faq-item h3 svg{flex-shrink:0}.faq-item p{font-size:14px;line-height:2;padding:0 0 24px;color:var(--muted);max-width:620px}.site-footer{background:var(--ox);color:var(--bone);padding-block:60px 35px}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-bottom:45px;border-bottom:1px solid #f2ebdd50}.footer-top>img{width:230px}.footer-top>span{font-size:12px}.footer-top .text-link{font-size:17px}.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:25px;font-size:10px;margin-top:27px;color:#f2ebddaa}.footer-bottom>a{display:flex;gap:13px;align-items:center}.mobile-booking-bar{display:none}
.booking-backdrop,.gallery-backdrop{position:fixed;inset:0;background:#16040dc9;z-index:100;display:flex;justify-content:center;align-items:center;padding:30px;backdrop-filter:blur(8px)}.booking-shell{position:relative;display:grid;grid-template-columns:minmax(230px,.75fr) minmax(0,1.4fr);direction:ltr;width:min(1120px,100%);max-height:93dvh;background:var(--bone);overflow-y:auto;overscroll-behavior:contain}.dialog-controls{position:absolute;top:22px;inset-inline-end:24px;display:flex;align-items:center;gap:15px;z-index:5;direction:ltr}.booking-world{background:var(--ox);color:var(--bone);padding:35px 27px;display:flex;flex-direction:column;align-items:center;justify-content:space-between;position:relative;min-width:0}.booking-world>img:first-child{width:220px;align-self:flex-start}.booking-character{width:100%;height:530px;object-fit:contain;flex:1;min-height:300px;margin:25px 0 12px;animation:enter .5s both}.booking-world-caption{width:100%;text-align:center}.booking-world-caption>.eyebrow{font-size:9px;color:var(--acid)}.booking-world-caption p{font-size:19px;line-height:1.7;margin-top:16px;direction:rtl}.classy-app[lang=en] .booking-world-caption p{direction:ltr}.booking-main{direction:rtl;padding:100px 45px 40px;min-width:0}.classy-app[lang=en] .booking-main{direction:ltr}.booking-main>.eyebrow{font-size:10px}.booking-progress{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:26px 0 37px}.booking-progress button{display:flex;align-items:center;gap:9px;text-align:start;opacity:.42;font-size:12px;position:relative;padding:0 0 13px;border-bottom:2px solid var(--line)}.booking-progress button.current,.booking-progress button.complete{opacity:1;border-color:var(--ox)}.booking-progress button>span{font-family:Outfit;font-size:11px}.booking-progress button small{font-size:10px;line-height:1.6}.booking-main h2{font-size:43px;line-height:1.55;margin:0 0 28px}.booking-main h2 em{font-weight:400}.classy-app[lang=en] .booking-main h2{font-size:39px;line-height:1.18}.classy-app[lang=en] .booking-main h2 em{font-weight:800}.calendar-top{display:flex;justify-content:space-between;align-items:center;gap:16px;font-size:18px;font-weight:600;margin:22px 0 9px}.pill{font-size:10px;border:1px solid var(--line);padding:4px 10px;font-weight:400}.helper{font-size:12px;line-height:1.9;color:var(--muted);margin:9px 0 15px}.calendar{margin-top:20px}.weekdays,.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));text-align:center;gap:5px}.weekdays{font-size:10px;padding-bottom:9px;color:var(--muted)}.calendar-days button,.calendar-days>span{min-height:39px;font-size:14px;display:grid;place-items:center}.calendar-days button:hover{background:#4a132511}.calendar-days button.selected{background:var(--ox);color:var(--bone)}.guest-count{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:23px 0 10px}.guest-count strong{display:block;font-size:13px}.guest-count small{font-size:10px;color:var(--muted)}.counter{display:flex;direction:ltr;align-items:center;gap:15px}.counter button{width:32px;height:32px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%}.counter output{min-width:28px;text-align:center;font-size:23px}.booking-bottom{border-top:1px solid var(--line);padding-top:23px;margin-top:27px;display:flex;justify-content:space-between;gap:16px;align-items:center}.booking-bottom .button{font-size:12px;min-width:200px;gap:22px}.booking-bottom .quiet-button{font-size:10px}.booking-footnote{text-align:center;font:10px Outfit;letter-spacing:.12em;color:var(--muted);margin-top:28px}.field-label{display:block;font-size:13px;font-weight:600;margin:23px 0 12px}.time-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.time-options button{display:flex;justify-content:center;gap:8px;align-items:center;border:1px solid var(--line);padding:14px 5px;font-size:12px}.time-options button.selected{background:var(--ox);color:var(--bone)}.area-options{display:flex;flex-direction:column;gap:9px}.area-options>button{display:flex;gap:16px;align-items:center;text-align:start;border:1px solid var(--line);padding:16px}.area-options>button.selected{border-color:var(--ox);background:#4a132508}.area-options>button>svg{flex-shrink:0}.area-options>button>span:nth-child(2){flex:1}.area-options strong{display:block;font-size:13px}.area-options small{display:block;color:var(--muted);font-size:11px;margin-top:4px}.radio-dot{display:block;width:15px;height:15px;border:1px solid var(--line);border-radius:50%;flex-shrink:0}.selected .radio-dot{background:var(--ox);box-shadow:inset 0 0 0 3px var(--bone)}select,input,textarea{width:100%;background:transparent;color:var(--ox);border:1px solid var(--line);border-radius:0;padding:14px;font-size:14px}select{min-height:50px}textarea{resize:vertical;min-height:95px;max-height:260px}input::placeholder,textarea::placeholder{color:#99868a;font-size:12px}input[dir=ltr]{text-align:left;font-family:Outfit;font-size:16px}.guest-fields>label{display:block;font-size:13px;font-weight:600;margin-bottom:23px}.guest-fields>label>small{font-size:10px;color:var(--muted);font-weight:400;margin-inline-start:7px}.guest-fields input,.guest-fields textarea{display:block;margin-top:9px;font-weight:400}.privacy-note{border-top:1px solid var(--line);padding-top:15px}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.form-error{font-size:12px;line-height:1.8;background:#8a1d2810;border-inline-start:3px solid #8a1d28;color:#8a1d28;padding:12px 14px;margin-top:15px}.review-name{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding-bottom:22px;border-bottom:1px solid var(--line)}.review-name>span{width:100%;font-size:11px;color:var(--muted)}.review-name>strong{font-size:23px;overflow-wrap:anywhere;max-width:100%}.review-name button{margin-inline-start:auto;text-decoration:underline;font-size:11px}.review-grid,.ticket-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:25px 0}.review-grid>div,.ticket-grid>div{display:flex;flex-direction:column;gap:5px}.review-grid span,.ticket-grid span,.review-occasion>span,.review-notes>span{font-size:11px;color:var(--muted)}.review-grid strong,.ticket-grid strong,.review-occasion strong{font-size:13px;line-height:1.9;font-weight:600}.review-notes{margin-top:20px}.review-notes p{font-size:13px;white-space:pre-wrap;overflow-wrap:anywhere}.request-notice{display:flex;align-items:start;gap:13px;border:1px solid var(--line);background:#4a132507;padding:16px;margin:25px 0 20px}.request-notice svg{flex-shrink:0}.request-notice p{font-size:12px;line-height:1.9}.consent{display:flex;align-items:start;gap:10px;cursor:pointer;font-size:12px;line-height:1.9}.consent input{width:17px;height:17px;margin-top:4px;flex-shrink:0;accent-color:var(--ox)}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
.has-receipt{background:var(--ox);color:var(--bone)}.has-receipt .dialog-controls{color:var(--bone)}.has-receipt .booking-main{padding-top:95px;background:#3b0c1d}.has-receipt .booking-world{justify-content:center}.has-receipt .booking-world-caption{padding-bottom:30px}.receipt-view{position:relative;isolation:isolate;min-width:0}.receipt-entrance{position:relative;min-height:350px;padding-inline-end:125px}.receipt-entrance>.eyebrow{font-size:9px;color:#f2ebddaa;max-width:350px}.saved-stamp{margin:20px 0 18px;display:inline-flex;gap:8px;align-items:center;background:var(--acid);color:var(--ox);padding:7px 12px;font-size:11px;font-weight:600;transform:rotate(-4deg)}.receipt-entrance>.statue-motion{position:absolute;width:180px;height:280px;inset-inline-end:-35px;bottom:40px;object-fit:contain;pointer-events:none;animation:enter .6s both}.receipt-view h2{font-size:47px;line-height:1.5;margin-bottom:15px}.receipt-view h2 em{color:var(--acid);font-weight:800}.receipt-entrance p{font-size:13px;line-height:1.9;max-width:360px}.encore-button{display:flex;gap:8px;align-items:center;margin-top:14px;color:var(--acid);font-size:10px;text-decoration:underline;padding:8px 0}.reservation-ticket{background:var(--bone);color:var(--ox);padding:27px;position:relative;margin-top:24px;border-top:8px solid var(--acid)}.ticket-top{display:flex;align-items:center;justify-content:space-between;gap:20px}.ticket-top>img{width:185px}.ticket-top .eyebrow{font-size:9px}.ticket-status{font-size:9px;color:var(--muted);margin-top:24px;line-height:1.8}.ticket-name{font-size:25px;line-height:1.6;font-weight:600;overflow-wrap:anywhere;margin-top:8px}.ticket-perforation{border-top:1px dashed #4a132555;margin:23px -27px}.ticket-reference{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap}.ticket-reference>span{font-size:11px}.ticket-reference>b{font:600 21px Outfit;letter-spacing:.05em}.ticket-note{font-size:10px;line-height:1.9;color:var(--muted);margin-top:17px}.preopening-note{font-size:11px;line-height:2;color:#f2ebddaa;margin:20px 0}.receipt-actions{display:flex;gap:12px;flex-wrap:wrap}.receipt-actions .button{font-size:11px;padding:13px 17px;gap:10px;min-height:48px}.receipt-view>.quiet-button{margin-top:12px}.has-receipt .form-error{background:#f2ebdd;color:var(--ox)}.confetti{position:absolute;inset:-40px -15px auto;height:330px;pointer-events:none;z-index:-1;overflow:visible}.confetti i{position:absolute;inset-inline-start:calc(var(--n)*7%);top:0;width:7px;height:16px;background:var(--acid);opacity:0;animation:confetti 1.9s calc(var(--n)*.06s) both}.confetti i:nth-child(3n){background:var(--bone);height:8px}.confetti i:nth-child(2n){width:4px;transform:rotate(40deg)}@keyframes confetti{0%{opacity:0;translate:0 -15px;rotate:0deg}15%{opacity:1}80%{opacity:.8}100%{opacity:0;translate:20px 300px;rotate:300deg}}
.gallery-shell{background:var(--bone);padding:50px;max-width:1050px;width:100%;max-height:90dvh;overflow:auto;position:relative}.gallery-close{position:absolute;top:22px;inset-inline-end:22px}.gallery-shell>.eyebrow{max-width:85%}.gallery-shell h2{font-size:34px;margin:30px 0}.gallery-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:30px;align-items:center}.gallery-grid img{height:360px;width:100%;object-fit:contain}.gallery-grid figcaption{font-size:12px;margin-top:15px}.gallery-shell>p{font-size:11px;color:var(--muted);margin-top:30px}.classy-app[lang=en] .button svg,.classy-app[lang=en] .text-link svg,.classy-app[lang=en] .quiet-button svg,.classy-app[lang=en] .nav-book svg{transform:scaleX(-1)}
@media(min-width:1700px){.hero-caller-art{height:760px}.hero-layout{margin-top:-115px}.hero-wordmark{max-height:290px}}
@media(max-width:1100px){.main-nav{gap:16px;font-size:10px}.brand{width:165px}.nav-actions{gap:10px}.nav-book{font-size:10px;padding:11px 14px;gap:12px}.hero-layout{gap:4%;margin-top:-40px}.hero-caller-art{height:610px}.hero h1{font-size:49px}.hero-copy{padding-top:25px}.hero-copy p{font-size:13px}.cast-stage>.statue-motion{height:610px}.cast-tabs button{font-size:12px;padding:18px 0}.cast-story h3{font-size:20px}.cast-story p{font-size:13px}.booking-shell{grid-template-columns:270px minmax(0,1fr)}.booking-main{padding-inline:32px}.booking-world{padding-inline:20px}.booking-character{height:470px}.receipt-entrance{padding-inline-end:110px}.receipt-entrance>.statue-motion{width:155px;inset-inline-end:-30px}.receipt-view h2{font-size:40px}.ensemble-art>.statue-motion{height:400px}.ensemble-art>.statue-motion:nth-child(2){height:470px}.footer-top>img{width:185px}.footer-top .text-link{font-size:13px}}
@media(max-width:850px){.site-header{height:90px;gap:17px}.main-nav{display:none}.mobile-toggle{display:grid;border:0;width:35px;height:35px}.main-nav.mobile-open{display:flex;position:absolute;top:89px;inset-inline:-5.5%;background:var(--ox);padding:25px 6%;flex-direction:column;align-items:start;gap:5px;border-bottom:1px solid #f2ebdd44;font-size:14px}.hero{padding-top:120px}.hero-wordmark{margin-top:35px}.hero-layout{grid-template-columns:1fr 1fr;margin-top:0}.hero-caller-art{height:510px}.hero h1{font-size:39px}.hero-copy>.eyebrow{font-size:9px}.hero-copy p{font-size:12px}.character-caption{font-size:10px}.section-pad{padding:70px 6%}.story-layout{gap:6%;grid-template-columns:1fr 1fr}.story-layout h2{font-size:39px}.story-copy p{font-size:13px}.story-foot{gap:20px;font-size:11px}.story-foot b{font-size:35px}.cast-layout{gap:5%;grid-template-columns:1fr 1.1fr}.cast-stage>.statue-motion{height:570px}.cast-tabs{gap:0 16px}.cast-tabs button{font-size:11px;padding:15px 0}.cast-story h3{font-size:17px}.cast-story p{font-size:12px}.cast-heading p{font-size:10px;max-width:200px}.dining-section{gap:5%}.dining-image>img{height:420px}.dining-copy h2{font-size:50px}.dining-copy p{font-size:13px}.evening-acts{gap:4%}.evening-acts img{height:280px}.evening-acts h3{font-size:16px}.evening-acts p{font-size:12px}.ensemble-section{gap:3%;grid-template-columns:1.1fr 1fr}.ensemble-art>.statue-motion{height:310px}.ensemble-art>.statue-motion:nth-child(2){height:370px}.ensemble-copy h2{font-size:35px}.faq-section{gap:6%;grid-template-columns:.9fr 1.1fr}.faq-item h3 button{font-size:13px}.faq-item p{font-size:13px}.footer-top>span{font-size:10px;max-width:170px}.booking-shell{grid-template-columns:220px minmax(0,1fr)}.booking-main{padding-inline:26px}.booking-main h2{font-size:37px}.booking-world-caption p{font-size:16px}.booking-progress{gap:8px}.booking-progress small{font-size:8px}.booking-bottom .button{min-width:170px}.receipt-entrance{padding-inline-end:75px}.receipt-entrance>.statue-motion{width:125px;inset-inline-end:-30px;bottom:50px}.receipt-view h2{font-size:36px}.receipt-entrance p{font-size:11px}.ticket-top>img{width:150px}.ticket-reference>b{font-size:17px}.classy-app[lang=en] .booking-main h2{font-size:32px}.classy-app[lang=en] .hero h1{font-size:35px}}
@media(max-width:600px){.classy-app{font-size:14px}.site-header{height:83px;inset-inline:5%;gap:10px}.brand{width:135px}.nav-actions{gap:7px}.nav-book{display:none}.language-button{font-size:11px;gap:5px}.language-button svg{width:13px}.main-nav.mobile-open{top:82px}.hero{padding:108px 6% 25px}.hero-topline{font-size:9px;gap:8px}.hero-topline>.latin{font-size:7px;letter-spacing:.05em}.hero-topline>span:first-child{gap:7px}.hero-wordmark{margin-top:27px}.hero-layout{display:flex;flex-direction:column;gap:0;margin-top:8px}.hero-figure{width:100%;padding-top:0}.hero-caller-art{height:450px;width:100%;max-width:390px}.character-caption{font-size:11px;margin-top:-5px;padding-block:9px}.hero-copy{padding-top:28px;direction:rtl;text-align:start;align-self:stretch}.hero h1{font-size:39px;line-height:1.45}.hero-copy>.eyebrow{font-size:9px;margin-bottom:15px}.hero-copy p{font-size:13px;line-height:2;max-width:100%;margin:19px 0 23px}.hero-copy>.button{width:100%;justify-content:space-between}.scroll-cue{font-size:9px;margin-top:25px}.classy-app[lang=en] .hero h1{font-size:39px;line-height:1.15}.classy-app[lang=en] .hero-copy p{font-size:17px}.marquee{padding:13px 0}.marquee span{font-size:22px}.marquee b{padding-inline:18px}.section-pad{padding:60px 6%}.section-kicker{align-items:start;font-size:9px;gap:20px;padding-top:18px}.section-kicker>.eyebrow{font-size:8px;min-width:110px}.section-kicker>span:last-child{max-width:170px}.story-layout{grid-template-columns:1fr;gap:35px;margin-top:40px}.story-layout h2{font-size:40px}.asterisk{font-size:42px;margin-bottom:20px}.story-copy p{font-size:14px;line-height:2}.story-foot{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:35px;font-size:11px}.story-foot b{font-size:38px}.story-foot .latin{grid-column:1/-1;text-align:start;font-size:9px}.cast-heading{display:block;margin:35px 0 10px}.cast-heading h2{font-size:35px;line-height:1.5}.cast-heading p{font-size:11px;max-width:100%;margin-top:13px}.cast-layout{grid-template-columns:1fr;gap:28px}.cast-stage>.statue-motion{height:475px;max-width:370px}.cast-stage>.eyebrow{font-size:9px}.cast-tabs{gap:0 22px}.cast-tabs button{font-size:12px;padding:17px 0;min-height:56px}.cast-story{margin-top:30px}.cast-story h3{font-size:22px}.cast-story p{font-size:14px;max-width:100%;line-height:2}.cast-story .text-link{font-size:12px}.dining-section{grid-template-columns:1fr;gap:30px}.dining-image>img{height:320px}.dining-copy h2{font-size:52px;margin:23px 0}.dining-copy p{font-size:14px;max-width:100%}.dining-copy .muted-copy{font-size:12px}.dining-copy>.eyebrow{font-size:9px}.button{font-size:12px;min-height:54px;padding:14px 22px}.evening-section>h2{font-size:39px;margin-top:35px}.evening-acts{grid-template-columns:1fr;gap:35px;margin-top:25px}.evening-acts article{display:grid;grid-template-columns:125px 1fr;gap:0 20px;align-items:center;direction:ltr}.evening-acts img{grid-column:1;grid-row:1/3;height:260px;margin:0}.evening-acts h3{grid-column:2;font-size:18px;direction:rtl;padding-top:17px;align-self:end}.evening-acts p{grid-column:2;font-size:13px;direction:rtl;align-self:start;margin-top:14px;line-height:2}.classy-app[lang=en] .evening-acts h3,.classy-app[lang=en] .evening-acts p{direction:ltr}.ensemble-section{display:flex;flex-direction:column;gap:35px}.ensemble-art{width:100%}.ensemble-art>.statue-motion{height:300px;width:38%;margin-inline:-4%}.ensemble-art>.statue-motion:nth-child(2){height:350px}.ensemble-copy{width:100%}.ensemble-copy h2{font-size:40px;line-height:1.5;margin:25px 0}.ensemble-copy>.button{width:100%;justify-content:space-between}.ensemble-copy p{font-size:11px}.faq-section{grid-template-columns:1fr;gap:27px}.faq-heading h2{font-size:48px}.faq-item h3 button{font-size:13px;padding-block:24px}.faq-item p{font-size:13px;line-height:2}.site-footer{padding-bottom:110px;padding-top:45px}.footer-top{flex-wrap:wrap;gap:25px;padding-bottom:30px}.footer-top>img{width:190px}.footer-top>span{font-size:11px;max-width:none}.footer-top>.text-link{font-size:15px}.footer-bottom{flex-wrap:wrap;gap:15px;font-size:9px}.footer-bottom>span:nth-child(2){order:3;width:100%}.mobile-booking-bar{position:fixed;inset-inline:0;bottom:0;background:var(--bone);border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 6% calc(12px + env(safe-area-inset-bottom));z-index:35;box-shadow:0 -4px 20px #0001}.mobile-booking-bar>span{font-size:10px}.mobile-booking-bar button{background:var(--ox);color:var(--bone);padding:11px 16px;display:flex;align-items:center;gap:15px;font-size:11px}.booking-backdrop{padding:0;align-items:stretch}.booking-shell{display:block;width:100%;height:100dvh;max-height:none;overflow-y:auto}.dialog-controls{top:20px;inset-inline-end:6%;gap:13px}.dialog-controls .icon-button{width:35px;height:35px}.booking-world{display:none}.booking-main{padding:95px 6% 35px;overflow:visible}.booking-main>.eyebrow{font-size:9px}.booking-progress{margin:24px 0 32px;gap:10px}.booking-progress button{flex-direction:column;align-items:start;gap:5px;padding-bottom:12px}.booking-progress small{font-size:9px}.booking-main h2{font-size:41px;line-height:1.5;margin-bottom:25px}.calendar-top{font-size:17px}.calendar-days button,.calendar-days>span{min-height:43px}.guest-count strong{font-size:13px}.guest-count small{font-size:9px}.booking-bottom .button{min-width:185px;font-size:12px}.booking-bottom .quiet-button{font-size:10px}.booking-bottom{gap:12px}.field-label{font-size:13px}.time-options button{font-size:11px;gap:5px}.guest-fields input,.guest-fields textarea,select{font-size:16px}.guest-fields input::placeholder,.guest-fields textarea::placeholder{font-size:12px}.area-options strong{font-size:13px}.area-options small{font-size:11px}.review-grid,.ticket-grid{gap:23px 18px}.review-grid strong,.ticket-grid strong{font-size:12px}.review-grid span,.ticket-grid span{font-size:10px}.request-notice p,.consent{font-size:12px}.receipt-entrance{padding-inline-end:108px;min-height:340px}.receipt-entrance>.statue-motion{width:160px;height:300px;inset-inline-end:-35px;bottom:25px}.receipt-view h2{font-size:39px;line-height:1.55}.receipt-entrance>.eyebrow{font-size:8px;line-height:1.8}.receipt-entrance p{font-size:12px;line-height:1.9}.encore-button{font-size:10px;line-height:1.8}.saved-stamp{font-size:10px;padding:6px 10px;margin-block:19px}.reservation-ticket{padding:23px;margin-top:20px}.ticket-top>img{width:165px}.ticket-top>.eyebrow{font-size:8px}.ticket-status{font-size:9px}.ticket-name{font-size:25px}.ticket-perforation{margin-inline:-23px}.ticket-reference>b{font-size:19px}.ticket-note,.preopening-note{font-size:11px}.receipt-actions .button{font-size:11px}.gallery-backdrop{padding:12px}.gallery-shell{padding:30px 22px;max-height:94dvh}.gallery-shell>.eyebrow{font-size:8px;max-width:80%}.gallery-close{top:16px;inset-inline-end:16px;width:33px;height:33px}.gallery-shell h2{font-size:30px;line-height:1.5}.gallery-grid{grid-template-columns:1fr;gap:30px}.gallery-grid img{height:330px}.gallery-grid figcaption{font-size:12px}.classy-app[lang=en] .booking-main h2{font-size:36px}.classy-app[lang=en] .receipt-view h2{font-size:32px;line-height:1.2}.classy-app[lang=en] .section-kicker{font-size:11px}.classy-app[lang=en] .cast-heading h2{font-size:33px}.classy-app[lang=en] .story-layout h2{font-size:38px}.classy-app[lang=en] .ensemble-copy h2{font-size:37px;line-height:1.15}}
@media(max-width:360px){.brand{width:120px}.hero-topline>.latin{display:none}.hero-caller-art{height:410px}.hero h1{font-size:35px}.classy-app[lang=en] .hero h1{font-size:34px}.section-kicker{gap:15px}.booking-bottom .button{min-width:165px;padding-inline:17px}.booking-progress small{font-size:8px}.receipt-entrance{padding-inline-end:85px}.receipt-entrance>.statue-motion{width:135px;inset-inline-end:-30px}.receipt-view h2{font-size:35px}.ticket-top>img{width:145px}.ticket-top>.eyebrow{font-size:7px}.cast-tabs button{font-size:11px}.evening-acts article{grid-template-columns:105px 1fr}.evening-acts img{height:235px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.confetti{display:none}}
@media print{body{background:white}body>*{visibility:hidden}.booking-backdrop,.booking-shell,.booking-main,.receipt-view{visibility:visible!important;position:static!important;display:block!important;overflow:visible!important;height:auto!important;max-height:none!important;padding:0!important;margin:0!important;background:white!important}.site-header,main,.site-footer,.mobile-booking-bar,.booking-world,.dialog-controls,.receipt-view>:not(.reservation-ticket){display:none!important}.reservation-ticket,.reservation-ticket *{visibility:visible!important}.reservation-ticket{margin:25px auto!important;max-width:520px!important;break-inside:avoid;box-shadow:none!important;print-color-adjust:exact;-webkit-print-color-adjust:exact}}

@media(min-width:601px){.receipt-entrance>.statue-motion{display:none}.receipt-entrance{padding-inline-end:0;min-height:300px}}
.classy-app[lang=en] .receipt-view h2{font-family:Outfit;letter-spacing:normal}

.marquee b{display:inline-flex;vertical-align:middle;align-items:center;justify-content:center}.marquee b svg{display:block}.asterisk svg{display:block}

/* Cutout motion and physical horizontal navigation: no image masks or frames. */
.statue-motion{position:relative;display:flex;align-items:center;justify-content:center;perspective:1100px;min-width:0;overflow:visible;isolation:isolate}
.statue-motion>img,.statue-motion>.statue-decoration{display:block;width:100%;height:100%;max-width:100%;object-fit:contain;object-position:center;transform-origin:50% 80%;transform:rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) rotateZ(var(--tilt-z,0deg));transition:transform 550ms cubic-bezier(.2,.7,.2,1);user-select:none;-webkit-user-drag:none;backface-visibility:visible}
@media(hover:hover) and (pointer:fine){.statue-motion[data-tilted=true]>img,.statue-motion[data-tilted=true]>.statue-decoration{transform:translateY(-7px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) rotateZ(var(--tilt-z,0deg)) scale(1.018);transition-duration:140ms}}
.cast-stage{touch-action:pan-y pinch-zoom;cursor:grab}.cast-stage:active{cursor:grabbing}.cast-swipe-controls{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:20px;cursor:default}.cast-swipe-controls>span{font-size:10px;color:#f2ebddaa}.cast-swipe-controls .icon-button{width:42px;height:42px;border-color:#f2ebdd66}.cast-swipe-controls .icon-button:hover{background:var(--acid);color:var(--ox);border-color:var(--acid)}
.statue-carousel{margin:30px 0 38px;min-width:0}.carousel-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.carousel-toolbar>p{display:flex;gap:12px;align-items:center;font-size:12px;color:var(--muted)}.carousel-toolbar>p svg{flex-shrink:0}.carousel-buttons{display:flex;gap:10px;flex-shrink:0}.carousel-buttons .icon-button{width:44px;height:44px}.carousel-buttons .icon-button:hover:not(:disabled){background:var(--ox);color:var(--bone)}
.statue-track{display:flex;gap:28px;margin:0;padding:20px 0 12px;list-style:none;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-padding-inline:0;overscroll-behavior-x:contain;touch-action:pan-x pan-y pinch-zoom;scrollbar-width:none;cursor:grab;user-select:none;-webkit-user-select:none}.statue-track::-webkit-scrollbar{display:none}.statue-track[data-dragging=true]{cursor:grabbing}.statue-track[data-dragging=true] .statue-motion>img,.statue-track[data-dragging=true] .statue-motion>.statue-decoration{transform:none;transition-duration:100ms}.statue-track>li{flex:0 0 calc((100% - 56px)/3);min-width:0;scroll-snap-align:start;scroll-snap-stop:normal;padding:0 12px 12px}.statue-track .evening-statue{width:100%;height:370px;margin-bottom:22px}.statue-track h3{font-size:19px;line-height:1.8;border-top:1px solid var(--line);padding-top:20px}.statue-track>li>p{font-size:13px;line-height:2;margin-top:12px;max-width:330px}.carousel-position{font-size:10px;color:var(--muted);margin-top:14px;text-align:end;font-variant-numeric:tabular-nums}
@media(max-width:850px){.statue-track{gap:22px}.statue-track>li{flex-basis:calc((100% - 22px)/2.2)}.statue-track .evening-statue{height:330px}.statue-track h3{font-size:17px}.carousel-toolbar>p{font-size:11px}}
@media(max-width:600px){.statue-carousel{margin-top:28px}.carousel-toolbar{gap:12px;align-items:center;margin-bottom:10px}.carousel-toolbar>p{font-size:10px;line-height:1.9;gap:8px;max-width:210px}.carousel-buttons{gap:7px}.carousel-buttons .icon-button{width:40px;height:40px}.statue-track{gap:16px;padding-top:18px}.statue-track>li{flex-basis:84%;padding-inline:8px}.statue-track .evening-statue{height:390px;margin-bottom:15px}.statue-track h3{font-size:20px}.statue-track>li>p{font-size:13px;max-width:none}.carousel-position{font-size:10px}.cast-swipe-controls{gap:18px;margin-top:18px}.cast-swipe-controls>span{font-size:11px}}
@media(prefers-reduced-motion:reduce){.statue-motion>img,.statue-motion>.statue-decoration,.statue-motion[data-tilted=true]>img,.statue-motion[data-tilted=true]>.statue-decoration{transform:none!important;transition:none!important}.statue-track{scroll-behavior:auto}}
.hero-caller-art{position:relative}.hero-caller-art>img{width:100%;height:100%;object-fit:contain}.phone-waves{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;color:var(--acid);overflow:visible}.phone-wave{opacity:.9;animation:phoneRing 2.1s ease-out infinite}.wave-two{animation-delay:.14s}.wave-three{animation-delay:.28s}.wave-light{stroke:var(--bone)}@keyframes phoneRing{0%,75%,100%{opacity:.12}22%,40%{opacity:1}58%{opacity:.55}}@media(prefers-reduced-motion:reduce){.phone-wave{animation:none;opacity:.8}}

/* Fast staggered entrances as content reaches the viewport. */
.scroll-reveal{opacity:0;transform:translate3d(0,26px,0);transition:opacity 520ms ease,transform 640ms cubic-bezier(.16,1,.3,1);transition-delay:var(--reveal-delay,0ms)}
.scroll-reveal[data-reveal-kind=statue]{transform:translate3d(90px,8px,0) rotate(2deg) scale(.97);transform-origin:50% 85%;transition:opacity 260ms ease-out,transform 480ms cubic-bezier(.2,1.12,.35,1);transition-delay:var(--reveal-delay,0ms)}
.scroll-reveal.is-revealed{opacity:1;transform:none}
.hero-copy{animation:heroCopyIn 700ms 180ms both}.hero-wordmark{animation:heroWordmarkIn 800ms both}@keyframes heroCopyIn{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}@keyframes heroWordmarkIn{from{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.scroll-reveal,.scroll-reveal[data-reveal-kind=statue]{opacity:1!important;transform:none!important;transition:none!important}.hero-copy,.hero-wordmark{animation:none!important}}
@media print{.scroll-reveal,.scroll-reveal[data-reveal-kind=statue]{opacity:1!important;transform:none!important;transition:none!important}}

.statue-motion>img{position:relative;z-index:2}.statue-decoration{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible;color:var(--acid);z-index:3}.hand-frame{z-index:1;opacity:0;transition:opacity 180ms}.hand-frame path{fill:none;stroke:currentColor;stroke-width:6;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 560ms cubic-bezier(.4,0,.2,1)}.hand-frame .frame-echo{stroke-width:2.5;opacity:.45;transition-delay:75ms}.personality-flair,.statue-motion>.phone-waves{opacity:0;transition:opacity 180ms}.statue-motion:is(:hover,:focus-within,[data-active=true])>.hand-frame,.statue-motion:is(:hover,:focus-within,[data-active=true])>.personality-flair,.statue-motion:is(:hover,:focus-within,[data-active=true])>.phone-waves{opacity:1}.statue-motion:is(:hover,:focus-within,[data-active=true])>.hand-frame path{stroke-dashoffset:0}.statue-motion:is(:hover,:focus-within,[data-active=true]) .flair-particle{animation:personalityPop 1600ms ease-in-out infinite;transform-box:fill-box;transform-origin:center}.statue-motion:is(:hover,:focus-within,[data-active=true]) .particle-two{animation-delay:140ms}.statue-motion:is(:hover,:focus-within,[data-active=true]) .particle-three{animation-delay:280ms}.statue-motion:is(:hover,:focus-within,[data-active=true]) .flair-smoke path{animation:smokeRise 2200ms ease-out infinite;transform-box:fill-box;transform-origin:bottom}.statue-motion:is(:hover,:focus-within,[data-active=true]) .flair-smoke .smoke-two{animation-delay:330ms;opacity:.65}.statue-motion:is(:hover,:focus-within,[data-active=true]) .flair-smoke .smoke-three{animation-delay:650ms;opacity:.45}.gallery-statue{height:360px;width:100%}.gallery-statue>img{height:100%}.statue-motion>.statue-decoration{object-fit:contain}.statue-motion[tabindex]:focus-visible{outline:0}.statue-motion[tabindex]:focus-visible .hand-frame{opacity:1}.statue-motion[tabindex]:focus-visible .hand-frame path{stroke-dashoffset:0}@keyframes personalityPop{0%,100%{opacity:.15;translate:0 14px;scale:.88}30%,65%{opacity:1;translate:0 -10px;scale:1}}@keyframes smokeRise{0%{opacity:0;translate:0 20px}30%{opacity:.85}100%{opacity:0;translate:-10px -70px}}@media(max-width:600px){.gallery-statue{height:330px}}@media(prefers-reduced-motion:reduce){.statue-decoration,.hand-frame path,.flair-particle,.flair-smoke path{animation:none!important;transition:none!important}.statue-motion:is(:hover,:focus-within,[data-active=true]) .flair-particle{opacity:1}}

/* Burgundy sketch frames on the light evening carousel. */
.statue-carousel .hand-frame{color:var(--ox)}
.hero-caller-art>img,.hero-caller-art>.phone-waves{box-sizing:border-box;padding-top:44px}
@media(max-width:600px){.hero-caller-art>img,.hero-caller-art>.phone-waves{padding-top:32px}}

/* A little theatrical pop, angled toward the guest without changing layout. */
@media(hover:hover) and (pointer:fine){.statue-motion:hover>img,.statue-motion:hover>.statue-decoration{transform:translateY(-16px) rotateX(var(--tilt-x,-2deg)) rotateY(calc(var(--tilt-y,0deg) + 5deg)) rotateZ(calc(var(--tilt-z,0deg) - 2.5deg)) scale(1.055);transition-duration:260ms;transition-timing-function:cubic-bezier(.2,.85,.25,1.15)}}
.statue-motion[data-active=true]>img,.statue-motion[data-active=true]>.statue-decoration,.statue-motion:focus-within>img,.statue-motion:focus-within>.statue-decoration{transform:translateY(-14px) rotateY(6deg) rotateZ(-2.5deg) scale(1.05);transition:transform 300ms cubic-bezier(.2,.85,.25,1.15)}
@media(prefers-reduced-motion:reduce){.statue-motion:hover>img,.statue-motion:hover>.statue-decoration,.statue-motion[data-active=true]>img,.statue-motion[data-active=true]>.statue-decoration,.statue-motion:focus-within>img,.statue-motion:focus-within>.statue-decoration{transform:none!important;transition:none!important}}

/* CLASSY's lime spotlight follows the pointer, and changes with the action. */
.classy-cursor{position:fixed;left:0;top:0;z-index:10000;pointer-events:none;opacity:0;direction:ltr;will-change:transform}.classy-cursor[data-visible=true]{opacity:1}.cursor-orbit{position:absolute;left:0;top:0;width:26px;height:26px;border:1.5px solid var(--acid);border-radius:50%;background:#1717191a;box-shadow:0 0 0 1px #17171960;transform:translate(-50%,-50%);display:grid;place-items:center;transition:width 180ms,height 180ms,background 180ms,rotate 180ms,scale 140ms}.cursor-dot{width:5px;height:5px;background:var(--acid);border-radius:50%;box-shadow:0 0 0 1px #17171980}.cursor-orbit>svg{display:none;width:22px;height:22px;stroke:var(--ox);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.classy-cursor[data-mode=book] .cursor-orbit{width:46px;height:46px;background:var(--acid);rotate:-8deg}.classy-cursor:not([data-mode=idle]) .cursor-dot{display:none}.classy-cursor[data-mode=book] .cursor-ticket{display:block}.classy-cursor:is([data-mode=link],[data-mode=external],[data-mode=statue],[data-mode=drag]) .cursor-orbit{width:38px;height:45px;background:transparent;border:0;border-radius:0;box-shadow:none;rotate:-10deg;transform:translate(-34%,-10%)}.classy-cursor:is([data-mode=link],[data-mode=external],[data-mode=statue],[data-mode=drag]) .cursor-glove{display:block;width:38px;height:45px;fill:var(--bone);stroke:var(--ox);stroke-width:1.7;filter:drop-shadow(1px 2px 0 #17171933)}.cursor-glove .glove-grab{display:none}.classy-cursor[data-pressed=true]:is([data-mode=statue],[data-mode=drag]) .glove-point{display:none}.classy-cursor[data-pressed=true]:is([data-mode=statue],[data-mode=drag]) .glove-grab{display:block}.classy-cursor[data-pressed=true] .cursor-orbit{scale:.9}.classy-cursor[data-pressed=true]:is([data-mode=statue],[data-mode=drag]) .cursor-orbit{rotate:4deg}

@media(hover:hover) and (pointer:fine) and (forced-colors:none){html[data-classy-cursor=active],html[data-classy-cursor=active] *{cursor:none!important}html[data-classy-cursor=active] :is(input,textarea,select,[contenteditable=true]){cursor:auto!important}}
@media(hover:none),(pointer:coarse),(forced-colors:active){.classy-cursor{display:none!important}}@media(prefers-reduced-motion:reduce){.cursor-orbit{transition:none}}@media print{.classy-cursor{display:none!important}}

.statue-motion:is(:hover,:focus-within,[data-active=true]) .sandwich-bite{animation:sandwichNibble 2200ms ease-in-out infinite;transform-box:fill-box;transform-origin:center}.statue-motion:is(:hover,:focus-within,[data-active=true]) .crumb{animation:crumbFall 2200ms ease-out infinite;transform-box:fill-box;transform-origin:center}.statue-motion .crumb{opacity:0}.statue-motion:is(:hover,:focus-within,[data-active=true]) .crumb-two{animation-delay:120ms}.statue-motion:is(:hover,:focus-within,[data-active=true]) .crumb-three{animation-delay:260ms}@keyframes sandwichNibble{0%,20%,100%{scale:1;rotate:0deg}28%{scale:.88;rotate:-9deg}40%{scale:1.06;rotate:4deg}55%{scale:1;rotate:0deg}}@keyframes crumbFall{0%,20%{opacity:0;translate:0 -12px;rotate:0deg}32%{opacity:1}85%,100%{opacity:0;translate:24px 90px;rotate:95deg}}@media(prefers-reduced-motion:reduce){.sandwich-bite,.crumb{animation:none!important}.statue-motion:is(:hover,:focus-within,[data-active=true]) .crumb{opacity:1}}


/* Reserve the full hover envelope inside the scrolling viewport. */
.statue-track{padding-block:68px 28px}.statue-track>li{padding-inline:18px}@media(max-width:600px){.statue-track{padding-top:72px;padding-bottom:26px}.statue-track>li{padding-inline:14px}}
/* Tactile raster motifs, separate from the hand-drawn frame. */
.premium-flair .premium-motif{position:absolute;right:3%;top:24%;width:clamp(58px,25%,106px);height:auto;max-height:32%;object-fit:contain;filter:drop-shadow(0 4px 4px #4a13252b);transform:translateY(12px) rotate(-9deg) scale(.85);opacity:0;transition:opacity 180ms,transform 420ms cubic-bezier(.18,.85,.26,1.12)}.statue-motion:is(:hover,:focus-within,[data-active=true]) .premium-motif{opacity:1;transform:translateY(0) rotate(7deg) scale(1)}.premium-flair.flair-muse .premium-motif{right:1%;top:30%;rotate:-12deg}.premium-flair.flair-conductor .premium-motif,.premium-flair.flair-gamer .premium-motif{right:auto;left:1%;top:34%}.premium-flair.flair-afterhours .premium-motif{width:34%;max-height:42%;top:18%;right:2%;filter:drop-shadow(0 2px 3px #4a13255c)}.statue-motion:is(:hover,:focus-within,[data-active=true]) .flair-afterhours .premium-motif{animation:premiumSmoke 3000ms ease-in-out infinite}.statue-motion:is(:hover,:focus-within,[data-active=true]) .flair-foodie .premium-motif{animation:premiumBite 2400ms ease-in-out infinite}@keyframes premiumSmoke{0%{opacity:0;transform:translateY(15px) scale(.84)}35%{opacity:.95}100%{opacity:0;transform:translateY(-34px) scale(1.12)}}@keyframes premiumBite{0%,22%,100%{transform:rotate(7deg) scale(1)}30%{transform:rotate(-4deg) scale(.9)}42%{transform:rotate(9deg) scale(1.04)}}@media(prefers-reduced-motion:reduce){.premium-flair .premium-motif{animation:none!important;transition:none!important}.statue-motion:is(:hover,:focus-within,[data-active=true]) .premium-motif{transform:none;opacity:1}}

/* The flash belongs to the camera, never the full page. */
.camera-flash-plane{z-index:4}.camera-flash-burst{opacity:0;transform-origin:487px 315px}.camera-flash-burst .flash-halo{filter:blur(16px)}.statue-motion:is(:hover,:focus-within,[data-active=true]) .camera-flash-burst{animation:cameraSnap 3800ms ease-out infinite}.statue-motion:is(:hover,:focus-within,[data-active=true]) .flair-paparazzo .premium-motif{animation:cameraIconSnap 3800ms ease-out infinite}@keyframes cameraSnap{0%,3%,12%,24%,100%{opacity:0;scale:.65}5%{opacity:1;scale:1}15%{opacity:.8;scale:.86}20%{opacity:0;scale:1.28}}@keyframes cameraIconSnap{0%,3%,12%,24%,100%{filter:drop-shadow(0 4px 4px #4a13252b) brightness(1)}5%,15%{filter:drop-shadow(0 0 13px #fff4c6) brightness(1.7)}}@media(prefers-reduced-motion:reduce){.camera-flash-burst,.flair-paparazzo .premium-motif{animation:none!important}}

.classy-cursor[data-mode=idle] .cursor-orbit{width:24px;height:30px;border:0;border-radius:0;background:transparent;box-shadow:none;transform:translate(-16.7%,-6.7%)}.classy-cursor[data-mode=idle] .cursor-idle{display:block;width:24px;height:30px;fill:var(--bone);stroke:var(--ox);stroke-width:1.4;filter:drop-shadow(1px 2px 1px #17171933)}.developer-credit{font-family:Outfit,sans-serif;font-size:11px;letter-spacing:.03em;text-align:center;margin-top:28px;padding-top:22px;border-top:1px solid #f2ebdd25;color:#f2ebdd99}.developer-credit strong{font-weight:600;color:var(--bone);letter-spacing:.09em;margin-left:5px}@media(max-width:600px){.developer-credit{font-size:10px;margin-top:23px;padding-top:20px}}

/* Exhaled smoke starts at the marble lips, with the narrow end at the mouth. */
.mouth-smoke{opacity:0;transition:opacity 200ms}.mouth-smoke-plume{opacity:0;transform-origin:0 0;filter:drop-shadow(0 1px 1px #4a132536)}.statue-motion:is(:hover,:focus-within,[data-active=true])>.mouth-smoke{opacity:1}.statue-motion:is(:hover,:focus-within,[data-active=true]) .mouth-smoke-plume{animation:mouthExhale 3200ms ease-out infinite}@keyframes mouthExhale{0%{opacity:0;transform:translateY(0) scale(.55)}28%{opacity:.65;transform:translateY(0) scale(.83)}62%{opacity:.55;transform:translateY(-8px) scale(1)}100%{opacity:0;transform:translateY(-30px) scale(1.14)}}@media(prefers-reduced-motion:reduce){.mouth-smoke-plume{animation:none!important;transform:none}.statue-motion:is(:hover,:focus-within,[data-active=true]) .mouth-smoke-plume{opacity:.5}}

/* Keep the entire hero hover frame below the CLASSY wordmark. */
.hero-layout{margin-top:80px}.hero-figure{padding-top:24px}.hero-caller-art>img,.hero-caller-art>.phone-waves{padding-top:44px}.character-caption{margin-top:30px}.visit-section{display:grid;grid-template-columns:1.2fr 1fr;gap:10%;align-items:center;background:var(--bone)}.visit-copy h2{font-size:clamp(35px,4.2vw,64px);margin:22px 0}.visit-copy h2 em{font-family:Syne,sans-serif}.visit-copy p{max-width:490px;margin-bottom:18px}.visit-copy address{font:400 17px/1.8 Outfit,sans-serif;font-style:normal;max-width:440px;margin-bottom:28px;text-align:start}.visit-map-card{display:flex;flex-direction:column;align-items:center;text-align:center;gap:18px;background:var(--ox);color:var(--bone);padding:58px 28px;border:3px solid var(--acid);transform:rotate(-2deg);transition:transform 250ms}.visit-map-card:hover{transform:rotate(0)}.visit-map-card>svg{color:var(--acid)}.visit-map-card>strong{font:800 clamp(23px,2.2vw,36px)/1.2 Syne}.visit-map-card>span:not(.eyebrow){font:400 18px/1.7 Outfit}.visit-map-card .visit-map-link{display:flex;gap:15px;align-items:center;border-top:1px solid #f2ebdd55;padding-top:20px;margin-top:10px;color:var(--acid)}.footer-location{display:flex;align-items:center;gap:15px;padding:26px 0;border-bottom:1px solid #f2ebdd40}.footer-location>svg{flex-shrink:0;color:var(--acid)}.footer-location a{display:flex;flex-wrap:wrap;align-items:center;gap:12px 30px;width:100%;justify-content:space-between;font-size:12px}.footer-location a>span:last-child{display:flex;gap:8px;align-items:center;color:var(--acid)}.team-section{background:var(--bone);text-align:center}.team-section h2{font:800 clamp(38px,5.5vw,84px)/1.2 Syne,sans-serif;margin:18px 0 40px}.team-portrait{position:relative;max-width:1450px;margin:auto;padding:40px 35px 30px;isolation:isolate}.team-sketch{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:var(--ox);stroke-width:5;stroke-linecap:round;stroke-linejoin:round;z-index:-1;overflow:visible}.team-sketch path:last-child{stroke-width:2;opacity:.5}.team-portrait>img{width:100%;height:auto;object-fit:contain}.team-section>p{font:800 clamp(26px,3.5vw,48px)/1.3 Syne,sans-serif;margin-top:40px}.team-section>.text-link{margin-top:12px}
@media(max-width:850px){.hero-layout{margin-top:68px}.visit-section{gap:6%;grid-template-columns:1.1fr 1fr}.visit-copy h2{font-size:36px}.visit-copy address{font-size:15px}.visit-map-card{padding:40px 22px}.team-portrait{padding:30px 25px 25px}}
@media(max-width:600px){.hero-layout{margin-top:65px}.hero-figure{padding-top:24px}.hero-caller-art>img,.hero-caller-art>.phone-waves{padding-top:35px}.character-caption{margin-top:26px}.visit-section{grid-template-columns:1fr;gap:40px}.visit-copy h2{font-size:35px}.visit-copy p{font-size:14px}.visit-copy address{font-size:16px}.visit-map-card{margin:0 5px}.team-section h2{font-size:39px;margin-bottom:28px}.team-portrait{padding:20px 14px 18px}.team-sketch{stroke-width:4}.team-section>p{font-size:28px;margin-top:28px}.footer-location a{font-size:12px;line-height:1.8}}
/* Tighten both hero columns while preserving the hover clearance. */
.hero-layout{margin-top:28px}.hero-figure{padding-top:14px}.hero-copy{align-self:start;padding-top:42px}
@media(max-width:850px){.hero-layout{margin-top:28px}}
@media(max-width:600px){.hero-layout{margin-top:28px}.hero-figure{padding-top:14px}.hero-copy{padding-top:16px}}
/* Let the hero use wide screens instead of a narrow fixed central stage. */
.hero-layout{max-width:none;grid-template-columns:1.05fr 1fr;gap:6%}.hero-caller-art{height:clamp(620px,45vw,1180px)}.hero-copy{padding-top:clamp(40px,5vw,100px)}.hero h1,.classy-app[lang=en] .hero h1{font-size:clamp(44px,5.2vw,112px)}.hero-copy p{max-width:650px;font-size:clamp(16px,1.3vw,25px)}.classy-app[lang=en] .hero-copy p{font-size:clamp(18px,1.3vw,27px)}.hero-location{display:flex;align-items:center;gap:12px;margin-top:28px;width:fit-content;font-size:13px;color:var(--bone)}.hero-location>svg{flex-shrink:0;color:var(--acid)}.hero-location>span{display:grid;gap:2px}.hero-location small{font-size:11px;color:#f2ebdda8}.hero-location:hover{color:var(--acid)}
@media(max-width:1100px){.hero-caller-art{height:620px}.hero-copy{padding-top:35px}.hero h1,.classy-app[lang=en] .hero h1{font-size:clamp(35px,5vw,57px)}}
@media(max-width:850px){.hero-layout{grid-template-columns:1fr 1fr;gap:4%}.hero-caller-art{height:530px}.hero-copy{padding-top:30px}.hero-location{font-size:12px;align-items:start}.hero-location small{font-size:10px}}
@media(max-width:600px){.hero-caller-art{height:450px}.hero-copy{padding-top:16px}.hero h1,.classy-app[lang=en] .hero h1{font-size:39px}.hero-copy p{font-size:14px}.classy-app[lang=en] .hero-copy p{font-size:17px}.hero-location{margin-top:20px;font-size:13px}.hero-location small{font-size:11px}}

.conductor-notes{opacity:0;transition:opacity 180ms}.statue-motion:is(:hover,:focus-within,[data-active=true])>.conductor-notes{opacity:1}.conductor-note{transform-box:fill-box;transform-origin:center;opacity:0}.statue-motion:is(:hover,:focus-within,[data-active=true]) .conductor-note{animation:conductorNoteFloat 2200ms ease-out infinite}.statue-motion:is(:hover,:focus-within,[data-active=true]) .note-b{animation-delay:220ms}.statue-motion:is(:hover,:focus-within,[data-active=true]) .note-c{animation-delay:480ms}@keyframes conductorNoteFloat{0%{opacity:0;translate:0 16px;scale:.8}24%,62%{opacity:1;scale:1}100%{opacity:0;translate:8px -28px;scale:1.08}}
.team-sketch path{stroke-dasharray:1;stroke-dashoffset:0}.team-portrait.scroll-reveal:not(.is-revealed) .team-sketch path{stroke-dashoffset:1}.team-portrait.is-revealed .team-sketch path{animation:teamFrameDraw 1300ms cubic-bezier(.3,0,.2,1) both}.team-portrait.is-revealed .team-sketch path:last-child{animation-delay:150ms}.team-portrait:hover .team-sketch path,.team-section:focus-within .team-sketch path{animation:teamFrameRedraw 1100ms cubic-bezier(.3,0,.2,1) both}.team-portrait:hover .team-sketch path:last-child{animation-delay:100ms}@keyframes teamFrameDraw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}@keyframes teamFrameRedraw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}@media(prefers-reduced-motion:reduce){.conductor-note,.team-sketch path{animation:none!important;stroke-dashoffset:0!important}.statue-motion:is(:hover,:focus-within,[data-active=true]) .conductor-note{opacity:1;translate:none;scale:none}}

/* Raster motifs share the same contained canvas as every statue and frame. */
.premium-canvas .premium-symbol{opacity:0;transform-box:fill-box;transform-origin:center;translate:0 10px;rotate:-7deg;scale:.84;filter:drop-shadow(0 4px 3px #17171930);transition:opacity 180ms,translate 320ms,rotate 320ms,scale 320ms}.statue-motion:is(:hover,:focus-within,[data-active=true]) .premium-symbol{opacity:1;translate:0 0;rotate:6deg;scale:1}.character-symbols{opacity:0;color:var(--acid);transition:opacity 180ms}.statue-motion:is(:hover,:focus-within,[data-active=true])>.character-symbols{opacity:1}.statue-carousel .character-symbols,.statue-carousel .conductor-notes{color:var(--ox)}.character-symbols .flair-particle{opacity:0}.statue-motion:is(:hover,:focus-within,[data-active=true]) .character-symbols .flair-particle{animation:characterFloat 2600ms ease-in-out infinite}.statue-motion:is(:hover,:focus-within,[data-active=true]) .character-symbols .particle-two{animation-delay:180ms}.statue-motion:is(:hover,:focus-within,[data-active=true]) .character-symbols .particle-three{animation-delay:360ms}@keyframes characterFloat{0%{opacity:.25;translate:0 8px;scale:.9}24%,78%{opacity:1;translate:0 -10px;scale:1}100%{opacity:.25;translate:0 8px;scale:.9}}@media(prefers-reduced-motion:reduce){.premium-symbol,.character-symbols .flair-particle{animation:none!important;transition:none!important;translate:none!important;rotate:none!important;scale:none!important}.statue-motion:is(:hover,:focus-within,[data-active=true]) .character-symbols .flair-particle{opacity:1}}
/* Keep decorative symbols behind the marble, in the transparent side space. */
.statue-motion>.hand-frame{z-index:0}.statue-motion>.premium-canvas,.statue-motion>.character-symbols,.statue-motion>.conductor-notes{z-index:1}.statue-motion>img{z-index:2}.story-foot{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));text-align:center;align-items:center;gap:30px}.story-foot>span{justify-self:center}.story-foot .latin{text-align:center}
@media(max-width:600px){.story-foot{grid-template-columns:1fr;gap:22px}.story-foot .latin{grid-column:auto;text-align:center}}
