.people-editor{min-width:0;text-align:left}.people-editor .people-editor__hint{color:var(--tortora, #87817d);font-size:14px;line-height:1.5;margin:8px 0 18px}.people-editor .people-editor__person{min-width:0;border:1px solid var(--line, #e8dfd5);border-radius:2px;padding:16px;margin:22px 0}.people-editor .people-editor__person legend{padding:0 7px;font-size:19px;font-weight:500}.people-editor .field-label{margin-top:14px}.people-editor input:not([type=checkbox]),.people-editor textarea,.people-editor select{box-sizing:border-box;width:100%;min-height:48px;border:1px solid #d7cfc8;border-radius:2px;background:#fffefa;padding:12px;color:var(--ink, #39302b);font:inherit;font-size:17px}.people-editor input[readonly]{background:var(--soft, #f6f1eb)}.people-editor .people-editor__notes{margin-top:18px;border-top:1px solid var(--line, #e8dfd5);padding-top:8px}.people-editor .people-editor__notes summary{cursor:pointer;min-height:44px;padding:10px 0;line-height:1.5;font-size:16px}.people-editor .people-editor__notes textarea{margin-bottom:12px;resize:vertical}.people-editor .people-editor__highchair{display:flex;align-items:center;gap:10px;min-height:44px;margin-top:12px}.people-editor button{min-height:44px;border:1px solid #d7cfc8;border-radius:2px;padding:10px 12px;color:var(--ink, #39302b);background:transparent;font:inherit;font-size:15px;cursor:pointer}.people-editor button:hover:not(:disabled){background:var(--soft, #f6f1eb)}.people-editor button:disabled{opacity:.5;cursor:not-allowed}.people-editor .people-editor__remove{display:block;margin-left:auto;color:#893f36}.people-editor .people-editor__add{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.people-editor .people-editor__counts{display:grid;gap:6px;border-block:1px solid var(--line, #e8dfd5);padding:18px 0;margin:22px 0;font-size:16px;line-height:1.5}.people-editor :is(button,input,textarea,select,summary):focus-visible{outline:2px solid #a57763;outline-offset:3px}@media(max-width:360px){.people-editor .people-editor__person{padding:12px}.people-editor .people-editor__add{grid-template-columns:1fr}}@font-face{font-family:Claudy;src:url(/Claudy.otf) format("opentype");font-style:normal;font-weight:400;font-display:swap}:root{--paper: #FCFCFA;--tortora: #87817d;--peach: #d9aa98;--ink: #625c58;--line: #e8e1db;--soft: #f6f1ed;font-family:Cormorant Infant,Georgia,serif;color:var(--ink);background:#eee9e4;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:280px}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:2px solid #9a6855;outline-offset:5px}h1,h2,h3,p{margin-top:0}h2{font-size:34px;font-weight:400;line-height:1.12}p{font-size:19px;line-height:1.55}a{color:inherit}.invitation-shell{width:100%;max-width:480px;margin:0 auto;min-height:100svh;background:var(--paper);box-shadow:0 0 90px #776a5d12}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.eyebrow{font-size:11px;font-family:Georgia,serif;font-weight:400;line-height:1.7;letter-spacing:2.4px;text-transform:uppercase;color:var(--tortora)}.section-pad{padding:54px 32px;text-align:center}.botanical{width:110px;height:60px;color:#a1a697}.envelope-intro{min-height:100svh;padding:max(45px,7svh) 22px 28px;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;background:radial-gradient(ellipse at 105% 0%,#edd7cc45,transparent 50%),radial-gradient(ellipse at 0 100%,#ead9cd35,transparent 40%),var(--paper)}.intro-kicker{margin-bottom:30px;font-size:10px;letter-spacing:3px}.couple-title{width:100%;display:flex;flex-direction:column;align-items:center;font-family:Claudy,cursive;font-weight:400;font-size:clamp(59px,17vw,85px);line-height:.95;color:var(--tortora);margin:0 0 25px}.couple-title>span:first-child{align-self:center;transform:translate(-25px)}.couple-title>span:last-child{align-self:center;transform:translate(29px)}.couple-and{font-family:Cormorant Infant,Georgia,serif;font-style:italic;font-size:26px;line-height:.7;color:var(--peach);padding:4px 0 0}.intro-date{font-family:Georgia,serif;font-size:10px;letter-spacing:3.3px;color:var(--tortora);margin-bottom:53px}.envelope-stage{position:relative;width:min(100%,350px);aspect-ratio:1.5;margin:0 0 84px;isolation:isolate}.envelope-botanical{position:absolute;width:170px;height:96px;right:-23px;top:-58px;transform:rotate(-15deg);z-index:-1;opacity:.7}.envelope{position:absolute;top:0;right:0;bottom:0;left:0;background:#f3ece5;border-radius:3px;box-shadow:0 18px 32px -18px #8b75634d,0 1px 2px #8b75631a;perspective:1000px}.envelope-letter{position:absolute;top:12%;right:7%;bottom:4%;left:7%;display:grid;place-items:center;background:var(--paper);box-shadow:0 0 2px #76645430;transition:transform .7s .25s}.envelope-letter span{font-style:italic;font-size:20px;opacity:.8}.envelope-pocket{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(148deg,transparent 49.7%,#d8c6b636 50%,transparent 50.5%),linear-gradient(212deg,transparent 49.7%,#d8c6b636 50%,transparent 50.5%),linear-gradient(25deg,#f2e7dd,#faf5ed);clip-path:polygon(0 0,50% 49%,100% 0,100% 100%,0 100%);border-radius:0 0 3px 3px;z-index:2}.envelope-flap{position:absolute;top:0;right:0;bottom:0;left:0;clip-path:polygon(0 0,100% 0,50% 54%);background:linear-gradient(180deg,#f5eee5,#eaded1);transform-origin:center top;transition:transform .65s ease,filter .65s;z-index:3}.seal-button{position:absolute;z-index:4;left:50%;top:34%;transform:translate(-50%);background:transparent;border:0;padding:4px;display:flex;flex-direction:column;align-items:center;color:var(--ink);width:190px}.wax-seal{width:67px;height:67px;display:grid;place-items:center;border-radius:46% 54% 48% 52%/48% 44% 56% 52%;background:radial-gradient(circle at 32% 24%,#ebc4b5,#d9aa98 55%,#bd8c79);box-shadow:0 3px 5px #7e594238,inset 0 0 0 3px #dcae9c,inset 0 0 0 5px #ba85714d,inset 0 0 11px #f3d5bc;color:#936653;transition:transform .3s,opacity .3s}.wax-seal>span{display:grid;place-items:center;width:49px;height:49px;border:1px solid #ad7c6680;border-radius:50%;font-family:Claudy,cursive;font-size:23px;padding-top:4px;letter-spacing:-3px;text-shadow:0 1px #f7d5c6}.seal-caption{position:absolute;top:calc(100% + 88px);white-space:nowrap;font-size:18px;letter-spacing:.5px;display:flex;align-items:center;gap:16px}.seal-caption>span{color:var(--peach);font-size:22px}.seal-button:hover .wax-seal{transform:rotate(-6deg) scale(1.06)}.intro-footnote{margin:26px 0 0;font-size:15px;font-style:italic;color:var(--tortora)}.is-opening .envelope-flap{transform:rotateX(180deg);filter:brightness(1.03);z-index:0}.is-opening .envelope-letter{transform:translateY(-35%)}.is-opening .wax-seal{opacity:0;transform:scale(1.25)}.is-opening .seal-caption{opacity:.6}.envelope-intro.envelope-photo{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;width:100%;height:100dvh;min-height:100dvh;padding:0;background:var(--paper)}.envelope-open-area{position:relative;display:block;width:100%;height:100%;min-height:0;border:0;padding:0;background:var(--paper);color:var(--ink);transition:opacity .65s ease,transform .65s ease}.envelope-open-area:disabled{opacity:1}.envelope-open-area:focus-visible{outline-offset:-6px}.envelope-cover-image{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.envelope-photo-caption{position:absolute;bottom:max(32px,env(safe-area-inset-bottom));left:50%;transform:translate(-50%);display:inline-flex;align-items:center;justify-content:center;gap:18px;padding:13px 24px;min-height:50px;background:#fcfcfaf0;border:1px solid #d9aa9899;border-radius:2px;white-space:nowrap;font-size:19px;box-shadow:0 4px 20px #44362f14}.envelope-photo-caption>span{color:#9a6855}.envelope-photo.is-opening .envelope-open-area{opacity:0;transform:scale(1.025)}.music-toggle{position:fixed;z-index:15;bottom:max(18px,env(safe-area-inset-bottom));right:max(16px,calc((100vw - 480px)/2 + 16px));display:grid;place-items:center;width:46px;height:46px;padding:0;border:1px solid var(--peach);border-radius:50%;color:var(--ink);background:#fcfcfaf5;box-shadow:0 3px 18px #44362f1a;font-size:23px}.intro-video{position:absolute;top:0;right:0;bottom:0;left:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center;opacity:0;pointer-events:none}.intro-video.is-visible{opacity:1}.video-skip{position:absolute;z-index:2;top:max(16px,env(safe-area-inset-top));right:16px;min-height:44px;padding:10px 16px;border:1px solid #d9aa9899;border-radius:2px;background:#fcfcfae8;color:var(--ink);font-size:15px}.video-fallback{position:absolute;z-index:3;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;padding:28px;text-align:center;background:#fcfcfaf2}.video-fallback p{margin:0}.video-fallback .text-link{border-top:0;border-left:0;border-right:0;background:transparent;min-height:44px}.music-toggle:hover{background:var(--soft)}.reveal{animation:reveal .8s ease both}@keyframes reveal{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.hero{padding:0;margin:0;width:100%;background:var(--paper)}.hero-image{display:block;width:100%;height:auto;object-fit:contain}.countdown-section{text-align:center;padding:31px 24px 39px;border-bottom:1px solid var(--line);margin:0 29px}.countdown-section>.eyebrow{margin-bottom:18px;font-size:9px;letter-spacing:2px}.countdown{display:grid;grid-template-columns:repeat(4,1fr)}.countdown-part{display:flex;flex-direction:column;gap:6px;position:relative}.countdown-part+.countdown-part:before{content:"";position:absolute;left:0;top:11px;height:22px;width:1px;background:var(--line)}.countdown-value{font-size:clamp(30px,9vw,42px);line-height:1.05;font-weight:300;font-variant-numeric:tabular-nums;color:var(--tortora)}.countdown-label{font-size:13px;color:var(--tortora)}.rsvp-section{padding-top:33px;padding-bottom:47px}.rsvp-section>.botanical{margin:0 0 18px}.rsvp-section .eyebrow{font-size:9px;margin-bottom:16px}.rsvp-section h2{font-family:Claudy,cursive;font-size:58px;margin-bottom:21px;color:var(--tortora)}.rsvp-section p:not(.eyebrow):not(.deadline){color:var(--tortora);margin-bottom:29px}.button{min-height:52px;border:1px solid transparent;padding:15px 22px;border-radius:2px;display:inline-flex;align-items:center;justify-content:center;gap:16px;font-size:17px;line-height:1.2;text-decoration:none;transition:background .2s,transform .2s}.button-primary{background:var(--peach);color:#44362f;border-color:#cd9c88}.button-primary:hover{background:#e2b9a7;transform:translateY(-1px)}.button>span{font-size:22px;line-height:.8}.deadline{font-size:13px;line-height:1.5;color:var(--tortora);margin-top:17px;margin-bottom:0}.deadline strong{font-weight:500}.venue-section{background:#f5f1ed;border-top:1px solid #eee6de;border-bottom:1px solid #eee6de}.venue-section .eyebrow{font-size:9px;margin-bottom:22px}.venue-section h2{font-size:31px;max-width:280px;margin:0 auto 14px}address{font-style:normal;font-size:17px;line-height:1.5;color:var(--tortora)}.day-plan{display:flex;flex-direction:column;text-align:left;gap:24px;margin:35px auto 32px;max-width:290px}.day-plan>div{display:grid;grid-template-columns:8px 70px 1fr;gap:10px;align-items:center;font-size:17px}.day-plan time,.plan-after{font-size:16px}.plan-dot{width:5px;height:5px;border-radius:50%;background:var(--peach)}.text-link{display:inline-flex;align-items:center;justify-content:center;gap:15px;font-size:16px;padding:9px 0;text-decoration:none;border-bottom:1px solid var(--peach)}.arrow-icon{display:inline-block;width:20px;height:20px;flex-shrink:0;vertical-align:middle}.text-link:hover{color:#9a6855}.footer{text-align:center;padding:0 25px 27px}.footer-monogram{display:block;font-family:Claudy,cursive;font-size:45px;color:var(--tortora);margin-bottom:15px}.footer-monogram span{font-family:Cormorant Infant,Georgia,serif;color:var(--peach);font-style:italic;font-size:24px;margin:0 5px}.footer>p:not(.eyebrow):not(.footer-note){font-size:20px;margin-bottom:7px}.footer .eyebrow{font-size:9px;letter-spacing:2px}.footer-line{display:block;width:30px;height:1px;background:var(--peach);margin:25px auto}.footer-note{font-size:14px;font-style:italic;color:var(--tortora)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;background:#39302b70;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;padding:24px 14px}.rsvp-modal{background:var(--paper);border:1px solid #e8dfd5;width:100%;max-width:480px;max-height:calc(100svh - 48px);overflow-y:auto;overscroll-behavior:contain;border-radius:5px;box-shadow:0 20px 80px #33292140;scroll-padding:110px 0 30px}.modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding:24px 26px 20px;border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--paper);z-index:5}.modal-header .eyebrow{font-size:8px;letter-spacing:1.8px;margin-bottom:13px}.modal-header h2{font-family:Claudy,cursive;font-size:43px;color:var(--tortora);margin:0}.close-button{width:44px;height:44px;flex-shrink:0;border:1px solid var(--line);background:transparent;border-radius:50%;color:var(--tortora);font-size:29px;line-height:1;margin:-5px -7px 0 8px}.close-button:hover{background:var(--soft)}.rsvp-form{padding:22px 26px 26px}.form-intro{font-size:16px;color:var(--tortora);margin-bottom:24px;line-height:1.5}.form-intro strong{font-weight:600}.form-fields{border:0;margin:0;padding:0;min-width:0}.field-label{display:block;font-size:17px;font-weight:500;margin:0 0 9px;line-height:1.3}input:not([type=radio]):not([type=checkbox]),textarea{display:block;width:100%;border:1px solid #d7cfc8;background:#fffefa;border-radius:2px;min-height:48px;padding:12px 13px;color:var(--ink);font-size:17px;line-height:1.4}input::placeholder,textarea::placeholder{color:#98918b;font-style:italic;opacity:1}textarea{resize:vertical}input[type=radio],input[type=checkbox]{accent-color:#a57763;width:18px;height:18px;flex:0 0 18px;cursor:pointer}.attendance-fieldset{padding:0;margin:25px 0;border:0}.attendance-fieldset legend{padding:0;margin-bottom:12px;font-size:18px}.radio-card{padding:14px 12px;margin:8px 0;display:flex;align-items:center;gap:10px;min-height:53px;border:1px solid var(--line);cursor:pointer;font-size:17px;transition:border-color .2s,background .2s}.radio-card.selected{border-color:#c79b86;background:#f8eee7}.radio-symbol{margin-left:auto;color:#a27260;font-size:25px;line-height:.7}.guest-fields{border-top:1px solid var(--line);padding-top:20px}.form-section-title{font-size:22px;line-height:1.2;margin-bottom:24px}.guest-fields textarea{margin-bottom:22px}.check-label{display:flex;align-items:flex-start;gap:11px;cursor:pointer;font-size:16px;line-height:1.45}.check-label input{margin:3px 0 0}.privacy-label{padding-top:22px;margin-top:24px;border-top:1px solid var(--line);font-size:14px;color:var(--tortora)}.submit-button{width:100%;margin-top:27px}.form-footnote{text-align:center;font-size:12px;color:var(--tortora);margin:15px 0 0}.honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);pointer-events:none}.submission-notice{border:1px solid #cfb29f;background:#f9f0e8;margin-top:22px;padding:18px}.submission-notice h3{font-size:22px;font-weight:500;margin-bottom:10px}.submission-notice p{font-size:16px;margin-bottom:12px}.submission-notice .email-explanation{font-size:14px;margin-top:13px;margin-bottom:0}.field-error{color:#983f36;font-size:15px;margin:8px 0}.success-message{text-align:center;padding:38px 30px}.success-message h3{font-size:36px;font-weight:400;margin-bottom:18px}.success-message p{font-size:18px}.success-mark{display:grid;place-items:center;width:62px;height:62px;margin:0 auto 25px;border:1px solid var(--peach);border-radius:50%;color:#a27260;font-size:27px}.success-message .button{margin-top:14px}@media(min-width:481px){.envelope-intro.envelope-photo{max-width:480px;margin-inline:auto}body{background:radial-gradient(ellipse at 16% 30%,#f6eee8 0,transparent 45%),radial-gradient(ellipse at 85% 75%,#e4d9cf 0,transparent 50%),#eee9e4;background-attachment:fixed}}@media(max-width:360px){.section-pad{padding-left:22px;padding-right:22px}.modal-header,.rsvp-form{padding-left:20px;padding-right:20px}.day-plan>div{grid-template-columns:6px 60px 1fr;gap:8px;font-size:16px}.seal-caption{top:calc(100% + 65px)}}@media(max-height:700px){.envelope-intro{padding-top:28px}.intro-kicker{margin-bottom:17px}.couple-title{font-size:63px;margin-bottom:18px}.intro-date{margin-bottom:32px}.envelope-stage{max-width:290px;margin-bottom:68px}.seal-caption{top:calc(100% + 65px)}.intro-footnote{margin-top:12px}}@media(max-width:480px){.modal-backdrop{padding:12px 8px}.rsvp-modal{max-height:calc(100svh - 24px)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}.gift-note{max-width:330px;margin:0 auto;text-align:center}.gift-line{display:block;width:30px;height:1px;background:var(--peach);margin:26px auto 20px}.rsvp-section .gift-text{font-size:15px;line-height:1.6;font-style:italic;color:var(--tortora);margin:0 0 20px}.gift-iban{margin:0 0 18px;padding:14px 12px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:12px}.gift-iban dt{font-family:Georgia,serif;font-size:9px;letter-spacing:2px;text-transform:uppercase;color:var(--tortora);margin-bottom:4px}.gift-iban dd{margin:0}.gift-iban-code{font-family:Georgia,serif;font-size:13px;letter-spacing:1.2px;color:var(--ink);overflow-wrap:anywhere;-webkit-user-select:all;user-select:all}.gift-holder{font-size:17px;color:var(--ink)}.rsvp-section .gift-signature{font-family:Claudy,cursive;font-style:italic;font-synthesis:style;font-size:34px;line-height:1;color:var(--tortora);margin:0}.footer>p.gift-signature:not(.eyebrow):not(.footer-note){font-family:Claudy,cursive;font-style:italic;font-synthesis:style;font-size:34px;line-height:1;color:var(--tortora);margin:0 0 8px}.gift-iban dt{font-family:Cormorant Infant,Georgia,serif;font-weight:700;font-size:11px;letter-spacing:2px}.gift-iban-code{font-family:Cormorant Infant,Georgia,serif;font-size:17px;letter-spacing:.8px;font-weight:500}.gift-holder{font-family:Cormorant Infant,Georgia,serif}
