/* Rich Ticket – "Admission ticket" design system */
:root{--velvet:#240816;--velvet2:#3D1026;--paper:#F7ECD6;--ink:#240816;--muted:#4A2034;--accent:#FFB627;--rose:#FF4F7B;--line:rgba(247,236,214,.14);
--display:'Karantina','Assistant','Arial Hebrew',sans-serif;--body:'Assistant','Segoe UI','Arial Hebrew',Tahoma,sans-serif;--nav-h:84px}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--nav-h) + 16px)}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;background:var(--velvet);color:var(--paper);font-family:var(--body);font-size:17px;line-height:1.5;overflow-x:hidden;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto;display:block}
button{font-family:inherit}
:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.wrap{padding-inline:clamp(20px,4.5vw,64px)}
.display{font-family:var(--display);font-weight:700;letter-spacing:-.5px}
.skip{position:absolute;top:-100px;right:16px;z-index:100;background:var(--accent);color:var(--ink);padding:10px 16px;border-radius:8px;font-weight:800}
.skip:focus{top:16px}
.hp{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap;margin:-1px;padding:0;border:0}
@supports (overflow:clip){html,body{overflow-x:clip}}
body.admin-bar .nav{top:32px}
@media (max-width:782px){body.admin-bar .nav{top:46px}}

