:root{color:#34433a;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#f7f4ec;font-family:Avenir Next,Avenir,Segoe UI,sans-serif}*,:before,:after{box-sizing:border-box}html{min-width:320px}body{min-width:320px;margin:0}button{font:inherit}button:focus-visible{outline-offset:4px;outline:3px solid #a57c29}.site-shell{background:radial-gradient(circle at 10% 4%,#fffdf6 0,#0000 34%),radial-gradient(circle at 90% 90%,#f0ead9 0,#0000 38%),#f7f4ec;flex-direction:column;min-height:100svh;display:flex;overflow:hidden}.site-header{color:#827e6d;letter-spacing:.18em;align-items:center;gap:9px;width:min(100%,1180px);margin:0 auto;padding:21px 24px 0;font-size:10px;font-weight:700;display:flex}.site-mark{color:#bb9d4b;font-size:19px;line-height:1}.experience{flex:1;place-items:center;width:100%;display:grid}.intro{text-align:center;width:min(100%,600px);padding:20px 24px 32px}.intro-flower{width:120px;height:145px;margin:0 auto 5px;animation:1s cubic-bezier(.22,1,.36,1) 50ms both introFlower}.single-flower{width:100%;height:100%;display:block;overflow:visible}.intro-kicker,.result-kicker{color:#ad8836;letter-spacing:.23em;text-transform:uppercase;margin:0 0 20px;font-size:11px;font-weight:700}.intro-title,.result-title,.easter-dialog h2{letter-spacing:-.025em;text-wrap:balance;margin:0;font-family:Georgia,Times New Roman,serif;font-weight:400}.intro-title{font-size:clamp(2.1rem,8vw,3.7rem);line-height:1.14}.intro-thought{color:#626f61;max-width:480px;margin:20px auto 0;font-size:clamp(1rem,3.5vw,1.12rem);line-height:1.6}.intro-last{color:#556a55;margin:15px 0 0;font-size:15px;font-weight:600}.intro-line{animation:.75s cubic-bezier(.22,1,.36,1) both riseIn}.intro-title{animation-delay:.35s}.intro-thought{animation-delay:1.25s}.intro-last{animation-delay:2.15s}.primary-button{color:#fffdf5;cursor:pointer;background:#344f3c;border:0;border-radius:2px;min-height:52px;font-size:14px;font-weight:700;transition:background .2s,transform .2s,box-shadow .2s}.primary-button:hover{background:#44644b;transform:translateY(-2px);box-shadow:0 10px 25px #34503c26}.primary-button:active{transform:translateY(0)}.intro-button{justify-content:space-between;align-items:center;width:min(100%,280px);margin-top:29px;padding:0 21px;animation:.65s cubic-bezier(.22,1,.36,1) both riseIn;display:inline-flex}.intro-button span{font-size:19px;font-weight:400}.site-footer{color:#aaa694;letter-spacing:.08em;text-align:center;padding:14px 24px 23px;font-size:10px}.reveal{text-align:center;width:min(100%,700px);padding:0 20px 20px}.bouquet-wrap{width:min(78vw,345px);margin:0 auto;position:relative}.bouquet{width:100%;height:auto;display:block;overflow:visible}.bouquet-flower .stem{stroke-dasharray:1;stroke-dashoffset:1px;animation:stemDraw 1.25s var(--flower-delay) cubic-bezier(.3,.8,.3,1) forwards}.bouquet-flower .leaf{animation:leafAppear .65s calc(var(--flower-delay) + .5s) ease-out both}.bouquet-flower .flower-head{transform-box:fill-box;transform-origin:50%;animation:flowerOpen .9s calc(var(--flower-delay) + .85s) cubic-bezier(.2,1.3,.4,1) both}.wrap-ribbon{animation:.6s ease-out 1.8s both riseIn}.sparkles{animation:1s ease-out 1.45s both sparkle}.floating-petal{opacity:0;pointer-events:none;background:#e9c961;border-radius:80% 15%;width:9px;height:16px;animation:5s linear 3.1s infinite petalDrift;position:absolute;top:35%}.floating-petal--one{left:7%}.floating-petal--two{animation-duration:5.6s;animation-delay:4.5s;top:23%;left:75%}.floating-petal--three{animation-duration:6s;animation-delay:6s;top:13%;left:35%}.result{margin:-8px auto 0;animation:.75s cubic-bezier(.22,1,.36,1) both riseIn}.result-kicker{margin-bottom:11px}.result-title{font-size:clamp(1.65rem,6vw,2.6rem);line-height:1.2}.result-greeting{color:#9a792e;margin:15px 0 0;font-size:clamp(1.05rem,3vw,1.25rem);font-weight:700}.result-note{color:#73796a;margin:12px 0 0;font-size:14px}.easter-button{color:#62634f;cursor:pointer;background:0 0;border:1px solid #cfc9ac;border-radius:3px;min-height:44px;margin-top:24px;padding:9px 15px;font-size:13px;transition:border-color .2s,background .2s;animation:.6s ease-out both riseIn}.easter-button:hover{background:#ffffff8c;border-color:#9f955f}.easter-dialog{color:#34433a;text-align:center;background:#fffdf6;border:1px solid #e4dcc7;border-radius:5px;width:min(100% - 32px,430px);padding:35px 29px 28px;animation:.35s cubic-bezier(.22,1,.36,1) both dialogEnter;box-shadow:0 25px 80px #25372b38}.easter-dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#1d3028a1}.easter-dialog__flower{color:#c6a64a;margin-bottom:13px;font-size:28px}.easter-dialog h2{font-size:clamp(1.55rem,6vw,2rem);line-height:1.2}.easter-dialog p{color:#697668;margin:14px 0 25px;font-size:15px;line-height:1.5}.modal-button{width:100%}@keyframes riseIn{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}@keyframes introFlower{0%{opacity:0;transform:translateY(15px)scale(.85)rotate(-12deg)}to{opacity:1;transform:translateY(0)scale(1)rotate(0)}}@keyframes stemDraw{to{stroke-dashoffset:0}}@keyframes leafAppear{0%{opacity:0}to{opacity:1}}@keyframes flowerOpen{0%{opacity:0;transform:scale(.3)rotate(-16deg)}to{opacity:1;transform:scale(1)rotate(0)}}@keyframes sparkle{0%,to{opacity:0;scale:.5}42%{opacity:.75;scale:1.3}}@keyframes petalDrift{0%{opacity:0;transform:translate(0,0)rotate(0)}15%{opacity:.38}85%{opacity:.3}to{opacity:0;transform:translate(20px,110px)rotate(160deg)}}@keyframes dialogEnter{0%{opacity:0;transform:translateY(16px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width>=720px){.site-header{padding:28px 36px 0}.intro{padding-bottom:40px}.intro-flower{width:145px;height:170px}.bouquet-wrap{width:min(46vw,390px)}.result{margin-top:-20px}}@media (height<=700px){.intro-flower{width:90px;height:105px}.intro{padding-top:6px;padding-bottom:16px}.intro-kicker{margin-bottom:12px}.intro-thought{margin-top:14px}.intro-button{margin-top:20px}.bouquet-wrap{width:min(66vw,290px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important}.floating-petal{display:none}}
