/* OMOIYARI — the look and the motion of the floating journey, lifted from askgigi-moments.css and dressed only by tokens.css. */
:root{--ground:#FFFFFF;--ink:#111111;--signal:#D8467A;--on-signal:#FFFFFF;--head:Georgia,serif;--body:system-ui,sans-serif;
--om-rise:1400ms;--om-fade:1100ms;--om-out:700ms;--om-ease:cubic-bezier(.22,.61,.36,1);--om-float:cubic-bezier(.16,.72,.24,1);--om-ease-out:cubic-bezier(.4,0,.7,.2)}
html.omoiyari-holding,html.omoiyari-holding body{height:100%;overflow:hidden;overscroll-behavior:none}
html.omoiyari-holding body{margin:0;background:var(--ground)}
.om-stage{position:fixed;inset:0;overflow:hidden}
.om-screen{--om-ink:var(--ink);--om-ground:var(--ground);--om-inset:.9rem;--om-breath:1.9rem;position:absolute;inset:0;background:var(--om-ground);color:var(--om-ink);font-family:var(--head);display:flex;flex-direction:column;justify-content:space-evenly;gap:clamp(1.6rem,4vh,2.6rem);
padding:calc(max(var(--om-inset),env(safe-area-inset-top)) + var(--om-breath)) calc(var(--om-inset) + var(--om-breath)) calc(max(var(--om-inset),env(safe-area-inset-bottom)) + var(--om-breath));opacity:0;transition:opacity 340ms var(--om-ease);text-align:center}
.om-screen.is-signal{--om-ink:var(--on-signal);--om-ground:var(--signal)}
.om-screen.is-here{opacity:1}
.om-screen.is-leaving{opacity:0;transition:opacity var(--om-out) var(--om-ease-out);pointer-events:none}
.om-floats{opacity:0;transform:translate3d(0,2.2rem,0);transition:opacity var(--om-fade) var(--om-ease) var(--om-wait,0ms),transform var(--om-rise) var(--om-float) var(--om-wait,0ms);will-change:opacity,transform}
.is-here .om-floats{opacity:1;transform:none}
.is-leaving .om-floats{transition:none}
.om-offer{max-width:34rem;margin:0 auto;width:100%}
.om-wordmark{font:500 clamp(3rem,14vw,6rem)/1 var(--head);letter-spacing:-.01em;display:flex;flex-direction:column}
.om-heading{margin:0;font:400 clamp(2rem,8.4vw,2.35rem)/1.24 var(--head);letter-spacing:-.004em;text-wrap:balance}
.om-sub{margin:1.2rem 0 0;font:italic 400 clamp(1.2rem,5.4vw,1.5rem)/1.45 var(--head);text-wrap:pretty}
.om-lines{display:flex;flex-direction:column;margin-top:1rem}
.om-line{margin:0;font:italic 400 clamp(1.3rem,5.9vw,1.6rem)/1.4 var(--head);text-wrap:balance}
.om-choices{display:flex;flex-direction:column;gap:.35rem;margin-top:1.6rem}
.om-chip{display:flex;align-items:center;justify-content:center;min-height:3.15rem;padding:.72rem .85rem;border:0;border-bottom:1px solid color-mix(in srgb,var(--om-ink) 26%,transparent);background:transparent;color:inherit;font:400 1.08rem/1.24 var(--head);cursor:pointer;transition:background-color .2s var(--om-ease),color .2s var(--om-ease);-webkit-tap-highlight-color:transparent}
.om-chip:hover,.om-chip:focus-visible,.om-chip.is-taken{background:var(--om-ink);color:var(--om-ground);outline:none}
.om-writing{margin-top:1.4rem;border-bottom:1px solid color-mix(in srgb,var(--om-ink) 40%,transparent)}
.om-field{display:block;width:100%;padding:0 .25rem .55rem;overflow:hidden;border:0;background:transparent;color:inherit;font:italic 400 clamp(1.9rem,8.6vw,2.2rem)/1.32 var(--head);letter-spacing:-.008em;text-align:center;resize:none;outline:none}
.om-field::placeholder{color:inherit;opacity:.38}
.om-onward{display:flex;flex-direction:column;align-items:center;gap:1rem}
.om-go{width:100%;max-width:20rem;min-height:3.3rem;padding:.95rem 1.9rem;border:1px solid var(--om-ink);background:var(--om-ink);color:var(--om-ground);font:400 .76rem var(--body);letter-spacing:.22em;text-indent:.22em;text-transform:uppercase;cursor:pointer;transition:opacity .2s}
.om-go:disabled{opacity:.35;cursor:default}
.om-back{position:absolute;left:max(.9rem,env(safe-area-inset-left));top:max(.9rem,env(safe-area-inset-top));width:2.4rem;height:2.4rem;border:0;background:transparent;color:inherit;cursor:pointer;opacity:.6}
.om-back svg{width:1.5rem;height:1.5rem;display:block;margin:auto}
.om-powered{margin:0;font:400 .74rem var(--body);letter-spacing:.2em;text-transform:uppercase;opacity:.7}
.om-powered a{color:inherit;text-decoration:underline;text-underline-offset:.3em}
@media(prefers-reduced-motion:reduce){.om-floats,.om-screen,.om-screen.is-leaving{transition:none!important;opacity:1;transform:none}}