/* NAV */
.nav{position:sticky;top:0;z-index:50;height:var(--nav-h);display:flex;align-items:center;justify-content:space-between;gap:24px;background:rgba(36,8,22,.86);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.logo{display:flex;align-items:baseline;gap:8px}
.logo b{font-family:var(--display);font-size:48px;line-height:1}
.logo span{font-size:14px;font-weight:600;opacity:.75}
.links{display:flex;gap:26px;font-weight:600;font-size:16px}
.links a{position:relative;padding:6px 0;white-space:nowrap}
.links a::after{content:"";position:absolute;inset-inline:0;bottom:0;height:2px;background:var(--accent);transform:scaleX(0);transform-origin:right;transition:transform .3s}
.links a:hover::after,.links a[aria-current]::after{transform:scaleX(1)}
.links a[aria-current]{color:var(--accent)}
.nav-end{display:flex;gap:10px;align-items:center}
.icon-btn{width:44px;height:44px;border-radius:50%;border:1px solid rgba(247,236,214,.3);display:inline-flex;align-items:center;justify-content:center;background:transparent;color:var(--paper);cursor:pointer;transition:border-color .2s,color .2s}
.icon-btn:hover{border-color:var(--accent);color:var(--accent)}
.pill{height:48px;padding:0 26px;display:inline-flex;align-items:center;gap:10px;border-radius:999px;font-weight:800;font-size:16px;transition:transform .2s;border:0;cursor:pointer;white-space:nowrap}
.pill:hover{transform:scale(1.04)}
.pill.big{height:58px;font-size:18px;padding:0 32px}
.pill.accent{background:var(--accent);color:var(--ink)}
.pill.paper{background:var(--paper);color:var(--ink)}
.pill.ink{background:var(--ink);color:var(--paper);height:58px;font-size:18px;padding:0 32px}
.menu-btn{display:none}
.mobile-menu{display:none}

/* HERO */
.hero{position:relative;min-height:calc(100vh - var(--nav-h));display:grid;grid-template-columns:minmax(0,1fr) 440px;gap:56px;align-items:center;padding-top:48px;padding-bottom:96px}
.fx{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.beam{position:absolute;top:-40px;transform-origin:50% 0}
.beam.b1{right:22%;animation:rt-sway 9s ease-in-out infinite}
.beam.b2{right:55%;animation:rt-sway2 11s ease-in-out infinite}
@keyframes rt-sway{0%,100%{transform:rotate(-9deg)}50%{transform:rotate(9deg)}}
@keyframes rt-sway2{0%,100%{transform:rotate(8deg)}50%{transform:rotate(-10deg)}}
.conf{position:absolute;top:0;animation:rt-fall 7s linear infinite}
@keyframes rt-fall{0%{transform:translateY(-40px) rotate(0);opacity:0}10%{opacity:1}100%{transform:translateY(100vh) rotate(540deg);opacity:0}}
.hero-copy{position:relative;z-index:2}
.kicker{display:flex;align-items:center;gap:12px;font-weight:700;font-size:17px;color:var(--accent)}
.bulb{width:10px;height:10px;border-radius:50%;background:var(--accent);box-shadow:0 0 16px var(--accent);animation:rt-glow 2.4s ease-in-out infinite;flex-shrink:0}
@keyframes rt-glow{50%{opacity:.4}}
h1.title{margin:10px 0 0;font-size:clamp(130px,22vw,340px);line-height:.78}
h1.title .ln{display:block;overflow:hidden;padding-bottom:.04em}
h1.title .ln span{display:block;animation:rt-rise 1.1s cubic-bezier(.2,.8,.2,1) both}
h1.title .ln:nth-child(2) span{animation-delay:.15s}
@keyframes rt-rise{from{transform:translateY(100%)}to{transform:none}}
.sub{margin:26px 0 0;max-width:560px;font-size:clamp(24px,2.4vw,34px);line-height:1.25;font-weight:700}
.hero-ctas{margin-top:36px;display:flex;gap:16px;align-items:center;flex-wrap:wrap}
.u-link{font-weight:700;font-size:18px;text-decoration:underline;text-underline-offset:6px;padding:12px}

/* TICKET FORM */
.ticket-form{position:relative;z-index:3;background:var(--paper);color:var(--ink);border-radius:20px;transform:rotate(-2.5deg);box-shadow:0 40px 80px -30px rgba(0,0,0,.7)}
.hero-form{animation:rt-drop 1s .3s cubic-bezier(.2,.8,.2,1) both}
@keyframes rt-drop{from{transform:translateY(-60px) rotate(6deg);opacity:0}to{transform:rotate(-2.5deg);opacity:1}}
.notch{position:absolute;width:36px;height:36px;border-radius:50%;background:var(--velvet);top:138px}
.notch.r{right:-18px}.notch.l{left:-18px}
.tf-head{padding:30px 34px 26px;border-bottom:3px dashed rgba(36,8,22,.28);min-height:156px}
.tf-meta{display:flex;justify-content:space-between;font-size:13px;font-weight:700;opacity:.7}
.tf-head h2{margin:10px 0 0;font-size:46px;line-height:.95}
.tf-body{padding:26px 34px 34px;display:flex;flex-direction:column;gap:6px}
.tf-body label{font-size:14px;font-weight:700;margin-top:10px}
.tf-body label:first-of-type{margin-top:0}
.tf-body input,.tf-body select,.tf-body textarea{width:100%;min-height:50px;padding:0 16px;border:2px solid var(--ink);border-radius:12px;background:transparent;font:inherit;font-size:17px;color:var(--ink)}
.tf-body textarea{padding:12px 16px;min-height:110px;resize:vertical}
.tf-body input:focus,.tf-body select:focus,.tf-body textarea:focus{outline:3px solid var(--accent);outline-offset:2px}
.send{margin-top:16px;height:58px;border:0;border-radius:14px;background:var(--ink);color:var(--paper);font-size:20px;font-weight:800;cursor:pointer;transition:transform .2s}
.send:hover{transform:scale(1.02)}
.send[disabled]{opacity:.6;cursor:wait}
.tf-done{display:flex;flex-direction:column;gap:6px;padding:28px 0;font-size:18px;text-align:center}
.tf-done strong{font-family:var(--display);font-size:52px;line-height:.95}
.tf-err{margin:0 0 8px;padding:10px 14px;border-radius:10px;background:#FFE0E6;color:#8a0f2d;font-weight:700}

/* MARQUEE */
.marquee{height:92px;background:var(--accent);color:var(--ink);overflow:hidden;display:flex;align-items:center;transform:rotate(-1.2deg);margin:0 -30px;position:relative;z-index:4}
.track{display:flex;flex-shrink:0;white-space:nowrap;font-family:var(--display);font-weight:700;font-size:58px;line-height:1;animation:rt-mq 30s linear infinite}
.track span{padding:0 24px}
@keyframes rt-mq{to{transform:translateX(50%)}}

/* HOME TICKETS */
.attr{padding-top:150px;padding-bottom:140px}
.sec-head{display:flex;justify-content:space-between;align-items:flex-end;gap:48px;flex-wrap:wrap}
.sec-head h2{margin:0;font-size:clamp(100px,12.5vw,180px);line-height:.8;max-width:8ch}
.sec-head p{margin:0 0 16px;max-width:380px;font-size:20px;line-height:1.6;color:rgba(247,236,214,.8)}
.tickets{margin-top:80px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px 40px}
.tk{display:flex;flex-direction:column;border-radius:18px;overflow:hidden;background:var(--paper);color:var(--ink);transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s,opacity .9s}
.tk .top{padding:30px 32px 26px;display:flex;flex-direction:column;gap:22px;min-height:190px}
.tk .name{font-family:var(--display);font-weight:700;font-size:62px;line-height:.9}
.tk .stub{border-top:3px dashed rgba(36,8,22,.3);padding:18px 32px;display:flex;justify-content:space-between;font-weight:800}
.tk.rose{background:var(--rose)}.tk.gold{background:var(--accent)}
.tk.dark{background:var(--velvet2);color:var(--paper);border:2px solid rgba(247,236,214,.25)}
.tk.dark .stub{border-color:rgba(247,236,214,.3);color:var(--accent)}
.tk.dark svg{color:var(--accent)}
.tk.rv{opacity:0;transform:rotate(var(--r,0deg)) translateY(calc(var(--y,0px) + 70px))}
.tk.rv.in{opacity:1;transform:rotate(var(--r,0deg)) translateY(var(--y,0px))}
.tk.rv.in:hover,.tk.rv.in:focus-visible{transform:rotate(0) translateY(calc(var(--y,0px) - 12px));box-shadow:0 30px 60px -20px rgba(0,0,0,.65)}

/* ABOUT */
.paper-sec{background:var(--paper);color:var(--ink)}
.about{padding-top:130px;padding-bottom:110px;border-radius:48px 48px 0 0}
.about-grid{display:grid;grid-template-columns:minmax(0,1fr) 480px;gap:80px;align-items:start}
.about h2{margin:0;font-size:clamp(96px,10.5vw,150px);line-height:.8}
.about-text{margin-top:44px;max-width:620px}
.about-text p{margin:0 0 22px;font-size:19px;line-height:1.75;color:var(--muted)}
.about-text p:first-child{font-size:22px;line-height:1.7;color:var(--ink)}
.arch{position:relative}
.arch .ph{height:620px;border-radius:240px 240px 24px 24px;background:var(--velvet2);overflow:hidden;display:flex;align-items:center;justify-content:center}
.arch .ph img{width:100%;height:100%;object-fit:cover}
.stamp{position:absolute;bottom:-34px;right:-34px;width:150px;height:150px;border-radius:50%;background:var(--accent);display:flex;align-items:center;justify-content:center;text-align:center;font-family:var(--display);font-weight:700;font-size:40px;line-height:.85;animation:rt-spin 16s linear infinite}
@keyframes rt-spin{from{transform:rotate(-12deg)}to{transform:rotate(348deg)}}
.stats{margin-top:110px;display:grid;grid-template-columns:repeat(var(--n,4),minmax(0,1fr));border-top:2px solid var(--ink)}
.stat{padding:28px 24px 0;border-left:2px solid rgba(36,8,22,.2)}
.stat:first-child{padding-right:0}.stat:last-child{border-left:0}
.stat .n{font-family:var(--display);font-weight:700;font-size:clamp(64px,7.5vw,110px);line-height:.9}
.stat .l{margin-top:8px;font-size:18px;font-weight:700}

/* FAQ */
.faq{padding-top:40px;padding-bottom:140px;display:grid;grid-template-columns:420px minmax(0,1fr);gap:80px;align-items:start}
.faq h2{margin:0;font-size:clamp(72px,8.5vw,120px);line-height:.82;position:sticky;top:calc(var(--nav-h) + 36px)}
.qa{border-top:2px solid var(--ink)}
.item{border-bottom:2px solid var(--ink)}
.item button{width:100%;min-height:76px;display:flex;justify-content:space-between;align-items:center;gap:24px;background:none;border:0;padding:18px 0;font-size:24px;font-weight:800;color:var(--ink);text-align:right;cursor:pointer}
.dot{width:44px;height:44px;flex-shrink:0;border-radius:50%;border:2px solid var(--ink);display:flex;align-items:center;justify-content:center;font-size:26px;transition:background .25s,color .25s,transform .35s}
.item.open .dot{background:var(--ink);color:var(--paper);transform:rotate(45deg)}
.ans{display:grid;grid-template-rows:0fr;transition:grid-template-rows .4s cubic-bezier(.2,.8,.2,1)}
.item.open .ans{grid-template-rows:1fr}
.ans>div{overflow:hidden}
.ans p{margin:0;padding:0 0 26px 80px;font-size:19px;line-height:1.7;color:var(--muted)}

/* FOOTER */
.site-foot{padding-top:120px;padding-bottom:40px}
.foot-top{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;flex-wrap:wrap}
.foot-top h2{margin:0;font-size:clamp(96px,14vw,200px);line-height:.78}
.foot-side{max-width:400px;display:flex;flex-direction:column;gap:24px;align-items:flex-start}
.foot-side p{margin:0;font-size:20px;line-height:1.6;color:rgba(247,236,214,.82)}
.foot-grid{margin-top:90px;padding-top:40px;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}
.foot-grid h3{margin:0 0 14px;font-size:14px;font-weight:800;color:var(--accent)}
.plain{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;font-size:17px}
.plain a:hover,.foot-nav a:hover{color:var(--accent)}
.foot-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 20px;font-size:16px}
.hours-s{margin:14px 0 0;font-size:15px;line-height:1.7;color:rgba(247,236,214,.75)}
.foot-social{display:flex;gap:10px;margin-top:18px}
.foot-bottom{margin-top:56px;padding-top:24px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:14px;color:rgba(247,236,214,.65)}
.foot-bottom a:hover{color:var(--accent)}
.wa-float{position:fixed;bottom:calc(20px + env(safe-area-inset-bottom,0px));left:20px;z-index:40;width:58px;height:58px;border-radius:50%;background:#25D366;color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 12px 30px -8px rgba(0,0,0,.5);transition:transform .2s}
.wa-float:hover{transform:scale(1.08)}

/* INNER PAGES */
.v-hero{position:relative;padding-top:64px;padding-bottom:64px;overflow:hidden}
.v-hero .fx .beam.b1{right:8%}.v-hero .fx .beam.b2{right:40%}
.crumbs{position:relative;z-index:2;display:flex;gap:10px;flex-wrap:wrap;font-size:15px;font-weight:600;color:rgba(247,236,214,.72)}
.crumbs a:hover{color:var(--accent)}
.v-head{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:flex-end;gap:40px;flex-wrap:wrap}
.v-title{position:relative;z-index:2;margin:18px 0 0;font-size:clamp(84px,13vw,210px);line-height:.8}
.v-desc{position:relative;z-index:2;margin:22px 0 0;max-width:620px;font-size:21px;line-height:1.55;color:rgba(247,236,214,.85)}
.count{width:150px;height:150px;flex-shrink:0;border-radius:50%;background:var(--accent);color:var(--ink);display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(-10deg);text-align:center}
.count b{font-family:var(--display);font-size:64px;line-height:.85}
.count span{font-weight:800;font-size:15px}
.bar{position:sticky;top:var(--nav-h);z-index:20;background:rgba(36,8,22,.94);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-block:1px solid var(--line);padding-block:14px;display:flex;gap:18px;align-items:center}
body.admin-bar .bar{top:calc(var(--nav-h) + 32px)}
.chips{display:flex;gap:10px;overflow-x:auto;scrollbar-width:none;flex-grow:1;padding-block:2px}
.chips::-webkit-scrollbar{display:none}
.wrap-chips{flex-wrap:wrap;margin:28px 0;position:relative;z-index:2}
.chip{flex-shrink:0;min-height:44px;padding:0 18px;border-radius:999px;border:1.5px solid rgba(247,236,214,.28);display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:15px;white-space:nowrap;transition:background .2s,border-color .2s}
.chip:hover{border-color:var(--accent)}
.chip.on{background:var(--accent);color:var(--ink);border-color:var(--accent)}
.chip small{font-size:12px;opacity:.7}
.search{flex-shrink:0;width:260px;height:44px;border-radius:999px;border:1.5px solid rgba(247,236,214,.28);background:transparent;color:var(--paper);padding:0 18px;font:inherit;font-size:15px}
.search::placeholder{color:rgba(247,236,214,.6)}
.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:40px 28px;padding-top:48px;padding-bottom:110px}
.card{display:flex;flex-direction:column;background:var(--paper);color:var(--ink);border-radius:16px;transform:rotate(var(--r,0deg));transition:transform .4s cubic-bezier(.2,.8,.2,1),box-shadow .4s;animation:rt-card .7s cubic-bezier(.2,.8,.2,1) both}
.card:nth-child(4n+1){--r:-1.2deg}.card:nth-child(4n+2){--r:.8deg}.card:nth-child(4n+3){--r:-.6deg}.card:nth-child(4n){--r:1.1deg}
.card:hover,.card:focus-visible{transform:rotate(0) translateY(-10px);box-shadow:0 28px 50px -20px rgba(0,0,0,.65)}
.card[hidden]{display:none}
@keyframes rt-card{from{opacity:0;transform:translateY(40px) rotate(var(--r,0deg))}}
.ph{position:relative;aspect-ratio:4/3;border-radius:16px 16px 0 0;overflow:hidden;background:var(--velvet2);display:flex;align-items:center;justify-content:center;background-image:radial-gradient(rgba(247,236,214,.10) 1.2px,transparent 1.4px);background-size:18px 18px}
.ph img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.8,.2,1)}
.card:hover .ph img{transform:scale(1.05)}
.ph .ini{font-family:var(--display);font-weight:700;font-size:150px;line-height:1;color:rgba(247,236,214,.16)}
.card .nm{padding:20px 22px 18px;font-family:var(--display);font-weight:700;font-size:40px;line-height:.92;flex-grow:1}
.card .stub{position:relative;border-top:3px dashed rgba(36,8,22,.28);padding:14px 22px;display:flex;justify-content:space-between;font-weight:800;font-size:15px}
.card .stub::before,.card .stub::after{content:"";position:absolute;top:-14px;width:24px;height:24px;border-radius:50%;background:var(--velvet)}
.card .stub::before{right:-12px}.card .stub::after{left:-12px}
.no-res{grid-column:1/-1;text-align:center;font-size:20px;padding:40px 0}
.empty{grid-column:1/-1;padding:80px 0;text-align:center}
.empty h2{margin:0;font-size:72px;line-height:.9}
.empty p{margin:14px auto 28px;max-width:460px;font-size:19px;color:rgba(247,236,214,.8)}
.band{background:var(--accent);color:var(--ink);padding-block:72px;display:flex;justify-content:space-between;align-items:center;gap:32px;flex-wrap:wrap}
.band h2{margin:0;font-size:clamp(56px,6.5vw,96px);line-height:.85;max-width:760px}
.band p{margin:14px 0 0;font-size:18px;max-width:560px;font-weight:600}
.seo-text{padding-bottom:90px}
.prose{max-width:760px;font-size:18px;line-height:1.8}
.prose h2,.prose h3{font-family:var(--display);font-size:52px;line-height:.95;margin:1.2em 0 .4em}
.prose a{color:var(--accent);text-decoration:underline}
.paper-sec .prose a{color:var(--muted)}
.prose.light{color:rgba(247,236,214,.88);margin-bottom:28px}
.page-body{padding-top:80px;padding-bottom:110px;border-radius:40px 40px 0 0}

