@import"https://fonts.googleapis.com/css2?family=Allura&family=Cormorant+Garamond:wght@400;500;600&family=Playfair+Display:wght@400;500&family=Poiret+One&display=swap";:root{--screen-height: 100vh;color:#eee9e5;background:#000;font-family:Playfair Display,Georgia,Times New Roman,serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html{background:#000}body{margin:0;min-width:320px;min-height:var(--screen-height);background:#000}a{color:inherit;text-decoration:none}button{font:inherit}.page{display:flex;flex-direction:column;align-items:center;min-height:var(--screen-height);justify-content:flex-start;background:#000}.cover{position:relative;isolation:isolate;width:min(100vw,430px);min-height:var(--screen-height);overflow:hidden;background:#000;text-align:center}.invitation-section,.venue-section,.timing-section,.details-section,.final-section{width:min(100vw,430px);min-height:var(--screen-height);overflow:hidden;background:#000}.invitation-section{padding:44px 0 0}.invite-card{position:relative;min-height:calc(var(--screen-height) + 130px);overflow:hidden;padding:78px 24px 112px;border-radius:210px 210px 0 0/150px 150px 0 0;background:#fbfaf3;color:#4d4a47;text-align:center}.invite-title{display:grid;gap:2px;margin:0 auto;color:#55514e;font-family:Allura,Apple Chancery,Brush Script MT,cursive;font-size:50px;font-weight:400;letter-spacing:-.02em;line-height:.8}.invite-title span{display:block}.invite-title__line{display:flex;align-items:flex-end;justify-content:center;padding-left:0;text-align:center}.invite-title__initial{display:inline-block;margin-right:-2px;color:#45413e;font-family:Allura,Apple Chancery,Brush Script MT,cursive;font-size:inherit;line-height:inherit;transform:none}.invite-copy{max-width:330px;margin:28px auto 0;color:#68635f;font-family:Poiret One,Cormorant Garamond,Georgia,Times New Roman,serif;font-size:24px;font-weight:400;line-height:1.18}.invite-copy span{white-space:nowrap}.date-divider{width:1px;height:56px;margin:28px auto 24px;background:#8a8580}.invite-date{margin:0;color:#58534f;font-family:Poiret One,Playfair Display,Georgia,Times New Roman,serif;font-size:28px;font-weight:400;line-height:1;letter-spacing:-.03em}.polaroids{position:absolute;right:-12px;bottom:118px;left:-12px;height:220px}.polaroid{position:absolute;width:205px;height:190px;margin:0;padding:9px 9px 26px;background:#fffdf7;box-shadow:0 8px 24px #00000029}.polaroid img{display:block;width:100%;height:100%;object-fit:cover}.polaroid--left{bottom:0;left:-5px;transform:rotate(-5deg)}.polaroid--left img{object-position:24% 62%}.polaroid--right{right:3px;bottom:28px;width:178px;height:168px;transform:rotate(2deg)}.polaroid--right img{object-position:64% 46%}.venue-section{position:relative;isolation:isolate;padding-top:38px;color:#ebe8e4;text-align:center}.venue-content{position:relative;z-index:2;padding:0 24px}.venue-title{display:grid;margin:0;color:#e7e4e1e0;font-family:Allura,Apple Chancery,Brush Script MT,cursive;font-size:56px;font-weight:400;line-height:.76;text-shadow:0 0 2px rgba(255,255,255,.28),0 0 8px rgba(255,255,255,.14)}.venue-title span{display:block}.venue-title__script{font-family:Allura,Apple Chancery,Brush Script MT,cursive;font-size:1.34em;line-height:.74;transform:translate(-12px)}.venue-address{max-width:310px;margin:30px auto 0;color:#e8e5e1d1;font-family:Poiret One,Cormorant Garamond,Georgia,Times New Roman,serif;font-size:18px;font-weight:400;line-height:1.28;text-shadow:0 0 5px rgba(255,255,255,.16)}.venue-address span{display:block}.venue-photo-wrap{position:absolute;right:0;bottom:78px;left:0;z-index:1;height:420px;overflow:hidden}.venue-photo-wrap:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(180deg,#000,#00000085 18%,#0000 42%),linear-gradient(90deg,rgba(0,0,0,.52),transparent 34%,transparent 68%,rgba(0,0,0,.34))}.venue-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:36% 56%;filter:brightness(.78) contrast(1.08) saturate(.9)}.map-button{position:absolute;right:34px;bottom:32px;z-index:3;display:grid;width:136px;height:136px;place-items:center;border-radius:999px;background:#fffdf7;color:#6b6661;font-family:Poiret One,Cormorant Garamond,Georgia,Times New Roman,serif;font-size:16px;font-weight:400;line-height:1.05;text-transform:uppercase;box-shadow:0 10px 30px #00000059,inset 0 0 0 1px #0000000a;animation:mapPulse 1.9s ease-in-out infinite}.map-button:before{content:"BOSING";position:absolute;top:-18px;left:50%;padding:4px 10px;border-radius:999px;background:#000000c7;color:#fffdf7;font-size:11px;letter-spacing:.08em;transform:translate(-50%)}.map-button:after{content:"";position:absolute;top:-9px;right:-9px;bottom:-9px;left:-9px;border:1px solid rgba(255,253,247,.72);border-radius:inherit;animation:mapRing 1.9s ease-out infinite}.map-button:focus-visible{outline:2px solid #fff;outline-offset:4px}.timing-section{padding:34px 0 28px}.timing-card{position:relative;min-height:calc(var(--screen-height) - 62px);margin:0 auto;overflow:visible;padding:58px 22px 54px;border-radius:190px/116px;background:#fbfaf3;color:#57524f;text-align:center}.timing-card:after{content:"";position:absolute;top:56px;right:42px;z-index:2;width:1px;height:156px;background:linear-gradient(180deg,#77726d0d,#77726dad);transform-origin:top center;animation:hangingLine 3.2s ease-in-out infinite}.timing-title{display:flex;align-items:flex-end;justify-content:center;margin:0 0 28px;color:#55514e;font-family:Allura,Apple Chancery,Brush Script MT,cursive;font-size:62px;font-weight:400;line-height:.78;letter-spacing:-.02em}.timing-title__initial{margin-right:-3px;color:#4a4643;font-family:Allura,Apple Chancery,Brush Script MT,cursive;font-size:1.48em;line-height:.48;transform:translateY(-1px)}.timeline{position:relative;z-index:2;display:grid;justify-items:center}.timeline-item{display:grid;justify-items:center}.timeline-time{margin:0;color:#5b5653;font-family:Poiret One,Cormorant Garamond,Georgia,Times New Roman,serif;font-size:38px;font-weight:400;line-height:.88;letter-spacing:-.03em}.timeline-text{max-width:292px;margin:4px 0 0;color:#68625e;font-family:Poiret One,Cormorant Garamond,Georgia,Times New Roman,serif;font-size:23px;font-weight:400;line-height:1.02}.timeline-line{display:block;width:1px;height:58px;margin:15px 0 12px;background:#aaa49e}.timeline-pearl{position:absolute;bottom:-18px;left:22px;z-index:3;width:86px;height:86px;object-fit:contain;filter:drop-shadow(0 8px 14px rgba(0,0,0,.18))}.timeline-watch{position:absolute;top:184px;right:-76px;z-index:3;width:220px;height:220px;object-fit:contain;filter:drop-shadow(0 10px 18px rgba(0,0,0,.18));transform-origin:48% -62px;animation:hangingWatch 3.2s ease-in-out infinite}.details-section{padding:30px 0 28px}.details-card{position:relative;min-height:0;margin:0 auto;overflow:visible;padding:70px 22px 128px;border-radius:190px/116px;background:#fbfaf3;color:#57524f;text-align:center}.details-title{position:relative;z-index:2;display:flex;align-items:flex-end;justify-content:center;margin:0 0 28px;color:#55514e;font-family:Allura,Apple Chancery,Brush Script MT,cursive;font-size:62px;font-weight:400;line-height:.78;letter-spacing:-.02em}.details-title__initial{margin-right:-2px;color:#4a4643;font-family:Allura,Apple Chancery,Brush Script MT,cursive;font-size:1.45em;line-height:.48;transform:translateY(-1px)}.details-copy{position:relative;z-index:2;display:grid;gap:22px;max-width:340px;margin:0 auto;color:#67615d;font-family:Poiret One,Cormorant Garamond,Georgia,Times New Roman,serif;font-size:21px;font-weight:400;line-height:1.18}.details-copy p{margin:0}.details-lead{font-size:24px;line-height:1.12}.details-lead span{display:block}.details-pearl{position:absolute;top:-8px;left:22px;z-index:3;width:90px;height:90px;object-fit:contain;filter:drop-shadow(0 8px 14px rgba(0,0,0,.18))}.details-flower{position:absolute;z-index:1;width:220px;height:220px;object-fit:contain;pointer-events:none}.details-flower--top{top:0;right:-76px;transform:rotate(-28deg)}.details-flower--bottom{bottom:-52px;left:-96px;transform:rotate(28deg)}.final-section{position:relative;isolation:isolate;display:grid;align-items:center;padding:78px 22px 88px;color:#e9e6e2;text-align:center}.final-content{position:relative;z-index:2;display:grid;justify-items:center;margin-top:-18px}.final-title{display:flex;align-items:flex-end;justify-content:center;margin:0;color:#e8e5e2e6;font-family:Allura,Apple Chancery,Brush Script MT,cursive;font-size:58px;font-weight:400;line-height:.78;letter-spacing:-.03em;text-shadow:0 0 2px rgba(255,255,255,.34),0 0 8px rgba(255,255,255,.12)}.final-title__initial{margin-right:-3px;color:#e8e5e2eb;font-family:Allura,Apple Chancery,Brush Script MT,cursive;font-size:1.48em;line-height:.48;transform:translateY(1px)}.final-love{margin:14px 0 0;color:#e8e5e2db;font-family:Poiret One,Cormorant Garamond,Georgia,Times New Roman,serif;font-size:24px;font-weight:400;line-height:1}.final-couple{margin:12px 0 0;color:#e8e5e2db;font-family:Poiret One,Cormorant Garamond,Georgia,Times New Roman,serif;font-size:24px;font-weight:400;line-height:1.1}.countdown{display:grid;width:min(100%,372px);grid-template-columns:repeat(4,1fr);gap:0;margin-top:90px}.countdown-item{display:grid;justify-items:center;min-width:0}.countdown-number{color:#e8e5e2e6;font-family:Poiret One,Cormorant Garamond,Georgia,Times New Roman,serif;font-size:50px;font-weight:400;line-height:.86;letter-spacing:-.04em;text-shadow:0 0 2px rgba(255,255,255,.22),0 0 8px rgba(255,255,255,.1)}.countdown-label{margin-top:8px;color:#e8e5e2c7;font-family:Poiret One,Cormorant Garamond,Georgia,Times New Roman,serif;font-size:18px;font-weight:400;line-height:1}.final-flower{position:absolute;z-index:1;width:300px;height:300px;object-fit:contain;opacity:.9;pointer-events:none}.final-flower--left{display:none}.final-flower--bottom{bottom:-54px;left:-78px;transform:rotate(14deg)}.final-flower--right{right:-124px;bottom:62px;transform:rotate(-20deg) scaleX(-1)}.date{margin:0;padding-top:46px;color:#e4e4e4db;font-family:Poiret One,Playfair Display,Georgia,Times New Roman,serif;font-size:27px;font-weight:400;line-height:.95;letter-spacing:-.02em;text-shadow:0 0 1px rgba(255,255,255,.8),0 0 6px rgba(255,255,255,.2),0 1px 3px rgba(0,0,0,.9)}.names{position:relative;z-index:1;display:flex;min-height:158px;flex-direction:column;align-items:center;justify-content:center;margin:28px auto 0;padding:0 12px;color:#e9e7e5;font-family:Allura,Apple Chancery,Brush Script MT,cursive;font-size:78px;font-weight:400;line-height:.86;text-shadow:0 1px 0 rgba(255,255,255,.72),0 0 5px rgba(255,255,255,.24);white-space:nowrap}.names>span{display:block}.names--compact{font-size:68px}.names--small{font-size:58px}.ampersand{margin:-4px 0 -8px;color:#e8e6e5e6;font-size:.78em;transform:none}.swans{display:block;width:100%;max-width:100%;height:auto;margin:18px auto 0;filter:contrast(1.06) brightness(.96) saturate(.96)}.music-button{position:absolute;left:50%;bottom:calc(env(safe-area-inset-bottom) - 8px);display:grid;width:112px;padding:0;border:0;place-items:center;background:transparent;color:#eee;cursor:pointer;transform:translate(-50%)}.equalizer{display:flex;height:28px;align-items:center;justify-content:center;gap:3px}.equalizer span{width:2px;min-height:4px;border-radius:999px;background:#d8d8d385;animation:pulse 1.35s ease-in-out infinite;animation-play-state:paused}.music-button--playing .equalizer span{animation-play-state:running}.equalizer span:nth-child(1),.equalizer span:nth-child(17){height:5px}.equalizer span:nth-child(2),.equalizer span:nth-child(16){height:9px;animation-delay:-.4s}.equalizer span:nth-child(3),.equalizer span:nth-child(15){height:13px;animation-delay:-.8s}.equalizer span:nth-child(4),.equalizer span:nth-child(14){height:17px;animation-delay:-.2s}.equalizer span:nth-child(5),.equalizer span:nth-child(13){height:23px;animation-delay:-.7s}.equalizer span:nth-child(6),.equalizer span:nth-child(12){height:19px;animation-delay:-.5s}.equalizer span:nth-child(7),.equalizer span:nth-child(11){height:26px;animation-delay:-.95s}.equalizer span:nth-child(8),.equalizer span:nth-child(10){height:15px;animation-delay:-.1s}.equalizer span:nth-child(9){height:27px;animation-delay:-.65s}@keyframes pulse{0%,to{opacity:.35;transform:scaleY(.7)}50%{opacity:.9;transform:scaleY(1)}}@keyframes mapPulse{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}@keyframes mapRing{0%{opacity:.7;transform:scale(.96)}to{opacity:0;transform:scale(1.16)}}@keyframes hangingWatch{0%,to{transform:rotate(-4deg)}50%{transform:rotate(4deg)}}@keyframes hangingLine{0%,to{transform:rotate(-1.6deg)}50%{transform:rotate(1.6deg)}}@media(min-width:431px){.page{background:#000}}@media(max-height:660px){.names{min-height:140px;margin-top:24px}.swans{margin-top:14px}.venue-section{padding-top:30px}.venue-address{margin-top:24px}.venue-photo-wrap{height:360px}.map-button{width:124px;height:124px}.timing-card{padding-top:48px;padding-bottom:44px}.timing-title{margin-bottom:22px}.timeline-line{height:42px;margin:11px 0 9px}.timeline-time{font-size:34px}.timeline-text{font-size:20px}.timeline-watch{width:190px;height:190px;right:-78px}.details-card{padding-top:62px}.details-title{margin-bottom:26px}.details-copy{gap:24px;font-size:19px}.details-lead{font-size:21px}.details-flower{width:190px;height:190px}.final-section{padding-top:58px;padding-bottom:66px}.countdown{margin-top:70px}.countdown-number{font-size:43px}.countdown-label{font-size:16px}.final-flower{width:250px;height:250px}.final-flower--left{top:218px}}@media(max-width:360px){.date{font-size:23px}.names{min-height:146px;font-size:66px}.names--compact{font-size:58px}.names--small{font-size:50px}.invite-title{font-size:46px}.venue-title{font-size:50px}.venue-title__script{font-size:1.34em}.map-button{right:24px;width:122px;height:122px;font-size:14px}.timing-title{font-size:56px}.timing-title__initial{font-size:1.48em}.timeline-time{font-size:34px}.timeline-text{max-width:235px;font-size:19px}.timeline-pearl{left:22px;width:74px;height:74px}.timeline-watch{right:-76px;width:184px;height:184px}.details-title{font-size:56px}.details-title__initial{font-size:1.45em}.details-copy{max-width:292px;font-size:18px}.details-lead{font-size:20px}.details-pearl{left:20px;width:74px;height:74px}.final-title{font-size:50px}.final-title__initial{font-size:1.48em}.final-love,.final-couple{font-size:21px}.countdown{width:100%}.countdown-number{font-size:38px}.countdown-label{font-size:14px}.final-flower--bottom{left:-10px}}
