@import "https://fonts.googleapis.com/css2?family=Caveat:wght@600;700&family=Dancing+Script:wght@600;700&family=Outfit:wght@400;500;600;700;800&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;0,700;0,800;1,400;1,600&display=swap";.flight-action-btn{color:#fff;cursor:pointer;background:0 0;border:0;align-self:center;width:265.5px;height:152.5px;margin:-2.5rem 0 -2.2rem;padding:0}.flight-action-btn:disabled{cursor:wait}.flight-action-svg{width:100%;height:100%;display:block;overflow:visible}.flight-action-bg{fill:#65737b;transform-box:fill-box;transform-origin:50%;transition:fill .3s}.flight-action-btn:hover:not(:disabled) .flight-action-bg{fill:#535e66}.flight-action-label{fill:#fff;letter-spacing:.2px;pointer-events:none;text-shadow:0 1px 4px #00000059;font-size:15px;font-weight:800}.flight-action-runway{opacity:0;pointer-events:none;transform-box:fill-box;transform-origin:50%}.flight-action-runway polygon{fill:#535e66}.flight-action-runway path{fill:#fff}.flight-action-plane-wrapper{opacity:0;pointer-events:none;transform-box:fill-box;transform-origin:50%}.flight-action-plane-build{transform-box:fill-box;transform-origin:50%}.flight-action-plane-body{fill:#ebecec}.flight-action-wing,.flight-action-tail{fill:#f3f3f3;opacity:0;transform-box:fill-box;transform:scale(0)}.flight-action-wing-l{transform-origin:100%}.flight-action-wing-r{transform-origin:0}.flight-action-tail{transform-origin:bottom}.flight-action-windows,.flight-action-pilot{fill:#8acfe3;opacity:0}.flight-action-engine{fill:#646e75;opacity:0;transform-box:fill-box;transform-origin:top;transform:scale(0)}.flight-action-btn.is-launching .flight-action-bg{animation:2.5s ease-in-out both flightSvgButton}.flight-action-btn.is-launching .flight-action-label{animation:2.5s ease-in-out both flightSvgLabel}.flight-action-btn.is-launching .flight-action-runway{animation:2.5s ease-in-out both flightSvgRunway}.flight-action-btn.is-launching .flight-action-plane-wrapper{animation:2.5s ease-in both flightSvgPlaneAway}.flight-action-btn.is-launching .flight-action-plane-build{animation:1.15s ease-out both flightSvgPlaneSettle}.flight-action-btn.is-launching .flight-action-wing,.flight-action-btn.is-launching .flight-action-tail{animation:2.5s ease-in-out both flightSvgPartIn}.flight-action-btn.is-launching .flight-action-engine{animation:2.5s ease-in-out both flightSvgEngineIn}.flight-action-btn.is-launching .flight-action-windows,.flight-action-btn.is-launching .flight-action-pilot{animation:2.5s ease-in-out both flightSvgDetailsIn}@keyframes flightSvgButton{0%{fill:#535e66;opacity:1;transform:rotate(0)scale(1)}20%{opacity:0;transform:rotate(180deg)scale(1.1)}46%,70%{opacity:0;transform:translate(-1200px,-600px)rotate(180deg)scale(.5)}to{fill:#65737b;opacity:1;transform:translate(0)rotate(0)scale(1)}}@keyframes flightSvgRunway{0%,16%{opacity:0;transform:rotate(0)scale(.62)}24%,45%{opacity:1;transform:rotate(180deg)scale(.78)}72%{opacity:0;transform:translate(-1200px,-600px)rotate(180deg)scale(.5)}to{opacity:0;transform:translate(0)rotate(0)scale(.62)}}@keyframes flightSvgLabel{0%,16%{opacity:1}28%,82%{opacity:0}to{opacity:1}}@keyframes flightSvgPlaneSettle{0%{transform:translate(-6px,8px)scale(.92)}to{transform:translate(0)scale(1)}}@keyframes flightSvgPlaneAway{0%,22%{opacity:0;transform:translate(0)}34%,50%{opacity:1;transform:translate(0)}83%{opacity:1;transform:translate(1200px,600px)}to{opacity:0;transform:translate(1200px,600px)}}@keyframes flightSvgPartIn{0%,22%{opacity:0;transform:scale(0)}40%,to{opacity:1;transform:scale(1)}}@keyframes flightSvgEngineIn{0%,30%{opacity:0;transform:scale(0)}52%,to{opacity:1;transform:scale(1)}}@keyframes flightSvgDetailsIn{0%,28%{opacity:0}44%,to{opacity:1}}@media (width<=480px){.flight-action-btn{width:235px;height:135px}}.flip-countdown{--flip-digit-width:82px;--flip-digit-height:112px;--flip-digit-radius:12px;--flip-digit-gap:8px;--flip-font-size:5rem;--flip-card-bg:#0d222e;--flip-card-bg-top:#153243;--flip-card-color:#fff;--flip-accent:#f0c27a;--flip-accent-glow:#f0c27a66;flex-direction:column;align-items:center;gap:1.25rem;width:100%;max-width:780px;margin:1.2rem auto .6rem;display:flex}.flip-countdown-row{justify-content:center;width:100%;display:flex}.flip-countdown-row--days{transform:translateZ(0)}.flip-countdown-row--time{--flip-digit-width:44px;--flip-digit-height:62px;--flip-digit-radius:9px;--flip-digit-gap:5px;--flip-font-size:2.6rem;align-items:flex-start;gap:clamp(1.4rem,6vw,3.8rem)}.flip-unit{flex-direction:column;align-items:center;gap:.6rem;min-width:0;display:flex}.flip-unit-digits{justify-content:center;gap:var(--flip-digit-gap);perspective:400px;display:flex}.flip-digit{width:var(--flip-digit-width);height:var(--flip-digit-height);font-family:Outfit,Plus Jakarta Sans,sans-serif;font-size:var(--flip-font-size);font-variant-numeric:tabular-nums;font-weight:800;line-height:var(--flip-digit-height);border-radius:var(--flip-digit-radius);perspective:320px;-webkit-user-select:none;user-select:none;position:relative;box-shadow:0 12px 28px -4px #0000008c,0 4px 10px #00000059,0 0 0 1px #ffffff1f,inset 0 1px #ffffff40}.flip-digit-card{border-radius:var(--flip-digit-radius);position:absolute;inset:0}.flip-digit-card--current{z-index:1}.flip-digit-half{background:var(--flip-card-bg);backface-visibility:hidden;width:100%;height:50%;transform-style:preserve-3d;position:absolute;left:0;overflow:hidden}.flip-digit-half--up{transform-origin:50% 100%;border-radius:var(--flip-digit-radius) var(--flip-digit-radius) 0 0;border-bottom:1px solid #000000b3;top:0}.flip-digit-half--up:after{content:"";z-index:5;background:linear-gradient(90deg,#0009 0%,#000000d9 50%,#0009 100%);width:100%;height:2px;position:absolute;bottom:0;left:0;box-shadow:0 -1px 2px #00000080}.flip-digit-half--down{transform-origin:50% 0;border-radius:0 0 var(--flip-digit-radius) var(--flip-digit-radius);border-top:1px solid #ffffff14;bottom:0}.flip-digit-half--previous-up{z-index:5;transform-origin:50% 100%;border-radius:var(--flip-digit-radius) var(--flip-digit-radius) 0 0;animation:.14s ease-in both flipTurnOut;top:0}.flip-digit-half--previous-up:after{content:"";z-index:5;background:#000000b3;width:100%;height:2px;position:absolute;bottom:0;left:0}.flip-digit-half--previous-down{z-index:2;border-radius:0 0 var(--flip-digit-radius) var(--flip-digit-radius);bottom:0}.flip-digit-half--next-down{z-index:6;transform-origin:50% 0;border-radius:0 0 var(--flip-digit-radius) var(--flip-digit-radius);animation:.14s ease-out .14s both flipTurnIn;bottom:0;transform:rotateX(90deg)}.flip-digit-inner{z-index:1;width:100%;height:200%;color:var(--flip-card-color);text-align:center;letter-spacing:-.02em;text-shadow:0 2px 8px #0009;background:linear-gradient(180deg, var(--flip-card-bg-top) 0%, var(--flip-card-bg) 100%);border-radius:var(--flip-digit-radius);position:absolute;left:0}.flip-digit-half--up .flip-digit-inner{top:0}.flip-digit-half--down .flip-digit-inner,.flip-digit-half--previous-down .flip-digit-inner,.flip-digit-half--next-down .flip-digit-inner{bottom:0}.flip-digit-shadow{z-index:2;opacity:0;position:absolute;inset:0}.flip-digit.is-flipping .flip-digit-half--previous-up .flip-digit-shadow{background:linear-gradient(#0000001a,#000000f2);animation:.14s ease-in both flipShadowShow}.flip-digit.is-flipping .flip-digit-half--previous-down .flip-digit-shadow{background:linear-gradient(#000000f2,#0000001a);animation:.14s ease-in both flipShadowShow}.flip-digit.is-flipping .flip-digit-half--next-down .flip-digit-shadow{background:linear-gradient(#000000f2,#0000001a);animation:.14s ease-out .1s both flipShadowHide}.flip-unit-label{color:var(--flip-accent);letter-spacing:.14em;text-transform:uppercase;text-shadow:0 0 12px var(--flip-accent-glow);font-size:.76rem;font-weight:800;line-height:1}.flip-unit--hours .flip-unit-label,.flip-unit--minutes .flip-unit-label,.flip-unit--seconds .flip-unit-label{color:#f0f4f8b8;letter-spacing:.12em;font-size:.66rem;font-weight:700}@keyframes flipTurnIn{0%{transform:rotateX(90deg)}to{transform:rotateX(0)}}@keyframes flipTurnOut{0%{transform:rotateX(0)}to{transform:rotateX(-90deg)}}@keyframes flipShadowShow{0%{opacity:0}to{opacity:1}}@keyframes flipShadowHide{0%{opacity:1}to{opacity:0}}@media (width<=768px){.flip-countdown{--flip-digit-width:62px;--flip-digit-height:84px;--flip-font-size:3.6rem;gap:1rem;max-width:520px}.flip-countdown-row--time{--flip-digit-width:38px;--flip-digit-height:52px;--flip-font-size:2.1rem;gap:clamp(.9rem,5vw,2rem)}}@media (width<=480px){.flip-countdown{--flip-digit-width:52px;--flip-digit-height:70px;--flip-digit-gap:5px;--flip-font-size:3rem;gap:.85rem}.flip-countdown-row--time{--flip-digit-width:32px;--flip-digit-height:44px;--flip-digit-gap:3px;--flip-font-size:1.7rem;gap:.7rem}}@media (width<=360px){.flip-countdown{--flip-digit-width:44px;--flip-digit-height:60px;--flip-font-size:2.5rem}.flip-countdown-row--time{--flip-digit-width:28px;--flip-digit-height:38px;--flip-font-size:1.45rem;gap:.45rem}}@media (prefers-reduced-motion:reduce){.flip-digit-half--previous-up,.flip-digit-half--next-down,.flip-digit.is-flipping .flip-digit-half--previous-up .flip-digit-shadow,.flip-digit.is-flipping .flip-digit-half--previous-down .flip-digit-shadow,.flip-digit.is-flipping .flip-digit-half--next-down .flip-digit-shadow{animation:none}.flip-digit-half--next-down{transform:none}}.flight-progress{-webkit-backdrop-filter:blur(16px);background:#04141c66;border:1px solid #ffffff14;border-radius:20px;width:100%;margin:1.4rem 0 1rem;padding:.8rem 1.1rem;box-shadow:inset 0 1px #ffffff14,0 8px 24px #00000040}.flight-progress-summary{text-align:center;justify-content:center;align-items:center;gap:.5rem;margin-bottom:.35rem;display:flex}.flight-progress-summary strong{color:#f0c27a;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;background:#f0c27a1f;border:1px solid #f0c27a4d;border-radius:9999px;align-items:center;gap:.35rem;padding:.25rem .85rem;font-size:.82rem;font-weight:800;display:inline-flex}.flight-component{--w:min(700px, 100%);width:var(--w);justify-content:space-between;align-items:center;gap:.85em;margin:0 auto;font-family:inherit;font-size:clamp(.82rem,1.8vw,1.05rem);font-weight:700;display:flex}.flight-place{color:#f1f5f9;text-shadow:0 1px 8px #0006;flex-direction:column;gap:.15rem;min-width:90px;line-height:1.15;display:flex}.flight-place span:first-child{color:#fff;letter-spacing:.02em;font-weight:800}.flight-place span:nth-child(2){color:#f0c27ae6;text-transform:uppercase;letter-spacing:.06em;font-size:.76em;font-weight:600}.flight-place--origin{text-align:left}.flight-place--destination{text-align:right}.flight-component input,input.flight{--bg:#fff3;--scale:clamp(1, calc(1 + .45 * sin(pi * var(--val) / 100)), 1.8);--shadow:clamp(.15em, calc(1em * sin(pi * var(--val) / 100)), 1em);--opacity:clamp(.2, calc(1 - sin(pi * var(--val) / 100)), .4);--color:rgb(0 0 0/var(--opacity));--primary:#fff;--secondary:#f0c27a;--wing:#e2e8f0;--val:0;--height:3em;appearance:none;height:var(--height);background:radial-gradient(circle at .35em 50%, var(--bg) .35em, #0000 0) no-repeat, radial-gradient(circle at calc(100% - .35em) 50%, var(--bg) .35em, #0000 0) no-repeat, linear-gradient(#0000 45%, var(--bg) 0 55%, #0000 0) 50% 50% / 99% 100%, #f000;cursor:pointer;-webkit-print-color-adjust:exact;print-color-adjust:exact;border:0;border-radius:10em;flex:1;min-width:0;position:relative;container-type:inline-size}.flight-component input:before,input.flight:before{content:"";width:calc(var(--val) * 1%);filter:drop-shadow(0 0 6px #f0c27a99);pointer-events:none;background:radial-gradient(circle at .35em,#f0c27a .35em,#0000 0) no-repeat,linear-gradient(#0000 45%,#f0c27a 0 55%,#0000 0) 50%/calc(100% - 1em) 100% no-repeat,#f000;min-width:.5em;height:100%;position:absolute;top:0;left:0}.flight-component input:after,input.flight:after{content:"";pointer-events:none;background-color:#0000;background-image:radial-gradient(3% 20% at 50% 20%,#fff 40%,#0000 0),radial-gradient(3% 20% at 52.5% 13%,#fff 40%,#0000 0),radial-gradient(2% 20% at 51% 10%,#fff 40%,#0000 0),radial-gradient(2.5% 20% at 51.5% 27%,#fff 50%,#0000 0),radial-gradient(2% 20% at 53% 23%,#fff 60%,#0000 0),radial-gradient(4% 40% at 55% 20%,#fff 40%,#0000 0),radial-gradient(3% 20% at 40% 80%,#fff 40%,#0000 0),radial-gradient(3% 20% at 42.5% 87%,#fff 40%,#0000 0),radial-gradient(2% 20% at 41% 90%,#fff 40%,#0000 0),radial-gradient(2.5% 20% at 41.5% 72%,#fff 50%,#0000 0),radial-gradient(2% 20% at 43% 73%,#fff 60%,#0000 0),radial-gradient(4% 40% at 40% 78%,#fff 40%,#0000 0);background-position:0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0;background-repeat:repeat,repeat,repeat,repeat,repeat,repeat,repeat,repeat,repeat,repeat,repeat,repeat;background-size:300% 100%;background-attachment:scroll,scroll,scroll,scroll,scroll,scroll,scroll,scroll,scroll,scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box,padding-box,padding-box,padding-box,padding-box,padding-box,padding-box,padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box,border-box,border-box,border-box,border-box,border-box,border-box,border-box,border-box,border-box;background-position:calc(var(--val) * 1%) 0;width:100%;height:12em;position:absolute;top:50%;left:0;transform:translateY(-50%);-webkit-mask:linear-gradient(90deg,#0000,#0008 35% 65%,#0000);mask:linear-gradient(90deg,#0000,#0008 35% 65%,#0000)}.flight-component input::-webkit-slider-runnable-track{z-index:1;-webkit-print-color-adjust:exact;print-color-adjust:exact;height:100%;position:relative}input.flight::-webkit-slider-runnable-track{z-index:1;-webkit-print-color-adjust:exact;print-color-adjust:exact;height:100%;position:relative}.flight-component input::-webkit-slider-thumb{appearance:none;transform:translateY(calc(-50% + var(--height) / 2)) scale(var(--scale));aspect-ratio:1;pointer-events:auto;background:linear-gradient(var(--secondary) 0 0) 2% 50% / 13% 2.5% no-repeat, conic-gradient(at -40% 50%, #0000 84.75deg, var(--primary) 85deg 95deg, #0000 95.25deg) 0 0 / 80% 100%, radial-gradient(closest-side circle at calc(100% - .85em) 50%, #9cf .3em, #0000 0), radial-gradient(20% 10% at 80% 50%, var(--primary) 99%, #0000), conic-gradient(at 45% -45%, #0000 150deg, var(--secondary) 151deg 174deg, #0000 175deg) -50% 40% / 53% 20%, conic-gradient(at 45% 145%, #0000 5deg, var(--secondary) 6deg 29deg, #0000 30deg) -50% 60% / 53% 20%, conic-gradient(at 38% -45%, #0000 158deg, var(--wing) 158.5deg 174deg, #0000 174.5deg) 0 0 / 100% 50%, conic-gradient(at 38% 145%, #0000 5deg, var(--wing) 5.5deg 21deg, #0000 21.5deg) 0 100% / 100% 50%, radial-gradient(80% 50%, #000 99%, #0000) 51% 22% / 21% 11%, radial-gradient(80% 50%, #000 99%, #0000) 51% 78% / 21% 11%;width:4em;filter:drop-shadow(calc(var(--shadow) * 2) calc(var(--shadow) * 1.25) var(--shadow) var(--color));box-shadow:none;-webkit-print-color-adjust:exact;print-color-adjust:exact;background-repeat:no-repeat;border-radius:20%/100%}input.flight::-webkit-slider-thumb{appearance:none;transform:translateY(calc(-50% + var(--height) / 2)) scale(var(--scale));aspect-ratio:1;pointer-events:auto;background:linear-gradient(var(--secondary) 0 0) 2% 50% / 13% 2.5% no-repeat, conic-gradient(at -40% 50%, #0000 84.75deg, var(--primary) 85deg 95deg, #0000 95.25deg) 0 0 / 80% 100%, radial-gradient(closest-side circle at calc(100% - .85em) 50%, #9cf .3em, #0000 0), radial-gradient(20% 10% at 80% 50%, var(--primary) 99%, #0000), conic-gradient(at 45% -45%, #0000 150deg, var(--secondary) 151deg 174deg, #0000 175deg) -50% 40% / 53% 20%, conic-gradient(at 45% 145%, #0000 5deg, var(--secondary) 6deg 29deg, #0000 30deg) -50% 60% / 53% 20%, conic-gradient(at 38% -45%, #0000 158deg, var(--wing) 158.5deg 174deg, #0000 174.5deg) 0 0 / 100% 50%, conic-gradient(at 38% 145%, #0000 5deg, var(--wing) 5.5deg 21deg, #0000 21.5deg) 0 100% / 100% 50%, radial-gradient(80% 50%, #000 99%, #0000) 51% 22% / 21% 11%, radial-gradient(80% 50%, #000 99%, #0000) 51% 78% / 21% 11%;width:4em;filter:drop-shadow(calc(var(--shadow) * 2) calc(var(--shadow) * 1.25) var(--shadow) var(--color));box-shadow:none;-webkit-print-color-adjust:exact;print-color-adjust:exact;background-repeat:no-repeat;border-radius:20%/100%}.flight-component input::-moz-range-track{background:0 0;border:0;height:100%}input.flight::-moz-range-track{background:0 0;border:0;height:100%}.flight-component input::-moz-range-thumb{appearance:none;transform:scale(var(--scale));pointer-events:auto;background:linear-gradient(var(--secondary) 0 0) 2% 50% / 13% 2.5% no-repeat, conic-gradient(at -40% 50%, #0000 84.75deg, var(--primary) 85deg 95deg, #0000 95.25deg) 0 0 / 80% 100%, radial-gradient(closest-side circle at calc(100% - .85em) 50%, #9cf .3em, #0000 0), radial-gradient(20% 10% at 80% 50%, var(--primary) 99%, #0000), conic-gradient(at 45% -45%, #0000 150deg, var(--secondary) 151deg 174deg, #0000 175deg) -50% 40% / 53% 20%, conic-gradient(at 45% 145%, #0000 5deg, var(--secondary) 6deg 29deg, #0000 30deg) -50% 60% / 53% 20%, conic-gradient(at 38% -45%, #0000 158deg, var(--wing) 158.5deg 174deg, #0000 174.5deg) 0 0 / 100% 50%, conic-gradient(at 38% 145%, #0000 5deg, var(--wing) 5.5deg 21deg, #0000 21.5deg) 0 100% / 100% 50%, radial-gradient(80% 50%, #000 99%, #0000) 51% 22% / 21% 11%, radial-gradient(80% 50%, #000 99%, #0000) 51% 78% / 21% 11%;width:4em;height:4em;filter:drop-shadow(calc(var(--shadow) * 2) calc(var(--shadow) * 1.25) var(--shadow) var(--color));box-shadow:none;-webkit-print-color-adjust:exact;print-color-adjust:exact;background-repeat:no-repeat;border:none;border-radius:20%/100%}input.flight::-moz-range-thumb{appearance:none;transform:scale(var(--scale));pointer-events:auto;background:linear-gradient(var(--secondary) 0 0) 2% 50% / 13% 2.5% no-repeat, conic-gradient(at -40% 50%, #0000 84.75deg, var(--primary) 85deg 95deg, #0000 95.25deg) 0 0 / 80% 100%, radial-gradient(closest-side circle at calc(100% - .85em) 50%, #9cf .3em, #0000 0), radial-gradient(20% 10% at 80% 50%, var(--primary) 99%, #0000), conic-gradient(at 45% -45%, #0000 150deg, var(--secondary) 151deg 174deg, #0000 175deg) -50% 40% / 53% 20%, conic-gradient(at 45% 145%, #0000 5deg, var(--secondary) 6deg 29deg, #0000 30deg) -50% 60% / 53% 20%, conic-gradient(at 38% -45%, #0000 158deg, var(--wing) 158.5deg 174deg, #0000 174.5deg) 0 0 / 100% 50%, conic-gradient(at 38% 145%, #0000 5deg, var(--wing) 5.5deg 21deg, #0000 21.5deg) 0 100% / 100% 50%, radial-gradient(80% 50%, #000 99%, #0000) 51% 22% / 21% 11%, radial-gradient(80% 50%, #000 99%, #0000) 51% 78% / 21% 11%;width:4em;height:4em;filter:drop-shadow(calc(var(--shadow) * 2) calc(var(--shadow) * 1.25) var(--shadow) var(--color));box-shadow:none;-webkit-print-color-adjust:exact;print-color-adjust:exact;background-repeat:no-repeat;border:none;border-radius:20%/100%}@container (width<=400px){.flight-component input:after,input.flight:after{display:none}.flight-component input::-webkit-slider-thumb{width:3.2em}input.flight::-webkit-slider-thumb{width:3.2em}.flight-component input::-moz-range-thumb{width:3.2em;height:3.2em}input.flight::-moz-range-thumb{width:3.2em;height:3.2em}}@media (width<=560px){.flight-progress{border-radius:16px;padding:.65rem .75rem}.flight-progress-summary strong{padding:.2rem .65rem;font-size:.75rem}.flight-component{gap:.45rem;font-size:.72rem}.flight-place{min-width:62px}}.celebration-garland-fullscreen{pointer-events:none;z-index:15;width:100vw;max-width:100%;height:64px;margin:0 0 -12px;position:relative;overflow:visible}.garland-rope-svg{filter:drop-shadow(0 3px 6px #00000073);width:100%;height:60px;position:absolute;top:0;left:0;overflow:visible}.garland-pennants-row{justify-content:space-around;align-items:flex-start;display:flex;position:absolute;top:14px;left:2%;right:2%}.garland-pennant-wrapper{transform-origin:top;flex-direction:column;align-items:center;animation:2.8s ease-in-out infinite alternate garlandSway;display:flex;position:relative}.garland-pennant{clip-path:polygon(0 0,100% 0,50% 100%);opacity:.94;border-top:2px solid #ffffffb3;width:22px;height:30px;transition:transform .2s;box-shadow:0 4px 12px #0006}.garland-fairy-light{border-radius:50%;width:7px;height:7px;animation:1.8s ease-in-out infinite alternate fairyLightTwinkle;position:absolute;top:-4px}.garland-flower{filter:drop-shadow(0 3px 8px #0000008c);font-size:1.6rem;animation:3s ease-in-out infinite alternate flowerPulse;position:absolute;top:-4px}.garland-flower--left{left:12px}.garland-flower--center{font-size:1.4rem;left:50%;transform:translate(-50%)}.garland-flower--right{right:12px}@keyframes garlandSway{0%{transform:rotate(-7deg)}50%{transform:rotate(1deg)}to{transform:rotate(7deg)}}@keyframes fairyLightTwinkle{0%{opacity:.4;transform:scale(.85)}to{opacity:1;transform:scale(1.3)}}@keyframes flowerPulse{0%{transform:scale(.92)rotate(-6deg)}to{transform:scale(1.12)rotate(6deg)}}@media (width<=768px){.celebration-garland-fullscreen{height:48px}.garland-pennant{width:14px;height:20px}.garland-flower{font-size:1.15rem}.garland-flower--center{display:none}}.celebration-container{z-index:5;flex-direction:column;align-items:center;width:100%;max-width:760px;margin:0 auto;display:flex;position:relative}.celebration-floating-particles{pointer-events:none;z-index:99;width:100vw;height:100vh;position:fixed;inset:0;overflow:hidden}.floating-particle{opacity:.75;filter:drop-shadow(0 4px 10px #00000080);font-size:clamp(1.8rem,3.5vw,2.6rem);animation:linear infinite floatUpwardFullscreen;position:absolute;bottom:-60px}@keyframes floatUpwardFullscreen{0%{opacity:0;transform:translateY(0)rotate(0)scale(.7)}12%{opacity:.85}85%{opacity:.85}to{opacity:0;transform:translateY(-110vh)rotate(360deg)scale(1.2)}}.celebration-card{-webkit-backdrop-filter:blur(20px);border-radius:var(--radius-xl,32px);text-align:center;width:100%;color:var(--text,#f8fafc);z-index:2;background:radial-gradient(circle at top,#f6d3652e 0%,#0a2432d1 65%,#05141ef0 100%);border:1.5px solid #f6d36573;padding:36px 28px 32px;position:relative;overflow:hidden;box-shadow:0 24px 60px -12px #000000b3,0 0 45px #f6d36540,inset 0 1px 2px #ffffff4d}.celebration-card-glow{pointer-events:none;background:radial-gradient(#f0c27a47 0%,#2ec4d61f 45%,#0000 70%);width:120%;height:100%;animation:4s ease-in-out infinite alternate celebrationPulse;position:absolute;top:-50%;left:50%;transform:translate(-50%)}@keyframes celebrationPulse{0%{opacity:.6;transform:translate(-50%)scale(.95)}to{opacity:1;transform:translate(-50%)scale(1.1)}}.celebration-status-pill{border-radius:var(--radius-full,9999px);letter-spacing:.08em;text-transform:uppercase;color:#ffe6a7;background:linear-gradient(135deg,#f6d36538,#2ec4d62e);border:1px solid #f6d36580;align-items:center;gap:8px;margin-bottom:18px;padding:6px 16px;font-size:.8rem;font-weight:700;display:inline-flex;box-shadow:0 4px 15px #f6d36533}.celebration-live-dot{background-color:#38ef7d;border-radius:50%;width:8px;height:8px;animation:1.2s ease-in-out infinite alternate liveDotPulse;box-shadow:0 0 10px #38ef7d}@keyframes liveDotPulse{0%{opacity:.6;transform:scale(.85)}to{opacity:1;transform:scale(1.3)}}.celebration-sparkle-icon{color:gold;font-size:.95rem;animation:3s linear infinite sparkleRotate}@keyframes sparkleRotate{0%{transform:rotate(0)scale(.9)}50%{transform:rotate(180deg)scale(1.2)}to{transform:rotate(360deg)scale(.9)}}.celebration-title{letter-spacing:-.02em;background:linear-gradient(135deg,#fff 10%,gold 50%,#ff8ed4 90%);-webkit-text-fill-color:transparent;filter:drop-shadow(0 3px 12px #f6d36573);-webkit-background-clip:text;background-clip:text;margin-bottom:14px;font-size:clamp(1.8rem,4vw,2.75rem);font-weight:800;line-height:1.15}.celebration-description{color:var(--text-muted,#cbd5e1);max-width:620px;margin:0 auto 26px;font-size:clamp(.95rem,1.8vw,1.12rem);line-height:1.6}.celebration-description strong{color:#fff;font-weight:700}.celebration-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;max-width:640px;margin:0 auto 28px;display:grid}.celebration-chip{border-radius:var(--radius-md,14px);text-align:left;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0f;border:1px solid #ffffff1f;align-items:center;gap:12px;padding:10px 14px;transition:transform .2s,border-color .2s;display:flex}.celebration-chip:hover{border-color:#f6d36566;transform:translateY(-2px)}.chip-icon{font-size:1.6rem;line-height:1}.chip-text{flex-direction:column;display:flex}.chip-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-dim,#94a3b8);font-size:.72rem;font-weight:600}.chip-val{color:var(--text,#f8fafc);font-size:.88rem;font-weight:600}.celebration-actions{flex-wrap:wrap;justify-content:center;gap:14px;margin-bottom:12px;display:flex}.celebration-btn{border-radius:var(--radius-full,9999px);cursor:pointer;border:none;justify-content:center;align-items:center;gap:8px;padding:12px 22px;font-family:inherit;font-size:.95rem;font-weight:700;transition:transform .18s cubic-bezier(.16,1,.3,1),box-shadow .18s,filter .18s;display:inline-flex;box-shadow:0 8px 20px -4px #0006}.celebration-btn:hover{filter:brightness(1.1);transform:translateY(-3px)scale(1.03)}.celebration-btn:active{transform:translateY(1px)scale(.97)}.celebration-btn--confetti{color:#1a0808;background:linear-gradient(135deg,#ff6b6b 0%,#ffa07a 50%,#ffd166 100%);box-shadow:0 8px 25px #ff6b6b66}.celebration-btn--toast{color:#211200;background:linear-gradient(135deg,#f6d365 0%,#fda085 100%);box-shadow:0 8px 25px #f6d36566}.celebration-btn--music{color:#03201f;background:linear-gradient(135deg,#2ec4d6 0%,#38ef7d 100%);box-shadow:0 8px 25px #2ec4d666}.btn-icon{font-size:1.2rem;line-height:1}.btn-icon-svg{font-size:1.15rem}.toast-cheers-bubble{border-radius:var(--radius-full,9999px);color:#fff;background:#f6d36533;border:1px solid #f6d36599;align-items:center;gap:8px;margin-top:14px;padding:8px 18px;font-size:.92rem;font-weight:600;display:inline-flex;box-shadow:0 6px 18px #0000004d}.toast-heart{color:#ff6b6b;fill:#ff6b6b}.celebration-back-btn{border-radius:var(--radius-full,9999px);color:var(--text-muted,#cbd5e1);cursor:pointer;background:0 0;border:1px dashed #ffffff4d;margin-top:20px;padding:6px 16px;font-size:.82rem;font-weight:500;transition:all .2s;display:inline-block}.celebration-back-btn:hover{color:#fff;background:#ffffff1a;border-color:#fff9}@media (width<=600px){.celebration-card{padding:26px 18px 24px}.celebration-grid{grid-template-columns:1fr}.celebration-actions{flex-direction:column;width:100%}.celebration-btn{width:100%}}:root{--bg-deep:#031219;--bg-main:#051a24;--bg-surface:#071c2694;--bg-surface-elevated:#0a2432c2;--bg-surface-card:#061922a6;--lagoon:#2ec4d6;--lagoon-bright:#38ef7d;--cyan-glow:#22d3ee;--cyan-deep:#0891b2;--sand:#f0c27a;--sand-bright:#f6d365;--sand-deep:#d99a42;--coral:#fb7185;--foam:#fff;--text:#f8fafc;--text-muted:#cbd5e1;--text-dim:#94a3b8;--stroke:#ffffff29;--stroke-soft:#ffffff14;--stroke-gold:#f0c27a59;--glass-highlight:inset 0 1px 1px #ffffff38;--shadow-luxe:0 28px 70px -16px #0009, 0 0 50px #0ea5e914;--shadow-card:0 18px 42px -10px #00000073;--shadow-glow:0 0 35px #f0c27a38;--font-sans:"Outfit", "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, sans-serif;--font-script:"Dancing Script", "Caveat", cursive;--radius-sm:8px;--radius-md:14px;--radius-lg:22px;--radius-xl:32px;--radius-full:9999px;--space-1:8px;--space-2:16px;--space-3:24px;--space-4:36px;--space-5:56px;--ease-spring:cubic-bezier(.16, 1, .3, 1);--dur-fast:.16s;--dur:.26s;--z-bg:0;--z-hero:2;--z-player:200;--z-lightbox:1000;--focus:0 0 0 3px var(--bg-deep), 0 0 0 5px var(--sand)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}html,body,#root{min-height:100%;font-family:var(--font-sans)}body{background-color:var(--bg-deep);color:var(--text);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6;overflow-x:hidden}img{max-width:100%;display:block}button,a,input{font-family:inherit}:focus-visible{box-shadow:var(--focus);outline:none}.ambient-backdrop{pointer-events:none;z-index:0;position:fixed;inset:0;overflow:hidden}.ambient-blob{filter:blur(90px);opacity:.28;will-change:transform;border-radius:50%;position:absolute}.ambient-blob-1{background:radial-gradient(circle,#2ec4d6 0%,#2ec4d600 70%);width:550px;height:550px;animation:24s ease-in-out infinite alternate ambientFloat1;top:-10%;left:15%}.ambient-blob-2{opacity:.22;background:radial-gradient(circle,#f0c27a 0%,#f0c27a00 70%);width:600px;height:600px;animation:28s ease-in-out infinite alternate ambientFloat2;top:35%;right:-8%}.ambient-blob-3{background:radial-gradient(circle,#0891b2 0%,#0891b200 70%);width:500px;height:500px;animation:22s ease-in-out infinite alternate ambientFloat3;bottom:5%;left:5%}@keyframes ambientFloat1{0%{transform:translate(0,0)scale(1)}to{transform:translate(60px,80px)scale(1.15)}}@keyframes ambientFloat2{0%{transform:translate(0,0)scale(1)}to{transform:translate(-70px,-50px)scale(1.1)}}@keyframes ambientFloat3{0%{transform:translate(0,0)scale(1)}to{transform:translate(50px,-60px)scale(1.2)}}.skip-link{z-index:2000;background:var(--sand);color:#1a1206;border-radius:var(--radius-full);transition:transform var(--dur-fast) var(--ease-spring);padding:.75rem 1.25rem;font-size:.9rem;font-weight:700;text-decoration:none;position:absolute;top:14px;left:14px;transform:translateY(-180%);box-shadow:0 10px 25px #0006}.skip-link:focus{transform:translateY(0)}.App{min-height:100dvh;position:relative}.hero{width:100%;min-height:100svh;padding:var(--space-4) var(--space-3) 5.5rem;place-items:center;display:grid;position:relative;overflow:hidden}.photo-bg{z-index:var(--z-bg);position:absolute;inset:0}.photo-bg-grid{grid-template-rows:repeat(2,1fr);grid-template-columns:repeat(3,1fr);gap:4px;display:grid;position:absolute;inset:0}.photo-cell-0,.photo-cell-1,.photo-cell-2,.photo-cell-3,.photo-cell-4,.photo-cell-5{position:relative;overflow:hidden}.photo-bg-face{will-change:opacity, transform;animation:kenburns 24s var(--ease-spring) infinite alternate;background-position:50%;background-size:cover;transition:opacity 2.4s ease-in-out;position:absolute;inset:-6%;transform:translateZ(0)}.photo-cell-1 .photo-bg-face{animation-delay:-6s}.photo-cell-2 .photo-bg-face{animation-delay:-11s}.photo-cell-3 .photo-bg-face{animation-delay:-3s}.photo-cell-4 .photo-bg-face{animation-delay:-15s}.photo-cell-5 .photo-bg-face{animation-delay:-8s}@keyframes kenburns{0%{transform:scale(1)translate(0,0)}to{transform:scale(1.08)translate(-1.5%,1.2%)}}.photo-bg-overlay{transition:opacity .8s var(--ease-spring);background:radial-gradient(130% 90% at 50% 15%,#03121940 0%,#031219a6 55%,#020c12eb 100%),linear-gradient(#04161e4d 0%,#031219d9 100%);position:absolute;inset:0}.hero.is-lit .photo-bg-overlay{opacity:.88}.photo-bg-grain{pointer-events:none;opacity:.18;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:absolute;inset:0}@media (width<=768px){.photo-bg-grid{grid-template-rows:repeat(2,1fr);grid-template-columns:repeat(2,1fr)}.photo-cell-4,.photo-cell-5{display:none}}@media (width<=480px){.photo-bg-grid{grid-template-rows:repeat(2,1fr);grid-template-columns:1fr}.photo-cell-2,.photo-cell-3{display:none}}.hero-lantern{z-index:var(--z-hero);width:100%;max-width:880px;position:relative}.hero-card{background:var(--bg-surface);-webkit-backdrop-filter:blur(32px)saturate(1.4);border-radius:var(--radius-xl);border:1px solid var(--stroke);width:100%;box-shadow:var(--shadow-luxe), var(--glass-highlight);text-align:center;opacity:0;filter:blur(12px);clip-path:circle(6% at 50% 16%);flex-direction:column;align-items:center;gap:.6rem;padding:2.8rem 2.4rem 2.4rem;display:flex;position:relative}.hero-card.is-lit{animation:lanternIgnite .82s var(--ease-spring) both}.hero-wick{pointer-events:none;opacity:0;background:radial-gradient(circle,#f0c27aa6 0%,#f0c27a00 70%);border-radius:50%;width:48px;height:48px;margin-left:-24px;position:absolute;top:10px;left:50%}.hero-card.is-lit .hero-wick{animation:lanternWick 1.1s var(--ease-spring) both, lanternFlicker 5s ease-in-out 1.2s infinite}@keyframes lanternIgnite{0%{opacity:.3;filter:blur(12px);clip-path:circle(6% at 50% 16%);box-shadow:0 0 #0000}to{opacity:1;filter:blur();clip-path:circle(160% at 50% 16%);box-shadow:var(--shadow-luxe), var(--glass-highlight), 0 0 80px #f0c27a29}}@keyframes lanternWick{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}@keyframes lanternFlicker{0%,to{opacity:.55;transform:scale(1)}35%{opacity:.9;transform:scale(1.1)}65%{opacity:.6;transform:scale(.95)}}.hero-meta{justify-content:center;margin-bottom:.2rem;display:flex}.header-badge{color:var(--sand);border-radius:var(--radius-full);letter-spacing:.03em;background:#f0c27a1f;border:1px solid #f0c27a59;align-items:center;gap:.55rem;min-height:42px;padding:.4rem 1.1rem;font-size:.88rem;font-weight:700;display:inline-flex;box-shadow:0 4px 16px #0003}.live-beacon{justify-content:center;align-items:center;width:10px;height:10px;margin-right:.1rem;display:inline-flex;position:relative}.live-beacon-dot{background:#38ef7d;border-radius:50%;width:7px;height:7px;box-shadow:0 0 8px #38ef7d}.live-beacon-ring{opacity:.7;border:1.5px solid #38ef7d;border-radius:50%;width:100%;height:100%;animation:2s cubic-bezier(0,0,.2,1) infinite beaconPulse;position:absolute}@keyframes beaconPulse{0%{opacity:.9;transform:scale(.9)}to{opacity:0;transform:scale(2.4)}}.badge-pin-icon,.badge-sun-icon{flex-shrink:0;font-size:1.05rem}.badge-sun-icon{color:#fbbf24}.badge-separator{background:#f0c27a99;border-radius:50%;width:4px;height:4px}.badge-temp{color:var(--foam);font-weight:600}.hero-main-title{letter-spacing:-.03em;text-wrap:balance;background:linear-gradient(#fff 0%,#fef3c7 70%,#fde68a 100%);-webkit-text-fill-color:transparent;filter:drop-shadow(0 4px 14px #0006);-webkit-background-clip:text;margin-top:.15rem;font-size:clamp(2.3rem,5.5vw,3.8rem);font-weight:800;line-height:1.1}.hero-subtitle{max-width:38ch;color:var(--text-muted);text-shadow:0 2px 10px #0006;text-wrap:balance;margin-top:.1rem;margin-bottom:.4rem;font-size:clamp(1.05rem,2.3vw,1.35rem);font-weight:500;line-height:1.45}.countdown-display-wrapper{width:100%;margin-top:.4rem}.countdown-heading-slot{min-height:6.2rem;margin-top:var(--space-2);flex-direction:column;justify-content:center;align-items:center;gap:.4rem;margin-bottom:.35rem;display:flex;position:relative}.phrase-badge{color:var(--lagoon);border-radius:var(--radius-full);letter-spacing:.06em;text-transform:uppercase;background:#2ec4d61f;border:1px solid #2ec4d652;align-items:center;gap:.4rem;padding:.2rem .75rem;font-size:.75rem;font-weight:700;display:inline-flex}.phrase-badge-icon{font-size:.85rem}.countdown-heading{font-family:var(--font-script);color:var(--foam);letter-spacing:.01em;text-shadow:0 2px 12px #00000080;text-wrap:balance;font-size:clamp(1.75rem,3.8vw,2.65rem);font-weight:700;line-height:1.25}.countdown-split-layout{flex-direction:column;align-items:center;gap:1rem;margin:1.1rem 0 .6rem;display:flex}.completed-text{font-family:var(--font-script);color:var(--sand-bright);text-shadow:0 0 24px #f0c27a80;animation:tripStart .75s var(--ease-spring) both;font-size:clamp(2.4rem,6.5vw,4rem);font-weight:700}@keyframes tripStart{0%{opacity:0;filter:blur(14px);transform:scale(.9)}to{opacity:1;filter:blur();transform:scale(1)}}.countdown-info{border-top:1px solid var(--stroke-soft);justify-content:center;width:100%;margin-top:1.4rem;padding-top:1.2rem;display:flex}.departure-ticket-pill{border:1px solid var(--stroke);border-radius:var(--radius-full);background:#ffffff0d;align-items:center;gap:.6rem;padding:.6rem 1.2rem;display:inline-flex;box-shadow:inset 0 1px #ffffff1a}.departure-ticket-pill .ticket-icon{color:var(--sand);flex-shrink:0;font-size:1.1rem}.departure-ticket-pill p{color:var(--text-muted);letter-spacing:.01em;font-size:clamp(.86rem,1.9vw,.96rem);font-weight:600}.scroll-indicator{z-index:var(--z-hero);letter-spacing:.14em;color:var(--text-dim);text-transform:uppercase;white-space:nowrap;font-size:.78rem;font-weight:700;position:absolute;bottom:1.6rem;left:50%;transform:translate(-50%)}.app-main{max-width:1280px;padding:var(--space-5) var(--space-3) var(--space-3);z-index:1;flex-direction:column;gap:3.5rem;margin:0 auto;display:flex;position:relative}.section-heading{text-align:center;margin-bottom:var(--space-3);flex-direction:column;align-items:center;gap:.35rem;display:flex}.section-pill{color:var(--lagoon);border-radius:var(--radius-full);letter-spacing:.06em;text-transform:uppercase;background:#2ec4d61a;border:1px solid #2ec4d64d;align-items:center;gap:.45rem;margin-bottom:.2rem;padding:.25rem .85rem;font-size:.78rem;font-weight:700;display:inline-flex}.section-pill-icon{font-size:.88rem}.section-heading h2{font-family:var(--font-script);color:var(--foam);text-shadow:0 2px 10px #0006;font-size:clamp(2rem,3.8vw,2.9rem);font-weight:700;line-height:1.2}.section-subtitle,.section-lede{color:var(--text-muted);text-align:center;max-width:44ch;margin:0 auto;font-size:1.02rem;font-weight:500;line-height:1.55}.map-section{background:var(--bg-surface);-webkit-backdrop-filter:blur(28px)saturate(1.4);border-radius:var(--radius-xl);border:1px solid var(--stroke);box-shadow:var(--shadow-card), var(--glass-highlight);flex-direction:column;gap:1.5rem;padding:2.5rem 2.2rem 2.4rem;display:flex}.resort-highlights{flex-wrap:wrap;justify-content:center;gap:.6rem;margin-top:-.5rem;display:flex}.resort-chip{border:1px solid var(--stroke-soft);color:var(--foam);border-radius:var(--radius-full);background:#ffffff0f;padding:.35rem .95rem;font-size:.84rem;font-weight:600;box-shadow:0 2px 8px #00000026}.map-container-wrapper{border-radius:var(--radius-lg);border:1px solid var(--stroke-soft);width:100%;overflow:hidden;box-shadow:0 12px 32px #00000059}.map-canvas{width:100%;height:440px}.map-loading{background:#03101699;place-items:center;width:100%;height:440px;display:grid}.map-loading-spinner{border:3px solid #2ec4d633;border-top-color:var(--lagoon);border-radius:50%;width:44px;height:44px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.map-card-fallback{text-align:center;background:linear-gradient(145deg,#08202cb3,#041219d9);justify-content:center;width:100%;padding:2.8rem 1.8rem;display:flex}.fallback-inner{flex-direction:column;align-items:center;gap:.6rem;max-width:540px;display:flex}.fallback-icon-wrap{background:#f0c27a26;border:1px solid #f0c27a66;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin-bottom:.2rem;display:flex}.fallback-pin{color:var(--sand);font-size:1.6rem}.fallback-inner h3{color:var(--foam);font-size:1.45rem;font-weight:800}.fallback-address{color:var(--sand);font-size:.95rem;font-weight:600}.fallback-note{color:var(--text-muted);font-size:.92rem;line-height:1.5}.map-info{color:#0f172a;padding:.2rem;font-size:.92rem;line-height:1.5}.map-actions{justify-content:center;margin-top:.2rem;display:flex}.map-action-btn{min-height:48px;color:var(--sand);border-radius:var(--radius-full);transition:all var(--dur) var(--ease-spring);background:#f0c27a1f;border:1.5px solid #f0c27a66;align-items:center;gap:.6rem;padding:.75rem 1.6rem;font-size:.94rem;font-weight:700;text-decoration:none;display:inline-flex;box-shadow:0 4px 16px #0003}.map-action-btn:hover{border-color:var(--sand);box-shadow:0 8px 24px #0000004d, var(--shadow-glow);background:#f0c27a38;transform:translateY(-2px)}.photo-grid-section{content-visibility:auto;contain-intrinsic-size:1200px;padding:.5rem 0 2rem}.photo-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));grid-auto-rows:230px;grid-auto-flow:dense;gap:14px;display:grid}.photo-tile{border-radius:var(--radius-md);border:1px solid var(--stroke-soft);height:100%;transition:transform var(--dur) var(--ease-spring), border-color var(--dur) ease, box-shadow var(--dur) ease;margin:0;position:relative;overflow:hidden;box-shadow:0 8px 24px #0000004d}.photo-tile:hover{border-color:var(--stroke-gold);transform:translateY(-4px);box-shadow:0 16px 36px #00000073,0 0 20px #f0c27a26}.photo-tile-btn{cursor:pointer;width:100%;height:100%;color:inherit;background:0 0;border:0;padding:0;display:block;position:relative}.photo-tile--tall{grid-row:span 2}.photo-tile img{object-fit:cover;width:100%;height:100%;transition:transform .6s var(--ease-spring), filter var(--dur) ease;display:block}.photo-tile-overlay{pointer-events:none;opacity:.6;transition:opacity var(--dur) ease;background:linear-gradient(#0000 60%,#041219bf 100%);position:absolute;inset:0}.photo-tile:hover img,.photo-tile:focus-visible img{filter:brightness(1.05)saturate(1.08);transform:scale(1.06)}.photo-tile:hover .photo-tile-overlay{opacity:.85}.photo-tile figcaption{opacity:0;transition:opacity var(--dur) ease;color:var(--foam);background:linear-gradient(#0000,#030e14e0);padding:.75rem 1rem;font-size:.84rem;font-style:italic;font-weight:500;position:absolute;bottom:0;left:0;right:0}.photo-tile:hover figcaption,.photo-tile:focus-visible figcaption{opacity:1}.album-link-wrapper{margin-top:var(--space-4);justify-content:center;display:flex}.album-link{min-height:48px;color:var(--sand);border-radius:var(--radius-full);transition:all var(--dur) var(--ease-spring);background:#f0c27a1f;border:1.5px solid #f0c27a73;align-items:center;gap:.6rem;padding:.75rem 1.8rem;font-size:.95rem;font-weight:700;text-decoration:none;display:inline-flex;box-shadow:0 4px 18px #00000040}.album-link:hover{border-color:var(--sand);box-shadow:0 10px 28px #00000059, var(--shadow-glow);background:#f0c27a3d;transform:translateY(-2px)}.lightbox-overlay{-webkit-backdrop-filter:blur(24px);z-index:var(--z-lightbox);cursor:pointer;background:#020a0eeb;place-items:center;padding:2rem 1.5rem;display:grid;position:fixed;inset:0}.lightbox-top-bar{z-index:1002;pointer-events:auto;justify-content:space-between;align-items:center;display:flex;position:absolute;top:1.5rem;left:1.5rem;right:1.5rem}.lightbox-counter{border:1px solid var(--stroke);color:var(--sand);border-radius:var(--radius-full);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff1a;padding:.4rem 1rem;font-size:.86rem;font-weight:700}.lightbox-content{flex-direction:column;align-items:center;gap:1.2rem;max-width:90vw;max-height:85vh;display:flex;position:relative}.lightbox-content img{object-fit:contain;border-radius:var(--radius-lg);max-width:100%;max-height:75vh;box-shadow:0 24px 60px #000000a6,0 0 0 1px #ffffff29}.lightbox-content figcaption,.lightbox-meta{color:var(--foam);text-align:center;border-radius:var(--radius-full);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--stroke);background:#ffffff1a;padding:.55rem 1.6rem;font-size:.95rem;font-weight:600}.lightbox-close,.lightbox-nav{color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);width:50px;height:50px;transition:background var(--dur-fast) ease, transform var(--dur-fast) var(--ease-spring);z-index:1001;background:#ffffff1a;border:1px solid #fff3;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute}.lightbox-close{font-size:1.6rem;position:relative;top:0;right:0}.lightbox-nav{font-size:1.5rem;top:50%;transform:translateY(-50%)}.lightbox-nav.prev{left:1.5rem}.lightbox-nav.next{right:1.5rem}.lightbox-close:hover,.lightbox-nav:hover{background:#ffffff40;transform:translateY(-50%)scale(1.08)}.lightbox-close:hover{transform:scale(1.08)}.lightbox-error{color:var(--sand);text-align:center;margin:0;padding:2.5rem 1.8rem;font-size:1.1rem;font-weight:600}.cocktail-widget{border-top:1px solid var(--stroke-soft);flex-direction:column;gap:1.2rem;width:100%;margin-top:1.6rem;padding-top:1.6rem;display:flex}.cocktail-header{justify-content:center;align-items:center;gap:.9rem;display:flex}.cocktail-icon-glow{background:#f0c27a26;border:1px solid #f0c27a59;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.cocktail-main-icon{color:var(--sand);font-size:1.3rem}.cocktail-header-text{text-align:left}.cocktail-header-text h3{color:var(--foam);font-size:1.05rem;font-weight:700}.cocktail-subtitle{color:var(--text-dim);font-size:.84rem}.cocktail-result{border-radius:var(--radius-lg);border:1px solid var(--stroke-gold);box-shadow:0 12px 30px #00000059, var(--shadow-glow);text-align:left;background:#04141cb3;padding:1.4rem}.cocktail-toast-banner{align-items:center;gap:.45rem;margin-bottom:.5rem;display:inline-flex}.toast-sparkle{color:var(--sand);font-size:.9rem}.cocktail-salud{font-family:var(--font-script);color:var(--sand);font-size:1.25rem;font-weight:700}.cocktail-error{color:var(--sand);text-align:center;font-size:.9rem}.cocktail-name{font-family:var(--font-script);color:var(--foam);margin-bottom:.35rem;font-size:1.75rem;font-weight:700}.cocktail-desc{color:var(--text-muted);margin-bottom:.9rem;font-size:.92rem;line-height:1.5}.cocktail-ingredients h5{text-transform:uppercase;letter-spacing:.08em;color:var(--lagoon);margin-bottom:.5rem;font-size:.76rem;font-weight:800}.ingredients-pills{flex-wrap:wrap;gap:.45rem;list-style:none;display:flex}.ingredient-pill{border:1px solid var(--stroke-soft);color:var(--foam);border-radius:var(--radius-full);background:#ffffff12;align-items:center;gap:.35rem;padding:.3rem .75rem;font-size:.82rem;font-weight:500;display:inline-flex}.ingredient-check{color:var(--sand);flex-shrink:0;font-size:.8rem}.music-player{z-index:var(--z-player);flex-direction:column;align-items:flex-end;gap:.6rem;display:flex;position:fixed;bottom:1.6rem;right:1.6rem}.music-pill-container{background:var(--bg-surface-elevated);-webkit-backdrop-filter:blur(24px);border:1px solid var(--stroke);border-radius:var(--radius-full);box-shadow:0 12px 32px #00000073, var(--glass-highlight);align-items:center;gap:.6rem;padding:.35rem;display:flex}.spectrum-container{padding-left:.85rem}.music-btn{width:52px;height:52px;color:var(--sand);cursor:pointer;transition:all var(--dur-fast) var(--ease-spring);background:linear-gradient(135deg,#f0c27a40 0%,#f0c27a1a 100%);border:1.5px solid #f0c27a8c;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1.25rem;display:flex;position:relative}.music-btn:hover{border-color:var(--sand);background:#f0c27a59}.music-btn.playing{animation:2.4s ease-in-out infinite pulseMusic}@keyframes pulseMusic{0%{box-shadow:0 0 #f0c27a80}70%{box-shadow:0 0 0 14px #f0c27a00}to{box-shadow:0 0 #f0c27a00}}.music-tooltip{background:var(--bg-surface-elevated);-webkit-backdrop-filter:blur(24px);border:1px solid var(--stroke);border-radius:var(--radius-md);text-align:right;flex-direction:column;gap:.2rem;padding:.75rem 1.1rem;display:flex;box-shadow:0 12px 28px #0006}.tooltip-tag{text-transform:uppercase;letter-spacing:.08em;color:var(--lagoon);justify-content:flex-end;align-items:center;gap:.35rem;font-size:.7rem;font-weight:800;display:inline-flex}.tooltip-title{color:var(--sand);font-size:.88rem;font-style:italic;font-weight:700}.tooltip-artist{color:var(--text-dim);font-size:.76rem}.spectrum-canvas{border-radius:4px;display:block}.app-footer{text-align:center;padding:var(--space-5) var(--space-2) 7rem;border-top:1px solid var(--stroke-soft);z-index:1;position:relative}.footer-inner{flex-direction:column;align-items:center;gap:.5rem;max-width:640px;margin:0 auto;display:flex}.footer-badge{border:1px solid var(--stroke-soft);color:var(--text-dim);border-radius:var(--radius-full);letter-spacing:.06em;text-transform:uppercase;background:#ffffff0f;align-items:center;gap:.45rem;margin-bottom:.4rem;padding:.3rem .9rem;font-size:.78rem;font-weight:700;display:inline-flex}.footer-badge-icon{color:var(--sand)}.footer-from{font-family:var(--font-script);color:var(--sand-bright);align-items:center;gap:.45rem;font-size:clamp(1.6rem,3.5vw,2.2rem);font-weight:700;display:inline-flex}.footer-heart-icon{color:var(--coral);animation:1.8s ease-in-out infinite heartPulse}@keyframes heartPulse{0%,to{transform:scale(1)}50%{transform:scale(1.25)}}.footer-thanks{color:var(--text-muted);font-size:1.02rem;font-weight:500}.footer-love{color:var(--foam);max-width:42ch;margin-inline:auto;font-size:1rem;font-style:italic;line-height:1.5}.footer-subtext{color:var(--text-dim);letter-spacing:.04em;text-transform:uppercase;margin-top:.8rem;font-size:.8rem}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg-deep)}::-webkit-scrollbar-thumb{background:#f0c27a59;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#f0c27a99}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=768px){.hero{padding:1.8rem 1.1rem 4.5rem}.hero-card{border-radius:26px;gap:.5rem;padding:2.1rem 1.4rem 1.8rem}.hero-main-title{font-size:clamp(2rem,8.5vw,2.7rem)}.hero-subtitle{font-size:1.05rem}.countdown-heading{font-size:1.6rem}.map-section{padding:1.8rem 1.2rem}.music-player{bottom:1.1rem;right:1.1rem}}@media (width<=480px){.hero-card{border-radius:22px;padding:1.6rem .95rem 1.5rem}.header-badge{gap:.4rem;padding:.35rem .85rem;font-size:.8rem}.photo-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-auto-rows:150px;gap:8px}.photo-tile figcaption{opacity:1;padding:.5rem .7rem;font-size:.76rem}.map-canvas,.map-loading{height:320px}.app-main{gap:2.5rem;padding:2rem .9rem 1.2rem}.lightbox-nav{width:44px;height:44px;top:auto;bottom:1.4rem;transform:none}.lightbox-nav:hover{transform:scale(1.05)}.lightbox-nav.prev{left:1.4rem}.lightbox-nav.next{right:1.4rem}}@media (width<=360px){.hero-card{padding:1.3rem .75rem 1.2rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.photo-bg-face,.music-btn.playing,.map-loading-spinner,.hero-card.is-lit,.hero-card.is-lit .hero-wick,.completed-text,.ambient-blob,.footer-heart-icon{animation:none!important}.hero-card{opacity:1;filter:none;clip-path:none}.hero-wick{display:none}.photo-tile img{transition:none}}