/* single */
.sv{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:72px;align-items:start;padding-top:56px;padding-bottom:110px}
.sv .frame{position:sticky;top:calc(var(--nav-h) + 36px)}
.sv .frame .ph{aspect-ratio:4/5;border-radius:280px 280px 24px 24px}
.sv .frame .ph .ini{font-size:320px}
.stamp2{position:absolute;top:calc(100% * 0 + 20px);left:-16px;background:var(--rose);color:var(--ink);font-family:var(--display);font-weight:700;font-size:34px;line-height:1;padding:14px 22px;border-radius:12px;transform:rotate(-6deg)}
.thumbs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:16px}
.thumbs a{border-radius:10px;overflow:hidden;aspect-ratio:1}
.thumbs img{width:100%;height:100%;object-fit:cover}
.sv h1{margin:18px 0 0;font-size:clamp(76px,8.5vw,150px);line-height:.82}
.tags{margin-top:22px;display:flex;gap:10px;flex-wrap:wrap}
.lead2{margin:26px 0 30px;font-size:21px;line-height:1.55;max-width:520px;color:rgba(247,236,214,.86)}
.specs{margin:0 0 32px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border-top:1px solid var(--line)}
.specs div{padding:14px 0;border-bottom:1px solid var(--line)}
.specs dt{font-size:14px;font-weight:700;color:rgba(247,236,214,.65)}
.specs dd{margin:4px 0 0;font-family:var(--display);font-size:32px;line-height:1}
.video{margin-bottom:32px;border-radius:16px;overflow:hidden;aspect-ratio:16/9}
.video iframe{width:100%;height:100%}
.sv-form{transform:rotate(-1.5deg);max-width:480px}
.rel-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;padding-top:40px;border-top:1px solid var(--line)}
.rel-head h2{margin:0;font-size:clamp(60px,7vw,110px);line-height:.85}
.rel-head a{font-weight:800;color:var(--accent);padding:12px 0}
.grid.rel{padding-top:40px}
.lb{position:fixed;inset:0;z-index:90;background:rgba(20,4,12,.92);display:flex;align-items:center;justify-content:center;padding:24px;cursor:zoom-out}
.lb img{max-height:90vh;width:auto;border-radius:12px}

