@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:400;font-display:swap;src:url(/baby/_next/static/media/fd3893c623c32b6d-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:400;font-display:swap;src:url(/baby/_next/static/media/ea896c3885e026c1-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:400;font-display:swap;src:url(/baby/_next/static/media/024ead497118aa23-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:400;font-display:swap;src:url(/baby/_next/static/media/e74f24ed7f0e4323-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:400;font-display:swap;src:url(/baby/_next/static/media/e18f83c737786aa7-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:500;font-display:swap;src:url(/baby/_next/static/media/fd3893c623c32b6d-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:500;font-display:swap;src:url(/baby/_next/static/media/ea896c3885e026c1-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:500;font-display:swap;src:url(/baby/_next/static/media/024ead497118aa23-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:500;font-display:swap;src:url(/baby/_next/static/media/e74f24ed7f0e4323-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:500;font-display:swap;src:url(/baby/_next/static/media/e18f83c737786aa7-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:600;font-display:swap;src:url(/baby/_next/static/media/fd3893c623c32b6d-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:600;font-display:swap;src:url(/baby/_next/static/media/ea896c3885e026c1-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:600;font-display:swap;src:url(/baby/_next/static/media/024ead497118aa23-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:600;font-display:swap;src:url(/baby/_next/static/media/e74f24ed7f0e4323-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:600;font-display:swap;src:url(/baby/_next/static/media/e18f83c737786aa7-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(/baby/_next/static/media/393d45a2251e223a-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(/baby/_next/static/media/8715d2ed531152f4-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(/baby/_next/static/media/c48b38fe8bb532f3-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(/baby/_next/static/media/48410f3df60da620-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(/baby/_next/static/media/7b89a4fd5e90ede0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(/baby/_next/static/media/393d45a2251e223a-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(/baby/_next/static/media/8715d2ed531152f4-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(/baby/_next/static/media/c48b38fe8bb532f3-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(/baby/_next/static/media/48410f3df60da620-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(/baby/_next/static/media/7b89a4fd5e90ede0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/baby/_next/static/media/393d45a2251e223a-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/baby/_next/static/media/8715d2ed531152f4-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/baby/_next/static/media/c48b38fe8bb532f3-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/baby/_next/static/media/48410f3df60da620-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/baby/_next/static/media/7b89a4fd5e90ede0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Cormorant Garamond Fallback;src:local("Times New Roman");ascent-override:95.27%;descent-override:29.59%;line-gap-override:0.00%;size-adjust:96.98%}.__className_1a4a0e{font-family:Cormorant Garamond,Cormorant Garamond Fallback}.__variable_1a4a0e{--font-serif:"Cormorant Garamond","Cormorant Garamond Fallback"}@font-face{font-family:Jost;font-style:normal;font-weight:300;font-display:swap;src:url(/baby/_next/static/media/b8c37bb59076c047-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Jost;font-style:normal;font-weight:300;font-display:swap;src:url(/baby/_next/static/media/5bbac197f803cc34-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Jost;font-style:normal;font-weight:300;font-display:swap;src:url(/baby/_next/static/media/9dd75fadc5b3df29-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Jost;font-style:normal;font-weight:400;font-display:swap;src:url(/baby/_next/static/media/b8c37bb59076c047-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Jost;font-style:normal;font-weight:400;font-display:swap;src:url(/baby/_next/static/media/5bbac197f803cc34-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Jost;font-style:normal;font-weight:400;font-display:swap;src:url(/baby/_next/static/media/9dd75fadc5b3df29-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Jost;font-style:normal;font-weight:500;font-display:swap;src:url(/baby/_next/static/media/b8c37bb59076c047-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Jost;font-style:normal;font-weight:500;font-display:swap;src:url(/baby/_next/static/media/5bbac197f803cc34-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Jost;font-style:normal;font-weight:500;font-display:swap;src:url(/baby/_next/static/media/9dd75fadc5b3df29-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Jost Fallback;src:local("Arial");ascent-override:111.45%;descent-override:39.06%;line-gap-override:0.00%;size-adjust:96.01%}.__className_521dec{font-family:Jost,Jost Fallback;font-style:normal}.__variable_521dec{--font-sans:"Jost","Jost Fallback"}:root{--emerald-950:#0a1f17;--emerald-900:#0f2c21;--emerald-800:#143a2b;--emerald-700:#1c4a37;--emerald-600:#255c45;--emerald-500:#2f7055;--emerald-400:#3f8a68;--gold:#cfae6a;--gold-light:#ecd9a6;--gold-deep:#a8843f;--cream:#f4eedf;--muted:rgba(244,238,223,0.68)}*{box-sizing:border-box}body,html{margin:0;padding:0}body{font-family:var(--font-sans),system-ui,sans-serif;color:var(--cream);background:var(--emerald-950);-webkit-font-smoothing:antialiased}.scene{position:relative;min-height:100dvh;display:grid;place-items:center;padding:0 16px;overflow:hidden;background:radial-gradient(ellipse at 50% 30%,rgba(63,138,104,.35),transparent 60%),radial-gradient(ellipse at 50% 110%,rgba(207,174,106,.12),transparent 50%),linear-gradient(180deg,var(--emerald-800),var(--emerald-950))}.foliage{position:fixed;inset:0;z-index:0;pointer-events:none}.fl{position:absolute;color:var(--emerald-700);animation:sway 7s ease-in-out infinite alternate}.fl-1{width:52vmin;left:-18vmin;top:-12vmin;rotate:150deg;transform-origin:20% 20%}.fl-2{width:58vmin;left:-22vmin;bottom:-8vmin;color:var(--emerald-800);transform-origin:30% 100%;animation-duration:9s}.fl-3{width:40vmin;left:-16vmin;top:38%;rotate:70deg;color:var(--emerald-600);opacity:.6;animation-duration:6s}.fl-4{width:54vmin;right:-20vmin;top:-14vmin;rotate:-150deg;transform-origin:80% 20%;animation-duration:8s}.fl-5{width:40vmin;right:-16vmin;top:46%;rotate:-70deg;color:var(--emerald-600);opacity:.6;animation-duration:7.5s}.fl-6{width:30vmin;right:-6vmin;bottom:18%;rotate:-20deg;color:var(--emerald-700);animation-duration:6.5s}.fl-7{width:50vmin;right:-20vmin;bottom:-14vmin;rotate:-30deg;transform-origin:100% 100%;animation-duration:10s}.fl-7,.fl-8{color:var(--emerald-800)}.fl-8{width:44vmin;right:-14vmin;top:18%;opacity:.8;animation-duration:11s}.fireflies{position:fixed;inset:0;z-index:1;pointer-events:none}.fireflies span{position:absolute;width:4px;height:4px;border-radius:50%;background:var(--gold-light);box-shadow:0 0 8px 3px rgba(236,217,166,.55);animation-name:ffDrift,ffGlow;animation-timing-function:ease-in-out;animation-iteration-count:infinite;animation-direction:alternate}.envelope-wrap{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;gap:26px;padding:40px 0;text-align:center}.for-you{margin:0;font-family:var(--font-serif),serif;font-style:italic;font-weight:500;font-size:clamp(32px,9vw,44px);color:var(--gold-light);animation:fadeUp 1s ease-out both}.tap-hint{margin:0;font-size:12px;text-transform:uppercase;letter-spacing:.35em;color:var(--muted);animation:hint 2s ease-in-out infinite}.envelope{position:relative;width:min(360px,86vw);aspect-ratio:3/2;padding:0;border:0;background:none;cursor:pointer;perspective:1000px;animation:hover 4s ease-in-out infinite;-webkit-tap-highlight-color:transparent}.envelope:focus-visible{outline:2px solid var(--gold);outline-offset:10px}.envelope>span{position:absolute;display:block}.env-back{inset:0;background:var(--emerald-900);border-radius:4px;box-shadow:0 30px 60px rgba(0,0,0,.45),inset 0 0 0 1px rgba(207,174,106,.4)}.letter{left:6%;right:6%;top:7%;bottom:5%;z-index:1;display:flex!important;flex-direction:column;align-items:center;gap:4px;padding-top:9%;background:var(--cream);border-radius:2px;box-shadow:inset 0 0 0 6px var(--cream),inset 0 0 0 7px var(--gold);transition:transform .8s cubic-bezier(.2,.8,.2,1) .5s}.letter-eyebrow{font-size:9px;letter-spacing:.3em;text-transform:uppercase;color:var(--gold-deep)}.letter-title{font-family:var(--font-serif),serif;font-style:italic;font-size:clamp(26px,7vw,34px);color:var(--emerald-700)}.env-front{inset:0;z-index:2;border-radius:4px;background:linear-gradient(160deg,var(--emerald-600),var(--emerald-700));-webkit-clip-path:polygon(0 0,50% 54%,100% 0,100% 100%,0 100%);clip-path:polygon(0 0,50% 54%,100% 0,100% 100%,0 100%)}.flap{left:0;right:0;top:0;height:60%;z-index:3;background:linear-gradient(180deg,var(--emerald-500),var(--emerald-600));-webkit-clip-path:polygon(0 0,100% 0,50% 100%);clip-path:polygon(0 0,100% 0,50% 100%);transform-origin:top center;transition:transform .6s ease-in-out,z-index 0s linear .3s}.seal{left:50%;top:60%;width:64px;height:64px;z-index:4;border-radius:50%;display:grid!important;place-items:center;background:radial-gradient(circle at 35% 30%,var(--gold-light),var(--gold) 55%,var(--gold-deep));box-shadow:0 6px 14px rgba(0,0,0,.35),inset 0 0 0 4px rgba(255,255,255,.18);color:var(--emerald-800);transform:translate(-50%,-50%);transition:transform .35s ease,opacity .35s ease;animation:pulse 2.4s ease-in-out infinite}.seal svg{width:58%;height:58%}.stage-curtain .envelope,.stage-opening .envelope{animation:none;cursor:default}.stage-curtain .seal,.stage-opening .seal{animation:none;transform:translate(-50%,-50%) scale(0);opacity:0}.stage-curtain .flap,.stage-opening .flap{transform:rotateX(180deg);z-index:0}.stage-curtain .letter,.stage-opening .letter{transform:translateY(-48%)}.stage-curtain .tap-hint,.stage-opening .tap-hint{visibility:hidden}.curtain{position:fixed;inset:0;z-index:10;pointer-events:none}.curtain-half{position:absolute;top:0;bottom:0;width:55%;background:var(--emerald-900)}.curtain-half.left{left:0}.curtain-half.right{right:0}.curtain-leaf{position:absolute;filter:drop-shadow(0 6px 14px rgba(0,0,0,.35))}.tone-1{color:var(--emerald-700)}.tone-2{color:var(--emerald-600)}.tone-3{color:var(--emerald-500)}.curtain.closing .left{animation:curtainInL .8s cubic-bezier(.3,.7,.3,1) both}.curtain.closing .right{animation:curtainInR .8s cubic-bezier(.3,.7,.3,1) both}.curtain.parting .left{animation:curtainOutL 1.6s cubic-bezier(.6,0,.3,1) .15s both}.curtain.parting .right{animation:curtainOutR 1.6s cubic-bezier(.6,0,.3,1) .15s both}.jungle{z-index:2;max-width:540px;display:flex;flex-direction:column;align-items:center}.band,.jungle{position:relative;width:100%}.band-top{height:200px}.band-ground{height:250px;margin-top:-6px}.animal{color:var(--gold);filter:drop-shadow(0 4px 10px rgba(0,0,0,.35))}.animal,.plant{position:absolute;display:block}.vines{inset:0;color:var(--emerald-400);pointer-events:none}.vine,.vines{position:absolute}.vine{top:0;width:20px;transform-origin:top center;animation:sway 8s ease-in-out infinite alternate}.sloth-wrap{position:absolute;top:-6px;left:4%;width:104px;transform-origin:10% 0;animation:swing 7s ease-in-out infinite alternate}.sloth{position:static;width:100%}.toucan{top:84px;right:4%;width:78px;transform-origin:50% 100%;animation:peck 5s ease-in-out infinite}.flock{position:absolute;width:76px;left:calc(50% - 50vw);color:rgba(244,238,223,.5);animation:flyAcross 22s linear infinite}.flock-1{top:36px}.flock-2{top:110px;width:52px;animation-duration:30s;animation-delay:-14s}.bird-wings{transform-box:fill-box;transform-origin:center;animation:flap .5s ease-in-out infinite alternate}.hummingbird-path{position:absolute;top:60px;left:36%;width:46px;animation:hoverPath 12s ease-in-out infinite}.hummingbird{position:static;width:100%;color:var(--gold-light);animation:buzz .18s linear infinite alternate}.butterfly{position:absolute;display:block;width:26px;color:var(--gold-light);pointer-events:none;z-index:3}.butterfly svg{display:block;width:100%;overflow:visible}.butterfly .wing{transform-origin:20px 16px;animation:flutter .22s ease-in-out infinite alternate}.bf-1{top:150px;left:64%;animation:drift1 14s ease-in-out infinite}.bf-2{top:34%;right:-10px;width:22px;animation:drift2 16s ease-in-out infinite}.bf-3{top:20px;left:26%;width:22px;color:var(--gold);animation:drift1 18s ease-in-out -6s infinite reverse}.card{position:relative;z-index:2;width:100%;padding:46px 30px 38px;text-align:center;background:linear-gradient(180deg,rgba(15,44,33,.94),rgba(10,31,23,.96));border:1px solid rgba(207,174,106,.55);outline:1px solid rgba(207,174,106,.22);outline-offset:-11px;border-radius:4px;box-shadow:0 40px 80px rgba(0,0,0,.5);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:cardIn 1.2s cubic-bezier(.2,.8,.2,1) .5s both}.corner{position:absolute;width:28px;height:28px;border:0 solid var(--gold)}.corner.tl{top:18px;left:18px;border-top-width:1.5px;border-left-width:1.5px}.corner.tr{top:18px;right:18px;border-top-width:1.5px;border-right-width:1.5px}.corner.bl{bottom:18px;left:18px;border-bottom-width:1.5px;border-left-width:1.5px}.corner.br{bottom:18px;right:18px;border-bottom-width:1.5px;border-right-width:1.5px}.guest{margin:0 0 14px;font-family:var(--font-serif),serif;font-style:italic;font-size:22px;color:var(--gold-light)}.crest{width:70px;height:70px;margin:0 auto 18px;display:grid;place-items:center;border:1px solid rgba(207,174,106,.6);border-radius:50%;color:var(--gold);box-shadow:0 0 0 5px rgba(207,174,106,.08)}.crest svg{width:40px;height:40px;animation:crestGlow 4s ease-in-out infinite}.eyebrow{margin:0;font-size:11px;font-weight:400;text-transform:uppercase;letter-spacing:.34em;color:var(--gold)}.title{margin:6px 0 14px;font-family:var(--font-serif),serif;font-style:italic;font-weight:500;font-size:clamp(54px,15vw,76px);line-height:1}.shimmer{background:linear-gradient(100deg,var(--gold-deep) 20%,var(--gold-light) 40%,#fff8e3 50%,var(--gold-light) 60%,var(--gold-deep) 80%);background-size:250% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:shimmer 6s linear infinite;padding:0 .06em}.honoring{margin:0;font-style:italic;font-size:19px;color:var(--muted)}.honoring,.parents{font-family:var(--font-serif),serif}.parents{margin:4px 0 0;font-weight:600;font-size:clamp(24px,7vw,29px);line-height:1.2;letter-spacing:.02em}.parents .name{display:block}.parents .amp{display:block;margin:2px 0;font-style:italic;font-weight:400;font-size:.8em;color:var(--gold)}.divider{display:flex;align-items:center;gap:12px;width:72%;margin:22px auto;color:var(--gold)}.divider span{flex:1 1;height:1px;background:linear-gradient(90deg,transparent,var(--gold))}.divider span:last-child{background:linear-gradient(90deg,var(--gold),transparent)}.divider svg{width:22px;height:22px}.tagline{margin:0;font-family:var(--font-serif),serif;font-style:italic;font-size:20px;color:var(--muted)}.details{margin:26px 0 0;display:grid;grid-gap:14px;gap:14px;text-align:left}.details div{display:grid;grid-template-columns:68px 1fr;grid-gap:12px;gap:12px;align-items:baseline;padding-bottom:14px;border-bottom:1px solid rgba(207,174,106,.16)}.details div:last-child{border-bottom:0;padding-bottom:0}.details dt{font-size:10.5px;text-transform:uppercase;letter-spacing:.28em;color:var(--gold)}.details dd{margin:0;font-size:16px;font-weight:300;line-height:1.5}.details a{color:var(--gold-light);-webkit-text-decoration-color:rgba(236,217,166,.4);text-decoration-color:rgba(236,217,166,.4);text-underline-offset:3px}.details .map-link{display:inline-block;margin-top:6px;font-size:12px;text-transform:uppercase;letter-spacing:.18em;text-decoration:none;border-bottom:1px solid rgba(236,217,166,.4);padding-bottom:2px}.note{margin:22px 0 0;font-size:14px;font-weight:300;color:var(--muted)}.actions{margin-top:26px}.btn-rsvp{position:relative;display:block;width:100%;overflow:hidden;border:0;cursor:pointer;font-family:inherit;padding:16px;background:linear-gradient(135deg,var(--gold-light),var(--gold) 50%,var(--gold-deep));color:var(--emerald-950);font-size:13px;font-weight:500;text-transform:uppercase;letter-spacing:.24em;text-decoration:none;border-radius:2px;transition:transform .2s ease,box-shadow .2s ease}.btn-rsvp:after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.55) 50%,transparent 70%);transform:translateX(-100%);animation:sheen 4.5s ease-in-out 3s infinite}.btn-rsvp:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(207,174,106,.25)}.btn-rsvp:disabled{opacity:.7;cursor:wait;transform:none}.rsvp-form{display:grid;grid-gap:18px;gap:18px;text-align:left;animation:fadeUp .5s ease-out both}.rsvp-field{display:grid;grid-gap:6px;gap:6px}.rsvp-choice legend,.rsvp-field>span{font-size:10.5px;text-transform:uppercase;letter-spacing:.28em;color:var(--gold)}.rsvp-field input,.rsvp-field select,.rsvp-field textarea{width:100%;padding:10px 2px;background:transparent;border:0;border-bottom:1px solid rgba(207,174,106,.4);border-radius:0;color:var(--cream);font:300 16px var(--font-sans),system-ui,sans-serif;resize:vertical}.rsvp-field select option{background:var(--emerald-900)}.rsvp-field input:focus,.rsvp-field select:focus,.rsvp-field textarea:focus{outline:none;border-bottom-color:var(--gold-light)}.rsvp-choice{margin:0;padding:0;border:0;display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.rsvp-choice legend{margin-bottom:8px;padding:0}.rsvp-choice label{position:relative;cursor:pointer}.rsvp-choice input{position:absolute;opacity:0}.rsvp-choice span{display:block;padding:12px 6px;border:1px solid rgba(207,174,106,.4);border-radius:2px;text-align:center;font-family:var(--font-serif),serif;font-style:italic;font-size:17px;color:var(--muted);transition:all .2s ease}.rsvp-choice input:checked+span{border-color:var(--gold);background:rgba(207,174,106,.14);color:var(--gold-light)}.rsvp-choice input:focus-visible+span{outline:1px solid var(--gold-light);outline-offset:2px}.rsvp-diet{margin:0;padding:0;border:0;display:grid;grid-gap:10px;gap:10px}.rsvp-diet legend{margin-bottom:8px;padding:0;font-size:10.5px;text-transform:uppercase;letter-spacing:.28em;color:var(--gold)}.rsvp-chips{display:flex;flex-wrap:wrap;gap:8px}.rsvp-chips label{position:relative;cursor:pointer}.rsvp-chips input{position:absolute;opacity:0}.rsvp-chips span{display:block;padding:7px 12px;border:1px solid rgba(207,174,106,.4);border-radius:999px;font-size:13px;color:var(--muted);transition:all .2s ease}.rsvp-chips input:checked+span{border-color:var(--gold);background:rgba(207,174,106,.14);color:var(--gold-light)}.rsvp-chips input:focus-visible+span{outline:1px solid var(--gold-light);outline-offset:2px}.rsvp-diet>input{width:100%;padding:10px 2px;background:transparent;border:0;border-bottom:1px solid rgba(207,174,106,.4);border-radius:0;color:var(--cream);font:300 16px var(--font-sans),system-ui,sans-serif}.rsvp-diet>input::placeholder{color:rgba(244,238,223,.4)}.rsvp-diet>input:focus{outline:none;border-bottom-color:var(--gold-light)}.rsvp-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}.rsvp-error{margin:0;font-size:14px;color:#f2a38f}.rsvp-thanks{margin:0;padding:16px 0;font-family:var(--font-serif),serif;font-style:italic;font-size:21px;color:var(--gold-light);animation:fadeUp .6s ease-out both}.cal-links{margin:16px 0 0;font-size:13px;font-weight:300;color:var(--muted)}.cal-links a{color:var(--gold-light);text-underline-offset:3px;-webkit-text-decoration-color:rgba(236,217,166,.4);text-decoration-color:rgba(236,217,166,.4)}.cal-links a,.details .map-link{position:relative}.cal-links a:before,.details .map-link:before{content:"";position:absolute;inset:-12px -6px}.palm-back{left:-10%;bottom:40px;width:180px;color:var(--emerald-700);transform-origin:40% 100%;animation:sway 9s ease-in-out infinite alternate}.giraffe{right:1%;bottom:30px;width:128px}.giraffe-neck{transform-origin:120px 190px;animation:giraffeSway 5s ease-in-out infinite alternate}.gorilla{left:4%;bottom:28px;width:98px;animation:breathe 3.5s ease-in-out infinite}.flamingo,.gorilla{transform-origin:50% 100%}.flamingo{left:38%;bottom:34px;width:62px;color:var(--gold-light);opacity:.9;animation:preen 6s ease-in-out infinite}.frog{right:33%;bottom:14px;width:38px;z-index:2;animation:hop 4s ease-in-out infinite}.walker{position:absolute;z-index:1}.elephant-walk{bottom:22px;width:132px;animation:walkRight 40s linear infinite}.elephant{position:static;width:100%;animation:stomp .7s ease-in-out infinite alternate}.zebra-walk{bottom:20px;display:flex;align-items:flex-end;gap:4px;animation:walkLeft 48s linear -30s infinite}.zebra-walk .animal-static{display:block;color:var(--gold);filter:drop-shadow(0 4px 10px rgba(0,0,0,.35));animation:stomp .6s ease-in-out infinite alternate}.zebra-walk .zebra{width:104px}.zebra-walk .zebra-baby{width:60px}.zebra-tail{transform-origin:182px 84px;animation:tailSwish 1.8s ease-in-out infinite alternate}.turtle-walk{bottom:6px;width:40px;z-index:4;animation:walkLeft 55s linear -20s infinite}.turtle{position:static;width:100%;rotate:-90deg;color:var(--gold-deep)}.grass-row{position:absolute;left:-6%;right:-6%;bottom:0;display:flex;justify-content:space-between;align-items:flex-end;z-index:3;pointer-events:none}.grass{position:static;width:17%;margin:0 -2%;color:var(--emerald-600);transform-origin:50% 100%;animation:sway 4.5s ease-in-out var(--d) infinite alternate}.grass:nth-child(2n){color:var(--emerald-500);width:14%}.credit{margin:6px 0 18px;font-size:10px;letter-spacing:.08em;color:rgba(244,238,223,.3)}.reveal{animation:fadeUp .8s ease-out calc(var(--d, 0s) + .9s) both}.band{animation:fadeIn 1.4s ease-out .6s both}@keyframes sway{0%{transform:rotate(-3deg)}to{transform:rotate(3deg)}}@keyframes swing{0%{transform:rotate(-7deg)}to{transform:rotate(6deg)}}@keyframes giraffeSway{0%{transform:rotate(-4deg)}to{transform:rotate(3deg)}}@keyframes hover{50%{transform:translateY(-8px)}}@keyframes hint{50%{opacity:.35}}@keyframes pulse{50%{transform:translate(-50%,-50%) scale(1.07)}}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}}@keyframes fadeIn{0%{opacity:0}}@keyframes cardIn{0%{opacity:0;transform:translateY(40px) scale(.96)}}@keyframes curtainInL{0%{transform:translateX(-115%)}}@keyframes curtainInR{0%{transform:translateX(115%)}}@keyframes curtainOutL{to{transform:translateX(-115%)}}@keyframes curtainOutR{to{transform:translateX(115%)}}@keyframes ffDrift{0%{transform:translate(0)}33%{transform:translate(24px,-30px)}66%{transform:translate(-18px,-12px)}to{transform:translate(10px,26px)}}@keyframes ffGlow{0%,to{opacity:.1}50%{opacity:1}}@keyframes shimmer{0%{background-position:100% 0}to{background-position:-150% 0}}@keyframes sheen{0%{transform:translateX(-100%)}30%,to{transform:translateX(100%)}}@keyframes crestGlow{50%{filter:drop-shadow(0 0 6px rgba(236,217,166,.6))}}@keyframes peck{0%,60%,to{transform:rotate(0)}70%{transform:rotate(-12deg)}80%{transform:rotate(4deg)}}@keyframes flyAcross{0%{transform:translateX(-120px)}to{transform:translateX(calc(100vw + 120px))}}@keyframes flap{to{transform:scaleY(-.6)}}@keyframes hoverPath{0%,to{transform:translate(0)}20%{transform:translate(70px,-20px)}40%{transform:translate(110px,30px) scaleX(-1)}60%{transform:translate(30px,50px) scaleX(-1)}80%{transform:translate(-50px,10px)}}@keyframes buzz{to{transform:translateY(-2px)}}@keyframes flutter{to{transform:scaleX(.25)}}@keyframes drift1{0%,to{transform:translate(0) rotate(-10deg)}25%{transform:translate(-60px,-30px) rotate(8deg)}50%{transform:translate(-20px,40px) rotate(-6deg)}75%{transform:translate(40px,10px) rotate(12deg)}}@keyframes drift2{0%,to{transform:translate(0) rotate(10deg)}30%{transform:translate(-50px,60px) rotate(-8deg)}60%{transform:translate(-10px,140px) rotate(6deg)}}@keyframes breathe{50%{transform:scale(1.03,1.05)}}@keyframes preen{0%,70%,to{transform:rotate(0)}80%{transform:rotate(-6deg)}90%{transform:rotate(3deg)}}@keyframes hop{0%,70%,to{transform:translateY(0)}78%{transform:translateY(-26px) rotate(-8deg)}86%{transform:translateY(0)}90%{transform:translateY(-8px)}}@keyframes walkRight{0%{left:-40%}to{left:110%}}@keyframes walkLeft{0%{left:110%}to{left:-20%}}@keyframes stomp{to{transform:translateY(-3px) rotate(1deg)}}.sides{display:none}@media (min-width:960px){.sides{display:block;position:fixed;inset:0;z-index:1;pointer-events:none;animation:fadeIn 1.6s ease-out 1s both}.side{position:absolute;top:0;bottom:0;width:calc((100vw - 560px) / 2)}.side.left{left:0}.side.right{right:0}.side>*{position:absolute}.animal-static{height:auto;color:var(--gold);filter:drop-shadow(0 4px 10px rgba(0,0,0,.35))}.animal-static,.branch{display:block;width:100%}.perch .animal{filter:drop-shadow(0 4px 10px rgba(0,0,0,.35))}.side-monkey{top:-8px;left:40%;width:clamp(80px,7vw,120px);transform-origin:50% 0;animation:swing 3.6s ease-in-out infinite alternate}.owl-perch{top:32%;left:0;width:72%}.owl{left:48%;bottom:46%;width:clamp(60px,5vw,92px);transform-origin:50% 100%;animation:owlTilt 7s ease-in-out infinite}.peek{width:clamp(110px,10vw,170px)}.tiger-peek{top:56%;left:0;animation:peekL 10s ease-in-out infinite}.lion-peek{top:54%;right:0;animation:peekR 12s ease-in-out -5s infinite}.family{display:flex;align-items:flex-end;gap:6px}.elephant-family{bottom:3%;animation:wander 34s ease-in-out infinite}.elephant-family .mama{width:clamp(120px,10vw,180px);order:2;animation:stomp .8s ease-in-out infinite alternate}.elephant-family .baby{width:clamp(64px,5.4vw,96px);order:1;animation:stomp .6s ease-in-out infinite alternate}.side-snake{top:0;right:30%;width:clamp(60px,5vw,90px);transform-origin:50% 0;animation:swing 6s ease-in-out infinite alternate}.snake-vine{display:block;width:20px;height:110px;margin:0 auto -6px}.snake{rotate:180deg;animation:slither 3s ease-in-out infinite alternate}.chameleon-perch{top:28%;right:0;width:72%}.chameleon-walk{position:absolute;bottom:40%;width:clamp(60px,5vw,90px);animation:creep 40s ease-in-out infinite alternate}.zebra-family{bottom:2.5%;right:50%;z-index:1;gap:8px}.zebra-family .mama{width:clamp(120px,9vw,170px)}.zebra-family .baby{width:clamp(66px,5vw,94px)}.tiger-peek{rotate:8deg}.giraffe-family{bottom:3%;right:5%;gap:10px}.giraffe-family .mama{width:clamp(120px,9.5vw,170px);order:2}.giraffe-family .baby{width:clamp(66px,5.2vw,94px);order:1}.giraffe-family .baby .giraffe-neck{animation-duration:3.5s;animation-delay:-1s}}@keyframes owlTilt{0%,40%,75%,to{transform:rotate(0)}50%{transform:rotate(-14deg)}62%{transform:rotate(10deg)}}@keyframes peekL{0%,12%,88%,to{transform:translateX(-105%)}28%,70%{transform:translateX(-18%)}}@keyframes peekR{0%,12%,88%,to{transform:translateX(105%)}28%,70%{transform:translateX(18%)}}@keyframes wander{0%{left:4%;scale:1 1}49.5%{left:52%;scale:1 1}50.5%{left:52%;scale:-1 1}to{left:4%;scale:-1 1}}@keyframes tailSwish{0%{transform:rotate(-12deg)}to{transform:rotate(14deg)}}@keyframes creep{0%{left:8%}to{left:58%}}@keyframes slither{0%{transform:skewX(-4deg) scaleY(1)}to{transform:skewX(4deg) scaleY(.94)}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.fireflies{display:none}}