/* TicketEx Gen-Z animation layer: styles for tg-genz-fx.js.
   Every rule applies only under html[data-genz-fx] (set by tg-genz-fx.js while Gen Z mode is on and the page is not
   part of the booking/checkout flow) or to elements that script adds, so the normal site is never affected.
   Tiers in data-genz-fx: full (desktop with a mouse) | lite (tablets, slower computers) | min (phones) |
   still (prefers-reduced-motion: the Gen Z visuals without movement). */

/* ---------- Switching Gen Z on and off: the whole page cross-fades with a slight scale ---------- */
html.tgfx-vt-in::view-transition-old(root),html.tgfx-vt-out::view-transition-old(root){animation:tgfxPageOut .32s cubic-bezier(.4,0,.6,1) both}
html.tgfx-vt-in::view-transition-new(root){animation:tgfxPageIn .5s cubic-bezier(.22,1,.36,1) .06s both}
html.tgfx-vt-out::view-transition-new(root){animation:tgfxPageIn .45s cubic-bezier(.22,1,.36,1) .04s both}
@keyframes tgfxPageOut{to{opacity:0;transform:scale(.975)}}
@keyframes tgfxPageIn{from{opacity:0;transform:scale(.985)}}
/* Browsers without view transitions: the content dims for a moment while the look switches. */
html.tgfx-dim main,html.tgfx-dim footer{opacity:.5;transition:opacity .18s ease}
html.tgfx-undim main,html.tgfx-undim footer{transition:opacity .4s ease}

/* ---------- Backdrop: fine grain over the Gen Z page's flat background ---------- */
.tgfx-backdrop{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none;opacity:0;transition:opacity .9s ease}
.tgfx-backdrop[data-state="in"]{opacity:1}
.tgfx-backdrop[data-state="out"]{opacity:0;transition-duration:.22s}
.tgfx-grain{position:absolute;inset:0;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}

/* ---------- Home hero: 3D ticket with orbiting destination cards, floating travel icons, particles, light ---------- */
html[data-genz-fx] .tgHero>div:first-child>img{scale:1.16;transition:scale 1.4s cubic-bezier(.22,1,.36,1)}
/* The Gen Z theme's animated colour overlay repaints the whole hero every frame; the glows below replace its motion. */
html[data-genz-fx] .tgHero::after{animation:none}
.tgfx-hero{position:absolute;inset:0;z-index:1;overflow:hidden;pointer-events:none;--mx:0;--my:0;--sy:0;opacity:calc(1 - var(--sy) * .55)}
/* Two soft glows drifting slowly across the photo (small layers, transform only: cheap on any GPU). */
.tgfx-hero-light{position:absolute;width:56vw;height:56vw;border-radius:50%;opacity:0;transition:opacity 1.4s ease}
.tgfx-hero-light.l1{left:-12vw;top:-30vw;background:radial-gradient(closest-side,rgba(255,46,147,.32),transparent)}
.tgfx-hero-light.l2{right:-14vw;bottom:-34vw;background:radial-gradient(closest-side,rgba(183,0,245,.36),transparent)}
.tgfx-hero[data-state="in"] .tgfx-hero-light{opacity:1}
html[data-genz-fx="full"] .tgfx-hero-light,html[data-genz-fx="lite"] .tgfx-hero-light{will-change:transform}
html[data-genz-fx="full"] .tgfx-hero-light.l1,html[data-genz-fx="lite"] .tgfx-hero-light.l1{animation:tgfxGlow1 16s ease-in-out infinite alternate}
html[data-genz-fx="full"] .tgfx-hero-light.l2,html[data-genz-fx="lite"] .tgfx-hero-light.l2{animation:tgfxGlow2 19s ease-in-out infinite alternate}
@keyframes tgfxGlow1{to{transform:translate3d(30vw,12vw,0) scale(1.15)}}
@keyframes tgfxGlow2{to{transform:translate3d(-26vw,-8vw,0) scale(.9)}}
.tgfx-hero .tgfx-grain{opacity:.06}