/* contact */
.ct{display:grid;grid-template-columns:minmax(0,1fr) 480px;gap:72px;align-items:start;padding-top:10px;padding-bottom:60px;position:relative;z-index:2}
.ct-list{display:flex;flex-direction:column;margin-top:36px;border-top:1px solid var(--line)}
.ct-row{display:flex;justify-content:space-between;align-items:baseline;gap:20px;padding:22px 0;border-bottom:1px solid var(--line)}
.ct-row .k{font-size:15px;font-weight:700;color:rgba(247,236,214,.7)}
.ct-row .v{font-family:var(--display);font-weight:700;font-size:clamp(40px,4.4vw,64px);line-height:1}
.ct-row a.v:hover{color:var(--accent)}
.ct-row .v.mail{font-family:var(--body);font-size:clamp(20px,2vw,28px);font-weight:800}
.hours{margin-top:28px;font-size:19px;line-height:1.7;color:rgba(247,236,214,.86)}
.nf{min-height:70vh}

/* reveal */
.rv{opacity:0;transform:translateY(40px);transition:opacity .9s cubic-bezier(.2,.8,.2,1),transform .9s cubic-bezier(.2,.8,.2,1)}
.rv.in{opacity:1;transform:none}
.no-js .rv{opacity:1;transform:none}

