@import "https://fonts.googleapis.com/css2?family=Bodoni+Moda:opsz,wght@6..96,400;6..96,500&family=Cormorant+Garamond:ital,wght@0,500;1,500&family=Manrope:wght@400;500;600&family=Parisienne&display=swap";:root{color:#2d171b;font-synthesis:none;text-rendering:optimizelegibility;--wine:#711f32;--wine-soft:#9a5261;--ivory:#f3ede2;--paper:#fbf7ef;--olive:#596046;--gold:#b29561;--ink:#2d171b;background:#eee8dc;font-family:Manrope,sans-serif}*{box-sizing:border-box}html,body,#root{width:100%;min-width:320px;min-height:100%;margin:0}body{min-height:100dvh;overflow-x:hidden}button{color:inherit;font:inherit}button:focus-visible{outline-offset:4px;outline:2px solid}.app{background:#edf0e5;min-height:100dvh;transition:background .5s,color .5s}.invitation{min-height:100dvh;position:relative;overflow:hidden}.reveal-copy,.reveal-question{opacity:0;transition:opacity .8s,transform .8s cubic-bezier(.2,.75,.25,1);transform:translateY(15px)}.reveal-copy.is-visible,.reveal-question.is-visible{opacity:1;transform:none}.ink-reveal{width:max-content;max-width:100%;color:var(--wine);white-space:nowrap;clip-path:inset(0 100% 0 0);margin:0;font:400 clamp(27px,3vw,43px)/1.25 Parisienne,cursive;transition:clip-path 1.25s cubic-bezier(.32,0,.18,1);overflow:hidden}.ink-reveal.is-written{clip-path:inset(0 -8% 0 0)}.invitation-actions{flex-direction:column;align-items:center;margin-top:26px;display:inline-flex;position:relative}.button-row{align-items:center;gap:11px;min-height:51px;display:flex}.yes-button,.no-button{cursor:pointer;letter-spacing:.21em;text-transform:uppercase;white-space:nowrap;border-radius:2px;width:144px;min-width:144px;height:48px;padding:0 23px;font-size:9px;font-weight:600;position:relative}.yes-button{border:1px solid var(--wine);color:var(--paper);background:linear-gradient(145deg,#7d2439,#65182b);transition:transform .25s,box-shadow .25s;overflow:hidden;box-shadow:0 14px 34px #711f3230}.yes-button:before{content:"";background:linear-gradient(110deg,#0000 25%,#ffffff47 45%,#0000 65%);transition:transform .5s;position:absolute;inset:0;transform:translate(-120%)}.yes-button span{position:relative}.yes-button:hover{transform:translateY(-4px);box-shadow:0 18px 34px #711f3240}.yes-button:hover:before{transform:translate(120%)}.no-placeholder{width:144px}.no-button{color:var(--wine);background:0 0;border:1px solid;transition:left .18s,top .18s}.no-button:not(.has-escaped){position:absolute;right:0}.no-button.has-escaped{z-index:90;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#fbf7eff2;margin:0;position:fixed;box-shadow:0 10px 30px #2d171b24}.try-no{letter-spacing:.1em;opacity:.55;margin:12px 0 0;font-size:8px;font-weight:500}.photo-sticker{z-index:2;filter:drop-shadow(0 18px 20px #2f362529);width:clamp(135px,13vw,170px);position:relative;transform:rotate(3.5deg)}.sticker-photo{width:100%;height:auto;display:block}.design-5{background:radial-gradient(circle at 15% 17%,#b295611c,#0000 27%),radial-gradient(circle at 86% 82%,#59604621,#0000 31%),linear-gradient(135deg,#f2f3e9 0%,#e8ecdf 58%,#eef0e5 100%);place-items:center;padding:78px 4vw 30px;display:grid}.design-5:before{content:"";opacity:.22;pointer-events:none;background-image:radial-gradient(#59604652 .5px,#0000 .6px);background-size:13px 13px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(115deg,#000,#0000 35% 67%,#000);mask-image:linear-gradient(115deg,#000,#0000 35% 67%,#000)}.garden-layout{z-index:2;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:radial-gradient(circle at 50% 0,#ffffff8f,#0000 43%),linear-gradient(155deg,#fbf9f0c7,#f4f5ea99);border:1px solid #59604675;border-radius:48% 48% 3px 3px/24% 24% 3px 3px;grid-template-rows:auto auto;grid-template-columns:.68fr 1.32fr;align-content:center;align-items:center;row-gap:clamp(22px,3vh,34px);width:min(1140px,92vw);min-height:min(700px,100dvh - 110px);padding:clamp(57px,7vw,92px);display:grid;position:relative;overflow:hidden;box-shadow:0 34px 90px #39432b1c,inset 0 0 60px #ffffff47}.garden-layout:after{border-radius:inherit;content:"";pointer-events:none;border:1px solid #b295613b;position:absolute;inset:13px}.garden-intro{z-index:2;grid-area:2/1;align-self:start;padding-right:30px;position:relative}.garden-label{color:var(--olive);letter-spacing:.27em;text-transform:uppercase;align-items:center;gap:10px;margin-bottom:23px;font-size:7px;font-weight:600;display:flex}.garden-label:after{content:"";background:#b295619e;width:34px;height:1px}.garden-intro>.reveal-copy{max-width:290px;margin:0 0 4px;font:500 clamp(20px,2vw,27px)/1.35 Cormorant Garamond,serif}.garden-intro .ink-reveal{font-size:clamp(25px,2.7vw,38px)}.garden-layout>.reveal-question{z-index:2;border-left:1px solid #59604645;grid-area:1/2/span 2;padding-left:clamp(29px,5vw,72px);position:relative}.garden-layout h1{letter-spacing:-.055em;margin:0;font:400 clamp(58px,7.3vw,108px)/.83 Bodoni Moda,serif}.garden-layout h1 em{color:var(--wine);font-family:Cormorant Garamond,serif;font-weight:500}.garden-layout>.photo-sticker{z-index:4;grid-area:1/1;place-self:end start;margin-bottom:2px;position:relative;transform:rotate(-3.5deg)}.garden-stamp{z-index:3;aspect-ratio:1;width:78px;color:var(--wine);outline-offset:-6px;text-align:center;text-transform:uppercase;border:1px solid #711f327a;border-radius:50%;outline:1px dashed #711f324d;place-content:center;display:grid;position:absolute;bottom:7%;right:3.5%;transform:rotate(8deg)}.garden-stamp span{font:500 18px/1 Bodoni Moda,serif}.garden-stamp small{letter-spacing:.16em;margin-top:4px;font-size:5px;font-weight:600;line-height:1.25}.garden-footer{z-index:2;color:var(--olive);letter-spacing:.2em;text-transform:uppercase;opacity:.72;align-items:center;gap:11px;font-size:6.5px;font-weight:600;display:flex;position:absolute;bottom:20px;left:50%;transform:translate(-50%)}.garden-footer i{color:var(--wine);font:500 15px/1 Cormorant Garamond,serif}.garden-arch{pointer-events:none;position:absolute;inset:0}.garden-arch i{opacity:.82;background:linear-gradient(135deg,#5960460a,#59604624);border:1px solid #5960468c;border-radius:100% 0;width:105px;height:43px;display:block;position:absolute;box-shadow:inset 12px 6px 22px #ffffff2e}.garden-arch i:after{content:"";transform-origin:0;background:#59604657;width:70%;height:1px;position:absolute;top:50%;left:12%;transform:rotate(-18deg)}.garden-arch i:first-child{top:9%;left:-24px;transform:rotate(25deg)}.garden-arch i:nth-child(2){top:21%;left:4px;transform:rotate(73deg)scale(.76)}.garden-arch i:nth-child(3){bottom:9%;left:-9px;transform:rotate(13deg)scale(1.2)}.garden-arch i:nth-child(4){top:11%;right:-20px;transform:rotate(155deg)}.garden-arch i:nth-child(5){top:28%;right:0;transform:rotate(111deg)scale(.72)}.garden-arch i:nth-child(6){bottom:8%;right:-25px;transform:rotate(175deg)scale(1.24)}.garden-arch i:nth-child(7){bottom:-13px;left:23%;transform:rotate(55deg)scale(.8)}.garden-arch i:nth-child(8){bottom:-12px;right:23%;transform:rotate(122deg)scale(.9)}.garden-arch i:nth-child(9){top:48%;left:-42px;transform:rotate(47deg)scale(.66)}.garden-arch i:nth-child(10){top:49%;right:-40px;transform:rotate(134deg)scale(.66)}.garden-doodles{z-index:1;pointer-events:none;position:absolute;inset:0;overflow:hidden}.garden-doodles>span{position:absolute}.doodle-xoxo{color:var(--wine);opacity:.42;font:400 38px/1 Parisienne,cursive;top:48%;left:3.5%;transform:rotate(-12deg)}.doodle-heart{color:var(--wine);opacity:.3;font:italic 500 56px/1 Cormorant Garamond,serif;bottom:8%;left:8%;transform:rotate(11deg)}.doodle-bestie{color:var(--olive);letter-spacing:.2em;text-transform:uppercase;opacity:.64;border:1px solid #59604659;padding:8px 11px;font-size:6px;font-weight:600;top:34%;right:1.8%;transform:rotate(90deg)}.doodle-spark{color:var(--gold);opacity:.55;font-size:25px;animation:2.8s ease-in-out infinite alternate gardenTwinkle;top:13%;right:7%}@keyframes gardenTwinkle{to{opacity:.2;transform:rotate(18deg)scale(.78)}}.celebration{background:#eef0e5;place-items:center;min-height:100dvh;padding:88px 22px 45px;display:grid;position:relative;overflow:hidden}.celebration-effects{pointer-events:none;position:absolute;inset:0}.success-card{z-index:5;text-align:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fbf7eff0;border:1px solid #711f3252;width:min(650px,92vw);padding:clamp(38px,6vw,72px);animation:.7s cubic-bezier(.22,.9,.3,1) both successIn;position:relative;box-shadow:0 30px 80px #30171c2b}.success-kicker{color:var(--olive);letter-spacing:.26em;text-transform:uppercase;font-size:7px;font-weight:600}.success-card h2{color:var(--wine);margin:14px 0 20px;font:400 clamp(55px,8vw,92px)/.9 Bodoni Moda,serif}.success-card p{max-width:510px;margin:0 auto;font:500 clamp(17px,2vw,21px)/1.52 Cormorant Garamond,serif}.success-card button{color:var(--wine);cursor:pointer;letter-spacing:.17em;text-transform:uppercase;background:0 0;border:0;border-bottom:1px solid;margin-top:30px;padding:11px 17px;font-size:8px;font-weight:600}@keyframes successIn{0%{opacity:0;transform:translateY(20px)scale(.96)}}.confetti i{top:-30px;left:calc(((var(--i) * 37) % 100) * 1%);background:var(--wine);width:8px;height:22px;animation:confettiFall calc(2s + (var(--i) % 7) * .18s) calc((var(--i) % 8) * 80ms) ease-in both;border-radius:2px;position:absolute}.confetti i:nth-child(3n){background:var(--olive);border-radius:50%;width:13px;height:13px}.confetti i:nth-child(4n){background:#d6bc8b}@keyframes confettiFall{to{transform:translateX(calc((var(--i) % 2) * 70px - 35px)) rotate(650deg);top:110%}}@media (width<=900px){.garden-layout{grid-template-columns:.58fr 1.42fr;padding:57px 35px}.garden-doodles{display:none}.garden-stamp{width:68px;bottom:6%;right:2%}}@media (width<=680px){.yes-button,.no-button{width:132px;min-width:132px;height:46px;padding:0 12px;font-size:8px}.no-placeholder{width:132px}.invitation-actions{margin-top:21px}.try-no{text-align:center;max-width:220px;line-height:1.4}.ink-reveal{font-size:clamp(26px,8vw,34px)}.design-5{align-items:start;padding:63px 8px 9px;overflow-y:auto}.garden-layout{border-radius:46% 46% 3px 3px/13% 13% 3px 3px;flex-direction:column;justify-content:center;align-items:stretch;width:100%;min-height:calc(100dvh - 72px);padding:86px 20px 32px;display:flex;overflow:hidden}.garden-intro{padding:0}.garden-label{margin-bottom:19px}.garden-intro>.reveal-copy{max-width:72%;font-size:20px;line-height:1.32}.garden-intro .ink-reveal{font-size:29px}.garden-layout>.reveal-question{border-top:1px solid #59604659;border-left:0;margin-top:24px;padding:23px 0 0}.garden-layout h1{font-size:clamp(48px,13.7vw,65px)}.garden-layout>.photo-sticker{opacity:1;width:112px;margin:0;position:absolute;top:43px;left:auto;right:17px}.garden-stamp{opacity:.72;width:64px;bottom:63px;right:24px}.garden-footer{letter-spacing:.17em;opacity:.78;gap:8px;width:max-content;font-size:5.5px;bottom:23px}.garden-footer i{font-size:14px}.garden-layout .invitation-actions{width:100%}.garden-layout .button-row{gap:10px;width:100%}.garden-layout .yes-button,.garden-layout .no-button{width:calc(50% - 5px);min-width:0}.garden-layout .no-placeholder{width:calc(50% - 5px)}.garden-layout .try-no{width:100%;max-width:none}.success-card{padding:39px 21px}.success-card h2{font-size:52px}.success-card p{font-size:17px}}@media (width<=380px),(height<=700px) and (width<=680px){.garden-layout{padding-top:74px}.garden-layout h1{font-size:46px}}@media (height<=700px) and (width<=680px){.garden-layout>.photo-sticker{width:82px;top:39px;right:14px}.garden-stamp{display:none}.garden-footer{bottom:17px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
