.gracia-flight{position:fixed;inset:0 auto 0 max(8px,calc(50% - 704px));width:168px;z-index:15;pointer-events:none;isolation:isolate;contain:layout style}
.gracia-flight[hidden]{display:none}
.gracia-cloud{position:absolute;left:0;width:100%;pointer-events:none;opacity:0;visibility:hidden;--cloud-opacity:.55;--cloud-delay:.15s;transform:translate3d(var(--cloud-x,0px),var(--cloud-y,0px),0);transition:opacity .6s,visibility .6s;user-select:none}
.gracia-flight.is-visible .gracia-cloud{opacity:var(--cloud-opacity);visibility:visible}
.gracia-flight.is-visible .gracia-cloud-entrance{animation:gracia-cloud-arrive 2.6s var(--cloud-delay) cubic-bezier(.16,1,.3,1) both}
.gracia-cloud img{display:block;width:100%;height:auto;border:0;animation:gracia-drift 12s ease-in-out infinite alternate;transition:transform .7s ease}
.gracia-cloud:nth-child(1){top:17%;width:105%}
.gracia-cloud:nth-child(2){top:43%;width:82%;--cloud-opacity:.42;--cloud-delay:.6s}
.gracia-cloud:nth-child(2) img{animation-delay:-6s;animation-duration:15s}
.gracia-cloud:nth-child(3){top:73%;width:108%;--cloud-opacity:.36;--cloud-delay:1.05s}
.gracia-cloud:nth-child(3) img{animation-delay:-3s;animation-duration:17s}
.gracia-vessel{position:absolute;top:0;left:0;width:152px;height:168px;transform:translate3d(0,var(--flight-y,60vh),0);pointer-events:none;z-index:2;opacity:0;visibility:hidden;transition:opacity .9s ease,visibility .9s}
.gracia-vessel.is-visible{opacity:1;visibility:visible}
.gracia-vessel.is-arrived{opacity:0;visibility:hidden;transition:none}
.gracia-vessel:not(.is-visible) .gracia-launch{pointer-events:none}
.gracia-vessel.is-entering .gracia-launch{animation:gracia-arrive 1.8s cubic-bezier(.16,1,.3,1) both}
.gracia-launch{position:relative;display:block;width:100%;height:100%;padding:0;border:0;border-radius:45%;background:transparent;cursor:pointer;pointer-events:auto;-webkit-tap-highlight-color:transparent;color:var(--muted,#8b93a3)}
.gracia-launch:focus-visible{outline:2px solid var(--accent,#e0b35a);outline-offset:5px}
.gracia-ship{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 8px 12px #0008);animation:gracia-bob 5s ease-in-out infinite;transition:filter .25s;user-select:none}
.gracia-launch:hover .gracia-ship{filter:drop-shadow(0 0 12px #c8a57260)}
.gracia-caption{position:absolute;left:50%;bottom:-12px;transform:translateX(-50%);font:12px/1.4 Georgia,serif;white-space:nowrap;opacity:0;transition:opacity .2s;pointer-events:none;color:var(--text,#d8dbe2);background:#0f1115e8;padding:4px 8px;border-radius:4px}
.gracia-launch:hover .gracia-caption,.gracia-launch:focus-visible .gracia-caption{opacity:1}
.gracia-wake{position:absolute;left:50%;top:77%;width:2px;height:0;opacity:0;background:linear-gradient(#e0b35a,transparent);box-shadow:-9px -3px 8px #e0b35a60,9px 4px 8px #e0b35a60;pointer-events:none;transform:translateX(-50%)}
.gracia-flight.is-launching .gracia-launch{animation:gracia-takeoff var(--flight-duration,4500ms) linear both;pointer-events:none}
.gracia-flight.is-launching .gracia-ship{animation:none}
.gracia-flight.is-launching .gracia-wake{animation:gracia-wake var(--flight-duration,4500ms) ease-in-out both}
.gracia-flight.is-launching .gracia-cloud{opacity:.08}
.gracia-flight.is-launching .gracia-cloud img{animation:none;transform:translateX(-28px)}
.gracia-flight.is-launching .gracia-cloud:nth-child(2) img{transform:translateX(28px)}
.gracia-flight.is-launching .gracia-caption{opacity:0}
.gracia-flight.is-paused *{animation-play-state:paused!important}
@keyframes gracia-bob{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-6px) rotate(1deg)}}
@keyframes gracia-drift{from{transform:translateX(-5px)}to{transform:translateX(8px)}}
@keyframes gracia-cloud-arrive{0%{transform:translateY(105vh);opacity:0}15%{opacity:1}100%{transform:translateY(0);opacity:1}}
@keyframes gracia-arrive{0%{transform:translateY(var(--entry-travel,calc(100vh - var(--flight-y,60vh) + 180px))) rotate(-5deg)}80%{transform:translateY(-5px) rotate(1deg)}100%{transform:translateY(0) rotate(0)}}
@keyframes gracia-takeoff{0%{transform:translate(0,0) rotate(0);opacity:1;animation-timing-function:ease-in-out}9%{transform:translate(-3px,7px) rotate(-3deg);opacity:1;animation-timing-function:cubic-bezier(.42,0,.35,1)}80%{transform:translate(10px,-58vh) rotate(2deg);opacity:1;animation-timing-function:ease-in}100%{transform:translate(5px,-110vh) rotate(0);opacity:0}}
@keyframes gracia-wake{0%,8%{height:0;opacity:0}35%{height:42px;opacity:.55}75%{height:68px;opacity:.35}100%{height:90px;opacity:0}}
@media(max-width:1399px){.gracia-flight{inset:auto auto max(16px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left));width:58px;height:64px}.gracia-cloud{display:none}.gracia-vessel{position:relative;left:0;top:0;width:58px;height:64px;transform:none;--entry-travel:180px}.gracia-launch{background:transparent;border:0;border-radius:0}.gracia-caption{left:0;transform:none;bottom:70px}.gracia-ship{animation:none}}
.gracia-flight.is-reduced *{animation:none!important;transition:none!important}.gracia-flight.is-reduced .gracia-cloud{transform:none}.gracia-flight.is-reduced.is-launching .gracia-launch{transform:none;opacity:1}
.gracia-motion-control{border:0;padding:0;background:transparent;color:inherit;font:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.gracia-motion-control:focus-visible{outline:2px solid var(--accent,#e0b35a);outline-offset:4px}
@media print{.gracia-flight{display:none!important}}