/* RESPONSIVE */
@media (max-width:1280px){.links{gap:18px;font-size:15px}}
@media (max-width:1180px){
.links{display:none}.menu-btn{display:inline-flex}
.mobile-menu{display:block;position:fixed;inset:0;z-index:60;background:var(--velvet);padding:calc(20px + env(safe-area-inset-top,0px)) 24px 24px;transform:translateY(-100%);visibility:hidden;transition:transform .5s cubic-bezier(.2,.8,.2,1),visibility 0s .5s;overflow-y:auto}
.mobile-menu.open{transform:none;visibility:visible;transition:transform .5s cubic-bezier(.2,.8,.2,1)}
.mobile-menu nav{margin-top:32px;display:flex;flex-direction:column;gap:4px}
.mobile-menu nav a{font-family:var(--display);font-weight:700;font-size:54px;line-height:1.05}
.mobile-menu nav a[aria-current]{color:var(--accent)}
.mm-top{display:flex;justify-content:space-between;align-items:center}
.mm-phone{display:inline-block;margin-top:28px;font-size:22px;font-weight:800;color:var(--accent);direction:ltr}
.grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:980px){
.hero{grid-template-columns:1fr;min-height:0;padding-top:28px}.hero .ticket-form{max-width:460px;justify-self:center;width:100%}
.tickets{grid-template-columns:repeat(2,minmax(0,1fr))}
.about-grid{grid-template-columns:1fr}.arch{max-width:480px}
.faq{grid-template-columns:1fr;gap:28px}.faq h2{position:static}
.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 18px}
.sv,.ct{grid-template-columns:1fr;gap:48px}.sv .frame{position:relative;top:0;max-width:440px}
.bar{flex-wrap:wrap}.search{width:100%}
.foot-grid{grid-template-columns:1fr 1fr}}
@media (max-width:640px){
:root{--nav-h:72px}
.logo b{font-size:40px}.nav-end .social{display:none}.nav-end .pill{height:44px;padding:0 18px;font-size:15px}
.marquee{height:64px;transform:rotate(-2deg)}.track{font-size:40px}
.tf-head{padding:24px 24px 20px;min-height:0}.tf-head h2{font-size:38px}.tf-body{padding:22px 24px 26px}.notch{top:112px;width:28px;height:28px}.notch.r{right:-14px}.notch.l{left:-14px}
.attr{padding-top:88px;padding-bottom:80px}
.tickets{grid-template-columns:1fr;gap:14px;margin-top:36px}
.tk{flex-direction:row;align-items:stretch;--y:0px!important}
.tk .top{min-height:96px;padding:20px 22px;flex-direction:row;align-items:center;gap:14px;flex-grow:1}
.tk .name{font-size:42px}.tk svg{width:30px;height:30px;flex-shrink:0}
.tk .stub{border-top:0;border-right:3px dashed rgba(36,8,22,.3);padding:0;width:64px;justify-content:center;align-items:center}
.tk .stub .t{display:none}
.about{padding-top:80px;border-radius:32px 32px 0 0}.about-text p,.about-text p:first-child{font-size:17px}
.arch .ph{height:380px;border-radius:180px 180px 18px 18px}.stamp{width:104px;height:104px;font-size:30px;right:auto;left:12px;bottom:-24px}
.stats{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:56px}.stat{padding:18px 12px 20px;border-bottom:2px solid rgba(36,8,22,.2)}.stat:nth-child(2n){border-left:0}.stat .l{font-size:14px}
.item button{font-size:18px;min-height:64px}.dot{width:36px;height:36px;font-size:22px}.ans p{padding:0 0 20px;font-size:16px}
.faq{padding-bottom:80px}.site-foot{padding-top:80px}.foot-side{max-width:none;width:100%}.foot-side .pill{width:100%;justify-content:center}
.foot-grid{grid-template-columns:1fr;gap:32px;margin-top:56px}
.v-hero{padding-top:36px;padding-bottom:44px}.v-desc{font-size:17px}.count{width:108px;height:108px}.count b{font-size:46px}.count span{font-size:12px}
.grid{gap:22px 14px;padding-top:32px;padding-bottom:72px}.card .nm{font-size:28px;padding:14px 14px 12px}.card .stub{padding:12px 14px;font-size:13px}.ph .ini{font-size:96px}
.sv .frame .ph .ini{font-size:200px}.band{padding-block:52px}.ct-row{flex-direction:column;gap:6px}.specs{grid-template-columns:1fr}
.wa-float{width:52px;height:52px;left:14px}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.rv,.tk.rv{opacity:1;transform:none}}