.tgfx-particles{position:absolute;inset:0;opacity:0;transition:opacity 1.2s ease .4s}
.tgfx-hero[data-state="in"] .tgfx-particles{opacity:1}
.tgfx-particles i{position:absolute;bottom:-12px;left:var(--x);width:var(--s);height:var(--s);border-radius:50%;opacity:0;
  background:radial-gradient(circle,#fff 0,rgba(255,170,220,.75) 45%,transparent 70%);animation:tgfxRise var(--t) linear var(--dl) infinite}
@keyframes tgfxRise{0%{opacity:0;transform:translate3d(0,0,0)}12%{opacity:.9}75%{opacity:.5}100%{opacity:0;transform:translate3d(var(--dx),-680px,0)}}
html[data-genz-fx="lite"] .tgfx-particles i:nth-child(n+8),html[data-genz-fx="min"] .tgfx-particles i:nth-child(n+5),html[data-genz-fx="still"] .tgfx-particles{display:none}

/* Layers: position + mouse/scroll parallax (transform, set every frame from --mx/--my/--sy);
   entrance and exit use the separate opacity / translate / scale properties so they never fight the parallax. */
.tgfx-layer{position:absolute;
  transform:translate3d(calc(var(--mx) * var(--d,0) * 1px),calc(var(--my) * var(--d,0) * 1px + var(--sy) * var(--sd,0) * 1px),0);
  transition:opacity .9s cubic-bezier(.22,1,.36,1),translate 1s cubic-bezier(.22,1,.36,1),scale 1s cubic-bezier(.34,1.3,.64,1);
  transition-delay:calc(var(--i,0) * 90ms + 120ms)}
.tgfx-hero[data-state="pre"] .tgfx-layer{opacity:0}
.tgfx-hero[data-state="pre"] .tgfx-cluster{translate:80px 16px;scale:.82}
.tgfx-hero[data-state="pre"] .tgfx-left{translate:-70px 0}
.tgfx-hero[data-state="pre"] .tgfx-bub{translate:0 30px;scale:.4}
.tgfx-hero[data-state="out"] .tgfx-layer{opacity:0;scale:.9;transition-duration:.22s;transition-delay:0s}
.tgfx-hero[data-state="out"] .tgfx-cluster{translate:50px 0}
.tgfx-hero[data-state="out"] .tgfx-left{translate:-40px 0}
.tgfx-k{transform:scale(var(--k,1));transform-origin:center}
.tgfx-float{transform-style:preserve-3d}
.tgfx-float.f1{animation:tgfxFloatA 7s ease-in-out infinite}
.tgfx-float.f2{animation:tgfxFloatB 8.5s ease-in-out -2s infinite}
.tgfx-float.f3{animation:tgfxFloatB 6.5s ease-in-out -1s infinite}
.tgfx-float.f4{animation:tgfxFloatA 9s ease-in-out -4s infinite}
@keyframes tgfxFloatA{0%,100%{transform:translate3d(0,-7px,0) rotate(-1deg)}50%{transform:translate3d(0,9px,0) rotate(1.2deg)}}
@keyframes tgfxFloatB{0%,100%{transform:translate3d(0,6px,0) rotate(2deg)}50%{transform:translate3d(0,-10px,0) rotate(-2.5deg)}}

/* Right side: the digital ticket, with three destination cards orbiting it in 3D. */
.tgfx-cluster{left:calc(75% + 204px);top:45%;width:0;height:0;perspective:1000px;--i:1}
.tgfx-scene{position:absolute;transform-style:preserve-3d;transform:scale(var(--k,1)) rotateX(calc(var(--my) * -9deg)) rotateY(calc(var(--mx) * 12deg))}
.tgfx-orbit{position:absolute;transform-style:preserve-3d;transform:translateY(30px) rotateX(-28deg)}
.tgfx-spin{transform-style:preserve-3d;animation:tgfxOrbit 26s linear infinite;will-change:transform}
@keyframes tgfxOrbit{to{transform:rotateY(1turn)}}
.tgfx-slot{position:absolute;transform-style:preserve-3d;transform:rotateY(var(--a)) translateZ(126px)}
.tgfx-mini{position:absolute;left:-28px;top:-36px;width:56px;height:72px;margin:0;overflow:hidden;border-radius:14px;background:#26033a;
  box-shadow:0 0 0 2px rgba(255,255,255,.85),0 16px 30px -12px rgba(10,2,20,.75);animation:tgfxFace 26s linear infinite}
@keyframes tgfxFace{from{transform:rotateY(calc(var(--a) * -1)) rotateX(28deg)}to{transform:rotateY(calc(var(--a) * -1 - 1turn)) rotateX(28deg)}}
.tgfx-mini img{display:block;width:100%;height:100%;object-fit:cover}
.tgfx-mini figcaption{position:absolute;inset:auto 0 0;padding:16px 6px 5px;color:#fff;font-size:10px;font-weight:800;line-height:1.1;letter-spacing:.01em;
  background:linear-gradient(transparent,rgba(20,2,30,.88))}
.tgfx-glow{position:absolute;left:-116px;top:-56px;width:232px;height:120px;border-radius:28px;filter:blur(20px);
  background:radial-gradient(closest-side,rgba(255,46,147,.6),rgba(183,0,245,.3) 60%,transparent);transform:translateZ(-40px) rotateY(-14deg)}
.tgfx-ticket{position:absolute;left:-118px;top:-68px;width:236px;height:136px;display:flex;overflow:hidden;border-radius:16px;color:#26033a;
  background:linear-gradient(140deg,#fff 0%,#fdf2ff 55%,#f8dcff 100%);transform:rotateY(-14deg) rotateX(6deg) translateZ(12px);
  -webkit-mask:radial-gradient(circle 9px at calc(100% - 64px) 0,transparent 96%,#000) top/100% 51% no-repeat,radial-gradient(circle 9px at calc(100% - 64px) 100%,transparent 96%,#000) bottom/100% 51% no-repeat;
  mask:radial-gradient(circle 9px at calc(100% - 64px) 0,transparent 96%,#000) top/100% 51% no-repeat,radial-gradient(circle 9px at calc(100% - 64px) 100%,transparent 96%,#000) bottom/100% 51% no-repeat}
.tgfx-tk-main{flex:1;min-width:0;padding:11px 12px 10px 13px;display:flex;flex-direction:column}
.tgfx-tk-head{display:flex;align-items:center;justify-content:space-between;gap:6px;font-size:10px;font-weight:800}
.tgfx-tk-logo{display:inline-flex;align-items:center;gap:4px;color:#9400c7}
.tgfx-tk-logo svg{width:13px;height:13px}
.tgfx-tk-badge{padding:2px 7px;border-radius:99px;background:#c6ff3d;color:#26033a;font-size:8.5px;letter-spacing:.08em;text-transform:uppercase}
.tgfx-tk-title{margin:7px 0 0;font-size:12.5px;font-weight:800;line-height:1.2;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.tgfx-tk-place{margin:3px 0 0;display:flex;align-items:center;gap:3px;font-size:10px;font-weight:600;color:#7a3f80}
.tgfx-tk-place svg{width:11px;height:11px}
.tgfx-tk-meta{margin-top:auto;display:flex;gap:12px;font-size:11px;font-weight:800}
.tgfx-tk-meta small{display:block;font-size:8px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#a070a6}
.tgfx-tk-stub{position:relative;width:64px;flex:none;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;
  border-left:2px dashed rgba(53,20,54,.22);font-size:8.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#7a3f80}
.tgfx-qr{width:40px;height:40px;display:block;color:#26033a}
.tgfx-tk-scan{position:absolute;left:10px;right:10px;top:calc(50% - 30px);height:2px;border-radius:2px;opacity:0;
  background:linear-gradient(90deg,transparent,#ff2e93,transparent);box-shadow:0 0 8px #ff2e93}
.tgfx-tk-shine{position:absolute;inset:0;pointer-events:none;translate:-130% 0;
  background:linear-gradient(110deg,transparent 32%,rgba(255,255,255,.9) 48%,transparent 62%)}
html[data-genz-fx="full"] .tgfx-tk-shine,html[data-genz-fx="lite"] .tgfx-tk-shine{animation:tgfxShine 6s cubic-bezier(.4,0,.2,1) 1.8s infinite}
html[data-genz-fx="full"] .tgfx-tk-scan,html[data-genz-fx="lite"] .tgfx-tk-scan{animation:tgfxScan 2.8s ease-in-out 1.4s infinite}
@keyframes tgfxShine{0%{translate:-130% 0}38%,100%{translate:130% 0}}
@keyframes tgfxScan{0%{opacity:0;transform:translateY(0)}15%{opacity:1}85%{opacity:1}100%{opacity:0;transform:translateY(40px)}}
/* The ticket "prints": its details appear one after another once it has landed. */
.tgfx-ticket .r{opacity:0;translate:0 6px;transition:opacity .5s ease,translate .6s cubic-bezier(.22,1,.36,1);transition-delay:calc(.8s + var(--r) * .13s)}
.tgfx-hero[data-state="in"] .tgfx-ticket .r{opacity:1;translate:0 0}

/* Left side: a booking confirmation and a plane flying its route. */
.tgfx-left{left:calc(25% - 354px);top:18%;width:260px;height:290px;--i:3}
.tgfx-left .tgfx-k{position:absolute;inset:0}
.tgfx-route{position:absolute;left:0;top:0;width:260px;height:150px;overflow:visible}
.tgfx-route path{fill:none;stroke:rgba(255,255,255,.42);stroke-width:1.5;stroke-dasharray:4 7}
.tgfx-plane{position:absolute;left:0;top:0;width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:#fff;color:#b700f5;
  box-shadow:0 8px 18px -6px rgba(0,0,0,.55);offset-path:path("M8 140 C 60 40, 170 10, 252 46");offset-rotate:auto;offset-distance:62%}
.tgfx-plane svg{width:16px;height:16px;rotate:45deg}
html[data-genz-fx="full"] .tgfx-plane{animation:tgfxFly 9s cubic-bezier(.45,0,.55,1) infinite}
@keyframes tgfxFly{0%{offset-distance:0%;opacity:0}8%,88%{opacity:1}100%{offset-distance:100%;opacity:0}}
.tgfx-note{position:absolute;left:14px;top:150px;display:flex;align-items:center;gap:10px;padding:10px 16px 10px 10px;border-radius:18px;color:#fff;
  background:linear-gradient(135deg,rgba(255,255,255,.24),rgba(255,255,255,.08));border:1px solid rgba(255,255,255,.3);box-shadow:0 22px 40px -20px rgba(0,0,0,.7)}
.tgfx-note b{display:block;font-size:13px;line-height:1.2}
.tgfx-note small{display:block;margin-top:2px;font-size:11px;opacity:.8}
.tgfx-note-ico{width:34px;height:34px;flex:none;display:grid;place-items:center;border-radius:12px;background:linear-gradient(135deg,#c6ff3d,#7dffb0);color:#14301a}
.tgfx-note-ico svg{width:18px;height:18px}

/* Floating travel icons (attractions, museums, theme parks, waterparks, photos), each at its own depth. */
.tgfx-bubble{width:46px;height:46px;display:grid;place-items:center;border-radius:16px;color:#fff;
  background:linear-gradient(135deg,rgba(255,255,255,.26),rgba(255,255,255,.08));border:1px solid rgba(255,255,255,.32);box-shadow:0 16px 30px -14px rgba(0,0,0,.65)}
.tgfx-bubble svg{width:22px;height:22px}
.tgfx-bubble.lime{background:#c6ff3d;color:#26033a;border-color:transparent}
.tgfx-bubble.pink{background:linear-gradient(135deg,#ff2e93,#b700f5);border-color:transparent}
.tgfx-bub.b1{left:calc(25% - 300px);top:64%;--i:4}
.tgfx-bub.b2{left:calc(25% - 150px);top:76%;--i:5}
.tgfx-bub.b3{left:calc(75% + 262px);top:15%;--i:2}
.tgfx-bub.b4{left:calc(75% + 110px);top:73%;--i:6}
.tgfx-bub.b5{left:calc(75% + 250px);top:65%;--i:7}

/* Size steps: the side areas next to the hero text (896px wide) are only wide enough for the full scene from
   1280px; between 1024 and 1279px two icons remain; below that only the light and particles. */
@media (min-width:1600px){.tgfx-hero{--k:1.08}}
@media (max-width:1439px){.tgfx-hero{--k:.88}.tgfx-bub.b5{display:none}}
@media (max-width:1359px){.tgfx-hero{--k:.76}.tgfx-bub.b2,.tgfx-bub.b4{display:none}.tgfx-bub.b3{left:calc(75% + 236px)}}
@media (max-width:1279px){
  .tgfx-cluster,.tgfx-left{display:none}
  .tgfx-hero{--k:.8}
  .tgfx-bub.b1{left:calc(25% - 247px);top:56%}
  .tgfx-bub.b3{left:calc(75% + 201px);top:24%}
}
@media (max-width:1023px){.tgfx-bub{display:none}}

/* ---------- Scroll reveal (tg-genz-fx.js marks elements that are still below the fold) ---------- */
html[data-genz-fx] [data-tgfx="pending"]{opacity:0!important}
html[data-genz-fx] [data-tgfx="pending"][data-tgfx-k="text"]{transform:translate3d(0,30px,0)!important}
html[data-genz-fx] [data-tgfx="pending"][data-tgfx-k="card"]{transform:perspective(900px) translate3d(0,48px,0) rotateX(12deg) rotate(-1.5deg) scale(.96)!important}
html[data-genz-fx] [data-tgfx="pending"][data-tgfx-k="dest"]{transform:translate3d(var(--tgfx-dx,0px),40px,0) rotate(var(--tgfx-rz,0deg)) scale(.95)!important}
html[data-genz-fx] [data-tgfx="pending"][data-tgfx-k="pop"]{transform:translate3d(0,18px,0) scale(.86)!important}
html[data-genz-fx] [data-tgfx="pending"] img{transform:scale(1.08)!important}
html[data-genz-fx="lite"] [data-tgfx="pending"][data-tgfx-k],html[data-genz-fx="min"] [data-tgfx="pending"][data-tgfx-k]{transform:translate3d(0,24px,0)!important}
html[data-genz-fx] [data-tgfx="in"]{opacity:1;transform:none;
  transition:opacity .7s ease var(--tgfx-delay,0ms),transform 1s cubic-bezier(.22,1,.36,1) var(--tgfx-delay,0ms)!important}
html[data-genz-fx] [data-tgfx="in"] img{transform:none;transition:transform 1.3s cubic-bezier(.22,1,.36,1) var(--tgfx-delay,0ms)!important}

/* ---------- Product cards: 3D tilt toward the cursor, light glare, image parallax; the price becomes the call to
   action (mouse only) ---------- */
html[data-genz-fx="full"] a.group[href^="/experience/"]:hover{translate:0 0;transform:perspective(900px) translate3d(0,-8px,0) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));
  box-shadow:0 2px 4px rgba(53,20,54,.06),0 30px 54px -20px rgba(111,2,150,.5);will-change:transform}
html[data-genz-fx="full"] a.group[href^="/experience/"]:hover img{scale:1;transform:scale(1.06) translate3d(calc(var(--cx,0) * -5px),calc(var(--cy,0) * -5px),0)}
html[data-genz-fx="full"] a.group[href^="/experience/"]::after{content:"";position:absolute;inset:0;z-index:3;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .35s ease;
  background:radial-gradient(380px circle at var(--gx,50%) var(--gy,0%),rgba(255,255,255,.3),transparent 46%)}
html[data-genz-fx="full"] a.group[href^="/experience/"]:hover::after{opacity:1}
html[data-genz-fx="full"] a.group[href^="/experience/"] .chip,html[data-genz-fx="full"] a.group[href^="/experience/"] button[aria-label]{transition:translate .4s cubic-bezier(.22,1,.36,1),transform .25s ease}
html[data-genz-fx="full"] a.group[href^="/experience/"]:hover .chip{translate:calc(var(--cx,0) * 4px) calc(var(--cy,0) * 4px)}
html[data-genz-fx="full"] a.group[href^="/experience/"]:hover button[aria-label]{translate:calc(var(--cx,0) * 6px) calc(var(--cy,0) * 5px)}
html[data-genz-fx="full"] a.group[href^="/experience/"]:hover .text-lg.font-extrabold{background:linear-gradient(100deg,#b700f5,#ff2e93);color:#fff;box-shadow:0 10px 22px -8px rgba(183,0,245,.7)}
html[data-genz-fx="full"] a.group[href^="/experience/"] .text-lg.font-extrabold::after{content:"\2192";display:inline-block;width:0;margin-left:0;overflow:hidden;opacity:0;vertical-align:top;
  transition:width .3s cubic-bezier(.22,1,.36,1),margin-left .3s cubic-bezier(.22,1,.36,1),opacity .25s ease}
html[data-genz-fx="full"] a.group[href^="/experience/"]:hover .text-lg.font-extrabold::after{width:1em;margin-left:.3em;opacity:1}

/* ---------- Destination cards: image drifts against the cursor, title follows it, card lifts (mouse only) ----------
   (The home slider's cards keep their own transitions, which the slider relies on; only their insides move.) */
html[data-genz-fx="full"] main a.group[href^="/destinations/"]{transition:translate .5s cubic-bezier(.22,1,.36,1),box-shadow .5s ease}
html[data-genz-fx="full"] main a.group[href^="/destinations/"]:hover{translate:0 -8px;box-shadow:0 30px 50px -22px rgba(111,2,150,.55)}
html[data-genz-fx="full"] .tgDestCard img,html[data-genz-fx="full"] main a.group[href^="/destinations/"] img{transition:transform .7s cubic-bezier(.22,1,.36,1),scale .7s ease}
html[data-genz-fx="full"] .tgDestCard:hover img,html[data-genz-fx="full"] main a.group[href^="/destinations/"]:hover img{scale:1;transform:scale(1.1) translate3d(calc(var(--px,0) * -10px),calc(var(--py,0) * -8px),0)}
html[data-genz-fx="full"] .tgDestName,html[data-genz-fx="full"] main a.group[href^="/destinations/"] h2{transition:transform .55s cubic-bezier(.22,1,.36,1)}
html[data-genz-fx="full"] .tgDestCard:hover .tgDestName,html[data-genz-fx="full"] main a.group[href^="/destinations/"]:hover h2{transform:translate3d(calc(var(--px,0) * 6px),calc(var(--py,0) * 4px),0)}
html[data-genz-fx="full"] .tgDestCard::after,html[data-genz-fx="full"] main a.group[href^="/destinations/"]::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;opacity:0;transition:opacity .45s ease;
  background:linear-gradient(to top,rgba(111,2,150,.55),rgba(255,46,147,.16) 55%,transparent)}
html[data-genz-fx="full"] .tgDestCard:hover::after,html[data-genz-fx="full"] main a.group[href^="/destinations/"]:hover::after{opacity:1}
html[data-genz-fx="full"] .tgDestBody,html[data-genz-fx="full"] main a.group[href^="/destinations/"]>div:last-child{z-index:2}
html[data-genz-fx="full"] .tgDestCount svg{transition:translate .35s cubic-bezier(.34,1.4,.64,1)}
html[data-genz-fx="full"] .tgDestCard:hover .tgDestCount svg{translate:5px 0}

/* ---------- Magnetic buttons (desktop with a mouse; the offset is eased by the script) ---------- */
html[data-genz-fx="full"] [data-tgfx-mag]{translate:var(--mgx,0px) var(--mgy,0px)}

/* ---------- Pausing: tab in the background, or the hero scrolled out of view ---------- */
html[data-tgfx-hidden] .tgfx-hero *,html[data-tgfx-hidden] .tgfx-backdrop *,.tgfx-hero[data-paused] *{animation-play-state:paused!important}

/* ---------- Reduced motion: keep the look, drop the movement ---------- */
@media (prefers-reduced-motion:reduce){
  .tgfx-hero,.tgfx-hero *,.tgfx-backdrop,.tgfx-backdrop *{animation:none!important;transition:none!important}
  html[data-genz-fx] .tgHero>div:first-child>img{transition:none}
}
