@import "https://fonts.googleapis.com/css2?family=Bodoni+Moda:ital,wght@1,400&family=Cormorant+Garamond:ital,wght@0,400;0,500;1,400;1,500&family=Great+Vibes&display=swap";:root{color:#65436b;font-synthesis:none;--plum:#79547f;--gold:#ae874a;background:#f1e9ed;font-family:Cormorant Garamond,Georgia,serif}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline-offset:4px;outline:2px solid #96739b}h1,h2,h3,p{margin:0}button{color:inherit}::selection{background:#dfc9e1}.eyebrow{letter-spacing:2px;color:#94703c;font:10px/1.5 Georgia,serif;display:block}.invitation{--lid:0;--reveal:0;text-align:center;background:radial-gradient(at 30% 10%,#fffdf6 0%,#f2eaf0 50%,#e1d5e0 100%);min-height:100vh;padding:40px 20px 26px;position:relative;overflow:hidden}.intro-caption{z-index:5;margin-bottom:75px;position:relative}.intro-caption>span{letter-spacing:2.5px;color:#8b7387;font:9px/1.6 Georgia,serif}.intro-caption p{color:#89688a;margin-top:9px;font:italic 21px/1.4 Cormorant Garamond,Georgia}.keepsake-wrap{perspective:1700px;width:min(100%,420px);margin:auto;padding-top:20px;position:relative}.keepsake{isolation:isolate;transform-style:preserve-3d;background:#fff9f0;border:1px solid #cdb8c7;border-radius:3px;position:relative;box-shadow:0 0 0 4px #f6eaf0,0 17px 45px -12px #6a46614f}.keepsake:before{content:"";pointer-events:none;z-index:5;border:1px solid #bd9b63;position:absolute;inset:10px}.invitation-content{opacity:1;transform:translateY(calc((1 - var(--reveal))*4px));color:#734c77;background:radial-gradient(at 50% 31%,#fffdf4,#0000 70%);padding:27px 28px 31px;position:relative}.om-blessing{place-items:center;height:50px;margin-bottom:9px;display:grid;position:relative}.om-blessing:before{content:"";background:radial-gradient(#f1ca6a77,#0000 70%);border-radius:50%;position:absolute;inset:-10px 32%}.om-blessing span{color:#a67722;font:42px/1 Georgia,serif;position:relative}.welcome{color:#967037;font:italic 15px/1.45 Cormorant Garamond,Georgia}.ceremony{color:#78467e;margin:7px 0 0;font:400 clamp(34px,8vw,43px)/1.25 Great Vibes,cursive}.princess{letter-spacing:1.8px;margin-top:1px;font-size:9px}.ceremony-scene{aspect-ratio:1.1;isolation:isolate;width:108%;margin:16px -4% 0;position:relative}.scene-art{z-index:3;width:100%;height:100%;position:absolute;inset:0}.hanging-cradle{transform-origin:50% 0;z-index:2;width:42%;height:73%;position:absolute;top:15%;left:29%}.hanging-cradle img{object-fit:fill;filter:drop-shadow(0 4px 3px #76503a26);width:100%;height:100%}.floor-shadow{filter:blur(3px);background:radial-gradient(#7e63732e,#0000 70%);width:44%;height:8%;position:absolute;bottom:6%;left:28%}.lamp-light{z-index:5;filter:drop-shadow(0 0 5px #f5bf55);width:10%;height:7%;position:absolute;top:51%}.lamp-left{left:3.5%}.lamp-right{right:3.5%}.lamp-light:before{content:"";background:radial-gradient(#ffda6c66,#0000 65%);border-radius:50%;position:absolute;inset:-110%}.lamp-light i{transform-origin:50% 100%;background:linear-gradient(#fff9da,#ffc14a);border-radius:80% 10% 70% 30%;width:7%;height:45%;position:absolute;bottom:0;box-shadow:0 0 5px #ffe0a3}.lamp-light i:first-child{left:0}.lamp-light i:nth-child(2){height:38%;left:25%}.lamp-light i:nth-child(3){left:65%}.lamp-light i:nth-child(4){height:40%;left:91%}.motes{z-index:5;pointer-events:none;position:absolute;inset:20% 25%}.motes i{opacity:0;background:#e0b65b;border-radius:50%;width:2px;height:2px;position:absolute}.motes i:first-child{top:25%;left:10%}.motes i:nth-child(2){top:60%;left:80%;animation-delay:-2s!important}.motes i:nth-child(3){top:50%;left:40%;animation-delay:-4s!important}.motes i:nth-child(4){top:10%;left:70%;animation-delay:-1s!important}.family{margin-top:8px}.family .eyebrow{font-size:9px}.baby-name{letter-spacing:-2.7px;color:#805087;text-transform:none;margin:2px 0 8px;font:italic 400 76px/1.13 Bodoni Moda,Georgia,serif}.parents{color:#86548b;margin:2px 0 0;font:italic 29px/1.3 Cormorant Garamond,Georgia}.gold-rule{background:linear-gradient(90deg,#0000,#b58e51,#0000);width:62%;height:1px;margin:20px auto 17px}.date-time{grid-template-columns:1fr 1fr;gap:13px;display:grid}.date-time>div+div{border-left:1px solid #bda06b66}.date-time .eyebrow{font-size:9px}.date-time p{color:#866539;margin-top:3px;font-size:16px;line-height:1.5}.venue{margin-top:15px}.venue>p{color:#7a5c32;margin-top:3px;font-size:22px;line-height:1.4}.venue address{color:#9c7e5a;font-size:14px;font-style:normal;line-height:1.45}.lotus-button{isolation:isolate;background:linear-gradient(120deg,#f4e6f1,#fff6eb 60%,#e9d7e8);border:1px solid #be9d64;border-radius:40px;justify-content:center;align-items:center;gap:9px;max-width:100%;min-height:68px;margin:23px auto 0;padding:7px 22px 7px 7px;transition:transform .2s,box-shadow .2s;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 1px #fff,0 3px #ceb4c7,0 6px 8px #7a4d7226}.lotus-button:active{transform:translateY(3px);box-shadow:inset 0 2px 3px #ba99b255,0 1px #ceb4c7}.lotus-button>span+span{text-align:left;font:italic 21px/1.15 Cormorant Garamond,Georgia}.lotus-button small{letter-spacing:2px;color:#a58045;margin-top:4px;font:8px/1.5 Georgia,serif;display:block}.lotus-icon{contain:paint;flex:none;width:69px;height:49px;display:block;position:relative;overflow:hidden}.lotus-icon i{transform-origin:50% 100%;background:linear-gradient(135deg,#fff9f7,#dfbddd 60%,#a47aa8);border:1px solid #b68bb5;border-radius:90% 90% 20% 20%;width:16px;height:29px;transition:transform .7s;position:absolute;bottom:5px;left:27px;box-shadow:inset 1px 1px 1px #ffffffb0}.lotus-icon i:first-child{z-index:1;transform:rotate(-58deg)}.lotus-icon i:nth-child(2){z-index:2;transform:rotate(-39deg)}.lotus-icon i:nth-child(3){z-index:3;transform:rotate(-20deg)}.lotus-icon i:nth-child(4){z-index:4;transform:rotate(0)}.lotus-icon i:nth-child(5){z-index:3;transform:rotate(20deg)}.lotus-icon i:nth-child(6){z-index:2;transform:rotate(39deg)}.lotus-icon i:nth-child(7){z-index:1;transform:rotate(58deg)}.lotus-button:hover .lotus-icon i:first-child{transform:rotate(-70deg)}.lotus-button:hover .lotus-icon i:nth-child(7){transform:rotate(70deg)}.paper-lid{z-index:12;transform-origin:50% 0;transform-style:preserve-3d;transform:rotateX(calc(var(--lid)*-160deg));pointer-events:none;position:absolute;inset:-1px}.lid-front,.lid-back{backface-visibility:hidden;background:linear-gradient(115deg,#faf1f4,#e9d9e7);border:1px solid #cbb4c6;border-radius:3px;position:absolute;inset:0;box-shadow:inset 0 2px 2px #fff8,0 6px 16px #65426020}.lid-back{background:linear-gradient(110deg,#e1d0df,#f2e6ed);transform:rotateY(180deg)}.lid-frame{border:1px solid #b18b50;border-radius:46% 46% 2px 2px;position:absolute;inset:18px;box-shadow:0 0 0 4px #b18b5011}.lid-om{color:#a77c35;width:100%;font:40px/1 Georgia;position:absolute;top:12%;left:0}.lid-salutation{letter-spacing:1.6px;width:100%;font-size:8px;position:absolute;top:27%;left:0}.lid-name{letter-spacing:-4px;color:#805486;text-transform:none;width:100%;font:italic 400 104px/1.1 Bodoni Moda,Georgia,serif;position:absolute;top:33%;left:0}.lid-occasion{color:#8e6992;width:100%;font:italic 24px/1.4 Cormorant Garamond,Georgia;position:absolute;top:77%;left:0}.lid-date{width:100%;font-size:9px;position:absolute;top:87%;left:0}.floral-opening{z-index:20;pointer-events:none;position:absolute;top:-80px;left:-60px}.open-cover{z-index:25;background:0 0;border:0;justify-content:center;align-items:end;padding-bottom:35px;display:flex;position:absolute;inset:0}.open-cover span{color:#8e7390;border-bottom:1px solid #bfa9bb88;font:italic 18px/1.4 Cormorant Garamond,Georgia}.opening-status{color:#92778e;margin:30px 0 0;font:italic 16px/1.5 Cormorant Garamond,Georgia}.replay{text-underline-offset:4px;color:#91758e;background:0 0;border:0;min-height:36px;margin-top:12px;font-size:13px;text-decoration:underline}.invitation-footer{color:#9a8295;margin:35px auto 0;font:italic 15px/1.5 Cormorant Garamond,Georgia}.invitation-footer a{letter-spacing:1px;color:#93778d;margin-top:16px;font:10px/1.5 Georgia,serif;text-decoration:none;display:block}:is(.open,.opening) .hanging-cradle{animation:5s ease-in-out infinite alternate cradle-swing}:is(.open,.opening) .floor-shadow{animation:5s ease-in-out infinite alternate cradle-shadow}:is(.open,.opening) .om-blessing:before{animation:4.6s ease-in-out infinite alternate blessing-aura}:is(.open,.opening) .om-blessing span{animation:4.6s ease-in-out infinite alternate gold-glow}:is(.open,.opening) .lamp-light{animation:2.3s ease-in-out infinite alternate lamp-glow}:is(.open,.opening) .lamp-right{animation-delay:-1.3s}:is(.open,.opening) .lamp-light i{animation:1.3s ease-in-out infinite alternate flame}:is(.open,.opening) .lamp-light i:nth-child(2n){animation-delay:-.65s}:is(.open,.opening) .motes i{animation:7s linear infinite mote}.closed .lid-om{animation:5s ease-in-out infinite alternate gold-glow}@keyframes cradle-swing{0%{transform:rotate(-1.9deg)}to{transform:rotate(1.9deg)}}@keyframes cradle-shadow{0%{opacity:.6;transform:translate(-3%)}to{opacity:.9;transform:translate(3%)}}@keyframes blessing-aura{0%{opacity:.35;transform:scale(.9)}to{opacity:.8;transform:scale(1.1)}}@keyframes gold-glow{0%{filter:drop-shadow(0 0 #f0ce7d)}to{filter:drop-shadow(0 0 5px #efc96b99)}}@keyframes lamp-glow{0%{opacity:.65}to{opacity:1}}@keyframes flame{0%{transform:rotate(-4deg)scaleY(.82)}to{transform:rotate(6deg)scaleY(1.08)}}@keyframes mote{0%,to{opacity:0;transform:translateY(12px)}30%,70%{opacity:.6}90%{transform:translateY(-25px)}}.reply-letter{text-align:left;background:#fffaf2;border:1px solid #cbb484;border-radius:120px 120px 5px 5px;width:min(100%,480px);margin:28px auto 0;padding:35px 30px 30px;scroll-margin-top:30px;position:relative;box-shadow:0 0 0 5px #eadde7,0 16px 35px #7c5b7320}.reply-letter>.eyebrow{text-align:center;margin-top:14px;font-size:8px}.reply-letter>h2{text-align:center;color:#815488;margin-top:9px;font:italic 35px/1.3 Cormorant Garamond,Georgia}.reply-intro{text-align:center;color:#9b8068;margin:4px 0 24px;font-size:15px}.rsvp-form>label,.guest-counts>label{color:#76546e;margin-top:18px;font:13px/1.5 Georgia,serif;display:block}.rsvp-form label small{color:#a38c9e;margin-left:4px;font-size:10px}.rsvp-form input:not([type=radio]),.rsvp-form textarea,.host-tools input,.host-tools select{color:#65436b;background:#fffdf9;border:1px solid #d3bfce;border-radius:5px;width:100%;min-height:46px;margin-top:7px;padding:11px 12px;font:17px/1.4 Cormorant Garamond,Georgia;display:block}.rsvp-form textarea{resize:vertical}.rsvp-form fieldset{border:0;flex-wrap:wrap;gap:10px;margin:20px 0 0;padding:0;display:flex}.rsvp-form legend{color:#76546e;margin-bottom:8px;font:13px/1.5 Georgia}.rsvp-form fieldset label{background:#fffaf4;border:1px solid #d2bdce;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:6px;min-width:140px;padding:12px 10px;font-size:16px;line-height:1.3;display:flex}.rsvp-form fieldset label.chosen{background:#efe2ef;border-color:#ba94c1}.rsvp-form input[type=radio]{accent-color:#8a6291;flex:none;width:16px;height:16px}.guest-counts{grid-template-columns:1fr 1fr;gap:15px;display:grid}.primary,.secondary{cursor:pointer;border:1px solid #82588a;border-radius:27px;justify-content:center;align-items:center;min-height:44px;padding:12px 23px;font:16px/1.3 Cormorant Garamond,Georgia;text-decoration:none;display:inline-flex}.primary{color:#fff8ed;background:#805688;box-shadow:inset 0 1px #fff4,0 3px 8px #79537320}.secondary{color:#805688;background:#fffaf3}.submit-rsvp{width:100%;margin-top:24px;display:flex}.privacy-note{text-align:center;color:#a18a99;margin-top:13px;font:11px/1.5 Georgia}.honey{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.form-error{color:#9a354f;margin-top:16px;font-size:15px;line-height:1.5}.reply-confirmation{text-align:center;padding:7px 0 12px}.confirmation-flower{color:#a980b0;font-size:50px}.reply-confirmation h3{color:#805588;margin:12px 0;font:italic 29px/1.4 Cormorant Garamond,Georgia}.reply-confirmation p{color:#8b6c83;font:19px/1.5 Cormorant Garamond,Georgia}.reply-confirmation .confirmation-note{margin:18px 0 22px;font-style:italic}.host-entry{text-align:center;max-width:560px;margin:12vh auto;padding:35px}.host-entry h1{margin:15px 0;font:italic 44px/1.2 Cormorant Garamond,Georgia}.host-entry p{margin:15px 0 25px;font-size:21px;line-height:1.5}.host-shell{max-width:1180px;margin:auto;padding:55px 32px 80px}.host-header{justify-content:space-between;align-items:center;gap:20px;display:flex}.host-header h1{margin:9px 0;font:italic 45px/1.2 Cormorant Garamond,Georgia}.host-header p{color:#9b8092;font-size:17px}.quiet-link{white-space:nowrap;font-size:15px}.host-totals{grid-template-columns:repeat(4,1fr);gap:16px;margin:35px 0;display:grid}.host-totals>div{background:#fffaf2;border:1px solid #d8c5d3;border-radius:10px;padding:23px}.host-totals span,.host-totals small{color:#95778d;font-size:14px;display:block}.host-totals strong{color:#76507f;margin:8px 0;font:400 46px/1.2 Cormorant Garamond,Georgia;display:block}.host-tools{flex-wrap:wrap;align-items:end;gap:14px;display:flex}.host-tools label{color:#8d6e86;font:12px/1.5 Georgia}.search-label{flex:1;min-width:190px}.host-tools select{min-width:160px}.host-tools button{min-height:46px;margin-bottom:0;font-size:15px}.host-updated{color:#9b8193;margin:20px 0 12px;font:13px/1.5 Cormorant Garamond,Georgia}.host-table-wrap{background:#fffaf4;border:1px solid #d5c1d0;border-radius:8px;overflow-x:auto}.host-table{border-collapse:collapse;text-align:left;width:100%;min-width:850px;font-size:15px;line-height:1.45}.host-table th{color:#997b8e;background:#eee2ec;padding:18px 15px;font:11px/1.4 Georgia}.host-table td{vertical-align:top;border-top:1px solid #e4d5de;padding:20px 15px}.host-table td:nth-child(3),.host-table td:nth-child(4),.host-table td:nth-child(5){font-variant-numeric:tabular-nums;text-align:center}.host-table small{color:#9c8195;overflow-wrap:anywhere;margin-top:5px;font-size:12px;display:block}.host-table td:first-child{min-width:150px}.host-table td:nth-child(6){white-space:pre-wrap;overflow-wrap:anywhere;min-width:215px;max-width:300px}.host-table td:nth-child(6) p+p{margin-top:8px}.host-table td:last-child{color:#997e92;min-width:110px;font-size:12px}.attendance{white-space:nowrap;border-radius:14px;padding:5px 9px;font-size:13px;display:inline-block}.attendance.attending{color:#58705a;background:#e6eee1}.attendance.declined{color:#9a6d7c;background:#f4e7ec}.empty-guests{text-align:center;background:#fffaf3;border:1px solid #d5c1d0;border-radius:8px;padding:50px 25px}.empty-guests>span{color:#bb98be;font-size:50px}.empty-guests h2{margin:10px 0;font:italic 30px/1.4 Cormorant Garamond,Georgia}.empty-guests p{color:#9b8093;font-size:18px;line-height:1.5}@media (width<=480px){.invitation{padding:28px 15px 23px}.intro-caption{margin-bottom:69px}.intro-caption>span{letter-spacing:1.6px;font-size:7px}.intro-caption p{font-size:18px}.invitation-content{padding:25px 22px 29px}.ceremony{font-size:37px}.baby-name{font-size:69px}.parents{font-size:27px}.date-time p{font-size:15px}.date-time .eyebrow{font-size:8px}.lid-name{font-size:88px}.lid-salutation{letter-spacing:1px;font-size:7px}.lid-occasion{font-size:21px}.lid-date{font-size:8px}.reply-letter{padding:33px 21px 25px}.host-shell{padding:30px 18px 55px}.host-header{display:block}.host-header h1{font-size:37px}.host-header .quiet-link{margin-top:14px;display:inline-block}.host-totals{grid-template-columns:1fr 1fr;gap:12px}.host-totals>div{padding:17px}.host-totals strong{font-size:38px}}@media (width<=359px){.invitation-content{padding:23px 17px 27px}.ceremony{font-size:33px}.date-time p{font-size:13px}.lotus-button{gap:4px;padding-right:17px}.lotus-button>span+span{font-size:19px}.lotus-icon{width:62px}.venue>p{font-size:20px}.lid-name{font-size:80px}.lid-salutation{font-size:6px}.rsvp-form fieldset label{justify-content:start;min-width:100%}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.host-totals strong{font-variant-numeric:lining-nums tabular-nums;font-family:Georgia,serif;font-size:39px}.host-table td:nth-child(3),.host-table td:nth-child(4),.host-table td:nth-child(5){font-variant-numeric:lining-nums tabular-nums;font-family:Georgia,serif;font-size:14px}.lid-viewport{perspective:1700px;z-index:12;pointer-events:none;position:absolute;inset:-1px;overflow:hidden}.lid-viewport .paper-lid{inset:0}.invitation{--bouquet-opacity:1;--bouquet-scale:1;--bouquet-lift:0px;--name-write:0;--ribbon-dash:1000;--ribbon-opacity:0;--name-opacity:0;--ribbon-y:0px;--ribbon-scale:1}.bouquet-display,.bouquet-trigger{z-index:22;width:84%;height:41%;position:absolute;top:38%;left:8%}.bouquet-display{pointer-events:none;opacity:var(--bouquet-opacity);transform:translateY(calc(var(--bouquet-lift)*-1)) scale(var(--bouquet-scale));transform-origin:50% 60%;will-change:opacity,transform}.bouquet-display img{object-fit:contain;filter:drop-shadow(0 7px 7px #67496324);width:100%;height:100%;display:block}.bouquet-trigger{z-index:25;touch-action:manipulation;background:0 0;border:0;border-radius:45%;justify-content:center;align-items:end;padding:0;display:flex}.bouquet-trigger span{text-align:center;color:#89638c;text-underline-offset:5px;width:100%;font:italic 17px/1.5 Cormorant Garamond,Georgia;-webkit-text-decoration:underline #b99cba88;text-decoration:underline #b99cba88;position:absolute;top:100%;left:0}.bouquet-trigger:hover{background:radial-gradient(#fff7f422,#0000 65%)}.lid-salutation{font-size:8px;top:22%}.lid-name{font-size:96px;top:27%}.lid-occasion{font-size:22px;top:86%}.lid-date{top:93%}.lid-om{top:10%}.ribbon-name{z-index:24;pointer-events:none;width:130%;opacity:var(--ribbon-opacity);transform:translateY(var(--ribbon-y)) scale(var(--ribbon-scale));transform-origin:50% 44.64%;will-change:transform,opacity;position:absolute;top:36%;left:-15%}.ribbon-name svg{width:100%;display:block;overflow:visible}.ribbon-name text{fill:#805087;letter-spacing:-4px;font:italic 400 136px Bodoni Moda,Georgia,serif}.name-mask{width:calc(var(--name-write)*600px)}.silk-ribbon,.silk-shadow{fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1000;stroke-dashoffset:var(--ribbon-dash)}.silk-ribbon{stroke:url(#avya-silk);stroke-width:6px}.silk-shadow{stroke:#94739122;stroke-width:11px;transform:translateY(2px)}.baby-name{opacity:var(--name-opacity)}.invitation-sharing{min-height:52px;margin:18px auto 0}.share-invitation{color:#87658b;background:#fff8f155;border:1px solid #c9b1c4;border-radius:25px;min-height:42px;padding:10px 20px;font:14px/1.3 Cormorant Garamond,Georgia}.invitation-sharing p{color:#947a8c;overflow-wrap:anywhere;margin-top:8px;font:12px/1.5 Cormorant Garamond,Georgia}.invitation-footer{margin-top:16px}.rsvp-form input[type=number]{font-variant-numeric:lining-nums tabular-nums;font-family:Georgia,serif;font-size:16px}.family-rows{gap:12px;display:grid}.family-row{background:#fffaf3;border:1px solid #d8c5d3;border-radius:9px;grid-template-columns:minmax(150px,1fr) auto minmax(130px,auto);align-items:center;gap:22px;padding:23px 25px;display:grid}.family-row h2{color:#79547f;font:500 24px/1.3 Cormorant Garamond,Georgia}.family-row p{color:#9b8193;margin-top:5px;font-size:15px;line-height:1.5}.family-count{text-align:right}.family-count strong{font-variant-numeric:lining-nums tabular-nums;font:30px/1.2 Georgia,serif;display:block}.family-count span{color:#9b8193;font:13px/1.5 Cormorant Garamond,Georgia}.family-footnote{color:#9b8193;max-width:670px;margin-top:22px;font:13px/1.6 Cormorant Garamond,Georgia}@media (width<=480px){.lid-name{font-size:85px}.lid-salutation{letter-spacing:1px;font-size:7px}.lid-occasion{font-size:20px}.bouquet-trigger span{font-size:15px}.family-row{grid-template-columns:1fr auto;gap:13px;padding:20px}.family-row>.attendance{grid-column:1}.family-count{grid-area:1/2/3}.family-row h2{font-size:22px}.family-count span{font-size:12px}}@media (prefers-reduced-motion:reduce){.ribbon-name{display:none}.open .baby-name{opacity:1}}.ribbon-name{background:radial-gradient(#fff9f0ec 12%,#fff9f099 42%,#0000 70%);border-radius:50%}.invitation{--card-fit:.65;--paper-height:1050px;--cover-travel:0;--cover-distance:900px;flex-direction:column;justify-content:space-between;align-items:center;height:100dvh;min-height:0;padding:10px 16px;display:flex;overflow:hidden}.intro-caption{flex:none;height:26px;margin:0}.intro-caption>span{letter-spacing:1.7px;font-size:7px}.intro-caption p{margin-top:3px;font-size:15px;line-height:1.1}.keepsake-wrap{width:calc(420px * var(--card-fit));height:calc(var(--paper-height) * var(--card-fit));perspective:none;flex:none;margin:0;padding:0}.keepsake{width:420px;transform:scale(var(--card-fit));transform-origin:0 0;transform-style:flat;position:absolute;top:0;left:0}.invitation-content{transform:none}.paper-lid{transform-style:flat;transform:none!important}.lid-viewport{perspective:none;overflow:visible;opacity:1!important}.lid-back{display:none}.open .paper-lid{visibility:visible}.cover-assembly{z-index:22;transform:translateX(calc(var(--cover-travel) * var(--cover-distance) * -1));will-change:transform;pointer-events:none;position:absolute;inset:-1px}.cover-assembly .bouquet-trigger{pointer-events:auto}.cover-assembly .lid-front{box-shadow:inset 0 2px 2px #fff8,8px 6px 20px #65426024}.bouquet-display{will-change:auto;opacity:1!important;transform:none!important}.bouquet-display img{filter:drop-shadow(0 7px 7px #67496324)}.screen-controls{flex-wrap:wrap;flex:none;place-content:center;align-items:center;gap:12px;width:100%;height:39px;display:flex;position:relative}.opening-status{width:100%;margin:0;font-size:12px;line-height:1.15}.replay{min-height:22px;margin:0;padding:0 4px;font-size:12px}.invitation-sharing{min-height:0;margin:0;display:contents}.share-invitation{min-height:23px;padding:3px 12px;font-size:12px}.invitation-sharing p{z-index:6;background:#f1e9ed;position:absolute;bottom:0}.invitation-sharing p:empty,.invitation-footer{display:none}.reply-letter{color:#65436b;overscroll-behavior:contain;border-radius:28px;width:min(440px,100vw - 24px);max-height:calc(100dvh - 28px);margin:auto;padding:29px 24px 22px;position:fixed;inset:0;overflow-y:auto;box-shadow:0 20px 90px #3a233755}.reply-letter::backdrop{-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#35223870}.reply-letter>.eyebrow{margin:0;font-size:8px}.reply-letter>h2{margin-top:6px;font-size:30px}.reply-intro{margin:4px 0 10px;font-size:14px}.close-reply{color:#7b5681;background:#f0e3ee;border:0;border-radius:50%;min-width:34px;min-height:34px;font:24px/1 Georgia;position:absolute;top:8px;right:10px}.reply-step{color:#a1849a;text-align:center;margin:9px 0 12px;font:11px/1.5 Georgia}.rsvp-form>label,.guest-counts>label{margin-top:12px;font-size:12px}.rsvp-form input:not([type=radio]),.rsvp-form textarea{min-height:44px;margin-top:5px;padding:9px 11px;font-size:16px}.rsvp-form fieldset{margin-top:14px}.rsvp-form fieldset label{min-width:120px;padding:10px 8px}.rsvp-form textarea{height:75px}.reply-actions{gap:10px;margin-top:18px;display:flex}.reply-actions button{flex:1;margin:0}.privacy-note{margin-top:12px;font-size:10px;line-height:1.4}.reply-confirmation h3{font-size:26px}.reply-confirmation p{font-size:17px}.invitation{--flap-open:0;--paper-out:0;--paper-layer:5}.keepsake{box-shadow:none;background:0 0;border:0}.keepsake:before{display:none}.envelope-scene{perspective:1800px;transform:translateX(calc(var(--paper-out)*-120px)) scale(calc(1 - var(--paper-out)*.42));transform-origin:50%;will-change:transform;position:relative}.invitation-paper{width:420px;z-index:var(--paper-layer);transform:translate(calc(var(--paper-out)*460px),calc(var(--paper-out)*-35px)) rotate(calc(var(--paper-out)*-2deg));will-change:transform;background:#fff9f0;border:1px solid #cdb8c7;border-radius:3px;position:relative;box-shadow:0 0 0 4px #f6eaf0,0 17px 45px -12px #6a46614f}.invitation-paper:before{content:"";pointer-events:none;z-index:5;border:1px solid #bd9b63;position:absolute;inset:10px}.envelope-back{z-index:1;background:linear-gradient(120deg,#e5d1e3,#f7edf3 60%,#d6bbd5);border:1px solid #c7a9c1;border-radius:5px;position:absolute;inset:-3px -7px -5px -3px;box-shadow:0 13px 28px #65426028}.envelope-pocket{z-index:8;pointer-events:none;background:linear-gradient(110deg,#e6d2e1,#f0e3ed 65%,#d8bfd6);border:1px solid #c9afc3;border-radius:3px;position:absolute;inset:0;overflow:hidden;box-shadow:inset 0 1px 1px #fff8,inset -7px 0 9px #85617b18}.envelope-pocket:before{content:"";clip-path:polygon(0 0,94% 50%,0 100%);filter:drop-shadow(1px 0 1px #89698155);background:linear-gradient(145deg,#fcf3f7,#e0c9de);position:absolute;inset:0}.envelope-pocket i{clip-path:polygon(0 0,100% 0,100% 50%);background:linear-gradient(15deg,#ecdae9,#f8eef3);display:block;position:absolute;inset:0;box-shadow:inset 0 1px #fff9}.envelope-pocket i+i{clip-path:polygon(0 100%,100% 50%,100% 100%);background:linear-gradient(175deg,#e8d5e4,#f8edf3)}.cover-assembly{z-index:20;transform:rotateY(calc(var(--flap-open)*-158deg));transform-origin:0%;transform-style:preserve-3d;will-change:transform;inset:0}.open .cover-assembly{visibility:visible}.cover-assembly .lid-viewport,.cover-assembly .bouquet-display,.cover-assembly .bouquet-trigger{backface-visibility:hidden}.cover-assembly .lid-viewport{transform:translateZ(1px)}.cover-assembly .bouquet-display{transform:translateZ(2px)!important}.cover-assembly .bouquet-trigger{transform:translateZ(3px)}.flap-reverse{backface-visibility:hidden;background:linear-gradient(105deg,#e4cfe0,#f9eef5 65%,#d7bcd3);border:1px solid #c6a5be;border-radius:3px;position:absolute;inset:0;transform:rotateY(180deg);box-shadow:inset 0 1px 2px #fff9,0 7px 16px #67435c26}.flap-reverse:before{content:"";border:1px solid #b99a6d66;border-radius:2px;position:absolute;inset:17px}.ribbon-name{z-index:31;transform:translate(calc(var(--paper-out)*460px),calc(var(--paper-out)*-35px)) rotate(calc(var(--paper-out)*-2deg)) translateY(var(--ribbon-y)) scale(var(--ribbon-scale))}.floral-opening{z-index:32}.host-actions{flex-wrap:wrap;align-items:center;gap:20px;display:flex}.guest-removed{background:#eff3e9;border:1px solid #c5d2bf;border-radius:8px;justify-content:space-between;align-items:center;gap:15px;margin-top:20px;padding:14px 18px;font-size:17px;display:flex}.guest-removed button{flex:none;min-height:40px}.delete-guest{color:#9a5263;background:#fff4f4;border:1px solid #d7b3bc;border-radius:18px;min-height:40px;padding:8px 13px;font-size:14px}.host-table td:last-child{min-width:110px}.portal-entry{background:#fffaf3;border:1px solid #d4bece;border-radius:20px;box-shadow:0 15px 50px #76536e18}.portal-entry .portal-note{color:#9a8091;margin:20px 0;font-size:15px}.portal-entry .quiet-link{min-height:30px;margin-top:10px;display:inline-block}.portal-error{text-align:center;color:#9a5263;background:#fff1f1;padding:12px}.portal-entry .form-error{font-size:16px}@media (width<=600px){.portal-entry{margin:8vh 16px;padding:30px 22px}.portal-entry h1{font-size:37px}.portal-entry>p{font-size:19px}.host-actions{gap:14px;margin-top:16px}}