/* Cookie banner – ticket style */
.ck{position:fixed;bottom:calc(16px + env(safe-area-inset-bottom,0px));right:16px;z-index:80;width:min(440px,calc(100vw - 32px));transform:translateY(30px) rotate(-1.5deg);opacity:0;transition:transform .45s cubic-bezier(.2,.8,.2,1),opacity .35s}
.ck.on{transform:rotate(-1.5deg);opacity:1}
.ck-card{background:var(--paper);color:var(--ink);border-radius:18px;padding:22px 24px 20px;box-shadow:0 30px 70px -20px rgba(0,0,0,.7);border-top:3px dashed rgba(36,8,22,.25)}
.ck-meta{font-size:12px;font-weight:800;opacity:.65}
.ck h2{margin:4px 0 8px;font-size:40px;line-height:.95}
.ck p{margin:0 0 14px;font-size:15px;line-height:1.55}
.ck p a{text-decoration:underline;font-weight:700}
.ck-opts{display:flex;flex-direction:column;gap:8px;margin:0 0 14px;padding:12px 0;border-block:1px solid rgba(36,8,22,.15)}
.ck-opts[hidden]{display:none}
.ck-row{display:flex;gap:10px;align-items:flex-start;font-size:15px;cursor:pointer;min-height:32px}
.ck-row input{width:20px;height:20px;accent-color:#240816;margin-top:2px;flex-shrink:0}
.ck-btns{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.ck-btns .pill{height:46px;padding:0 20px;font-size:15px}
.ck-btns [hidden]{display:none}
.pill.ghost{background:transparent;color:var(--ink);border:2px solid var(--ink)}
.ck-link{background:none;border:0;padding:10px 6px;font:inherit;font-size:15px;font-weight:700;color:var(--ink);text-decoration:underline;cursor:pointer}
.linkish{background:none;border:0;padding:0;font:inherit;color:inherit;cursor:pointer;text-align:right}
.linkish:hover{color:var(--accent)}
.sitemap-cols{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:28px 40px;margin-top:24px}
.sitemap-cols h3{font-family:var(--display);font-size:40px;line-height:1;margin:0 0 10px}
.sitemap-cols ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;font-size:16px}
.sitemap-cols a:hover{text-decoration:underline}
@media (max-width:640px){.ck{right:10px;left:10px;width:auto}.ck h2{font-size:34px}}
@media (prefers-reduced-motion:reduce){.ck{transition:none}}

/* Accessibility toolbar (AccessibleWP) – brand colors */
#acwp-toolbar-btn-wrap{border:2px solid var(--accent)!important;box-shadow:0 12px 28px -10px rgba(0,0,0,.65)}
#acwp-toolbar-btn{background:var(--velvet2)!important;color:var(--paper)!important;transition:background .2s,transform .2s}
#acwp-toolbar-btn:hover,#acwp-toolbar-btn:focus-visible{background:var(--accent)!important;color:var(--ink)!important;transform:scale(1.06)}
#acwp-toolbar-btn svg,#acwp-toolbar-btn svg path{fill:currentColor!important}
#acwp-toolbar .acwp-heading{background:var(--velvet)!important;color:var(--paper)!important;border-bottom:3px dashed rgba(247,236,214,.3)}

/* WhatsApp – ticket style floating button */
.wa{position:fixed;left:20px;bottom:calc(20px + env(safe-area-inset-bottom,0px));z-index:70;transition:opacity .3s,transform .3s}
body.ck-open .wa{opacity:0;pointer-events:none;transform:translateY(20px)}
.wa-btn{position:relative;display:flex;align-items:center;height:62px;min-width:62px;border-radius:999px;background:#25D366;color:#fff;box-shadow:0 16px 34px -12px rgba(0,0,0,.6);animation:wa-in .8s 1.2s cubic-bezier(.34,1.56,.64,1) both;overflow:visible}
.wa-ico{width:62px;height:62px;flex-shrink:0;display:flex;align-items:center;justify-content:center;animation:wa-wiggle 6s 3s ease-in-out infinite}
.wa-lbl{max-width:0;overflow:hidden;white-space:nowrap;font-weight:800;font-size:16px;border-right:2px dashed rgba(255,255,255,.55);padding:0;opacity:0;transition:max-width .45s cubic-bezier(.2,.8,.2,1),padding .45s,opacity .3s}
.wa-btn:hover .wa-lbl,.wa-btn:focus-visible .wa-lbl{max-width:160px;padding:0 18px 0 16px;opacity:1}
.wa-ring{position:absolute;left:0;top:0;width:62px;height:62px;border-radius:50%;border:2px solid var(--accent);animation:wa-ring 2.8s 2s ease-out infinite;pointer-events:none}
@keyframes wa-in{from{transform:scale(0) rotate(-40deg);opacity:0}to{transform:none;opacity:1}}
@keyframes wa-ring{0%{transform:scale(1);opacity:.9}80%,100%{transform:scale(1.7);opacity:0}}
@keyframes wa-wiggle{0%,86%,100%{transform:rotate(0)}89%{transform:rotate(-14deg)}92%{transform:rotate(12deg)}95%{transform:rotate(-8deg)}}
.wa-pop{position:absolute;left:0;bottom:78px;width:280px;background:var(--paper);color:var(--ink);border-radius:16px;padding:18px 20px 16px;box-shadow:0 26px 60px -18px rgba(0,0,0,.7);transform-origin:12% 100%;transform:rotate(-2deg);animation:wa-pop .55s cubic-bezier(.34,1.56,.64,1) both}
.wa-pop[hidden]{display:none}
.wa-pop::before,.wa-pop::after{content:"";position:absolute;top:44px;width:18px;height:18px;border-radius:50%;background:var(--velvet)}
.wa-pop::before{right:-9px}.wa-pop::after{left:-9px}
.wa-pop::selection{background:var(--accent)}
.wa-meta{display:block;font-size:12px;font-weight:800;opacity:.65;padding-bottom:10px;border-bottom:2px dashed rgba(36,8,22,.25);margin-bottom:10px}
.wa-pop strong{display:block;font-size:40px;line-height:.92}
.wa-pop p{margin:8px 0 14px;font-size:15px;line-height:1.5}
.wa-go{display:flex;align-items:center;justify-content:center;gap:8px;height:48px;border-radius:12px;background:#25D366;color:#fff;font-weight:800;font-size:16px;transition:transform .2s}
.wa-go:hover{transform:scale(1.03);color:#fff}
.wa-x{position:absolute;top:10px;left:10px;width:32px;height:32px;border-radius:50%;border:0;background:rgba(36,8,22,.08);color:var(--ink);display:flex;align-items:center;justify-content:center;cursor:pointer}
.wa-x:hover{background:rgba(36,8,22,.16)}
@keyframes wa-pop{from{transform:translateY(16px) scale(.85) rotate(4deg);opacity:0}to{transform:rotate(-2deg);opacity:1}}
@media (max-width:640px){.wa{left:14px}.wa-btn{height:56px;min-width:56px}.wa-ico,.wa-ring{width:56px;height:56px}.wa-pop{bottom:70px;width:min(280px,calc(100vw - 28px))}}
@media (prefers-reduced-motion:reduce){.wa-btn,.wa-ico,.wa-ring,.wa-pop{animation:none!important}}
