.home-page{background:radial-gradient(circle at 12% 8%, #fffaf4f0, transparent 32%), repeating-linear-gradient(96deg, #845e4605 0 1px, transparent 1px 5px), var(--color-paper);color:var(--color-text);align-items:center;gap:var(--space-2);min-height:100dvh;padding:max(var(--space-3), env(safe-area-inset-top)) max(var(--space-4), env(safe-area-inset-right)) max(var(--space-3), env(safe-area-inset-bottom)) max(var(--space-4), env(safe-area-inset-left));text-align:center;flex-direction:column;justify-content:flex-start;display:flex;position:relative;overflow-x:clip}.home-page__music{border:1px solid var(--color-border);right:max(var(--space-3), env(safe-area-inset-right));top:max(var(--space-3), env(safe-area-inset-top));z-index:1;background:#fffaf4e0;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute}.home-page__music svg{fill:var(--color-action);width:1.1rem;height:1.1rem}.home-page__intro{animation:invitation-title-in var(--motion-focus) var(--ease-cinematic) both}.home-page__eyebrow,.home-page__welcome,.home-page__intro h1{margin:0}.home-page__eyebrow{color:var(--color-text-muted);font-family:var(--font-sans);letter-spacing:.22em;font-size:.64rem;font-weight:600;line-height:1.3}.home-page__intro h1{letter-spacing:.04em;margin-top:var(--space-1);font-size:clamp(1.55rem,7vw,2rem);font-weight:700;line-height:1.18}.home-page__welcome{color:var(--color-text-muted);letter-spacing:.14em;margin-top:.15rem;font-size:.78rem;line-height:1.5}.home-page__hero{border-radius:var(--radius-card);box-shadow:var(--shadow-photo);border:1px solid #fffaf4d1;flex:0 0 36dvh;width:27dvh;max-width:100%;height:36dvh}.home-page__wedding-info{max-width:35rem;padding:var(--space-3) 0 var(--space-3);flex-direction:column;align-items:center;width:100%;display:flex}.home-page__wedding-info-eyebrow{color:var(--color-brand);font-family:var(--font-sans);letter-spacing:.24em;margin:0 0 var(--space-2);font-size:.62rem}.home-page__wedding-info-copy{color:var(--color-text-muted);margin:0 0 var(--space-2);font-size:.78rem;line-height:1.8}.home-page__schedule time{align-items:baseline;gap:var(--space-3);justify-content:center;line-height:1;display:flex}.home-page__schedule span{letter-spacing:.04em;font-size:clamp(1.05rem,4.8vw,1.3rem)}.home-page__schedule strong{color:var(--color-brand);font-size:clamp(1.45rem,7vw,1.8rem);font-weight:500}.home-page__divider{color:#9b2531;align-items:center;gap:var(--space-3);margin:var(--space-4) 0;width:min(15rem,78vw);display:flex}.home-page__divider:before,.home-page__divider:after{background:var(--color-border);content:"";flex:1;height:1px}.home-page__divider span{border:1px solid;place-items:center;width:32px;height:32px;display:grid}.home-page__location h2{letter-spacing:.06em;margin:0;font-size:.98rem;font-weight:600;line-height:1.35}.home-page__location address{color:var(--color-text-muted);font-family:var(--font-sans);margin-top:.1rem;font-size:.7rem;font-style:normal;line-height:1.45}.home-page__actions{max-width:22rem;margin-top:var(--space-4);gap:.4rem;width:100%;display:grid}.home-page__action{border-radius:var(--radius-pill);font-family:var(--font-sans);letter-spacing:.04em;min-height:44px;padding:.65rem var(--space-4);justify-content:center;align-items:center;font-size:.82rem;font-weight:600;text-decoration:none;display:flex}.home-page__action--primary{background:var(--color-action);color:var(--color-surface)}.home-page__action--secondary{border:1px solid var(--color-border);color:var(--color-action);background:#fffaf48f}.home-page__action:focus-visible,.home-page__music:focus-visible{outline-offset:2px;outline:3px solid #a86e5280}@keyframes invitation-focus-in{0%{filter:blur(7px);opacity:.58;transform:scale(1.035)}to{filter:blur();opacity:1;transform:scale(1)}}@keyframes invitation-title-in{0%{opacity:0;transform:translateY(.5rem)}to{opacity:1;transform:translateY(0)}}@media (height<=720px){.home-page{gap:.35rem}.home-page__intro h1{font-size:1.45rem}.home-page__hero{flex-basis:34dvh;width:25.5dvh;height:34dvh}.home-page__action{padding-block:.5rem}}@media (prefers-reduced-motion:reduce){.home-page__intro{animation:none}}.cat-playground{width:100%;max-width:32rem;height:clamp(7.75rem,35vw,10.75rem);position:relative;overflow:hidden}.cat-playground__title{color:var(--color-text-muted);font-family:var(--font-sans);letter-spacing:.08em;pointer-events:none;text-align:center;z-index:2;margin:0;font-size:clamp(.72rem,3.2vw,.82rem);font-weight:500;line-height:1.4;position:absolute;inset:.125rem 0 auto}.cat-playground__canvas{width:100%;height:100%;position:absolute;inset:0}.cat-playground__hit-target{appearance:none;cursor:pointer;touch-action:manipulation;z-index:1;background:0 0;border:0;border-radius:50%;width:96px;height:104px;padding:0;position:absolute;top:0;left:0}.cat-playground__hit-target:disabled{cursor:default}.cat-playground__hit-target:focus-visible{outline-offset:-5px;outline:2px solid #a86e5294}.cat-playground__announcement{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){.cat-playground__hit-target{transition:none}}.waterdrop-stage{isolation:isolate;background:#efe9d8;position:relative;overflow:hidden}.waterdrop-stage:after{border-radius:inherit;content:"";pointer-events:none;z-index:2;position:absolute;inset:0;box-shadow:inset 0 0 42px #58362a14,inset 0 0 0 1px #ffffff29}.waterdrop-canvas{opacity:0;width:100%;height:100%;transition:opacity .22s;display:block}.waterdrop-canvas[data-ready=true]{opacity:1}.waterdrop-replay{cursor:pointer;touch-action:manipulation;z-index:3;background:0 0;border:0;padding:0;position:absolute;inset:0}.waterdrop-replay:focus-visible{outline-offset:-4px;outline:2px solid #ffffffeb}.waterdrop-status{color:#4a3029c2;font-family:var(--font-sans);letter-spacing:.08em;padding:var(--space-4);text-align:center;background:linear-gradient(145deg,#faf5e8,#eadfcb);justify-content:center;align-items:center;gap:.55rem;font-size:.72rem;display:flex;position:absolute;inset:0}.waterdrop-status__mark{background:var(--color-action);border-radius:70% 12% 68% 68%;flex:none;width:9px;height:11px;animation:1.4s ease-in-out infinite waterdrop-pulse;transform:rotate(45deg)}@keyframes waterdrop-pulse{50%{opacity:.4;transform:rotate(45deg)scale(.72)}}@media (prefers-reduced-motion:reduce){.waterdrop-canvas{transition-duration:80ms}.waterdrop-status__mark{animation:none}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-paper:#f8f3ea;--color-surface:#fffaf4;--color-text:#3f342e;--color-text-muted:#77665d;--color-brand:#a86e52;--color-action:#4c3e37;--color-border:#845e4638;--font-serif:Georgia, "Times New Roman", "Songti SC", SimSun, serif;--font-sans:system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--radius-card:18px;--radius-pill:999px;--shadow-photo:0 12px 34px #4c3e3724;--motion-focus:1.4s;--ease-cinematic:cubic-bezier(.22, 1, .36, 1)}*,:before,:after{box-sizing:border-box}html{background:var(--color-paper);color:var(--color-text);font-family:var(--font-serif);text-rendering:optimizelegibility;min-width:320px}body{min-width:320px;min-height:100vh;margin:0}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit;font:inherit}a{color:inherit}img,svg{display:block}
