@font-face{font-family:'Cormorant Garamond';src:url('fonts/cormorantgaramond.9971994f.woff2') format('woff2');font-weight:300 700;font-style:normal;font-display:swap}@font-face{font-family:'Cormorant Garamond';src:url('fonts/cormorantgaramond-italic.afc9a2f9.woff2') format('woff2');font-weight:300 700;font-style:italic;font-display:swap}@font-face{font-family:'Lora';src:url('fonts/lora.65727a94.woff2') format('woff2');font-weight:400 700;font-style:normal;font-display:swap}@font-face{font-family:'Lora';src:url('fonts/lora-italic.af17d148.woff2') format('woff2');font-weight:400 700;font-style:italic;font-display:swap}@font-face{font-family:'Manrope';src:url('fonts/manrope.a799f39d.woff2') format('woff2');font-weight:200 800;font-style:normal;font-display:swap}@font-face{font-family:'Bad Script';src:url('fonts/badscript.efe6052a.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:'Alegreya';src:url('fonts/alegreya.906fb639.woff2') format('woff2');font-weight:400 900;font-style:normal;font-display:swap}@font-face{font-family:'Alegreya';src:url('fonts/alegreya-italic.351d04e1.woff2') format('woff2');font-weight:400 900;font-style:italic;font-display:swap}@font-face{font-family:'Caveat';src:url('fonts/caveat-cyrillic.cb0aa78e.woff2') format('woff2');font-weight:400 700;font-style:normal;font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:'Caveat';src:url('fonts/caveat-latin-ext.93b3fdd6.woff2') format('woff2');font-weight:400 700;font-style:normal;font-display:swap;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:'Caveat';src:url('fonts/caveat-latin.7a0049db.woff2') format('woff2');font-weight:400 700;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,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:'Nunito';src:url('fonts/nunito-cyrillic.b63651df.woff2') format('woff2');font-weight:400 800;font-style:normal;font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:'Nunito';src:url('fonts/nunito-latin-ext.511ce967.woff2') format('woff2');font-weight:400 800;font-style:normal;font-display:swap;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:'Nunito';src:url('fonts/nunito-latin.20fc9b6f.woff2') format('woff2');font-weight:400 800;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,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:'Unbounded';src:url('fonts/unbounded-cyrillic.c3880f0c.woff2') format('woff2');font-weight:400 900;font-style:normal;font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:'Unbounded';src:url('fonts/unbounded-latin-ext.ed84482d.woff2') format('woff2');font-weight:400 900;font-style:normal;font-display:swap;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:'Unbounded';src:url('fonts/unbounded-latin.d7f07f8a.woff2') format('woff2');font-weight:400 900;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,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:'Rubik';src:url('fonts/rubik-cyrillic.963fc62d.woff2') format('woff2');font-weight:400 700;font-style:normal;font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:'Rubik';src:url('fonts/rubik-latin-ext.b11446f4.woff2') format('woff2');font-weight:400 700;font-style:normal;font-display:swap;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:'Rubik';src:url('fonts/rubik-latin.99ec7ccb.woff2') format('woff2');font-weight:400 700;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,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:'Marck Script';src:url('fonts/marckscript-cyrillic.ff7a375c.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:'Marck Script';src:url('fonts/marckscript-latin-ext.e5ce26f0.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap;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:'Marck Script';src:url('fonts/marckscript-latin.d71f9b38.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,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}.zv-classic{--page-bg:#ECE5D6;--bg:#F5F0E6;--surface:#FBF8F2;--surface-2:#EDE6D8;--text:#1F2A24;--text-2:#56605A;--accent:#234536;--on-accent:#F8F4EC;--accent-2:#7B6048;--line:#CBBFA6;--control:#8E8676;--danger:#A3352B;--danger-bg:#F6E6E0;--focus:#234536;--radius:2px;--radius-lg:2px;--photo-radius:0;--photo-filter:none;--font-names:'Cormorant Garamond','Times New Roman',serif;--font-display:'Cormorant Garamond','Times New Roman',serif;--font-text:'Lora',Georgia,serif;--font-label:'Cormorant Garamond','Times New Roman',serif;--names-size:56px;--names-size-lg:76px;--names-weight:500;--names-track:0;--display-weight:500;--h2-size:34px;--h2-size-lg:40px;--num-size:46px;--label-size:19px;--label-track:.18em;--label-weight:600;--label-color:var(--accent-2);--align:center;--flex-align:center;--measure-mx:auto;--btn-weight:500}.zv-minimal{--page-bg:#FFFFFF;--bg:#FFFFFF;--surface:#F4F3F1;--surface-2:#F4F3F1;--text:#141414;--text-2:#5C5C5C;--accent:#A64B2A;--on-accent:#FFFFFF;--accent-2:#A64B2A;--line:#E3E1DD;--control:#8A8782;--danger:#B3261E;--danger-bg:#FBECEA;--focus:#141414;--radius:0;--radius-lg:0;--photo-radius:0;--photo-filter:grayscale(1) contrast(1.05);--font-names:'Manrope','Helvetica Neue',Arial,sans-serif;--font-display:'Manrope','Helvetica Neue',Arial,sans-serif;--font-text:'Manrope','Helvetica Neue',Arial,sans-serif;--font-label:'Manrope','Helvetica Neue',Arial,sans-serif;--names-size:44px;--names-size-lg:60px;--names-weight:400;--names-track:-.02em;--display-weight:400;--h2-size:28px;--h2-size-lg:34px;--num-size:40px;--label-size:17px;--label-track:.12em;--label-weight:600;--label-color:var(--text-2);--align:left;--flex-align:flex-start;--measure-mx:0;--btn-weight:600}.zv-garden{--page-bg:#F7F2E7;--bg:#F7F2E7;--surface:#FFFCF5;--surface-2:#E8ECE0;--text:#2C362D;--text-2:#59655A;--accent:#4F6B4C;--on-accent:#FFFDF7;--accent-2:#94554F;--line:#D8CEBA;--control:#7F8573;--danger:#A33A2E;--danger-bg:#F7E4DE;--focus:#4F6B4C;--radius:14px;--radius-lg:20px;--photo-radius:180px 180px 20px 20px;--photo-filter:none;--font-names:'Bad Script','Segoe Script',cursive;--font-display:'Alegreya',Georgia,serif;--font-text:'Alegreya',Georgia,serif;--font-label:'Alegreya',Georgia,serif;--names-size:46px;--names-size-lg:64px;--names-weight:400;--names-track:0;--display-weight:500;--h2-size:32px;--h2-size-lg:38px;--num-size:44px;--label-size:19px;--label-track:.06em;--label-weight:500;--label-color:var(--accent-2);--align:center;--flex-align:center;--measure-mx:auto;--btn-weight:500}.zv-note{--page-bg:#F2E9D4;--bg:#FFF8E8;--surface:#FFFDF6;--surface-2:#FFF1C9;--text:#1F2F8C;--text-2:#4B5595;--accent:#1F2F8C;--on-accent:#FFF8E8;--accent-2:#4B5595;--coral:#E8552F;--marker:#FFE07A;--rule:#CBD2EE;--tape:rgba(255,224,122,.75);--line:#CBD2EE;--control:#1F2F8C;--danger:#A3301A;--danger-bg:#FDEBE4;--focus:#E8552F;--radius:16px;--radius-lg:22px;--photo-radius:4px;--photo-filter:none;--font-names:'Caveat','Segoe Print',cursive;--font-display:'Caveat','Segoe Print',cursive;--font-text:'Nunito','Segoe UI',Arial,sans-serif;--font-label:'Caveat','Segoe Print',cursive;--names-size:84px;--names-size-lg:84px;--names-weight:700;--names-track:-.01em;--display-weight:700;--h2-size:44px;--h2-size-lg:44px;--num-size:54px;--label-size:30px;--label-track:0;--label-weight:700;--label-color:var(--text);--align:left;--flex-align:flex-start;--measure-mx:0;--btn-weight:700}.zv-party{--page-bg:#F3E3CF;--bg:#FFF4E6;--surface:#FFFBF4;--surface-2:#FFE6A8;--text:#2A1F17;--text-2:#6B5547;--accent:#C53A27;--on-accent:#FFF4E6;--accent-2:#C53A27;--coral:#EE5A45;--olive:#5B6A1F;--butter:#FFD25A;--pink:#F9C2B4;--line:#E2C7AE;--control:#2A1F17;--danger:#A3301A;--danger-bg:#FDE4DC;--focus:#5B6A1F;--radius:18px;--radius-lg:30px;--photo-radius:50%;--photo-filter:none;--font-names:'Unbounded','Arial Black',sans-serif;--font-display:'Unbounded','Arial Black',sans-serif;--font-text:'Rubik','Segoe UI',Arial,sans-serif;--font-label:'Unbounded','Arial Black',sans-serif;--names-size:50px;--names-size-lg:50px;--names-weight:900;--names-track:-.03em;--display-weight:800;--h2-size:30px;--h2-size-lg:30px;--num-size:40px;--label-size:17px;--label-track:.02em;--label-weight:800;--label-color:var(--text);--align:left;--flex-align:flex-start;--measure-mx:0;--btn-weight:700}.zv-faience{--page-bg:#E9E4D8;--bg:#FBF8F2;--surface:#FFFFFF;--surface-2:#DCE5F7;--text:#18264F;--text-2:#4A5A86;--accent:#1D3C9B;--on-accent:#FBF8F2;--accent-2:#1D3C9B;--pale:#DCE5F7;--mid:#8BA0DA;--line:#8BA0DA;--control:#4A5A86;--danger:#9B1C1C;--danger-bg:#F8E3E3;--focus:#1D3C9B;--radius:16px;--radius-lg:28px;--photo-radius:130px 130px 14px 14px;--photo-filter:grayscale(1) contrast(1.15);--font-names:'Marck Script','Segoe Script',cursive;--font-display:'Marck Script','Segoe Script',cursive;--font-text:'Lora',Georgia,serif;--font-label:'Lora',Georgia,serif;--names-size:64px;--names-size-lg:64px;--names-weight:400;--names-track:-.03em;--display-weight:400;--h2-size:46px;--h2-size-lg:46px;--num-size:40px;--label-size:15px;--label-track:.22em;--label-weight:600;--label-color:var(--accent);--align:center;--flex-align:center;--measure-mx:auto;--btn-weight:600}.zv{container-type:inline-size;background:var(--page-bg);color:var(--text);font-family:var(--font-text);font-size:18px;line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-variant-numeric:lining-nums}body.zv{margin:0;min-height:100vh}.zv [hidden]{display:none !important}.zv *,.zv *::before,.zv *::after{box-sizing:border-box}.zv a{color:inherit;text-underline-offset:.18em;text-decoration-thickness:1px}.zv img{max-width:100%}.zv-page{position:relative;overflow:hidden}.zv .inv{position:relative;max-width:600px;margin:0 auto;background:var(--bg)}.zv .sr{position:absolute !important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.zv .ic{width:22px;height:22px;flex:none;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.zv .ic-sm{width:18px;height:18px}.zv:not(.zv-classic) .only-classic,.zv:not(.zv-minimal) .only-minimal,.zv:not(.zv-garden) .only-garden{display:none !important}.zv .sec{position:relative;padding:56px 24px;text-align:var(--align)}.zv .label{display:block;margin:0 0 14px;font-family:var(--font-label);font-size:var(--label-size);font-weight:var(--label-weight);letter-spacing:var(--label-track);text-transform:uppercase;color:var(--label-color);line-height:1.3}.zv-minimal .label::before{content:"";display:inline-block;width:24px;height:1px;margin:0 12px 0 0;vertical-align:.32em;background:var(--accent)}.zv-garden .label{text-transform:none;font-style:italic;font-size:21px}.zv .h2{margin:0 0 16px;font-family:var(--font-display);font-size:var(--h2-size);font-weight:var(--display-weight);line-height:1.15;letter-spacing:var(--names-track);text-wrap:balance}.zv .p{margin:0 var(--measure-mx) 14px;max-width:32em;text-wrap:pretty}.zv .p:last-child{margin-bottom:0}.zv .muted{color:var(--text-2)}.zv .small{font-size:17px}.zv .orn{display:flex;justify-content:var(--flex-align);padding:0 24px;color:var(--line)}.zv .orn svg{width:168px;height:14px;fill:none;stroke:currentColor;stroke-width:1}.zv .orn hr{width:100%;margin:0;border:0;border-top:1px solid var(--line)}.zv .orn .sprig{display:block;width:150px;height:40px;background:url('decor/garden-sprig.fb0aef60.webp') no-repeat center / contain}.zv .cover{position:relative;padding:76px 32px 68px;min-height:660px;display:flex;flex-direction:column;justify-content:center;align-items:var(--flex-align);gap:22px;text-align:var(--align)}.zv .cover.has-photo{justify-content:flex-start;min-height:0;padding-top:0}.zv .cover-photo{width:100%;margin:0 0 6px}.zv .cover-photo img{display:block;width:100%;height:auto;aspect-ratio:4 / 5;object-fit:cover;border-radius:var(--photo-radius);filter:var(--photo-filter)}.zv-classic .cover.has-photo{padding-top:44px}.zv-classic .cover-photo{padding:10px;border:1px solid var(--line);background:var(--surface)}.zv-minimal .cover.has-photo .cover-photo{width:calc(100% + 64px);margin-left:-32px;margin-right:-32px}.zv-garden .cover.has-photo{padding-top:56px}.zv .kicker{font-family:var(--font-label);font-size:var(--label-size);font-weight:var(--label-weight);letter-spacing:var(--label-track);text-transform:uppercase;color:var(--label-color);margin:0}.zv-classic .kicker{font-size:17px;letter-spacing:.12em}.zv-garden .kicker{text-transform:none;font-style:italic;font-size:21px;letter-spacing:.02em}.zv .names{margin:0;font-family:var(--font-names);font-size:var(--names-size);font-weight:var(--names-weight);letter-spacing:var(--names-track);line-height:1.04;color:var(--text);overflow-wrap:anywhere}.zv .names .n{display:block}.zv .names .and{display:block;margin:.08em 0 .1em;font-family:var(--font-display);font-style:italic;font-weight:400;font-size:.46em;color:var(--accent-2);letter-spacing:0}.zv-minimal .names .and{font-style:normal;color:var(--text-2);font-size:.5em;margin:.18em 0 .14em}.zv-garden .names{color:var(--accent);line-height:1.12}.zv .when{margin:0;display:flex;flex-direction:column;gap:2px;align-items:var(--flex-align)}.zv .when .d{font-family:var(--font-display);font-size:26px;font-weight:var(--display-weight);line-height:1.25}.zv-classic .when .d{font-size:28px}.zv-minimal .when .d{color:var(--accent);font-weight:500;font-size:24px;letter-spacing:.02em}.zv .when .c{color:var(--text-2);font-size:18px}.zv .frame{position:absolute;inset:14px;border:1px solid var(--line);pointer-events:none}.zv .frame::after{content:"";position:absolute;inset:5px;border:1px solid var(--line)}.zv .corner{position:absolute;width:34px;height:34px;color:var(--accent-2);fill:none;stroke:currentColor;stroke-width:1;background:var(--bg)}.zv .corner.tl{top:-6px;left:-6px}.zv .corner.tr{top:-6px;right:-6px;transform:scaleX(-1)}.zv .corner.bl{bottom:-6px;left:-6px;transform:scaleY(-1)}.zv .corner.br{bottom:-6px;right:-6px;transform:scale(-1,-1)}.zv .mono{position:relative;width:132px;height:132px;display:grid;place-items:center;color:var(--accent-2)}.zv .mono>*{grid-area:1 / 1}.zv .mono svg.ring{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1}.zv .mono .wreath{position:absolute;inset:-34px;background:url('decor/garden-wreath.51225fe8.webp') no-repeat center / contain}.zv .mono .ml{position:relative;font-family:var(--font-display);font-size:40px;line-height:1;color:var(--text);display:flex;align-items:center;gap:8px;font-weight:var(--display-weight)}.zv .mono .ml i{font-style:normal;font-size:22px;color:var(--accent-2)}.zv-garden .mono{width:150px;height:150px}.zv-garden .mono .ml{font-family:var(--font-names);color:var(--accent);font-size:40px}.zv-minimal .mono{width:auto;height:auto}.zv-minimal .mono .ml{font-size:34px;letter-spacing:.04em;gap:14px}.zv-minimal .mono .ml i{width:28px;height:1px;background:var(--accent);font-size:0}.zv .wc{position:absolute;pointer-events:none;width:190px;height:190px;z-index:1;background:no-repeat center / contain}.zv .wc.tl{top:-10px;left:-12px;background-image:url('decor/garden-branch-corner.558ca465.webp')}.zv .wc.br{bottom:-10px;right:-12px;transform:rotate(180deg);background-image:url('decor/garden-branch-corner-2.3e14d0b9.webp')}.zv .wc-page{display:none}.zv .greet .h2{margin-bottom:20px}.zv .timer{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:8px auto 0;max-width:420px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.zv-minimal .timer{margin-left:0}.zv .timer>div{padding:18px 4px 16px;text-align:center;display:flex;flex-direction:column;gap:2px}.zv .timer>div + div{border-left:1px solid var(--line)}.zv .timer b{font-family:var(--font-display);font-size:var(--num-size);font-weight:var(--display-weight);line-height:1;font-variant-numeric:lining-nums tabular-nums}.zv-minimal .timer b{color:var(--accent);font-weight:300}.zv-garden .timer{border:0;gap:10px}.zv-garden .timer>div{background:var(--surface-2);border-radius:var(--radius)}.zv-garden .timer>div + div{border-left:0}.zv .timer span{font-size:17px;color:var(--text-2)}.zv .day{margin:-6px var(--measure-mx) 18px;color:var(--text-2)}.zv .prog{list-style:none;margin:0 auto;padding:0;max-width:440px;text-align:left}.zv-minimal .prog{margin-left:0;max-width:none}.zv .prog li{display:grid;grid-template-columns:72px minmax(0,1fr);column-gap:16px;padding:14px 0 15px;border-top:1px solid var(--line)}.zv .prog li:last-child{border-bottom:1px solid var(--line)}.zv .prog time{font-family:var(--font-display);font-size:24px;font-weight:var(--display-weight);line-height:1.2;font-variant-numeric:lining-nums tabular-nums;color:var(--accent)}.zv-classic .prog time{font-size:26px}.zv-minimal .prog time{font-size:20px;font-weight:600;color:var(--text);padding-top:2px}.zv .prog .t{display:block;line-height:1.35}.zv .prog .w{display:block;color:var(--text-2);font-size:17px;line-height:1.4;margin-top:2px}.zv .venue{font-family:var(--font-display);font-size:28px;font-weight:var(--display-weight);line-height:1.2;margin:0 0 10px;text-wrap:balance}.zv .addr{margin:0 var(--measure-mx) 14px;max-width:22em;font-style:normal;text-wrap:pretty}.zv .how{margin:0 var(--measure-mx) 24px;max-width:30em;color:var(--text-2);font-size:17px}.zv .actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-width:440px;margin:0 auto}.zv-minimal .actions{margin-left:0}.zv .actions .wide{grid-column:1 / -1}.zv .actions .btn{padding-left:10px;padding-right:10px}.zv .bus{list-style:none;margin:4px auto 18px;padding:0;max-width:440px;text-align:left;display:grid;gap:10px}.zv .bus li{display:grid;grid-template-columns:28px minmax(0,1fr);gap:12px;align-items:start;padding:16px 18px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.zv .bus .ic{margin-top:2px;color:var(--accent)}.zv .bus b{display:block;font-weight:600}.zv .swatches{list-style:none;padding:0;margin:22px 0 0;display:flex;flex-wrap:wrap;justify-content:var(--flex-align);gap:18px 12px}.zv .swatches li{width:74px;display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;font-size:17px;line-height:1.25;color:var(--text-2)}.zv .swatches i{display:block;width:52px;height:52px;border-radius:50%;box-shadow:inset 0 0 0 1px rgba(0,0,0,.12)}.zv-minimal .swatches i{border-radius:0}.zv .btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:13px 22px;width:100%;font:inherit;font-size:18px;font-weight:var(--btn-weight);line-height:1.25;text-align:center;text-decoration:none;color:var(--on-accent);background:var(--accent);border:1px solid var(--accent);border-radius:var(--radius);cursor:pointer;-webkit-tap-highlight-color:transparent;white-space:normal}.zv .btn-2{color:var(--accent);background:transparent;border-color:var(--accent)}.zv .btn-3{color:var(--text);background:transparent;border-color:transparent;text-decoration:underline;text-underline-offset:.2em;min-height:52px;width:auto;padding:10px 6px}.zv .btn-lg{min-height:58px;font-size:19px}.zv a:focus-visible,.zv .btn:focus-visible,.zv .choice:focus-within,.zv .opt:focus-within,.zv .seg label:focus-within,.zv .input:focus-visible,.zv .acc-btn:focus-visible,.zv .check:focus-within{outline:3px solid var(--focus);outline-offset:2px}.zv .btn[disabled]{opacity:.75;cursor:default}.zv .spin{width:20px;height:20px;border-radius:50%;border:2px solid currentColor;border-right-color:transparent;animation:zv-spin .8s linear infinite}@keyframes zv-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.zv .spin{animation-duration:2.4s}}.zv .acc{max-width:520px;margin:4px auto 0;text-align:left;border-bottom:1px solid var(--line)}.zv-minimal .acc{margin-left:0;max-width:none}.zv .acc-item{border-top:1px solid var(--line)}.zv .acc-btn{display:flex;width:100%;align-items:center;justify-content:space-between;gap:16px;min-height:60px;padding:14px 0;color:var(--text);font-size:18px;font-weight:600;text-align:left;cursor:pointer;list-style:none}.zv .acc-btn::-webkit-details-marker{display:none}.zv-classic .acc-btn{font-weight:500}.zv .acc-btn .ic{transition:transform .2s;color:var(--accent)}.zv .acc-item[open] .acc-btn .ic{transform:rotate(180deg)}.zv .acc-panel{padding:0 36px 18px 0;color:var(--text-2)}.zv .acc-panel p{margin:0}@media (prefers-reduced-motion:reduce){.zv .acc-btn .ic{transition:none}}.zv .person{margin:0 0 4px;font-family:var(--font-display);font-size:26px;font-weight:var(--display-weight);line-height:1.25}.zv .role{margin:0 var(--measure-mx) 18px;color:var(--text-2)}.zv .contact-btn{max-width:340px}.zv .foot{margin-top:0;font-size:18px;color:var(--text);padding:48px 24px 40px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:18px;border-top:1px solid var(--line)}.zv .foot .btn{max-width:340px}.zv .foot .sig{font-family:var(--font-names);font-size:30px;line-height:1.2;color:var(--text);margin:8px 0 0}.zv-garden .foot .sig{color:var(--accent)}.zv .foot .made{font-size:17px;color:var(--text-2);margin:6px 0 0}.zv .foot .legal-links{font-size:17px;line-height:1.4;color:var(--text-2);margin:-12px 0 0;max-width:100%;overflow-wrap:anywhere}.zv .foot .legal-links a{display:inline-block;padding:10px 2px}.zv .foot .complaint-note{margin:-8px 0 0;max-width:30em;font-size:17px;line-height:1.45;color:var(--text-2)}.zv .gallery{display:grid;gap:14px;margin:8px auto 0;max-width:520px}.zv-minimal .gallery{margin-left:0;max-width:none}.zv .gallery img{display:block;width:100%;height:auto;border-radius:var(--photo-radius);filter:var(--photo-filter)}.zv-garden .gallery img{border-radius:var(--radius-lg)}.zv .toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);z-index:50;display:flex;gap:10px;align-items:center;padding:14px 20px;background:var(--text);color:var(--bg);border-radius:var(--radius);font-size:17px;box-shadow:0 8px 24px rgba(0,0,0,.18)}@container (min-width:720px){.zv-page{padding:72px 24px 96px}.zv-page{--names-size:var(--names-size-lg);--h2-size:var(--h2-size-lg)}.zv .inv{box-shadow:0 1px 0 rgba(0,0,0,.02)}.zv .sec{padding:64px 48px}.zv .orn{padding:0 48px}.zv .cover{padding:96px 56px 88px;min-height:760px}.zv-minimal .cover.has-photo .cover-photo{width:calc(100% + 112px);margin-left:-56px;margin-right:-56px}.zv-classic .inv{outline:1px solid var(--line);outline-offset:10px}.zv-minimal .zv-page{padding-top:0}.zv .wc-cover{display:none}.zv .wc-page{display:block;width:400px;height:400px}.zv .wc-page.tl{top:-24px;left:-24px}.zv .wc-page.br{bottom:-24px;right:-24px}.zv .card{padding:32px 32px 34px}.zv .foot{padding:56px 48px 48px}}.zv .demo-note{margin:-12px var(--measure-mx) 24px;max-width:30em;padding:12px 16px;font-size:17px;line-height:1.45;color:var(--text);background:var(--surface-2);border-radius:var(--radius);text-align:left}.zv-sprite{position:absolute;width:0;height:0;overflow:hidden}.zv .dd{display:block;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;overflow:visible;--d-fill:var(--surface-2)}.zv .shape{display:block;fill:currentColor}.zv-classic{--doodle:#7B6048;--doodle-fill:#EADBC8;--joy:#9E5248}.zv-minimal{--doodle:#141414;--doodle-fill:rgba(166,75,42,.16);--joy:#A64B2A}.zv-garden{--doodle:#4F6B4C;--doodle-fill:rgba(211,169,162,.5);--joy:#94554F}.zv-classic .dd,.zv-minimal .dd,.zv-garden .dd{color:var(--doodle);stroke-width:1.6;--d-fill:var(--doodle-fill)}.zv .kids{display:flex;justify-content:center;gap:16px;margin:22px 0 8px}.zv .kid{margin:0;width:46%;max-width:200px;text-align:center}.zv .kid .pic{aspect-ratio:1;overflow:hidden;border-radius:var(--photo-radius);background:var(--surface-2);display:grid;place-items:center}.zv-garden .kid .pic{border-radius:50%}.zv .kids img{display:block;width:100%;height:100%;object-fit:cover;filter:var(--photo-filter)}.zv .ph{display:grid;place-items:center;width:100%;height:100%}.zv .ph .dd{width:84%;height:84%}.zv .kid figcaption{margin-top:10px;font-family:var(--font-display);font-size:24px;font-weight:var(--display-weight);line-height:1.2}.zv .together{margin:16px 0 0;text-align:center;font-family:var(--font-display);font-size:24px;font-weight:var(--display-weight);line-height:1.25}.zv .story{list-style:none;margin:8px auto 0;padding:0;max-width:440px;display:grid;gap:20px;text-align:left}.zv .story li{display:grid;grid-template-columns:52px minmax(0,1fr);gap:16px;align-items:start}.zv .story .dd{width:52px;height:52px}.zv .story b{display:block;font-family:var(--font-display);font-size:28px;font-weight:var(--display-weight);line-height:1.1;color:var(--accent)}.zv .story p{margin:2px 0 0}.zv .cal{margin:4px auto 0;max-width:340px;text-align:center}.zv-minimal .cal-box{max-width:340px}.zv .cal-m{margin:0 0 12px;font-family:var(--font-display);font-size:28px;font-weight:var(--display-weight);line-height:1.1}.zv .cal-g{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px 0;font-size:17px;font-variant-numeric:lining-nums tabular-nums}.zv .cal-w{font-size:14px;color:var(--text-2);text-transform:uppercase;letter-spacing:.06em;padding-bottom:4px}.zv .cal-g>span{position:relative;height:38px;display:grid;place-items:center}.zv .cal-day b{position:relative;z-index:1;font-weight:700;color:var(--accent)}.zv .cal-day .mark{position:absolute;left:50%;top:50%;width:52px;height:48px;margin:-24px 0 0 -26px;--d-fill:transparent}.zv .cal-when{margin:14px 0 0;text-align:center;color:var(--text-2)}.zv .countdown{margin-top:30px}.zv .cnt-l{margin:0 0 8px;text-align:center;font-size:17px;color:var(--text-2)}.zv .place + .place{margin-top:40px;padding-top:32px;border-top:1px solid var(--line)}.zv .place-t{margin:0 var(--measure-mx) 8px;font-size:17px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-2)}.zv .place-photo{margin:0 auto 18px;max-width:360px;overflow:hidden;overflow:clip;border-radius:var(--photo-radius)}.zv-minimal .place-photo{margin-left:0}.zv .place-photo img{display:block;width:100%;height:auto;aspect-ratio:4 / 5;object-fit:cover;filter:var(--photo-filter)}.zv .transfer{margin-top:44px}.zv .h3{margin:0 0 10px;font-family:var(--font-display);font-size:30px;font-weight:var(--display-weight);line-height:1.1}.zv .menu{list-style:none;margin:14px auto 0;padding:0;max-width:440px;text-align:left}.zv-minimal .menu{margin-left:0}.zv .menu li{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}.zv .menu li:first-child{border-top:1px solid var(--line)}.zv .menu li .dd{width:30px;height:30px;flex:none}.zv .drinks{margin:14px var(--measure-mx) 0;max-width:30em;color:var(--text-2);font-size:17px}.zv .wish-cards{list-style:none;margin:8px auto 0;padding:0;max-width:480px;display:grid;gap:14px;text-align:left}.zv-minimal .wish-cards{margin-left:0}.zv .wish-card{display:grid;grid-template-columns:48px minmax(0,1fr);gap:14px;align-items:start;padding:18px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg)}.zv .wish-card .dd{width:48px;height:48px}.zv .wish-card h3{margin:0 0 4px;font-family:var(--font-display);font-size:24px;font-weight:var(--display-weight);line-height:1.15}.zv .wish-card p{margin:0;font-size:17px}.zv .second{display:grid;grid-template-columns:56px minmax(0,1fr);gap:16px;align-items:start;max-width:440px;margin:0 auto;text-align:left}.zv-minimal .second{margin-left:0}.zv .second .dd{width:56px;height:56px}.zv .second-sec .addr{margin-top:14px}.zv .contact + .contact{margin-top:28px}.zv .people{display:grid;gap:12px;margin-top:16px;text-align:left}.zv .contact-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;background:var(--surface);border-radius:18px}.zv .contact-row b{display:block;font-family:var(--font-display);font-size:28px;font-weight:var(--display-weight);line-height:1.1}.zv .contact-row small{display:block;margin-top:2px;color:var(--text-2);font-size:17px}.zv .contact-row a{flex:none;display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--accent);color:var(--on-accent)}.zv .contact-row a .dd{width:30px;height:30px;color:var(--on-accent);--d-fill:transparent}.zv-note .inv,.zv-party .inv,.zv-faience .inv{max-width:480px;overflow:hidden;overflow:clip}.zv-note .cover,.zv-party .cover,.zv-faience .cover{display:block;min-height:0;gap:0}.zv-note .lead,.zv-party .lead,.zv-faience .lead{margin:0 0 12px}.zv-note .lead:last-child,.zv-party .lead:last-child,.zv-faience .lead:last-child{margin-bottom:0}.zv-note .small,.zv-party .small,.zv-faience .small{font-size:17px}.zv-note .foot,.zv-party .foot,.zv-faience .foot{border-top:0}.zv .foot .big{margin:0;font-family:var(--font-display);line-height:1}.zv-note .h,.zv-party .h,.zv-faience .h{overflow-wrap:anywhere;text-wrap:balance}.zv-note{background-image:radial-gradient(rgba(31,47,140,.12) 1.2px,transparent 1.4px);background-size:18px 18px}.zv-note .dd{--d-fill:var(--marker)}.zv-note .dd.coral{color:var(--coral);--d-fill:rgba(232,85,47,.18)}.zv-note .h{margin:0 0 14px;font:700 44px/1 var(--font-display);letter-spacing:.01em}.zv-note .h .dd{display:inline-block;width:44px;height:44px;vertical-align:-8px;margin-left:6px}.zv-note mark{background:linear-gradient(transparent 52%,var(--marker) 52%,var(--marker) 90%,transparent 90%);color:inherit;padding:0 .12em}.zv-note .sec{padding:56px 24px}.zv-note .sec + .sec{padding-top:24px}.zv-note .cover{padding:max(92px,calc(min(100vw,480px) * .24 + 18px)) 24px 64px;min-height:720px;text-align:center}.zv-note .garland{position:absolute;top:0;left:-8px;width:calc(100% + 16px);height:auto;color:var(--text);transform-origin:50% 0}.zv-note .kicker{margin:0 0 4px;font:600 26px/1.2 var(--font-display);letter-spacing:0;text-transform:none;color:var(--text-2)}.zv-note .title{margin:0;font:700 84px/.92 var(--font-display);letter-spacing:-.01em}.zv-note .eq{margin:22px 0 6px;font:600 46px/1.1 var(--font-display);display:flex;justify-content:center;align-items:center;gap:10px;flex-wrap:wrap;overflow-wrap:anywhere}.zv-note .eq .dd{width:54px;height:54px}.zv-note .date{margin:18px 0 0;font:700 40px/1.1 var(--font-display)}.zv-note .cover-where{margin:6px 0 0;color:var(--text-2)}.zv-note .float{position:absolute;width:64px;height:64px}.zv-note .f1{top:128px;left:10px;width:58px}.zv-note .f2{top:150px;right:6px;width:70px;height:70px}.zv-note .f3{top:330px;left:12px;width:44px}.zv-note .f4{top:432px;right:14px;width:60px;height:60px}.zv-note .f5{bottom:28px;left:38%;width:52px}.zv-note .cover-note{position:relative;margin:34px auto 0;max-width:300px;padding:18px 20px 16px;background:var(--surface);box-shadow:0 10px 24px -14px rgba(31,47,140,.45);--zv-rest:-2deg;rotate:var(--zv-rest);text-align:left}.zv-note .cover-note::before{content:"";position:absolute;top:-12px;left:50%;width:92px;height:26px;margin-left:-46px;background:var(--tape);rotate:3deg}.zv-note .cover-note p{margin:0 0 8px}.zv-note .cover-note p:last-child{margin-bottom:0}.zv-note .cover-note .to{font:700 30px/1.1 var(--font-display);margin-bottom:6px}.zv-note .torn{background:var(--text);color:var(--bg);margin-top:16px;padding-top:70px;padding-bottom:72px;--torn-top:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 400 24%27 preserveAspectRatio=%27none%27%3E%3Cpath d=%27M0 24V6L11 10L20 8L33 4L47 3L60 4L70 7L87 4L99 9L117 9L130 13L140 12L152 4L162 6L179 5L194 9L206 8L216 4L227 10L240 6L255 8L267 11L283 5L298 8L316 10L328 13L338 7L354 5L368 3L384 11L399 12L400 10V24Z%27/%3E%3C/svg%3E");--torn-bottom:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 400 24%27 preserveAspectRatio=%27none%27%3E%3Cpath d=%27M0 0V15L15 16L32 12L46 14L56 14L71 11L88 18L101 14L110 16L121 20L131 13L141 19L154 12L164 17L178 12L195 12L207 17L220 12L238 19L249 19L260 16L275 18L284 17L297 15L315 14L330 15L345 20L363 13L381 13L394 17L400 15V0Z%27/%3E%3C/svg%3E");-webkit-mask:var(--torn-top) top / 100% 24px no-repeat,var(--torn-bottom) bottom / 100% 24px no-repeat,linear-gradient(#000,#000) center / 100% calc(100% - 46px) no-repeat;mask:var(--torn-top) top / 100% 24px no-repeat,var(--torn-bottom) bottom / 100% 24px no-repeat,linear-gradient(#000,#000) center / 100% calc(100% - 46px) no-repeat}.zv-note .torn .h{color:var(--marker)}.zv-note .torn .lead{color:#EEF0FB}.zv-note .torn .together{color:var(--marker);font:700 32px/1.1 var(--font-display)}.zv-note .torn + .sec{padding-top:56px}.zv-note .kids{gap:14px;margin:26px 0 22px}.zv-note .polaroid{position:relative;width:150px;margin:0;background:#FFFFFF;padding:9px 9px 34px;box-shadow:0 14px 28px -12px rgba(0,0,0,.5);color:var(--text);rotate:var(--zv-rest,0deg)}.zv-note .polaroid.p2{margin-top:18px}.zv-note .polaroid .pic{aspect-ratio:1;background:#EAF0FF;display:grid;place-items:center;overflow:hidden}.zv-note .polaroid .ph .dd{stroke-width:2.2}.zv-note .polaroid figcaption{position:absolute;left:0;right:0;bottom:4px;text-align:center;font:700 22px/1 var(--font-display)}.zv-note .polaroid::before{content:"";position:absolute;top:-10px;left:50%;width:64px;height:22px;margin-left:-32px;background:var(--tape);rotate:-4deg;z-index:1}.zv-note .arrow-kids{position:absolute;width:70px;height:70px;right:20px;top:24px;color:var(--marker);rotate:80deg;--d-fill:transparent}.zv-note .squared{background-color:var(--surface);background-image:linear-gradient(var(--rule) 1px,transparent 1px),linear-gradient(90deg,var(--rule) 1px,transparent 1px);background-size:22px 22px;background-position:-1px -1px}.zv-note .cal-box{padding:18px 10px 20px;border-radius:8px;box-shadow:0 12px 30px -20px rgba(31,47,140,.5)}.zv-note .cal-m{font:700 40px/1 var(--font-display)}.zv-note .cal-g{font-size:18px}.zv-note .cal-w{font:600 22px/1 var(--font-display);letter-spacing:0;text-transform:none}.zv-note .cal-day b{color:var(--coral);font-weight:800;font-size:21px}.zv-note .cal-day .mark{width:58px;height:54px;margin:-27px 0 0 -29px;color:var(--coral);stroke-width:2.4}.zv-note .cal-when{font:700 30px/1.15 var(--font-display);color:var(--text)}.zv-note .cnt-l{font:700 30px/1.1 var(--font-display);color:var(--text)}.zv-note .timer{display:flex;justify-content:center;gap:12px;margin:0;max-width:none;border:0}.zv-note .timer>div,.zv-note .timer>div + div{width:96px;padding:10px 0 6px;background:var(--bg);border:2px solid var(--text);border-radius:14px 18px 12px 16px}.zv-note .timer b{font:700 54px/1 var(--font-display)}.zv-note .timer span{font-size:17px}.zv-note .prog-road{position:relative;margin-top:18px}.zv-note .route{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.zv-note .route path{fill:none;stroke:var(--text);stroke-width:2.2;stroke-linecap:round;stroke-dasharray:0 7;vector-effect:non-scaling-stroke}.zv-note .stop{position:relative;display:grid;grid-template-columns:76px minmax(0,1fr);gap:6px 14px;align-items:center;min-height:128px;padding:6px 0}.zv-note .stop:nth-child(even){grid-template-columns:minmax(0,1fr) 76px;text-align:right}.zv-note .stop:nth-child(even) .ic-c{order:2}.zv-note .ic-c{display:block;width:76px;height:76px;padding:8px;background:var(--surface);border-radius:50%;box-shadow:0 0 0 2px var(--text) inset;rotate:var(--zv-rest,0deg)}.zv-note .ic-c .dd{width:100%;height:100%}.zv-note .stop time{display:block;font:700 34px/1 var(--font-display);color:var(--coral)}.zv-note .stop b{display:block;font-size:19px;line-height:1.3}.zv-note .stop small{display:block;font-size:17px;color:var(--text-2);line-height:1.35}.zv-note .venue{font:700 36px/1.05 var(--font-display);margin:0 0 6px}.zv-note .place-t{font:700 26px/1.1 var(--font-display);letter-spacing:0;text-transform:none;color:var(--coral)}.zv-note .place + .place{border-top:2px dashed var(--rule)}.zv-note .place-photo{margin-left:0;border:2px solid var(--text);border-radius:22px 30px 18px 26px}.zv-note .actions{margin:16px 0 0}.zv-note .btn{border-width:2px;border-radius:16px 20px 14px 18px}.zv-note .btn-3{border-color:transparent}.zv-note .dress-sec{position:relative}.zv-note .dc-dd{position:absolute;right:18px;top:40px;display:flex;gap:2px}.zv-note .dc-dd .dd{width:54px;height:54px}.zv-note .dress-sec .lead{max-width:15em}.zv-note .swatches{justify-content:flex-start;gap:14px}.zv-note .swatches li{width:72px;font-size:17px}.zv-note .swatches i{width:62px;height:62px;border-radius:47% 53% 44% 56% / 55% 45% 55% 45%;border:2px solid var(--text);box-shadow:none}.zv-note .menu{margin:16px 0 0;max-width:none}.zv-note .menu li,.zv-note .menu li:first-child{display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;align-items:start;padding:10px 0;border-top:0;border-bottom:2px dotted var(--rule)}.zv-note .menu li .dd{width:34px;height:34px}.zv-note .drinks{margin-left:0}.zv-note .notes{display:grid;gap:22px;margin-top:20px}.zv-note .sticky{position:relative;padding:22px 20px 18px 76px;background:var(--surface);box-shadow:0 12px 26px -16px rgba(31,47,140,.5);rotate:var(--zv-rest,0deg)}.zv-note .sticky:nth-child(1){--zv-rest:-1.5deg}.zv-note .sticky:nth-child(2){--zv-rest:1.5deg;background:#FFF4C9}.zv-note .sticky:nth-child(3){--zv-rest:-1deg}.zv-note .sticky .dd{position:absolute;left:14px;top:18px;width:50px;height:50px}.zv-note .sticky h3{margin:0 0 4px;font:700 30px/1 var(--font-display)}.zv-note .sticky p{margin:0;font-size:17px}.zv-note .sticky::after{content:"";position:absolute;top:-10px;right:22px;width:56px;height:20px;background:var(--tape);rotate:6deg}.zv-note .plaque{display:grid;grid-template-columns:64px minmax(0,1fr);gap:14px;align-items:start;padding:20px;border:2px dashed var(--text);border-radius:22px}.zv-note .plaque + .plaque{margin-top:18px}.zv-note .plaque .dd{width:64px;height:64px}.zv-note .plaque h3{margin:0 0 4px;font:700 32px/1 var(--font-display)}.zv-note .plaque p{margin:0;font-size:17px}.zv-note .contact-row{box-shadow:0 0 0 2px var(--text) inset}.zv-note .foot{padding:48px 24px 40px}.zv-note .foot .big{font:700 58px/1 var(--font-display)}.zv-note .foot .sig{margin:4px 0 6px;font:600 30px/1 var(--font-display);color:var(--text-2)}.zv-note .hearts{display:flex;justify-content:center;gap:12px}.zv-note .hearts .dd{width:46px;height:46px;rotate:var(--zv-rest,0deg)}.zv-party{background-image:radial-gradient(rgba(238,90,69,.25) 2px,transparent 2.4px);background-size:22px 22px}.zv-party .dd{stroke-width:2.2;--d-fill:var(--pink)}.zv-party .sec{padding:56px 22px}.zv-party .sec + .sec{padding-top:24px}.zv-party .h{margin:0 0 16px;font:800 30px/1.05 var(--font-display);letter-spacing:-.02em;text-transform:uppercase}.zv-party .greet .h{font-size:28px;color:var(--accent)}.zv-party .greet{padding-top:40px}.zv-party .sticker{position:absolute;z-index:3;display:inline-grid;place-items:center;padding:10px 16px;font:800 18px/1 var(--font-display);text-transform:uppercase;color:var(--text);background:var(--butter);border:2.5px solid var(--text);border-radius:999px;box-shadow:3px 4px 0 var(--text);rotate:var(--zv-rest,0deg)}.zv-party .s1{top:20px;left:4px;--zv-rest:-12deg}.zv-party .s2{bottom:26px;right:-2px;--zv-rest:8deg;background:var(--olive);color:var(--bg)}.zv-party .cover{padding:40px 18px 28px;text-align:center}.zv-party .kicker{margin:0;font:800 15px/1.3 var(--font-display);letter-spacing:.08em;text-transform:uppercase;color:var(--text)}.zv-party .sun{position:relative;width:min(340px,100%);aspect-ratio:1;margin:18px auto 0;display:grid;place-items:center}.zv-party .sun .burst{position:absolute;inset:0;width:100%;height:100%;color:var(--butter)}.zv-party .sun .ring{position:absolute;inset:11%;width:78%;height:78%;color:var(--coral)}.zv-party .names{position:relative;z-index:2;margin:0;padding:0 14%;font:900 var(--names-fs,50px)/.98 var(--font-names);text-transform:uppercase;color:var(--bg);letter-spacing:-.03em;text-shadow:0 3px 0 var(--accent);overflow-wrap:anywhere}.zv-party .names i{display:block;font-style:normal;font-size:30px;line-height:1.2;color:var(--text);text-shadow:none}.zv-party .datepill{display:inline-flex;margin:18px 0 0;padding:12px 22px;font:800 22px/1 var(--font-display);border:2.5px solid var(--text);border-radius:999px;background:var(--surface)}.zv-party .where{margin:10px 0 0;color:var(--text-2)}.zv-party .cov-dd{position:absolute;width:56px;height:56px;color:var(--text)}.zv-party .ribbon{position:relative;margin:18px -30px 0;padding:12px 0;background:var(--accent);color:var(--bg);rotate:-3deg;overflow:hidden;overflow:clip;white-space:nowrap;border-block:2.5px solid var(--text)}.zv-party .track{display:inline-flex;gap:18px;font:800 18px/1 var(--font-display);text-transform:uppercase;letter-spacing:.02em}.zv-party .track span::after{content:"✦";margin-left:18px;color:var(--butter)}.zv-party .kid-badges{display:flex;justify-content:center;gap:12px;margin:22px 0 6px}.zv-party .kid-badge{width:160px;text-align:center;rotate:var(--zv-rest,0deg)}.zv-party .kid-badge.b2{margin-top:26px}.zv-party .disc{position:relative;width:150px;height:150px;margin:0 auto;display:grid;place-items:center}.zv-party .disc .shape{position:absolute;inset:0;width:100%;height:100%}.zv-party .b1 .shape{color:var(--pink)}.zv-party .b2 .shape{color:var(--butter)}.zv-party .disc img,.zv-party .disc .ph{position:relative;width:108px;height:108px;border-radius:50%;object-fit:cover}.zv-party .disc .ph{background:var(--surface)}.zv-party .kid-badge b{display:block;margin-top:8px;font:800 18px/1.1 var(--font-display);text-transform:uppercase}.zv-party .kid-badge small{display:block;color:var(--text-2);font-size:17px}.zv-party .together{font:900 28px/1.1 var(--font-display);text-transform:uppercase;color:var(--accent)}.zv-party .stamp{position:relative;padding:28px 18px 26px;background:var(--butter);--b:9px;rotate:var(--zv-rest,0deg);-webkit-mask:radial-gradient(circle var(--b) at 50% 0,#0000 98%,#000) 50% 0 / calc(var(--b) * 2.4) 51% repeat-x,radial-gradient(circle var(--b) at 50% 100%,#0000 98%,#000) 50% 100% / calc(var(--b) * 2.4) 51% repeat-x;mask:radial-gradient(circle var(--b) at 50% 0,#0000 98%,#000) 50% 0 / calc(var(--b) * 2.4) 51% repeat-x,radial-gradient(circle var(--b) at 50% 100%,#0000 98%,#000) 50% 100% / calc(var(--b) * 2.4) 51% repeat-x}.zv-party .cal-m{margin-bottom:14px;font:900 30px/1 var(--font-display);text-transform:uppercase}.zv-party .cal-g{font-weight:500}.zv-party .cal-w{font-weight:600;color:var(--text-2)}.zv-party .cal-g>span{height:40px}.zv-party .cal-day b{font:900 18px/1 var(--font-display);color:var(--bg)}.zv-party .cal-day .mark{width:50px;height:50px;margin:-25px 0 0 -25px;color:var(--coral)}.zv-party .cal-when{font:800 20px/1.2 var(--font-display);text-transform:uppercase;color:var(--text)}.zv-party .countdown{margin-top:26px}.zv-party .cnt-l{font:800 17px/1.2 var(--font-display);text-transform:uppercase;color:var(--text)}.zv-party .timer{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0;max-width:none;border:0}.zv-party .timer>div,.zv-party .timer>div + div{padding:0;border:0;background:none}.zv-party .timer b{display:block;padding:16px 0 14px;font:900 clamp(30px,9vw,40px)/1 var(--font-display);color:var(--bg);background:var(--accent);border:2.5px solid var(--text);border-radius:22px;box-shadow:3px 4px 0 var(--text)}.zv-party .timer span{display:block;margin-top:8px;font-size:17px;color:var(--text-2)}.zv-party .tickets{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:14px}.zv-party .ticket{position:relative;display:grid;grid-template-columns:96px minmax(0,1fr) 54px;align-items:center;min-height:92px;background:var(--surface);border:2.5px solid var(--text);border-radius:18px;box-shadow:3px 4px 0 var(--text);rotate:var(--zv-rest,0deg)}.zv-party .ticket:nth-child(even){margin-left:18px}.zv-party .ticket:nth-child(odd){margin-right:18px}.zv-party .ticket time{align-self:stretch;display:grid;place-items:center;font:900 22px/1 var(--font-display);color:var(--bg);background:var(--accent);border-radius:15px 0 0 15px;border-right:2.5px dashed var(--bg)}.zv-party .ticket:nth-child(3n+2) time{background:var(--olive)}.zv-party .ticket:nth-child(3n) time{background:var(--text)}.zv-party .ticket div{padding:10px 6px 10px 14px}.zv-party .ticket b{display:block;font-weight:600;line-height:1.25}.zv-party .ticket small{display:block;font-size:17px;color:var(--text-2);line-height:1.35}.zv-party .ticket .dd{width:44px;height:44px}.zv-party .place-card{position:relative;padding:24px 18px;background:var(--surface);border:2.5px solid var(--text);border-radius:30px;box-shadow:4px 5px 0 var(--text)}.zv-party .venue{margin:0 0 4px;font:900 26px/1.1 var(--font-display);text-transform:uppercase}.zv-party .place-t{font:800 15px/1.2 var(--font-display);color:var(--accent)}.zv-party .place + .place{border-top:2px dashed rgba(42,31,23,.35)}.zv-party .place-photo{margin-left:0;border:2.5px solid var(--text);border-radius:24px}.zv-party .actions{margin:16px 0 0;max-width:none}.zv-party .btn{border:2.5px solid var(--text);border-radius:999px;box-shadow:3px 4px 0 var(--text)}.zv-party .btn-2{background:var(--surface);color:var(--text)}.zv-party .btn-3{border-color:transparent;box-shadow:none}.zv-party .blobs{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 0;padding:0;list-style:none}.zv-party .blobs li{flex:1 1 64px;text-align:center;font-size:17px;color:var(--text-2)}.zv-party .blobs .shape{width:74px;height:74px;margin:0 auto 6px;stroke:var(--text);stroke-width:6}.zv-party .dc-dd{display:flex;justify-content:center;gap:18px;margin-top:14px}.zv-party .dc-dd .dd{width:70px;height:70px}.zv-party .menu{margin:6px 0 0;max-width:none;border-top:2.5px solid var(--text)}.zv-party .menu li,.zv-party .menu li:first-child{padding:14px 0;border-top:0;border-bottom:2px dashed rgba(42,31,23,.35);font-weight:500}.zv-party .menu .dot{flex:none;width:14px;height:14px;border-radius:50%;background:var(--coral);border:2px solid var(--text)}.zv-party .drinks{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 0}.zv-party .drinks span{padding:6px 14px;border:2px solid var(--text);border-radius:999px;background:var(--surface);font-size:17px;color:var(--text)}.zv-party .wishes{display:grid;gap:18px;margin-top:10px}.zv-party .wish{position:relative;padding:30px 28px 28px 104px;min-height:140px;display:grid;align-content:center;rotate:var(--zv-rest,0deg)}.zv-party .wish>.shape{position:absolute;inset:0;width:100%;height:100%;z-index:0}.zv-party .wish>h3,.zv-party .wish>p{position:relative;z-index:1}.zv-party .wish .num{position:absolute;z-index:1;left:38px;top:42px;font:900 34px/1 var(--font-display)}.zv-party .wish .dd{position:absolute;z-index:1;left:40px;bottom:30px;width:48px;height:48px}.zv-party .wish h3{margin:0 0 4px;font:800 20px/1.1 var(--font-display);text-transform:uppercase}.zv-party .wish p{margin:0;font-size:17px}.zv-party .w1>.shape{color:var(--pink)}.zv-party .w2>.shape{color:var(--butter)}.zv-party .w3,.zv-party .w3 .num{color:var(--bg)}.zv-party .w3>.shape{color:var(--olive)}.zv-party .w3 .dd{color:var(--bg);--d-fill:transparent}.zv-party .pill-card{display:grid;grid-template-columns:60px minmax(0,1fr);gap:12px;align-items:center;padding:18px;background:var(--surface);border:2.5px solid var(--text);border-radius:26px;box-shadow:3px 4px 0 var(--text)}.zv-party .pill-card + .pill-card{margin-top:16px}.zv-party .pill-card .dd{width:60px;height:60px}.zv-party .pill-card h3{margin:0 0 4px;font:800 19px/1.15 var(--font-display);text-transform:uppercase}.zv-party .pill-card p{margin:0;font-size:17px}.zv-party .contact-row{border:2.5px solid var(--text);border-radius:22px}.zv-party .contact-row b{font:800 20px/1.1 var(--font-display);text-transform:uppercase}.zv-party .contact-row a{border:2.5px solid var(--text)}.zv-party .foot{padding:44px 22px 40px}.zv-party .foot .big{font:900 46px/1 var(--font-display);text-transform:uppercase;color:var(--coral);letter-spacing:-.03em;rotate:var(--zv-rest,0deg)}.zv-party .foot .sig{margin:6px 0 8px;font:800 20px/1 var(--font-display);text-transform:uppercase}.zv-faience .dd{stroke-width:1.8;color:var(--accent);--d-fill:var(--pale)}.zv-faience .sec{padding:56px 24px;text-align:center}.zv-faience .sec + .sec{padding-top:24px}.zv-faience .label{display:block;margin:0 0 6px;font:600 15px/1.3 var(--font-label);letter-spacing:.22em;text-transform:uppercase;color:var(--accent)}.zv-faience .h{margin:0 0 16px;font:400 46px/1.05 var(--font-display);color:var(--accent)}.zv-faience .lead{margin-left:auto;margin-right:auto;max-width:30em}.zv-faience .orn{display:flex;justify-content:center;padding:0;color:var(--accent)}.zv-faience .orn .dd{width:66px;height:66px;rotate:var(--zv-rest,0deg)}.zv-faience .cover{padding:34px 22px 40px;background:var(--pale);overflow:hidden;overflow:clip;text-align:center}.zv-faience .toile{position:absolute;inset:-60px 0;width:100%;height:calc(100% + 120px)}.zv-faience .toile-g{fill:none;stroke:var(--accent);stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;opacity:.55;--d-fill:transparent}.zv-faience .arch{position:relative;z-index:1;margin:0 auto;max-width:330px;padding:70px 22px 46px;background:var(--bg);border-radius:170px 170px 18px 18px;box-shadow:0 0 0 2px var(--accent),0 0 0 9px var(--bg),0 0 0 11px var(--accent)}.zv-faience .arch .bow{width:92px;height:92px;margin:-18px auto 6px}.zv-faience .names{margin:6px 0 4px;font:400 64px/.95 var(--font-names);color:var(--accent);letter-spacing:-.03em;overflow-wrap:anywhere}.zv-faience .names i{display:block;font-size:34px;line-height:1.3;font-style:normal}.zv-faience .arch .date{margin:14px 0 0;font:600 20px/1.3 var(--font-text);letter-spacing:.12em;text-transform:uppercase}.zv-faience .arch .city{margin:4px 0 0;color:var(--text-2)}.zv-faience .ribbon-card{position:relative;margin-top:14px;padding:40px 22px 30px;border:2px solid var(--accent);border-radius:22px;outline:1px solid var(--accent);outline-offset:-8px;rotate:var(--zv-rest,0deg)}.zv-faience .ribbon-card .bow{position:absolute;top:-40px;left:50%;width:78px;height:78px;margin-left:-39px;padding:4px;background:var(--bg);border-radius:50%}.zv-faience .ribbon-card .h{font-size:40px}.zv-faience .story-sec{padding-top:12px}.zv-faience .plates{list-style:none;margin:20px 0 0;padding:0;display:grid;gap:26px}.zv-faience .plate{display:grid;grid-template-columns:128px minmax(0,1fr);gap:16px;align-items:center;text-align:left}.zv-faience .plate:nth-child(even){grid-template-columns:minmax(0,1fr) 128px;text-align:right}.zv-faience .plate:nth-child(even) .disc{order:2}.zv-faience .disc{position:relative;width:128px;height:128px;display:grid;place-items:center;rotate:var(--zv-rest,0deg)}.zv-faience .disc>.shape{position:absolute;inset:0;width:100%;height:100%;color:var(--pale)}.zv-faience .plate .disc::after{content:"";position:absolute;inset:16px;border-radius:50%;background:var(--bg);box-shadow:0 0 0 2px var(--accent) inset,0 0 0 6px var(--bg) inset,0 0 0 7px var(--mid) inset}.zv-faience .plate .disc .dd{position:relative;z-index:1;width:58px;height:58px}.zv-faience .plate b{display:block;font:400 34px/1 var(--font-display);color:var(--accent)}.zv-faience .plate p{margin:4px 0 0;font-size:17px}.zv-faience .kid-discs{display:flex;justify-content:center;gap:14px;margin:20px 0 8px}.zv-faience .kid-disc{margin:0;width:150px}.zv-faience .kid-disc .disc{width:140px;height:140px;margin:0 auto}.zv-faience .kid-disc .in{position:relative;display:grid;place-items:center;width:104px;height:104px;border-radius:50%;overflow:hidden;overflow:clip;background:var(--bg);box-shadow:0 0 0 2px var(--accent)}.zv-faience .kid-disc img{width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.15)}.zv-faience .kid-disc .in::after{content:"";position:absolute;inset:0;background:var(--mid);mix-blend-mode:multiply;opacity:.6;pointer-events:none}.zv-faience .kid-disc figcaption{margin-top:8px;color:var(--text-2)}.zv-faience .kid-disc figcaption b{font:400 30px/1 var(--font-display);color:var(--accent)}.zv-faience .together{font:400 30px/1.15 var(--font-display);color:var(--accent)}.zv-faience .cal-box{position:relative;margin-top:14px;padding:34px 16px 24px;border-top:2px solid var(--accent);border-bottom:2px solid var(--accent)}.zv-faience .cal-box .bow{position:absolute;top:-38px;width:70px;height:70px;background:var(--bg);rotate:var(--zv-rest,0deg)}.zv-faience .cal-box .bow.l{left:8px;--zv-rest:-12deg}.zv-faience .cal-box .bow.r{right:8px;--zv-rest:12deg}.zv-faience .cal-m{font:400 40px/1 var(--font-display);color:var(--accent)}.zv-faience .cal-w{font-size:13px;letter-spacing:.12em}.zv-faience .cal-g>span{height:40px}.zv-faience .cal-day b{color:var(--bg)}.zv-faience .cal-day .mark{width:66px;height:66px;margin:-36px 0 0 -33px;color:var(--accent);--d-fill:var(--accent)}.zv-faience .cal-when{font:600 17px/1.35 var(--font-text);letter-spacing:.08em;text-transform:uppercase;color:var(--text);text-wrap:balance}.zv-faience .cnt-l{font:400 32px/1.1 var(--font-display);color:var(--accent)}.zv-faience .timer{display:flex;justify-content:center;gap:10px;margin:0;max-width:none;border:0}.zv-faience .timer>div,.zv-faience .timer>div + div{width:100px;padding:14px 0 10px;background:var(--bg);border:2px solid var(--accent);border-radius:50px 50px 12px 12px}.zv-faience .timer b{font:600 40px/1 var(--font-text);color:var(--accent)}.zv-faience .timer span{font-size:17px}.zv-faience .stack{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:14px}.zv-faience .pcard{display:grid;grid-template-columns:62px minmax(0,1fr);gap:14px;align-items:center;padding:18px;text-align:left;color:var(--bg);background:var(--accent);border-radius:22px;box-shadow:0 -6px 18px -10px rgba(24,38,79,.6),0 0 0 1px var(--accent),0 0 0 5px var(--bg) inset,0 0 0 6px var(--mid) inset}.zv-faience .pcard .dd{width:62px;height:62px;color:var(--bg);--d-fill:rgba(220,229,247,.2)}.zv-faience .pcard time{display:block;font:600 26px/1 var(--font-text)}.zv-faience .pcard b{display:block;font:400 30px/1.05 var(--font-display)}.zv-faience .pcard small{display:block;font-size:17px;color:var(--pale);line-height:1.35}.zv-faience .venue{margin:0 0 4px;font:400 40px/1 var(--font-display);color:var(--accent)}.zv-faience .place-t{letter-spacing:.2em;color:var(--accent)}.zv-faience .place-photo{position:relative;width:260px;max-width:100%;margin:18px auto;box-shadow:0 0 0 2px var(--accent),0 0 0 8px var(--bg),0 0 0 10px var(--accent)}.zv-faience .place-photo img{filter:grayscale(1) contrast(1.2) brightness(1.04);scale:1.18}.zv-faience .place-photo::after{content:"";position:absolute;inset:0;background:var(--mid);mix-blend-mode:multiply;opacity:.85;pointer-events:none}.zv-faience .place + .place{border-top:1px solid var(--mid)}.zv-faience .btn{border-width:2px;border-radius:999px;font-size:17px}.zv-faience .fabrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:18px 0 0;padding:0;list-style:none}.zv-faience .fabrics li{font-size:17px;line-height:1.25;color:var(--text-2);overflow-wrap:anywhere}.zv-faience .fabrics i{display:block;aspect-ratio:1;margin-bottom:6px;border-radius:6px;--c:12px;-webkit-mask:radial-gradient(circle var(--c) at 0 0,#0000 98%,#000) 0 0 / 51% 51% no-repeat,radial-gradient(circle var(--c) at 100% 0,#0000 98%,#000) 100% 0 / 51% 51% no-repeat,radial-gradient(circle var(--c) at 0 100%,#0000 98%,#000) 0 100% / 51% 51% no-repeat,radial-gradient(circle var(--c) at 100% 100%,#0000 98%,#000) 100% 100% / 51% 51% no-repeat;mask:radial-gradient(circle var(--c) at 0 0,#0000 98%,#000) 0 0 / 51% 51% no-repeat,radial-gradient(circle var(--c) at 100% 0,#0000 98%,#000) 100% 0 / 51% 51% no-repeat,radial-gradient(circle var(--c) at 0 100%,#0000 98%,#000) 0 100% / 51% 51% no-repeat,radial-gradient(circle var(--c) at 100% 100%,#0000 98%,#000) 100% 100% / 51% 51% no-repeat}.zv-faience .satin{background-image:linear-gradient(125deg,rgba(255,255,255,0) 20%,rgba(255,255,255,.45) 38%,rgba(255,255,255,0) 52%,rgba(255,255,255,.25) 70%,rgba(255,255,255,0) 84%)}.zv-faience .dc-dd{display:flex;justify-content:center;gap:14px;margin-top:16px}.zv-faience .dc-dd .dd{width:56px;height:56px}.zv-faience .menu{margin:14px auto 0;max-width:320px;text-align:center}.zv-faience .menu li{justify-content:center;border-color:var(--mid)}.zv-faience .drinks{margin:14px auto 0}.zv-faience .tiles{display:grid;gap:16px;margin-top:14px}.zv-faience .tile{position:relative;padding:12px;border-radius:20px;background:var(--pale);overflow:hidden;overflow:clip;rotate:var(--zv-rest,0deg)}.zv-faience .tile .toile{inset:0;height:100%}.zv-faience .tile .in{position:relative;z-index:1;padding:22px 18px 20px;background:var(--bg);border-radius:12px;box-shadow:0 0 0 1.5px var(--accent)}.zv-faience .tile .dd{width:52px;height:52px;margin:0 auto 4px}.zv-faience .tile h3{margin:0 0 4px;font:600 15px/1.3 var(--font-text);letter-spacing:.2em;text-transform:uppercase;color:var(--accent)}.zv-faience .tile p{margin:0;font-size:17px}.zv-faience .contact-row{padding:12px 14px 12px 22px;background:transparent;border:1.5px solid var(--accent);border-radius:999px}.zv-faience .contact-row b{font:400 30px/1 var(--font-display);color:var(--accent)}.zv-faience .foot{padding:48px 24px 40px;background:var(--pale)}.zv-faience .foot .big{font:400 50px/1 var(--font-display);color:var(--accent)}.zv-faience .foot .sig{margin:6px 0 8px;font:600 16px/1.3 var(--font-text);letter-spacing:.2em;text-transform:uppercase}@container (min-width:720px){.zv-note .sec,.zv-party .sec,.zv-faience .sec{padding-left:24px;padding-right:24px}.zv-note .cover{padding:134px 24px 64px;min-height:720px}.zv-party .cover{padding:40px 18px 28px;min-height:0}.zv-faience .cover{padding:34px 22px 40px;min-height:0}.zv-note .foot,.zv-party .foot,.zv-faience .foot{padding-left:24px;padding-right:24px}.zv-note .inv{box-shadow:0 20px 60px -30px rgba(31,47,140,.5)}.zv-party .inv{border:2.5px solid var(--text);border-radius:28px}.zv-faience .inv{box-shadow:0 0 0 2px var(--accent),0 0 0 10px var(--bg),0 0 0 12px var(--accent)}}.zv-classic .mono .cov-dd{position:absolute;z-index:1;width:46px;height:46px}.zv-classic .mono .cov-dd.l{left:-84px;top:8px}.zv-classic .mono .cov-dd.r{right:-84px;top:40px}.zv-minimal .names,.zv-garden .names{position:relative}.zv-minimal .names{padding-right:48px}.zv-minimal .names .cov-dd{position:absolute;right:0;top:.15em;width:40px;height:40px}.zv-garden .names .cov-dd{position:absolute;left:-54px;top:44%;width:44px;height:44px}.zv-classic .foot-heart,.zv-minimal .foot-heart,.zv-garden .foot-heart{width:44px;height:44px;margin-bottom:-8px;--d-fill:var(--joy)}.zv-classic .kid,.zv-minimal .kid,.zv-garden .kid{width:46%;max-width:160px;rotate:var(--zv-rest,0deg)}.zv-classic .kid .pic{aspect-ratio:3 / 4;border-radius:50%;box-shadow:0 0 0 1px var(--accent-2),0 0 0 6px var(--bg),0 0 0 7px var(--line)}.zv-classic .kid figcaption{font:italic 500 22px/1.2 var(--font-display);color:var(--accent-2)}.zv-minimal .kids{justify-content:flex-start}.zv-minimal .kid .pic{aspect-ratio:1;border-radius:0}.zv-minimal .kid + .kid{margin-top:28px}.zv-minimal .kid figcaption{font:600 15px/1.3 var(--font-label);letter-spacing:.12em;text-transform:uppercase;color:var(--text-2)}.zv-garden .kid .pic{aspect-ratio:3 / 4;border-radius:999px 999px 16px 16px}.zv-garden .kid figcaption{font:italic 500 22px/1.2 var(--font-display);color:var(--joy)}.zv-classic .kid .ph .dd,.zv-garden .kid .ph .dd{width:76%;height:76%}.zv-classic .cal-m{font-size:30px}.zv-classic .cal-day b,.zv-garden .cal-day b{color:var(--joy)}.zv-classic .cal-day .mark{width:54px;height:54px;margin:-27px 0 0 -27px}.zv-classic .cal-day .mark circle{fill:none;stroke:var(--accent-2);stroke-width:1.2}.zv-classic .cal-day .mark .dia{fill:var(--joy)}.zv-minimal .cal{margin-left:0}.zv-minimal .cal-m{text-align:left;font-size:24px}.zv-minimal .cal-when{text-align:left}.zv-minimal .cal-day .mark{width:40px;height:40px;margin:-20px 0 0 -20px;background:var(--joy)}.zv-minimal .cal-day b{color:var(--on-accent)}.zv-garden .cal-m{font-family:var(--font-names);color:var(--accent)}.zv-garden .cal-day .mark.wreath-mini{width:62px;height:62px;margin:-31px 0 0 -31px;background:url('decor/garden-wreath.51225fe8.webp') no-repeat center / contain;rotate:var(--zv-rest,0deg)}.zv-classic .timer b,.zv-minimal .timer b,.zv-garden .timer b{color:var(--joy)}.zv-minimal .cnt-l{text-align:left}.zv .prog-wrap{position:relative;max-width:440px;margin:0 auto;text-align:left}.zv-minimal .prog-wrap{margin-left:0;max-width:none}.zv .prog-wrap .spine{position:absolute;left:31.5px;top:36px;bottom:36px;width:1px;background:var(--line)}.zv-minimal .prog-wrap .spine{background:var(--joy)}.zv .prog-wrap .prog{position:relative;max-width:none;margin:0}.zv .prog li.row{grid-template-columns:64px 64px minmax(0,1fr);column-gap:12px;align-items:center;padding:7px 0;border:0}.zv-minimal .prog li.row{padding:10px 0;border-top:1px solid var(--line)}.zv .prog li.row:last-child{border-bottom:0}.zv .med{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:var(--bg);box-shadow:0 0 0 1px var(--doodle) inset,0 0 0 4px var(--bg) inset,0 0 0 5px var(--line) inset}.zv-minimal .med{border-radius:0;box-shadow:0 0 0 1px var(--line) inset}.zv-garden .med{background:var(--surface-2);box-shadow:none}.zv .med .dd{width:42px;height:42px}.zv-classic .prog li.row time{font-size:24px}.zv-classic .swatches i{box-shadow:inset 0 0 0 1px rgba(0,0,0,.12),0 0 0 4px var(--bg),0 0 0 5px var(--line)}.zv-garden .swatches i{width:60px;height:60px;border-radius:46% 54% 50% 50% / 55% 45% 55% 45%;box-shadow:none;-webkit-mask:radial-gradient(circle at 50% 50%,#000 58%,transparent 72%);mask:radial-gradient(circle at 50% 50%,#000 58%,transparent 72%)}.zv-classic .dc-dd{display:flex;justify-content:center;gap:10px;margin-top:14px}.zv-classic .dc-dd .dd{width:54px;height:54px}.zv .wish-card .n{display:none}.zv-classic .wish-card{grid-template-columns:1fr;gap:4px;padding:22px 20px 20px;text-align:center;outline:1px solid var(--line);outline-offset:-6px}.zv-classic .wish-card .dd{width:54px;height:54px;margin:0 auto 4px}.zv-minimal .wish-card{grid-template-columns:64px minmax(0,1fr);padding:18px 0 4px;background:none;border:0;border-top:1px solid var(--line);border-radius:0}.zv-minimal .wish-card .n{display:block;font:300 40px/1 var(--font-display);color:var(--joy)}.zv-minimal .wish-card .dd{display:none}.zv-garden .wish-card{border-radius:20px}:is(.zv-classic,.zv-minimal,.zv-garden) .extras{display:grid;gap:14px}:is(.zv-classic,.zv-minimal,.zv-garden) .plaque{display:grid;grid-template-columns:60px minmax(0,1fr);gap:14px;align-items:start;max-width:480px;margin:0 auto;padding:18px;text-align:left;background:var(--surface-2);border-radius:var(--radius-lg)}.zv-minimal .plaque{margin-left:0;background:none;border:1px solid var(--line)}:is(.zv-classic,.zv-minimal,.zv-garden) .plaque .dd{width:60px;height:60px}:is(.zv-classic,.zv-minimal,.zv-garden) .plaque h3{margin:0 0 4px;font-family:var(--font-display);font-size:22px;font-weight:var(--display-weight);line-height:1.2}:is(.zv-classic,.zv-minimal,.zv-garden) .plaque p{margin:0;font-size:17px}.zv-classic .people,.zv-garden .people{max-width:480px;margin:0 auto}.zv-classic .contact-row,.zv-garden .contact-row{border:1px solid var(--line);border-radius:var(--radius-lg)}.zv-classic .contact-row b{font-size:24px}.zv-garden .contact-row b{font:400 26px/1.2 var(--font-names);color:var(--accent)}.zv-classic .contact-row a,.zv-garden .contact-row a{background:transparent;border:1px solid var(--accent)}.zv-classic .contact-row a .dd,.zv-garden .contact-row a .dd{color:var(--accent)}.zv .demo-cta{display:grid;gap:12px;justify-items:center;margin:0;padding:24px 24px 32px;text-align:center;background:var(--surface-2);color:var(--text)}.zv .demo-cta p{margin:0;font-size:17px;color:var(--text-2);max-width:26em}.zv .demo-cta .btn{max-width:340px}.zv-embed .demo-cta{display:none}.zv .timer,.zv .prog,.zv .prog-wrap,.zv .actions,.zv .bus,.zv .acc,.zv .gallery,.zv .story,.zv .cal,.zv .menu,.zv .wish-cards,.zv-minimal .cal-box,.zv-faience .menu,:is(.zv-classic,.zv-minimal,.zv-garden) .plaque,.zv-classic .people,.zv-garden .people{max-width:none;margin-left:0;margin-right:0}.zv-note .timer,.zv-faience .timer{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.zv-note .timer>div,.zv-note .timer>div + div,.zv-faience .timer>div,.zv-faience .timer>div + div{width:auto}/* ===================================================================== Приглашение:движение при прокрутке. Общий модуль для всех шести тем,в пачке zv.css после zv.css. Разметка — scripts/lib/invite-page.ts:data-depth-scope блок со своей шкалой прохождения через экран (view-timeline) data-depth-scope="top" блок у верха страницы (обложка):при загрузке всё на месте,слои расходятся,когда блок уходит с экрана data-depth="…" слой внутри блока (или сам блок):far — отстаёт от страницы,mid — чуть отстаёт,near — обгоняет,spin — поворачивается,sway — качается (гирлянда,бант),photo — фото обложки отстаёт и медленно приближается внутри своей рамки,draw — тонкая линия прорисовывается при появлении,pop — появляется с поворотом,когда входит в экран (стикеры,записки,билетики,банты;своя шкала),tilt — доворачивается,пока проходит экран (полароиды,тарелки;своя шкала),marquee — лента едет вбок вместе с прокруткой всей страницы,fade — спокойно проявляется (старые темы:без поворота),drawy — линия прорисовывается сверху вниз Величины — переменные --zv-x,--zv-y (сдвиг),--zv-r (поворот),--zv-s (масштаб),--zv-rest (поворот в покое);у слоя их можно задать в style,тонкая настройка по темам ниже. Двигаются только украшения и карточки целиком:текст внутри своей карточки стоит. Анимируются только translate,rotate,scale и opacity. Только CSS scroll-driven animations:где их нет,страница статичная. Выключено при prefers-reduced-motion и в рамке телефона на лендинге (класс zv-embed на <html>ставит invite.js при ?embed=1 или в iframe) ===================================================================== */ .zv .mono-glow{position:absolute;inset:-48%;border-radius:50%;pointer-events:none;background:radial-gradient(closest-side,rgba(255,252,245,.95) 30%,rgba(255,252,245,0))}.zv .cover-photo-in{display:block;overflow:hidden;overflow:clip;border-radius:var(--photo-radius)}@keyframes zv-depth{from{translate:calc(var(--zv-x) * -1) calc(var(--zv-y) * -1);rotate:calc(var(--zv-r) * -1);scale:calc(2 - var(--zv-s))}to{translate:var(--zv-x) var(--zv-y);rotate:var(--zv-r);scale:var(--zv-s)}}@keyframes zv-depth-out{from{translate:0 0;rotate:0deg;scale:1}to{translate:var(--zv-x) var(--zv-y);rotate:var(--zv-r);scale:var(--zv-s)}}@keyframes zv-draw{from{scale:.15 1}to{scale:1 1}}@keyframes zv-sway-out{0%{rotate:0deg}40%{rotate:var(--zv-r)}100%{rotate:calc(var(--zv-r) * -.6)}}@keyframes zv-pop{from{opacity:0;scale:.7;rotate:var(--zv-r)}to{opacity:1;scale:1;rotate:var(--zv-rest,0deg)}}@keyframes zv-tilt{from{rotate:var(--zv-r)}to{rotate:var(--zv-rest,0deg)}}@keyframes zv-fade{from{opacity:0;scale:var(--zv-s0,.95)}to{opacity:1;scale:1}}@keyframes zv-draw-y{from{scale:1 0}to{scale:1 1}}@keyframes zv-marquee{from{translate:0 0}to{translate:-50% 0}}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.zv-page{overflow:clip}.zv [data-depth-scope]{view-timeline:--zv-depth block}.zv [data-depth]{--zv-x:0px;--zv-y:0px;--zv-r:0deg;--zv-s:1;animation:zv-depth linear both;animation-timeline:--zv-depth}.zv [data-depth="far"]{--zv-y:24px}.zv [data-depth="mid"]{--zv-y:12px}.zv [data-depth="near"]{--zv-y:-20px}.zv [data-depth="spin"]{--zv-r:30deg}.zv [data-depth="photo"]{--zv-y:8%;--zv-s:1.18}.zv [data-depth="sway"]{--zv-r:2.5deg}.zv [data-depth-scope="top"] :is([data-depth="far"],[data-depth="mid"],[data-depth="near"],[data-depth="spin"],[data-depth="photo"],[data-depth="sway"]),.zv [data-depth-scope="top"]:is([data-depth="far"],[data-depth="mid"],[data-depth="near"],[data-depth="spin"],[data-depth="photo"],[data-depth="sway"]){animation-name:zv-depth-out;animation-range:exit;animation-range:exit-crossing}.zv [data-depth-scope="top"] [data-depth="sway"]{animation-name:zv-sway-out}.zv [data-depth="draw"]{transform-origin:0 50%;animation-name:zv-draw;animation-range:entry 10% cover 45%}.zv [data-depth="pop"]{animation:zv-pop linear both;animation-timeline:view();animation-range:entry 5% entry 90%}.zv [data-depth="tilt"]{animation:zv-tilt linear both;animation-timeline:view();animation-range:entry 0% cover 60%}.zv [data-depth="marquee"]{animation:zv-marquee linear both;animation-timeline:scroll(root)}.zv [data-depth="fade"]{animation:zv-fade linear both;animation-timeline:view();animation-range:entry 0% entry 80%}.zv [data-depth="drawy"]{transform-origin:50% 0;animation:zv-draw-y linear both;animation-timeline:view();animation-range:entry 10% cover 55%}.zv-faience .stack .pcard{position:sticky;top:calc(16px + var(--i) * 12px)}.zv-classic .frame[data-depth]{--zv-y:-10px;--zv-s:1.035}.zv-classic .mono-glow[data-depth]{--zv-y:40px;--zv-s:1.2}.zv-classic .ring[data-depth]{--zv-r:40deg}.zv-classic .orn [data-depth]{--zv-y:10px;--zv-s:1.06}.zv-minimal .sec>.label{view-timeline:--zv-label block}.zv-minimal .sec>.label::before{transform-origin:0 50%;animation:zv-draw linear both;animation-timeline:--zv-label;animation-range:entry 20% cover 50%}.zv-garden .wc.tl[data-depth]{--zv-x:-10px;--zv-y:-30px;--zv-r:-5deg}.zv-garden .wc.br[data-depth]{--zv-x:12px;--zv-y:16px;--zv-r:4deg}.zv-garden .wreath[data-depth]{--zv-r:10deg;--zv-s:1.04}.zv-garden .sprig[data-depth]{--zv-y:10px;--zv-r:-6deg}.zv-party .sun .burst[data-depth]{--zv-r:70deg}.zv-embed .zv [data-depth],.zv-embed .zv-minimal .sec>.label::before{animation:none !important}.zv-embed .zv-faience .stack .pcard{position:static}}}