.carnaval-stage{--stage-x:0px;--stage-y:0px;isolation:isolate;background:#120b16;position:relative;overflow:hidden}.stage-backdrop{z-index:-3;object-fit:cover;object-position:center;opacity:.25;filter:saturate(.7);width:100%;height:100%;position:absolute}.stage-atmosphere{z-index:-2;background:radial-gradient(at 75% 38%,#e6148c66 0,#790b5730 28%,#0000 56%),linear-gradient(90deg,#0b0a10e8 4%,#160b17b8 52%,#180c1a6b),linear-gradient(#0000 60%,#0e0b12 100%);position:absolute;inset:0}.stage-atmosphere:after{content:"";transform-origin:75% 30%;background:radial-gradient(at 75% 28%,#ff14774a,#0000 54%);animation:9s ease-in-out infinite alternate light-breathe;position:absolute;inset:0}.stage-inner{flex-direction:column;min-height:724px;padding-top:25px;padding-bottom:22px;display:flex;position:relative}.stage-location{z-index:4;color:#dcd4df;text-transform:uppercase;letter-spacing:.13em;flex-wrap:wrap;align-items:center;gap:.5rem;font-size:.56rem;font-weight:600;display:flex;position:relative}.stage-location>span:last-child{color:var(--accent);margin-left:auto}.stage-live-dot{background:var(--accent);border-radius:50%;width:5px;height:5px;box-shadow:0 0 12px #d1fa3a80}.stage-heading{z-index:1;margin-top:24px;position:relative}.stage-heading h1{line-height:.8;font-family:var(--font-display);text-align:center;font-weight:800}.stage-heading h1>span{letter-spacing:.17em;padding-left:.17em;font-size:clamp(1.6rem,7.5vw,4rem);line-height:1.1;display:block}.stage-heading strong{letter-spacing:-.03em;white-space:nowrap;margin-top:.15em;font-size:clamp(6.2rem,29vw,13rem);font-weight:800;display:block}.stage-title-period{color:var(--primary)}.stage-sculpture{z-index:2;pointer-events:none;width:122%;transform:translate3d(var(--stage-x), var(--stage-y), 0);transition:transform .7s cubic-bezier(.2,.7,.3,1);position:absolute;top:142px;left:-11%}.stage-sculpture img{filter:drop-shadow(0 20px 30px #0005);width:100%;height:auto;animation:7s ease-in-out infinite alternate sculpture-float;display:block}.stage-copy{z-index:3;max-width:37rem;margin-top:clamp(13.5rem,58vw,20rem);position:relative}.stage-copy h2{letter-spacing:-.01em;max-width:15em;font-size:2.05rem;font-weight:700;line-height:1.02}.stage-copy>p{color:#c4bac8;max-width:30rem;margin-top:.7rem;font-size:.8rem;line-height:1.65}.stage-actions{flex-wrap:wrap;align-items:center;gap:.7rem 1rem;margin-top:1.2rem;display:flex}.festival-cta{min-height:49px;color:var(--accent-foreground);background:var(--accent);border:1px solid var(--accent);border-radius:3px;justify-content:space-between;align-items:center;gap:1.6rem;padding:.85rem 1.1rem;font-size:.76rem;font-weight:800;line-height:1.2;transition:background .25s,transform .25s,box-shadow .25s;display:inline-flex}.festival-cta:hover{background:#fff;border-color:#fff;transform:translateY(-3px);box-shadow:0 0 35px #d3f84225}.festival-cta svg{flex:none;transition:transform .25s}.festival-cta:hover svg{transform:translate(2px,-2px)}.stage-gallery-trigger{color:#f4eef6;text-underline-offset:5px;align-items:center;gap:.5rem;min-height:48px;font-size:.74rem;font-weight:600;display:inline-flex}.stage-gallery-trigger:hover{color:var(--accent);text-decoration:underline}.stage-bottom{z-index:4;justify-content:space-between;align-items:flex-end;margin-top:1.8rem;display:flex;position:relative}.stage-countdown{flex-direction:column;gap:.75rem;width:100%;display:flex}.stage-countdown-label p{letter-spacing:.04em;color:#f1e9f4;font-size:.63rem;font-weight:600;line-height:1.4}.stage-countdown-label time{color:#a99dac;margin-top:.2rem;font-size:.55rem;display:block}.stage-countdown-units{width:100%;display:flex}.stage-countdown-units>div{flex-direction:column;flex:1;align-items:center;min-width:0;padding-inline:1.2rem;display:flex}.stage-countdown-units>div:first-child{padding-left:0}.stage-countdown-units>div:last-child{padding-right:0}.stage-countdown-units>div+div{border-left:1px solid #ffffff24}.stage-countdown-units span{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:2.3rem;font-weight:600;line-height:1}.stage-countdown-units small{color:#bfb3c6;text-transform:uppercase;letter-spacing:.15em;margin-top:.35rem;font-size:.48rem}.stage-scroll{display:none}.stage-orbit{z-index:-1;border:1px solid #ff46bb20;border-radius:50%;width:76vw;height:76vw;position:absolute;top:10%;left:48%;box-shadow:0 0 0 50px #ff46bb05,0 0 0 100px #ff46bb04}.stage-spark{color:var(--primary);z-index:1;font-size:2.6rem;font-weight:400;line-height:1;position:absolute}.stage-spark-one{top:30%;left:5%;transform:rotate(-12deg)}.stage-spark-two{color:var(--accent);font-size:1.5rem;top:53%;right:7%}.festival-ticker{color:var(--accent-foreground);background:var(--accent);border-block:1px solid var(--accent);padding-block:.85rem;overflow:hidden}.festival-ticker>div{width:max-content;animation:38s linear infinite festival-marquee;display:flex}.ticker-track{flex:none;align-items:center;display:inline-flex}.ticker-track>span{font:700 1.7rem/.9 var(--font-display);letter-spacing:-.015em;white-space:nowrap;align-items:center;gap:1.7rem;padding-right:1.7rem;display:inline-flex}.ticker-flower{font:1.4rem/1 Georgia,serif}.festival-ticker:hover>div{animation-play-state:paused}.festival-gallery-overlay{z-index:70;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#060409e8;position:fixed;inset:0}.festival-gallery{z-index:71;background:var(--background);border:1px solid var(--border);width:min(1050px,100% - 2rem);max-height:93dvh;padding:1rem;position:fixed;inset:50% auto auto 50%;overflow-y:auto;translate:-50% -50%;box-shadow:0 30px 80px #0008}.festival-gallery-header,.festival-gallery-bottom{justify-content:space-between;align-items:center;gap:1rem;display:flex}.festival-gallery-header h2{font:700 1.9rem/1 var(--font-display);text-transform:uppercase}.round-control{border:1px solid var(--border);width:44px;height:44px;color:var(--foreground);background:0 0;border-radius:50%;flex:none;justify-content:center;align-items:center;transition:background .25s,color .25s,border-color .25s;display:inline-flex}.round-control:hover:enabled{background:var(--accent);color:var(--accent-foreground);border-color:var(--accent)}.round-control:disabled{opacity:.3}.festival-gallery figure{margin-block:1rem}.festival-gallery figure img{object-fit:contain;width:100%;height:min(59dvh,650px)}.festival-gallery figcaption{text-align:center;color:var(--muted-foreground);margin-top:.8rem;font-size:.8rem}.festival-gallery-bottom{border-top:1px solid var(--border);flex-wrap:wrap;padding-top:1rem}.festival-gallery-bottom>p{color:var(--muted-foreground);max-width:29rem;font-size:.7rem}.festival-gallery-controls{align-items:center;gap:1rem;margin-left:auto;display:flex}.festival-gallery-controls>span{font-variant-numeric:tabular-nums;font-size:.7rem}@media (width>=600px) and (width<=899px){.stage-inner{min-height:1030px}.stage-copy{margin-top:24rem}.stage-copy h2{font-size:3rem}.stage-copy>p{font-size:.95rem}.stage-sculpture{width:100%;top:190px;left:0}}@media (width>=900px){.stage-inner{min-height:clamp(660px,100svh - 80px,880px);padding-top:30px;padding-bottom:0;display:block}.stage-location{gap:.8rem;max-width:39rem;font-size:.67rem}.stage-location>span:last-child{border-left:1px solid #ffffff40;margin-left:.8rem;padding-left:1.5rem}.stage-heading{margin-top:clamp(28px,3.8vh,45px)}.stage-heading h1{text-align:left}.stage-heading h1>span{letter-spacing:.19em;padding-left:.02em;font-size:clamp(2.4rem,4.5vw,5rem)}.stage-heading strong{letter-spacing:-.025em;margin-top:0;font-size:clamp(10rem,19.2vw,19rem);line-height:.85}.stage-sculpture{width:min(65vw,1050px);top:32px;left:42%}.stage-copy{width:47%;max-width:33rem;margin-top:clamp(20px,2.5vh,30px)}.stage-copy h2{font-size:clamp(1.8rem,2.65vw,2.7rem)}.stage-copy>p{max-width:26rem;margin-top:.65rem;font-size:.85rem}.stage-actions{gap:1.4rem;margin-top:1.2rem}.festival-cta{gap:2rem;min-height:53px;padding-inline:1.35rem;font-size:.83rem}.stage-gallery-trigger{font-size:.8rem}.stage-bottom{border-top:1px solid #ffffff24;margin-top:0;padding-top:20px;position:absolute;bottom:26px;left:clamp(1.25rem,5vw,5rem);right:clamp(1.25rem,5vw,5rem)}.stage-countdown{flex-direction:row;align-items:center;gap:2rem;width:auto}.stage-countdown-units{width:350px}.stage-countdown-units span{font-size:2.5rem}.stage-countdown-units small{font-size:.52rem}.stage-countdown-label p{font-size:.76rem}.stage-countdown-label time{margin-top:.45rem;font-size:.62rem}.stage-scroll{border:1px solid #ffffff35;border-radius:50%;justify-content:center;align-items:center;width:46px;height:46px;transition:background .25s;display:inline-flex}.stage-scroll:hover{background:var(--primary);border-color:var(--primary)}.stage-orbit{width:49vw;height:49vw;top:-8%;left:54%}.stage-spark-one{font-size:3rem;top:42%;left:49%}.stage-spark-two{font-size:2rem;top:11%;right:7%}.festival-ticker{padding-block:1.1rem}.ticker-track>span{gap:2.4rem;padding-right:2.4rem;font-size:2.35rem}.ticker-flower{font-size:1.9rem}.festival-gallery{padding:1.5rem}}@media (width>=1400px){.stage-copy{margin-top:1.6rem}.stage-copy>p{font-size:.95rem}}@keyframes festival-marquee{to{transform:translate(-50%)}}@keyframes sculpture-float{to{transform:translateY(-12px)rotate(1deg)}}@keyframes light-breathe{to{opacity:.65;transform:scale(1.25)rotate(8deg)}}@media (prefers-reduced-motion:reduce){.stage-sculpture{transform:none}.stage-sculpture img,.stage-atmosphere:after,.festival-ticker>div{animation:none}.festival-cta:hover{transform:none}}
