@font-face{font-family:Amoresa;src:url(/fonts/Amoresa-Regular.otf)format("opentype");font-family:"Amoresa","Cormorant Garamond",serif;font-weight:400;font-style:normal}*{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;min-height:100%}html{scroll-behavior:smooth}body{touch-action:none;background:#e8ded1;font-family:Cormorant Garamond,serif;overflow:hidden}#app{background:#f5eee4;width:100%;min-height:100vh;overflow:visible}.intro{flex-direction:column;justify-content:center;align-items:center;width:100%;min-height:100vh;padding:40px 20px;display:flex;overflow:hidden}.eyebrow{color:#5e4735;letter-spacing:6px;margin-bottom:30px;font-size:16px}.scene{cursor:pointer;width:min(82vw,340px);height:420px;position:relative}.envelope,.paper,.mask{object-fit:contain;-webkit-user-select:none;user-select:none;pointer-events:none;width:100%;position:absolute;left:50%;transform:translate(-50%)}.closed{z-index:5;top:40px}.opened{z-index:2;top:40px}.paper{z-index:3;width:72%;top:65px}.mask{z-index:4;top:40px}.seal{cursor:pointer;z-index:20;background:0 0;border:none;border-radius:50%;width:90px;height:90px;margin-left:-45px;position:absolute;top:600px;left:50%}.tap-text{color:#6e5038;letter-spacing:4px;margin-top:18px;font-size:13px}.paper-full{color:#4e3929;opacity:0;visibility:hidden;pointer-events:none;background:radial-gradient(circle at 50% 18%,#ffffff73,#0000 36%),linear-gradient(#f8efdf,#e8d5ba);flex-direction:column;justify-content:center;align-items:center;width:100%;min-height:100vh;padding:42px 20px;display:none;position:relative}.paper-full:before{content:"";opacity:.22;pointer-events:none;background-image:radial-gradient(#5a3c2314 1px,#0000 1px);background-size:7px 7px;position:absolute;inset:0}.paper-content{z-index:2;text-align:center;color:#4e3929;width:min(86vw,420px);position:relative}.paper-content h1,.couple-names{font-size:clamp(44px,7vw,54px);font-weight:400;line-height:1}.paper-content h1 span{color:#9b7a5d;margin:10px 0;font-size:clamp(28px,4vw,34px);font-style:italic;display:block}.date{letter-spacing:4px;margin-top:34px;font-size:clamp(15px,2vw,20px)}.desc{max-width:320px;margin:28px auto 0;font-size:clamp(15px,2vw,19px);line-height:1.5}.scroll-text{letter-spacing:3px;color:#8a6c52;margin:0 0 10px;font-size:13px}.section-nav{z-index:3;flex-direction:column;justify-content:center;align-items:center;gap:8px;width:100%;display:flex;position:relative}.section-nav.top{position:absolute;top:34px;left:50%;transform:translate(-50%)}.section-nav.bottom{position:absolute;bottom:34px;left:50%;transform:translate(-50%)}.nav-arrow{color:#8b6537;cursor:pointer;pointer-events:auto;z-index:10000;background:0 0;border:none;width:auto;height:auto;padding:0;font-family:inherit;font-size:30px;line-height:1;transition:all .25s}.nav-arrow:hover{color:#c89c58;transform:translateY(-2px)}.countdown{color:#4e3929;background:#f5eee4;flex-direction:column;justify-content:center;align-items:center;width:100%;min-height:100vh;padding:42px 24px;display:flex;position:relative;overflow:hidden}.countdown-inner{flex-direction:column;align-items:center;width:100%;max-width:620px;display:flex}.event-block{text-align:center;width:100%;max-width:520px}.event-block h3{letter-spacing:clamp(5px,1vw,8px);color:#4e3929;margin-bottom:10px;font-size:clamp(27px,4vw,34px);font-weight:400}.event-date{letter-spacing:2px;color:#8a6c52;margin-bottom:42px;font-size:14px}.countdown-wrapper{grid-template-columns:repeat(4,minmax(58px,84px));justify-content:center;gap:clamp(8px,2vw,16px);display:grid}.counter-card{background:#ffffff73;border:1px solid #785a3c0f;border-radius:18px;flex-direction:column;justify-content:center;align-items:center;width:100%;height:clamp(88px,11vw,116px);display:flex;box-shadow:0 14px 34px #5037230b,inset 0 1px #ffffffb3}.counter-card strong{color:#4d3828;font-size:clamp(32px,5vw,44px);font-weight:300;line-height:.9}.counter-card small{letter-spacing:3px;color:#9a7b61;margin-top:8px;font-size:clamp(8px,1.3vw,10px)}.middle-divider{text-align:center;color:#b09172;width:100%;max-width:520px;margin:clamp(42px,7vh,60px) 0;font-size:18px;position:relative}.middle-divider:before,.middle-divider:after{content:"";background:#b0907259;width:36%;height:1px;position:absolute;top:50%}.middle-divider:before{left:0}.middle-divider:after{right:0}.event-finished{text-align:center;background:#ffffff47;border:1px solid #785a3c0f;border-radius:18px;max-width:300px;margin:14px auto 0;padding:16px 18px}.event-finished h4{letter-spacing:1.5px;color:#4d3828;margin-bottom:8px;font-size:15px;font-weight:400}.event-finished p{color:#6e5542;max-width:230px;margin:0 auto;font-size:13px;line-height:1.55}.event-finished span{letter-spacing:1.8px;color:#9f7d60;margin-top:12px;font-size:11px;line-height:1.8;display:block}.locations-section{color:#4e3929;background:radial-gradient(circle at 50% 0,#ffffff7a,#0000 30%),#f5eee4;justify-content:center;align-items:center;width:100%;min-height:100vh;padding:90px 24px;display:flex;position:relative;overflow:hidden}.locations-content{text-align:center;width:100%;max-width:980px}.locations-content>h2{margin-bottom:55px;font-size:48px;font-weight:400;line-height:1}.location-list{justify-content:center;align-items:stretch;gap:34px;width:100%;display:flex}.location-card{text-align:left;background:#ffffff57;border:1px solid #785a3c14;border-radius:26px;flex-direction:column;width:100%;max-width:420px;padding:26px;display:flex;box-shadow:0 24px 55px #5037230e,inset 0 1px #ffffffb3}.location-heading{align-items:flex-start;gap:18px;min-height:105px;margin-bottom:22px;display:flex}.location-type{color:#9f7d60;letter-spacing:4px;margin-bottom:7px;font-size:11px}.location-heading h3{color:#4d3828;font-weight:400;line-height:1.18}.location-city{color:#9a7c63;letter-spacing:2px;margin-top:9px;font-size:12px}.map-frame{background:#e8ddd0;border:1px solid #785a3c14;border-radius:18px;width:100%;height:230px;overflow:hidden}.map-frame iframe{filter:saturate(.7)sepia(.12)contrast(.92);border:0;width:100%;height:100%;display:block}.directions-button{color:#6e5038;letter-spacing:3px;background:#ffffff38;border:1px solid #8b653740;border-radius:14px;justify-content:center;align-items:center;width:100%;margin-top:18px;padding:14px 17px;font-family:Poppins,sans-serif;font-size:12px;font-weight:500;text-decoration:none;transition:background .25s,transform .25s;display:flex}.directions-button:hover{background:#fff9;transform:translateY(-2px)}.location-divider{display:none}.reminder-section{color:#4e3929;background:radial-gradient(circle at 50% 15%,#ffffff8c,#0000 34%),linear-gradient(#f8efdf,#ead8bd);justify-content:center;align-items:center;width:100%;min-height:100vh;padding:70px 24px;display:flex;position:relative;overflow:hidden}.reminder-section:before{content:"";opacity:.18;pointer-events:none;background-image:radial-gradient(#5a3c2312 1px,#0000 1px);background-size:7px 7px;position:absolute;inset:0}.reminder-card{z-index:2;text-align:center;background:#fffdf9ba;border:1px solid #b0895b38;border-radius:26px;flex-direction:column;justify-content:center;align-items:center;width:min(78vw,560px);min-height:330px;padding:58px 46px 50px;display:flex;position:relative;box-shadow:0 24px 55px #55372012,inset 0 1px #ffffffd9}.reminder-card:after{content:"";pointer-events:none;border:1px solid #c1914f61;border-radius:18px;position:absolute;inset:20px}.reminder-tape{clip-path:polygon(3% 0,97% 0,100% 20%,96% 38%,100% 57%,96% 76%,100% 100%,0 100%,4% 77%,0 59%,4% 40%,0 19%);background:#e6d0b09e;width:145px;height:36px;position:absolute;top:-14px;left:50%;transform:translate(-50%)rotate(-1deg);box-shadow:0 6px 14px #5f422812}.reminder-card h2{z-index:2;color:#4d3828;font-size:clamp(31px,4vw,44px);font-weight:400;line-height:1.05;position:relative}.reminder-divider{z-index:2;color:#c19761;justify-content:center;align-items:center;gap:11px;width:min(72%,280px);margin:25px auto 30px;display:flex;position:relative}.reminder-divider span{background:#c1914f73;flex:1;height:1px}.reminder-divider b{font-size:12px;font-weight:400}.reminder-text{z-index:2;color:#5f432f;font-size:clamp(17px,2vw,23px);line-height:1.5;position:relative}.contact-section{color:#4e3929;background:radial-gradient(circle at top,#ffffff8c,#0000 45%),linear-gradient(#f8efdf,#f5eee4);justify-content:center;align-items:center;width:100%;min-height:100vh;padding:80px 24px;display:flex;position:relative;overflow:hidden}.contact-content{z-index:2;text-align:center;width:100%;max-width:620px;position:relative}.contact-content>h2{margin-bottom:34px;font-size:clamp(36px,5vw,48px);font-weight:400;line-height:1}.contact-list{flex-direction:column;gap:18px;display:flex}.contact-card{text-align:left;background:#ffffff94;border:1px solid #785a3c1a;border-radius:20px;justify-content:space-between;align-items:center;gap:20px;width:100%;min-height:118px;padding:22px 24px;display:flex;box-shadow:0 14px 30px #50372314,inset 0 1px #fffc}.contact-person p{color:#9a7c63;letter-spacing:3px;margin-bottom:5px;font-family:Poppins,sans-serif;font-size:10px}.contact-person h3{color:#4d3828;font-size:30px;font-weight:400;line-height:1}.contact-actions{flex-shrink:0;align-items:center;gap:12px;display:flex}.contact-action{color:#4e3929;background:#e8e6dee6;border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;font-family:Poppins,sans-serif;text-decoration:none;transition:transform .25s,background .25s;display:flex}.contact-action:hover{background:#ffffffe6;transform:translateY(-2px)}.contact-action svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;pointer-events:none;width:23px;height:23px;display:block}.contact-action.whatsapp svg{width:24px;height:24px}.contact-extras{background:#fffdf8ad;border:1px solid #8b65372b;border-radius:24px;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;width:100%;margin-top:26px;padding:17px 20px;display:grid;box-shadow:0 14px 34px #5037230f,inset 0 1px #ffffffdb}.contact-extra-button{color:#4e3929;text-align:left;cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:14px;width:100%;min-width:0;padding:10px 6px;font-family:inherit;transition:transform .25s,opacity .25s;display:flex}.contact-extra-button:hover{transform:translateY(-2px)}.contact-extra-button:focus-visible{outline-offset:7px;border-radius:12px;outline:1px solid #8b65378c}.contact-extra-icon{color:#6e5038;background:#e9ddca;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.contact-extra-icon svg{stroke-width:1.5px;width:24px;height:24px;display:block}.contact-extra-text{flex-direction:column;gap:4px;min-width:0;display:flex}.contact-extra-text strong{white-space:nowrap;font-size:20px;font-weight:500;line-height:1}.contact-extra-text small{color:#9a7c63;letter-spacing:.2px;white-space:nowrap;font-family:Poppins,sans-serif;font-size:9px;font-weight:300;line-height:1.35}.contact-extra-heart{color:#b59772;font-size:15px;line-height:1}.guestbook-intro-section,.guestbook-form-section,.guestbook-success-section{color:#4e3929;background:radial-gradient(circle at 50% 12%,#ffffff9e,#0000 34%),linear-gradient(#f8efdf,#ead8bd);justify-content:center;align-items:center;width:100%;height:100vh;min-height:100vh;padding:70px 24px;display:flex;position:relative;overflow:hidden}.guestbook-intro-section:before,.guestbook-form-section:before,.guestbook-success-section:before{content:"";opacity:.16;pointer-events:none;background-image:radial-gradient(#5a3c2311 1px,#0000 1px);background-size:7px 7px;position:absolute;inset:0}.guestbook-intro-card,.guestbook-form-card,.guestbook-success-card{z-index:2;text-align:center;background:#fffdf8b8;border:1px solid #b0895b38;border-radius:28px;width:min(88vw,460px);position:relative;box-shadow:0 26px 60px #55372013,inset 0 1px #ffffffe6}.guestbook-intro-card:after,.guestbook-form-card:after,.guestbook-success-card:after{content:"";pointer-events:none;border:1px solid #c1914f38;border-radius:20px;position:absolute;inset:16px}.guestbook-intro-card{flex-direction:column;justify-content:center;align-items:center;min-height:540px;padding:62px 48px 52px;display:flex}.guestbook-book-icon{color:#8b6537;background:#e8d7bd94;border-radius:50%;justify-content:center;align-items:center;width:92px;height:92px;margin-bottom:25px;display:flex}.guestbook-book-icon svg{stroke-width:1.25px;width:46px;height:46px}.guestbook-kicker{z-index:2;color:#9a7c63;letter-spacing:3px;font-family:Poppins,sans-serif;font-size:9px;position:relative}.guestbook-intro-card h2,.guestbook-form-card h2,.guestbook-success-card h2{z-index:2;color:#4d3828;margin-top:10px;font-size:clamp(38px,5vw,50px);font-weight:400;line-height:1;position:relative}.guestbook-mini-divider{z-index:2;color:#c19761;justify-content:center;align-items:center;gap:10px;width:180px;margin:22px auto 25px;display:flex;position:relative}.guestbook-mini-divider span{background:#c1914f6b;flex:1;height:1px}.guestbook-mini-divider b{font-size:11px;font-weight:400}.guestbook-intro-text,.guestbook-form-description{z-index:2;color:#604733;max-width:320px;font-size:18px;line-height:1.55;position:relative}.guestbook-primary-button,.guestbook-secondary-button{z-index:2;color:#fffaf2;cursor:pointer;background:linear-gradient(135deg,#b18a55,#9c7441);border:1px solid #8b65372e;border-radius:999px;min-width:250px;margin-top:36px;padding:16px 24px;font-family:Cormorant Garamond,serif;font-size:20px;font-style:italic;transition:transform .25s,box-shadow .25s;position:relative;box-shadow:0 12px 24px #714e2a29}.guestbook-primary-button:hover,.guestbook-secondary-button:hover{transform:translateY(-2px);box-shadow:0 15px 30px #714e2a33}.guestbook-form-card{text-align:left;padding:54px 46px 42px}.guestbook-form-card>h2,.guestbook-form-card>.guestbook-kicker,.guestbook-form-card>.guestbook-form-description{text-align:center}.guestbook-form-description{margin:0 auto 30px}#guestbookForm{z-index:2;position:relative}.guestbook-field>span{color:#604733;letter-spacing:1px;margin-bottom:8px;font-family:Poppins,sans-serif;font-size:9px;display:block}.guestbook-field>span small{color:#a38b77;letter-spacing:.2px;font-size:8px}.guestbook-input-wrap,.guestbook-textarea-wrap{position:relative}.guestbook-input-wrap input,.guestbook-textarea-wrap textarea{color:#4d3828;background:#ffffff61;border:1px solid #8b653738;border-radius:15px;outline:none;width:100%;font-family:Poppins,sans-serif;font-size:12px;transition:border-color .2s,background .2s,box-shadow .2s}.guestbook-input-wrap input{height:50px;padding:0 45px 0 15px}.guestbook-textarea-wrap textarea{resize:none;min-height:170px;padding:15px 15px 36px;line-height:1.6}.guestbook-input-wrap input:focus,.guestbook-textarea-wrap textarea:focus{background:#fff9;border-color:#9c74418c;box-shadow:0 0 0 4px #b18a5514}.guestbook-input-wrap svg{color:#a17d52;stroke-width:1.5px;width:18px;height:18px;position:absolute;top:50%;right:15px;transform:translateY(-50%)}.guestbook-counter{color:#8d745e;font-family:Poppins,sans-serif;font-size:9px;position:absolute;bottom:11px;right:13px}.guestbook-counter b{font-weight:400}.guestbook-submit-button{color:#fffaf2;cursor:pointer;background:linear-gradient(135deg,#b18a55,#9c7441);border:0;border-radius:999px;justify-content:center;align-items:center;gap:10px;width:100%;height:54px;margin-top:8px;font-family:Cormorant Garamond,serif;font-size:21px;font-style:italic;transition:transform .25s,opacity .25s;display:flex;box-shadow:0 13px 24px #714e2a2e}.guestbook-submit-button:hover{transform:translateY(-2px)}.guestbook-submit-button:disabled{cursor:wait;opacity:.75}.guestbook-submit-button svg{stroke-width:1.35px;width:19px;height:19px}.guestbook-submit-button.is-loading .guestbook-submit-label,.guestbook-submit-button.is-loading svg{display:none}@keyframes guestbookSpin{to{transform:rotate(360deg)}}.guestbook-success-card{flex-direction:column;justify-content:center;align-items:center;min-height:470px;padding:62px 44px 50px;display:flex}.guestbook-success-icon{z-index:2;color:#a27645;background:#e8d7bd9e;border-radius:50%;justify-content:center;align-items:center;width:82px;height:82px;margin-bottom:24px;font-size:25px;display:flex;position:relative}.guestbook-success-card>p:not(.guestbook-kicker){z-index:2;color:#604733;margin-top:25px;font-size:18px;line-height:1.55;position:relative}.guestbook-secondary-button{color:#6e5038;box-shadow:none;background:#ffffff47}@media (width<=767px){.scene{width:330px;height:410px;transform:translateY(-120px)}.closed,.opened,.mask{top:30px}.paper{top:55px}.seal{top:350px}.paper-content h1{font-size:48px}.paper-full,.countdown{padding:34px 18px}.section-nav.top{top:28px}.section-nav.bottom{bottom:28px}.nav-arrow{font-size:22px}.countdown-wrapper{grid-template-columns:repeat(4,minmax(58px,72px));gap:8px}.counter-card{border-radius:17px;height:92px}.counter-card strong{font-size:35px}.counter-card small{letter-spacing:3px;font-size:9px}.event-block h3{letter-spacing:7px;font-size:27px}.event-date{margin-bottom:30px;font-size:13px}.middle-divider{margin:42px 0}.event-finished{max-width:280px;padding:15px 17px}.locations-section{height:100vh;min-height:100vh;padding:52px 14px 46px;overflow:hidden}.locations-content{width:100%;max-width:360px}.locations-content>h2{margin-bottom:20px;font-size:30px;line-height:1}.location-list{flex-direction:column;align-items:center;gap:14px}.location-card{border-radius:18px;width:100%;max-width:330px;padding:12px}.location-heading{gap:10px;min-height:auto;margin-bottom:10px}.location-type{letter-spacing:3px;margin-bottom:4px;font-size:8px}.location-heading h3{font-size:14px;line-height:1.18}.location-city{letter-spacing:1.5px;margin-top:5px;font-size:9px}.map-frame{border-radius:12px;height:104px}.directions-button{letter-spacing:2px;border-radius:10px;margin-top:8px;padding:8px 11px;font-size:9px}.location-divider{color:#b09172;justify-content:center;align-items:center;width:100%;max-width:300px;height:14px;margin:0;font-size:9px;display:flex}.location-divider:before,.location-divider:after{content:"";background:#b090724d;width:34%;height:1px}.location-divider span{margin:0 10px}.locations-section .section-nav.top{top:18px}.locations-section .section-nav.bottom{bottom:18px}.reminder-section{height:100vh;min-height:100vh;padding:58px 16px 54px}.reminder-card{border-radius:21px;width:min(86vw,310px);min-height:285px;padding:48px 24px 40px}.reminder-card:after{border-radius:14px;inset:15px}.reminder-tape{width:104px;height:28px;top:-11px}.reminder-card h2{max-width:250px;font-size:29px;line-height:1.08}.reminder-divider{gap:8px;width:72%;margin:20px auto 24px}.reminder-text{font-size:16px;line-height:1.5}.contact-section{height:100vh;min-height:100vh;padding:50px 16px 44px}.contact-content{max-width:340px}.contact-content>h2{margin-bottom:24px;font-size:32px}.contact-list{gap:14px}.contact-card{border-radius:16px;min-height:80px;padding:13px 15px}.contact-person p{letter-spacing:2.5px;margin-bottom:4px;font-size:8px}.contact-person h3{font-size:24px}.contact-actions{gap:9px}.contact-action{width:42px;height:42px}.contact-action svg{width:20px;height:20px}.contact-action.whatsapp svg{width:21px;height:21px}.contact-section .section-nav.top{top:18px}.contact-extras{border-radius:17px;gap:5px;margin-top:16px;padding:12px 8px}.contact-extra-button{text-align:center;flex-direction:column;gap:7px;padding:4px 1px}.contact-extra-icon{width:38px;height:38px}.contact-extra-icon svg{width:19px;height:19px}.contact-extra-text{align-items:center;gap:3px}.contact-extra-text strong{font-size:15px}.contact-extra-text small{white-space:normal;max-width:104px;font-size:7px;line-height:1.35}.contact-extra-heart{font-size:10px}.contact-section .section-nav.bottom{bottom:18px}.guestbook-intro-section,.guestbook-form-section,.guestbook-success-section{padding:48px 14px 44px}.guestbook-intro-card,.guestbook-form-card,.guestbook-success-card{border-radius:22px;width:min(92vw,340px)}.guestbook-intro-card:after,.guestbook-form-card:after,.guestbook-success-card:after{border-radius:16px;inset:12px}.guestbook-intro-card{min-height:470px;padding:48px 28px 40px}.guestbook-book-icon{width:72px;height:72px;margin-bottom:20px}.guestbook-book-icon svg{width:36px;height:36px}.guestbook-intro-card h2,.guestbook-form-card h2,.guestbook-success-card h2{font-size:38px}.guestbook-mini-divider{width:150px;margin:18px auto 21px}.guestbook-intro-text,.guestbook-form-description{max-width:260px;font-size:16px}.guestbook-primary-button,.guestbook-secondary-button{min-width:220px;margin-top:28px;padding:14px 20px;font-size:18px}.guestbook-form-card{padding:44px 24px 28px}.guestbook-form-description{margin-bottom:20px}.guestbook-field{margin-top:14px}.guestbook-input-wrap input{height:46px}.guestbook-textarea-wrap textarea{min-height:145px}.guestbook-submit-button{height:49px;font-size:19px}.guestbook-success-card{min-height:420px;padding:48px 28px 40px}}@media (width>=768px){.scene{width:420px;height:470px;transform:translateY(-220px)}.closed,.opened,.mask{top:40px}.paper{width:72%;top:65px}.seal{top:450px}}@media (height<=780px) and (width>=768px){.countdown{padding:26px 20px}.paper-full{padding:28px 20px}.event-block h3{margin-bottom:4px;font-size:28px}.event-date{margin-bottom:22px}.counter-card{height:90px}.counter-card strong{font-size:34px}.middle-divider{margin:30px 0}.locations-section{padding:55px 24px}.locations-content>h2{margin-bottom:30px;font-size:40px}.location-card{padding:20px}.location-heading{min-height:80px;margin-bottom:15px}.location-heading h3{font-size:20px}.map-frame{height:185px}.directions-button{margin-top:13px;padding:11px 15px}.reminder-section{padding:54px 24px}.reminder-card{width:min(72vw,500px);min-height:300px;padding:50px 38px 44px}.reminder-divider{margin:22px auto 26px}.section-nav.top{top:24px}.section-nav.bottom{bottom:24px}}@media (width<=380px){.countdown-wrapper{grid-template-columns:repeat(4,minmax(52px,64px));gap:6px}.counter-card{height:84px}.counter-card strong{font-size:30px}.event-block h3{font-size:24px}.reminder-card{width:88vw;min-height:270px;padding:44px 20px 36px}.reminder-card h2{font-size:26px}.reminder-text{font-size:15px}.contact-content{max-width:310px}.contact-card{min-height:82px;padding:14px}.contact-person h3{font-size:22px}.contact-action{width:39px;height:39px}}.guestbook-section[hidden]{display:none!important}.guestbook-section{color:#4e3929;background:radial-gradient(circle at 50% 0,#ffffffb8,#0000 38%),linear-gradient(#f8efdf,#f2e7d8);justify-content:center;align-items:center;width:100%;height:100vh;min-height:100vh;padding:24px;display:flex;position:relative;overflow:hidden}.guestbook-page-shell{overscroll-behavior:contain;touch-action:pan-y;scrollbar-width:thin;scrollbar-color:#99714259 transparent;background:linear-gradient(#fffcf7f0,#fffcf7f0),radial-gradient(circle at 15% 15%,#c49d6917,#0000 24%);border:1px solid #9971422e;border-radius:26px;width:min(94vw,900px);height:min(92vh,900px);padding:28px 46px 30px;position:relative;overflow-y:auto;box-shadow:10px 12px #ffffff9e,0 28px 65px #573b211f}.guestbook-page-shell::-webkit-scrollbar{width:6px}.guestbook-page-shell::-webkit-scrollbar-thumb{background:#99714247;border-radius:999px}.guestbook-page-shell:before,.guestbook-page-shell:after{content:"";pointer-events:none;opacity:.42;position:absolute}.guestbook-page-shell:before{background:radial-gradient(circle at 30% 25%,#c39e6c3d,#0000 20%),radial-gradient(circle at 55% 42%,#c39e6c24,#0000 17%),radial-gradient(circle at 25% 65%,#c39e6c1f,#0000 16%);border-top-left-radius:26px;width:190px;height:190px;top:0;left:0}.guestbook-page-shell:after{background:radial-gradient(circle at 70% 70%,#c39e6c3b,#0000 19%),radial-gradient(circle at 45% 65%,#c39e6c1f,#0000 17%),radial-gradient(circle at 72% 38%,#c39e6c1f,#0000 16%);border-bottom-right-radius:26px;width:210px;height:210px;bottom:0;right:0}.guestbook-page-shell>*{z-index:2;position:relative}.guestbook-close-button{z-index:5;color:#8d6536;cursor:pointer;background:#ffffffad;border:1px solid #9971422e;border-radius:50%;width:42px;height:42px;font-family:Arial,sans-serif;font-size:25px;line-height:1;position:absolute;top:16px;right:18px;box-shadow:0 7px 18px #5a3c2314}.guestbook-header{text-align:center;max-width:560px;margin:0 auto}.guestbook-header-emblem{color:#b18a55;background:#ffffff6b;border:1px solid #b18a5547;border-radius:50%;justify-content:center;align-items:center;width:62px;height:62px;margin:0 auto 10px;display:flex}.guestbook-header-emblem svg{stroke-width:1.35px;width:28px;height:28px}.guestbook-header h2{color:#4d3828;font-size:clamp(40px,5vw,58px);font-style:italic;font-weight:500;line-height:1}.guestbook-title-divider{color:#b18a55;align-items:center;gap:10px;width:180px;margin:15px auto 16px;display:flex}.guestbook-title-divider span{background:#b18a5561;flex:1;height:1px}.guestbook-title-divider b{font-size:13px;font-weight:400}.guestbook-header p{color:#856f5d;max-width:500px;margin:0 auto 22px;font-family:Poppins,sans-serif;font-size:12px;line-height:1.75}.guestbook-tabs{background:#eee5d9a3;border:1px solid #99714226;border-radius:14px;grid-template-columns:1fr 1fr;gap:5px;width:min(100%,540px);margin:0 auto 24px;padding:5px;display:grid}.guestbook-tab{color:#604733;cursor:pointer;background:0 0;border:0;border-radius:11px;justify-content:center;align-items:center;gap:8px;min-height:46px;font-family:Cormorant Garamond,serif;font-size:18px;font-weight:500;transition:all .25s;display:flex}.guestbook-tab svg{stroke-width:1.5px;width:18px;height:18px}.guestbook-tab.is-active{color:#9a6f3d;background:#fffdf9;box-shadow:0 5px 14px #5c3e2314}.guestbook-panel{display:none}.guestbook-panel.is-active{display:block}.guestbook-section-caption{color:#9a764d;align-items:center;gap:14px;width:100%;margin:0 auto 16px;display:flex}.guestbook-section-caption span{background:#b18a5540;flex:1;height:1px}.guestbook-section-caption p{letter-spacing:3px;text-transform:uppercase;font-family:Poppins,sans-serif;font-size:9px;font-weight:500}.guestbook-loading,.guestbook-empty{color:#9a826d;text-align:center;padding:46px 20px;font-family:Poppins,sans-serif;font-size:12px}.guestbook-empty span{color:#b18a55;margin-bottom:10px;font-size:28px;display:block}.guestbook-empty h3{color:#4d3828;font-size:27px;font-weight:500}.guestbook-empty p{max-width:330px;margin:8px auto 18px;line-height:1.6}.guestbook-empty button,.guestbook-success-inline button{color:#7a5938;letter-spacing:.7px;text-transform:uppercase;cursor:pointer;background:#fffaf2;border:1px solid #99714238;border-radius:999px;padding:11px 24px;font-family:Poppins,sans-serif;font-size:10px;font-weight:500}.guestbook-message-list{gap:13px;display:grid}.guestbook-message-card{background:#ffffff9e;border:1px solid #99714221;border-radius:17px;padding:20px 24px 18px 28px;position:relative;box-shadow:0 10px 24px #583c220e}.guestbook-message-card:before{content:"";background:linear-gradient(#c8a573,#e0cab0);border-radius:99px;width:2px;position:absolute;top:18px;bottom:18px;left:13px}.guestbook-message-text{color:#604733;white-space:pre-wrap;font-size:19px;font-style:italic;line-height:1.55}.guestbook-message-meta{justify-content:space-between;align-items:flex-end;gap:18px;margin-top:14px;display:flex}.guestbook-message-meta span{color:#4d3828;font-size:18px;font-style:italic}.guestbook-message-meta time{color:#9a826d;letter-spacing:.5px;flex-shrink:0;font-family:Poppins,sans-serif;font-size:9px;font-weight:500}.guestbook-footer-note{color:#b18a55;text-align:center;margin-top:20px;font-size:19px;font-style:italic}.guestbook-write-heading{text-align:left;justify-content:center;align-items:center;gap:12px;margin-bottom:18px;display:flex}.guestbook-write-heading>svg{color:#b18a55;stroke-width:1.35px;width:27px;height:27px}.guestbook-write-heading h3{color:#4d3828;font-size:31px;font-style:italic;font-weight:500;line-height:1}.guestbook-write-heading p{color:#9a826d;letter-spacing:2px;text-transform:uppercase;margin-top:5px;font-family:Poppins,sans-serif;font-size:9px;font-weight:500}#guestbookForm{width:min(100%,640px);margin:0 auto}.guestbook-field{margin-top:16px;display:block}.guestbook-field>span{color:#604733;margin-bottom:7px;font-family:Cormorant Garamond,serif;font-size:18px;font-weight:600;display:block}.guestbook-field>span b{color:#a85c4b}.guestbook-field input{color:#4d3828;background:#ffffff94;border:1px solid #99714238;border-radius:11px;outline:0;width:100%;height:50px;padding:0 15px;font-family:Poppins,sans-serif;font-size:12px;transition:all .2s}.guestbook-message-box{background:#ffffff94;border:1px solid #99714238;border-radius:11px;padding:12px 14px 32px;position:relative}.guestbook-message-box textarea{resize:none;color:#604733;background:repeating-linear-gradient(#0000 0 31px,#b18a551f 32px);border:0;outline:0;width:100%;min-height:150px;font-family:Cormorant Garamond,serif;font-size:19px;font-style:italic;line-height:32px}.guestbook-field input:focus,.guestbook-message-box:focus-within{border-color:#b18a5594;box-shadow:0 0 0 4px #b18a5514}.guestbook-message-box small{color:#9a826d;font-family:Poppins,sans-serif;font-size:9px;position:absolute;bottom:9px;right:12px}.guestbook-submit-button{color:#fffaf2;cursor:pointer;background:linear-gradient(135deg,#b18a55,#9a7242);border:0;border-radius:11px;width:100%;height:52px;margin-top:8px;font-family:Cormorant Garamond,serif;font-size:20px;font-style:normal;box-shadow:0 13px 24px #714e2a2b}.guestbook-submit-label{justify-content:center;align-items:center;gap:9px;display:flex}.guestbook-submit-label svg{stroke-width:1.4px;width:20px;height:20px}.guestbook-approval-note{color:#9a826d;text-align:center;margin-top:13px;font-family:Poppins,sans-serif;font-size:10px}.guestbook-error{color:#9a4f43;text-align:center;min-height:18px;margin-top:8px;font-family:Poppins,sans-serif;font-size:10px}.guestbook-submit-loading{border:2px solid #ffffff59;border-top-color:#fff;border-radius:50%;width:18px;height:18px;animation:.8s linear infinite guestbookSpin;display:none}.guestbook-submit-button.is-loading .guestbook-submit-label{display:none}.guestbook-submit-button.is-loading .guestbook-submit-loading{display:inline-block}.guestbook-success-inline[hidden]{display:none}.guestbook-success-inline{text-align:center;padding:48px 20px 24px}.guestbook-success-inline>span{color:#b18a55;font-size:28px}.guestbook-success-inline h3{color:#4d3828;margin-top:8px;font-size:36px;font-style:italic}.guestbook-success-inline p{color:#856f5d;max-width:370px;margin:10px auto 20px;font-family:Poppins,sans-serif;font-size:11px;line-height:1.7}@media (width<=767px){.guestbook-section{align-items:flex-start;padding:10px}.guestbook-page-shell{border-radius:19px;width:100%;height:calc(100vh - 20px);padding:22px 14px 20px;box-shadow:6px 7px #ffffff8c,0 18px 42px #573b211c}.guestbook-close-button{width:34px;height:34px;font-size:21px;top:8px;right:9px}.guestbook-header-emblem{width:45px;height:45px;margin-bottom:7px}.guestbook-header-emblem svg{width:21px;height:21px}.guestbook-header h2{font-size:35px}.guestbook-title-divider{width:125px;margin:10px auto}.guestbook-header p{max-width:285px;margin-bottom:14px;font-size:9px;line-height:1.55}.guestbook-tabs{border-radius:12px;margin-bottom:14px;padding:4px}.guestbook-tab{gap:6px;min-height:41px;font-size:15px}.guestbook-tab svg{width:16px;height:16px}.guestbook-section-caption{gap:8px;margin-bottom:11px}.guestbook-section-caption p{letter-spacing:2px;font-size:7px}.guestbook-message-list{gap:9px}.guestbook-message-card{border-radius:13px;padding:14px 14px 13px 20px}.guestbook-message-card:before{top:13px;bottom:13px;left:9px}.guestbook-message-text{font-size:15px;line-height:1.45}.guestbook-message-meta{gap:8px;margin-top:9px}.guestbook-message-meta span{font-size:14px}.guestbook-message-meta time{font-size:7px}.guestbook-footer-note{margin-top:14px;font-size:16px}.guestbook-write-heading{gap:8px;margin-bottom:10px}.guestbook-write-heading>svg{width:22px;height:22px}.guestbook-write-heading h3{font-size:25px}.guestbook-write-heading p{letter-spacing:1.3px;font-size:7px}.guestbook-field{margin-top:10px}.guestbook-field>span{margin-bottom:5px;font-size:15px}.guestbook-field input{border-radius:9px;height:42px;font-size:11px}.guestbook-message-box{border-radius:9px;padding:8px 10px 27px}.guestbook-message-box textarea{background:repeating-linear-gradient(#0000 0 26px,#b18a551f 27px);min-height:112px;font-size:16px;line-height:27px}.guestbook-submit-button{border-radius:9px;height:45px;margin-top:4px;font-size:18px}.guestbook-approval-note{margin-top:8px;font-size:8px}.guestbook-error{min-height:14px;margin-top:5px;font-size:8px}.guestbook-loading,.guestbook-empty{padding:30px 14px}}@media (height<=700px) and (width<=767px){.guestbook-page-shell{padding-top:14px}.guestbook-header-emblem{width:38px;height:38px;margin-bottom:4px}.guestbook-header h2{font-size:31px}.guestbook-title-divider{margin:7px auto}.guestbook-header p{margin-bottom:9px;font-size:8px}.guestbook-tabs{margin-bottom:9px}.guestbook-tab{min-height:36px;font-size:14px}.guestbook-write-heading h3{font-size:22px}.guestbook-field{margin-top:7px}.guestbook-field input{height:38px}.guestbook-message-box textarea{min-height:86px}.guestbook-submit-button{height:40px}}.song-request-section[hidden]{display:none!important}.song-request-section{color:#4e3929;background:radial-gradient(circle at 50% 0,#ffffffb8,#0000 38%),linear-gradient(#f8efdf,#f2e7d8);justify-content:center;align-items:center;width:100%;height:100vh;min-height:100vh;padding:24px;display:flex;position:relative;overflow:hidden}.song-request-shell{overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch;background:#fffcf7f5;border:1px solid #9971422e;border-radius:26px;width:min(94vw,620px);max-height:92vh;padding:34px 44px 38px;position:relative;overflow-y:auto;box-shadow:10px 12px #ffffff9e,0 28px 65px #573b211f}.song-request-close{color:#8d6536;cursor:pointer;background:#ffffffad;border:1px solid #9971422e;border-radius:50%;width:42px;height:42px;font-family:Arial,sans-serif;font-size:25px;position:absolute;top:16px;right:18px}.song-request-header{text-align:center;max-width:470px;margin:0 auto 28px}.song-request-icon,.song-request-success-icon{color:#b18a55;background:#ffffff6b;border:1px solid #b18a554d;border-radius:50%;justify-content:center;align-items:center;width:66px;height:66px;margin:0 auto 14px;display:flex}.song-request-icon svg,.song-request-success-icon svg{stroke-width:1.4px;width:31px;height:31px}.song-request-header h2{font-size:clamp(42px,6vw,58px);font-weight:400;line-height:1}.song-request-divider{color:#c19070;align-items:center;gap:10px;width:180px;margin:16px auto 17px;display:flex}.song-request-divider span{background:#c1907066;flex:1;height:1px}.song-request-divider b{font-size:13px;font-weight:400}.song-request-header p{color:#745b47;font-family:Poppins,sans-serif;font-size:12px;line-height:1.7}.song-request-field{margin-top:16px;display:block}.song-request-field>span{color:#604733;margin-bottom:7px;font-size:18px;font-weight:600;display:block}.song-request-field>span b{color:#b97764}.song-request-field>span small{color:#9a826d;font-family:Poppins,sans-serif;font-size:9px;font-weight:400}.song-request-field input,.song-request-textarea-wrap textarea{color:#4d3828;background:#ffffff94;border:1px solid #99714238;border-radius:11px;outline:0;width:100%;font-family:Poppins,sans-serif;font-size:12px}.song-request-field input{height:50px;padding:0 15px}.song-request-textarea-wrap{position:relative}.song-request-textarea-wrap textarea{resize:none;min-height:120px;padding:14px 14px 32px;line-height:1.6}.song-request-field input:focus,.song-request-textarea-wrap textarea:focus{border-color:#b18a5594;box-shadow:0 0 0 4px #b18a5514}.song-request-textarea-wrap>small{color:#9a826d;font-family:Poppins,sans-serif;font-size:9px;position:absolute;bottom:9px;right:12px}.song-request-error{color:#9a4f43;text-align:center;min-height:18px;margin-top:8px;font-family:Poppins,sans-serif;font-size:10px}.song-request-submit{color:#fffaf2;cursor:pointer;background:linear-gradient(135deg,#b18a55,#9a7242);border:0;border-radius:11px;width:100%;height:52px;margin-top:8px;font-family:Cormorant Garamond,serif;font-size:20px;box-shadow:0 13px 24px #714e2a2b}.song-request-submit-label{justify-content:center;align-items:center;gap:9px;display:flex}.song-request-submit-label svg{stroke-width:1.4px;width:21px;height:21px}.song-request-loading{border:2px solid #ffffff59;border-top-color:#fff;border-radius:50%;width:18px;height:18px;animation:.8s linear infinite songRequestSpin;display:none}.song-request-submit.is-loading .song-request-submit-label{display:none}.song-request-submit.is-loading .song-request-loading{display:inline-block}.song-request-success[hidden]{display:none}.song-request-success{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:520px;display:flex}.song-request-success h3{color:#4d3828;max-width:390px;font-size:43px;font-weight:400;line-height:1.05}.song-request-success p{color:#745b47;max-width:360px;font-family:Poppins,sans-serif;font-size:14px;line-height:1.75}.song-request-success button{color:#7a5938;letter-spacing:.7px;text-transform:uppercase;cursor:pointer;background:#fffaf2;border:1px solid #99714238;border-radius:999px;margin-top:30px;padding:13px 28px;font-family:Poppins,sans-serif;font-size:10px;font-weight:500}@keyframes songRequestSpin{to{transform:rotate(360deg)}}@media (width<=767px){.song-request-section{align-items:flex-start;padding:10px}.song-request-shell{border-radius:19px;width:100%;max-height:calc(100vh - 20px);padding:22px 14px 20px;box-shadow:6px 7px #ffffff8c,0 18px 42px #573b211c}.song-request-close{width:34px;height:34px;font-size:21px;top:8px;right:9px}.song-request-header{margin-bottom:15px}.song-request-icon{width:46px;height:46px;margin-bottom:8px}.song-request-icon svg{width:22px;height:22px}.song-request-header h2{font-size:36px}.song-request-divider{width:125px;margin:9px auto 10px}.song-request-header p{max-width:280px;margin:auto;font-size:9px;line-height:1.55}.song-request-field{margin-top:10px}.song-request-field>span{margin-bottom:5px;font-size:15px}.song-request-field input{height:42px;font-size:11px}.song-request-textarea-wrap textarea{min-height:82px;font-size:11px}.song-request-submit{height:45px;margin-top:4px;font-size:18px}.song-request-error{min-height:14px;margin-top:5px;font-size:8px}.song-request-success{min-height:460px}.song-request-success-icon{width:76px;height:76px}.song-request-success h3{font-size:36px}.song-request-success p{max-width:270px;font-size:12px}}@media (height<=700px) and (width<=767px){.song-request-shell{padding-top:14px}.song-request-icon{width:39px;height:39px;margin-bottom:4px}.song-request-header h2{font-size:31px}.song-request-header{margin-bottom:8px}.song-request-field{margin-top:7px}.song-request-field input{height:38px}.song-request-textarea-wrap textarea{min-height:65px}.song-request-submit{height:40px}}body.overlay-open{overflow:hidden!important}.guestbook-section,.song-request-section{display:flex;z-index:50000!important;justify-content:center!important;align-items:center!important;width:100%!important;height:100dvh!important;min-height:100dvh!important;padding:20px!important;position:fixed!important;inset:0!important;overflow:hidden!important}.guestbook-section[hidden],.song-request-section[hidden]{display:none!important}.guestbook-page-shell,.song-request-shell{margin:auto}@media (width<=767px){.guestbook-section,.song-request-section{justify-content:center!important;align-items:center!important;padding:12px 10px!important}.guestbook-page-shell,.song-request-shell{width:100%!important;height:auto!important;max-height:calc(100dvh - 24px)!important;margin:auto!important}}@media (height<=700px) and (width<=767px){.guestbook-section,.song-request-section{padding:8px!important}.guestbook-page-shell,.song-request-shell{max-height:calc(100dvh - 16px)!important}}.music-player{left:max(18px, env(safe-area-inset-left));bottom:max(18px, env(safe-area-inset-bottom));z-index:20000;pointer-events:none;width:52px;height:52px;position:fixed}.music-toggle{color:#91682f;cursor:pointer;pointer-events:auto;-webkit-backdrop-filter:blur(8px);background:#f8efdfeb;border:1px solid #9669349e;border-radius:50%;place-items:center;width:52px;height:52px;transition:transform .25s,box-shadow .25s,color .25s;display:grid;position:absolute;inset:0;box-shadow:0 7px 22px #4b301b21,inset 0 0 0 4px #ffffff47}.music-toggle:hover{color:#744b1d;transform:translateY(-2px)scale(1.04);box-shadow:0 10px 27px #4b301b2e,inset 0 0 0 4px #ffffff5c}.music-toggle:focus-visible{outline-offset:4px;outline:2px solid #91682f8c}.music-main-note{font-family:Georgia,Times New Roman,serif;font-size:27px;line-height:1;display:block;transform:translateY(-1px)}.music-toggle.is-playing .music-main-note{animation:2.2s ease-in-out infinite musicNoteBreath}.music-toggle.is-playing:after{content:"";border:1px solid #b5894c61;border-radius:50%;animation:3.8s linear infinite musicRing;position:absolute;inset:-5px}.music-notes{pointer-events:none;width:70px;height:150px;position:absolute;bottom:42px;left:14px;overflow:visible}.floating-note{color:#91682fd1;font-family:Georgia,Times New Roman,serif;font-size:var(--note-size,18px);opacity:0;text-shadow:0 2px 9px #b184422e;animation:floatMusicNote var(--note-duration,3.8s) ease-out forwards;will-change:transform, opacity;line-height:1;position:absolute}@keyframes floatMusicNote{0%{opacity:0;transform:translateY(4px)rotate(0)scale(.72)}16%{opacity:.88}72%{opacity:.48}to{opacity:0;transform:translate3d(var(--note-x,8px), -70px, 0) rotate(var(--note-rotate,8deg)) scale(1.08)}}@keyframes musicNoteBreath{0%,to{transform:translateY(-1px)scale(1)}50%{transform:translateY(-2px)scale(1.08)}}@keyframes musicRing{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (width<=600px){.music-player{left:max(14px, env(safe-area-inset-left));bottom:max(14px, env(safe-area-inset-bottom));width:46px;height:46px}.music-toggle{width:46px;height:46px}.music-main-note{font-size:24px}.music-notes{bottom:30px;left:18px}}@media (prefers-reduced-motion:reduce){.music-main-note,.music-toggle.is-playing:after,.floating-note{animation:none!important}.floating-note{display:none}}.wedding-video-background{z-index:0;opacity:0;visibility:hidden;pointer-events:none;width:100%;height:100%;transition:opacity 1.2s,visibility 1.2s;position:fixed;inset:0;overflow:hidden}.wedding-video-background.is-visible{opacity:1;visibility:visible}#weddingBackgroundVideo{object-fit:cover;object-position:center;width:100%;height:100%;position:absolute;inset:0}.wedding-video-overlay{pointer-events:none;background:#f5eee40f;position:absolute;inset:0}.intro,.paper-full,.countdown,.locations-section,.reminder-section,.contact-section{z-index:2;position:relative}.intro{background:#f5eee4}.paper-full{background:0 0!important}.paper-content{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#f9f2e7ad;border:1px solid #ffffff6b;border-radius:28px;padding:48px 32px;box-shadow:0 22px 55px #3b271626,inset 0 1px #ffffffa6}.paper-content .date,.paper-content .desc{color:#503a29}.countdown,.locations-section,.reminder-section,.contact-section{-webkit-backdrop-filter:blur(2px)saturate(.82);backdrop-filter:blur(2px)saturate(.82);background:#f5eee4b8!important}.locations-section{background:linear-gradient(#f5eee4bd,#f5eee4bd)!important}.reminder-section{background:linear-gradient(#f8efdfb8,#ead8bdb8)!important}.contact-section{background:linear-gradient(#f8efdfba,#f5eee4ba)!important}.countdown{background:#f5eee4bd!important}.counter-card,.location-card,.reminder-card,.contact-card,.contact-extras{-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);box-shadow:0 16px 36px #402b1b17,inset 0 1px #ffffffc7;background:#fffdf8d1!important}@media (width<=767px){#weddingBackgroundVideo{object-position:center center}.paper-content{background:#f9f2e7b5;border-radius:23px;width:min(86vw,390px);padding:38px 23px}.countdown,.locations-section,.reminder-section,.contact-section{background:#f5eee4c2!important}}@media (prefers-reduced-motion:reduce){#weddingBackgroundVideo{display:none}.paper-full,.countdown,.locations-section,.reminder-section,.contact-section{background:#f5eee4!important}}:root{--cinematic-paper:#faf6eec7;--cinematic-paper-strong:#fcf9f3e0;--cinematic-ink:#4a3425;--cinematic-gold:#a67c48;--cinematic-line:#a67c486b;--cinematic-shadow:0 24px 70px #1f140d33}html{background:#211b17}body{background:0 0!important}#app{isolation:isolate;position:relative;background:0 0!important}.wedding-video-background{pointer-events:none;background:#211b17;width:100%;height:100%;inset:0;overflow:hidden;z-index:-2!important;opacity:1!important;visibility:visible!important;position:fixed!important}#weddingBackgroundVideo{object-fit:cover;object-position:center;opacity:.52;filter:blur(22px)brightness(.67)saturate(.78)sepia(.08);will-change:filter,opacity,transform;width:106%;height:106%;transition:filter 1.9s cubic-bezier(.22,.61,.36,1),opacity 1.9s,transform 2.2s cubic-bezier(.22,.61,.36,1);position:absolute;inset:-3%;transform:scale(1.09)}.wedding-video-overlay{opacity:1;background:radial-gradient(circle at 50% 36%,#fff8eb3d,#0000 52%),linear-gradient(#f3e8d670,#37271c3d);transition:opacity 1.8s,background 1.8s;position:absolute;inset:0}body.video-active #weddingBackgroundVideo{opacity:1;filter:blur()brightness(.86)saturate(.96)sepia(0);width:100%;height:100%;inset:0;transform:scale(1.015)}body.video-active .wedding-video-overlay{opacity:.38;background:radial-gradient(circle at 50% 35%,#fff8eb14,#0000 55%),linear-gradient(#18120e14,#18120e33)}.intro,.paper-full,.countdown,.locations-section,.reminder-section,.contact-section{z-index:1;position:relative;background:0 0!important}.intro{min-height:100svh;overflow:hidden}.intro:before{content:"";z-index:-1;pointer-events:none;background:linear-gradient(#f9f1e429,#2a1e151a);position:absolute;inset:0}.eyebrow,.tap-text{text-shadow:0 2px 18px #190f097a;color:#fffaf2f0!important}.paper-full{min-height:100svh;padding-inline:20px}.paper-full:before{display:none!important}.paper-content{-webkit-backdrop-filter:blur(14px)saturate(1.05);backdrop-filter:blur(14px)saturate(1.05);position:relative;background:linear-gradient(135deg, #ffffff57, transparent 40%), var(--cinematic-paper-strong)!important;width:min(88vw,560px)!important;box-shadow:var(--cinematic-shadow), inset 0 0 0 8px #fff3, inset 0 0 0 9px #a67c481f!important;border:1px solid #ba915b8c!important;border-radius:2px!important;padding:clamp(52px,7vw,78px) clamp(30px,6vw,62px)!important}.paper-content:before,.paper-content:after{content:"✦";color:var(--cinematic-gold);letter-spacing:10px;text-indent:10px;opacity:.82;font-size:14px;position:absolute;left:50%;transform:translate(-50%)}.paper-content:before{top:22px}.paper-content:after{bottom:22px}.paper-content .couple-names{color:var(--cinematic-ink)!important;text-shadow:0 1px #ffffff8c!important}.paper-content .date{letter-spacing:.19em;color:#765a3c!important}.paper-content .desc{line-height:1.85;color:#503a2b!important}.countdown,.locations-section,.reminder-section,.contact-section{-webkit-backdrop-filter:blur(1px)saturate(.9);backdrop-filter:blur(1px)saturate(.9);min-height:100svh;background:linear-gradient(#eee5d752,#eee5d77a)!important}.countdown-inner,.locations-content,.contact-content{-webkit-backdrop-filter:blur(14px)saturate(1.05);backdrop-filter:blur(14px)saturate(1.05);background:#faf6ee9e;border:1px solid #ffffff6b;width:min(92vw,980px);margin-inline:auto;padding:clamp(28px,4vw,48px);box-shadow:0 24px 70px #2c1d1324,inset 0 1px #ffffffb3}.countdown-inner,.contact-content{border-radius:30px}.locations-content{border-radius:34px}.counter-card,.location-card,.reminder-card,.contact-card,.contact-extras{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffcf7b8!important;border-color:#a67c4833!important;box-shadow:0 15px 40px #3724171a,inset 0 1px #ffffffc2!important}.reminder-section:before{opacity:.05!important}.reminder-card{border:1px solid #a67c4847!important}.nav-arrow{text-shadow:0 4px 15px #1f140d8c;transition:transform .25s,opacity .25s;color:#fffaf2f5!important}.nav-arrow:hover{transform:translateY(2px)scale(1.08)}.cinematic-reveal{opacity:0;filter:blur(10px);transition:opacity .9s cubic-bezier(.22,.61,.36,1),transform .9s cubic-bezier(.22,.61,.36,1),filter .9s;transform:translateY(34px)scale(.965)}.cinematic-reveal.is-in-view{opacity:1;filter:blur();transform:translateY(0)scale(1)}@media (width<=767px){#weddingBackgroundVideo{object-position:center center}.paper-full{padding-inline:14px}.paper-content{width:min(90vw,390px)!important;padding:54px 25px!important}.countdown,.locations-section,.reminder-section,.contact-section{background:linear-gradient(#eee5d761,#eee5d78c)!important}.countdown-inner,.locations-content,.contact-content{border-radius:24px;width:min(94vw,560px);padding:24px 16px}}@media (prefers-reduced-motion:reduce){#weddingBackgroundVideo,.wedding-video-overlay,.cinematic-reveal{transition:none!important}.cinematic-reveal{opacity:1;filter:none;transform:none}}.paper-full{opacity:0;visibility:hidden;pointer-events:none;isolation:isolate;background:0 0;justify-content:center;align-items:center;width:100%;min-height:100svh;padding:24px 12px 72px;display:none;position:relative;overflow:hidden}.paper-full.is-active{pointer-events:auto;display:flex}.paper-full:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(circle at 50% 20%,#fff6e224,#0000 42%),linear-gradient(#2b1b0d05,#2b1b0d21);position:absolute;inset:0}.invitation-stage{z-index:2;will-change:transform, opacity;justify-content:center;align-items:center;width:min(94vw,560px);display:flex;position:relative}.invitation-glass{-webkit-backdrop-filter:blur(4px);background:#fff8ee12;border:1px solid #fff3;border-radius:22px;width:100%;padding:5px;box-shadow:0 24px 64px #1f130929,inset 0 1px #ffffff3d}.real-invitation{object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;will-change:transform, filter;border-radius:17px;width:100%;max-width:none;height:auto;max-height:calc(100svh - 112px);display:block;box-shadow:0 14px 38px #21150b29}.paper-full .scroll-text,.paper-full .nav-arrow{color:#fff8ee;text-shadow:0 2px 12px #00000061}.paper-content,.paper-full .couple-names,.paper-full .date,.paper-full .desc,.invitation-crop{display:none!important}@media (width<=767px){.paper-full{padding:10px 6px max(58px, env(safe-area-inset-bottom))}.invitation-stage{width:min(97vw,470px)}.invitation-glass{border-radius:16px;padding:3px}.real-invitation{border-radius:13px;width:100%;max-height:calc(100svh - 74px)}}@media (height<=700px) and (width<=767px){.paper-full{padding-top:4px;padding-bottom:48px}.invitation-stage{width:min(91vw,390px)}.real-invitation{max-height:calc(100svh - 54px)}}body.cinematic-intro #weddingBackgroundVideo{filter:blur(5px)brightness(.8)saturate(.85)sepia(.08);transition:filter 1.4s,transform 1.4s;transform:scale(1.06)}body.cinematic-intro .wedding-video-overlay{background:radial-gradient(circle at 50% 38%,#fff7e447,#0000 44%),linear-gradient(#fff4e129,#4a30192e);transition:opacity 1.4s}body.video-active #weddingBackgroundVideo{filter:blur()brightness(.95)saturate();transform:scale(1.01)}body.video-active .wedding-video-overlay{background:linear-gradient(#1e120808,#1e12081f)}:root{--safe-top:max(14px, env(safe-area-inset-top));--safe-bottom:max(14px, env(safe-area-inset-bottom));--nav-offset:20px}html,body,#app,.intro,.paper-full,.countdown,.locations-section,.reminder-section,.contact-section{min-height:100dvh}.wedding-video-background{transform:translateZ(0);pointer-events:none!important;opacity:1!important;visibility:visible!important;width:100vw!important;height:100dvh!important;position:fixed!important;inset:0!important;overflow:hidden!important}#weddingBackgroundVideo{backface-visibility:hidden;object-fit:cover!important;object-position:center center!important;width:100%!important;min-width:100%!important;height:100%!important;min-height:100%!important;position:absolute!important;top:50%!important;left:50%!important;transform:translate(-50%,-50%)scale(1.06)!important}body.video-active #weddingBackgroundVideo{transform:translate(-50%,-50%)scale(1.01)!important}.section-nav{z-index:25000!important;pointer-events:none!important;place-items:center!important;width:56px!important;height:44px!important;margin:0!important;padding:0!important;display:grid!important;position:absolute!important;left:50%!important;transform:translate(-50%)!important}.nav-arrow{cursor:pointer;-webkit-tap-highlight-color:transparent;color:#0000!important;width:52px!important;height:42px!important;text-shadow:none!important;pointer-events:auto!important;background:0 0!important;border:0!important;place-items:center!important;margin:0!important;padding:0!important;font-size:0!important;line-height:0!important;display:grid!important;position:relative!important}.nav-arrow:before{content:"";filter:drop-shadow(0 3px 5px #1f140d8f);border-bottom:2px solid #fffaf2fa;border-right:2px solid #fffaf2fa;width:15px;height:15px;display:block}.nav-arrow:hover,.nav-arrow:active{transform:none!important}.paper-full .section-nav.bottom{bottom:calc(var(--safe-bottom) + 6px)!important}.music-player{isolation:isolate;z-index:50000!important;overflow:visible!important}.music-notes{transform:translateZ(0);z-index:50002!important;opacity:1!important;visibility:visible!important;pointer-events:none!important;width:96px!important;height:190px!important;position:absolute!important;bottom:34px!important;left:-8px!important;overflow:visible!important}.floating-note{opacity:0;will-change:transform, opacity;font-weight:700;z-index:50003!important;color:#fff6e2fa!important;font-family:Georgia,Times New Roman,serif!important;font-size:var(--note-size,21px)!important;text-shadow:0 2px 4px #1f140dc7,0 0 12px #b5894c8c!important;animation:finalFloatMusicNote var(--note-duration,3.4s) cubic-bezier(.18, .7, .24, 1) forwards!important;line-height:1!important;display:block!important;position:absolute!important}@keyframes finalFloatMusicNote{0%{opacity:0;transform:translateY(8px)rotate(0)scale(.72)}12%{opacity:1}68%{opacity:.92}to{opacity:0;transform:translate3d(var(--note-x,8px), -145px, 0) rotate(var(--note-rotate,8deg)) scale(1.12)}}@media (width<=767px){:root{--nav-offset:8px}.section-nav{width:52px!important;height:40px!important}.nav-arrow{width:48px!important;height:38px!important}.nav-arrow:before{width:13px;height:13px}.music-notes{width:90px!important;height:175px!important;bottom:28px!important;left:-12px!important}}@media (prefers-reduced-motion:reduce){#weddingBackgroundVideo{display:block!important}.floating-note{animation-duration:4s!important;display:block!important}}@media (width<=767px){.locations-section{height:auto!important;min-height:100dvh!important;padding-top:58px!important;padding-bottom:78px!important;overflow:hidden!important}.locations-section .section-nav.top{top:calc(max(10px, env(safe-area-inset-top)) + 4px)!important}.locations-section .section-nav.bottom{bottom:calc(max(12px, env(safe-area-inset-bottom)) + 4px)!important}.locations-section .nav-arrow:before{filter:drop-shadow(0 2px 4px #ffffffb8)!important;border-bottom-color:#583b25f5!important;border-right-color:#583b25f5!important}@media (height<=760px){.locations-section{padding-top:48px!important;padding-bottom:64px!important}.locations-content>h2{margin-bottom:12px!important;font-size:27px!important}.location-list{gap:9px!important}.location-card{padding:9px!important}.map-frame{height:88px!important}.directions-button{margin-top:6px!important;padding:7px 10px!important}.location-divider{height:10px!important}}}.countdown .nav-arrow:before,.reminder-section .nav-arrow:before,.contact-section .nav-arrow:before,.locations-section .nav-arrow:before{filter:drop-shadow(0 2px 4px #ffffffad)!important;border-bottom-color:#583b25f5!important;border-right-color:#583b25f5!important}.paper-full .nav-arrow:before{filter:drop-shadow(0 3px 5px #1f140d8f)!important;border-bottom-color:#fffaf2fa!important;border-right-color:#fffaf2fa!important}:root{--app-viewport-height:100dvh;--responsive-safe-top:max(10px, env(safe-area-inset-top));--responsive-safe-bottom:max(10px, env(safe-area-inset-bottom));--responsive-arrow-size:clamp(12px, 3.7vw, 17px);--responsive-arrow-hit-area:clamp(42px, 12vw, 56px);--responsive-nav-edge:clamp(8px, 1.8dvh, 20px)}.intro,.paper-full,.countdown,.locations-section,.reminder-section,.contact-section{width:100%!important;min-height:var(--app-viewport-height,100dvh)!important;height:var(--app-viewport-height,100dvh)!important;max-height:none!important;position:relative!important;overflow:hidden!important}.paper-full,.countdown,.locations-section,.reminder-section,.contact-section{padding-top:calc(var(--responsive-safe-top) + var(--responsive-arrow-hit-area) + 8px)!important;padding-bottom:calc(var(--responsive-safe-bottom) + var(--responsive-arrow-hit-area) + 8px)!important}.nav-arrow{-webkit-tap-highlight-color:transparent;touch-action:manipulation;width:var(--responsive-arrow-hit-area)!important;height:var(--responsive-arrow-hit-area)!important;min-width:var(--responsive-arrow-hit-area)!important;min-height:var(--responsive-arrow-hit-area)!important;color:#0000!important;text-shadow:none!important;pointer-events:auto!important;cursor:pointer!important;opacity:1!important;visibility:visible!important;background:#fffaf214!important;border:0!important;border-radius:50%!important;place-items:center!important;margin:0!important;padding:0!important;font-size:0!important;line-height:0!important;display:grid!important;position:relative!important}.nav-arrow:before{content:""!important;width:var(--responsive-arrow-size)!important;height:var(--responsive-arrow-size)!important;opacity:1!important;visibility:visible!important;border-style:solid!important;border-width:0 2px 2px 0!important;display:block!important}.countdown .nav-arrow:before,.locations-section .nav-arrow:before,.reminder-section .nav-arrow:before,.contact-section .nav-arrow:before{filter:drop-shadow(0 1px 1px #fffffff2)drop-shadow(0 2px 4px #53372233)!important;border-color:#533722fa!important}.paper-full .nav-arrow:before{filter:drop-shadow(0 3px 5px #1f140d94)!important;border-color:#fffaf2fa!important}.reminder-section{place-items:center!important;display:grid!important}.reminder-card{width:min(88vw,560px)!important;min-height:0!important;max-height:calc(var(--app-viewport-height,100dvh) - var(--responsive-safe-top) - var(--responsive-safe-bottom) - (var(--responsive-arrow-hit-area) * 2) - 52px)!important;padding:clamp(34px,6dvh,58px) clamp(22px,6vw,46px) clamp(30px,5dvh,50px)!important}@media (height<=700px){:root{--responsive-arrow-size:clamp(11px, 3.4vw, 14px);--responsive-arrow-hit-area:clamp(38px, 11vw, 48px);--responsive-nav-edge:5px}.paper-full,.countdown,.locations-section,.reminder-section,.contact-section{padding-top:calc(var(--responsive-safe-top) + var(--responsive-arrow-hit-area) + 4px)!important;padding-bottom:calc(var(--responsive-safe-bottom) + var(--responsive-arrow-hit-area) + 4px)!important}.reminder-card{border-radius:19px!important;width:min(86vw,430px)!important;padding:30px 20px 26px!important}.reminder-card:after{inset:12px!important}.reminder-card h2{font-size:clamp(25px,7vw,34px)!important}.reminder-divider{margin:14px auto 17px!important}.reminder-text{font-size:clamp(14px,4.2vw,18px)!important;line-height:1.4!important}}@media (width<=380px){:root{--responsive-arrow-size:12px;--responsive-arrow-hit-area:42px}.reminder-card{width:88vw!important;padding-left:18px!important;padding-right:18px!important}}@media (width>=430px) and (height>=850px){:root{--responsive-arrow-size:17px;--responsive-arrow-hit-area:56px;--responsive-nav-edge:16px}}@media (orientation:landscape) and (height<=520px){:root{--responsive-arrow-size:11px;--responsive-arrow-hit-area:38px;--responsive-nav-edge:3px}.paper-full,.countdown,.locations-section,.reminder-section,.contact-section{padding-top:calc(var(--responsive-safe-top) + var(--responsive-arrow-hit-area))!important;padding-bottom:calc(var(--responsive-safe-bottom) + var(--responsive-arrow-hit-area))!important}.reminder-card{width:min(72vw,520px)!important;padding:22px 26px 20px!important}.reminder-card h2{font-size:25px!important}.reminder-divider{margin:10px auto 12px!important}.reminder-text{font-size:14px!important}}body:not(.site-ready){overflow:hidden!important}body:not(.site-ready) #app>:not(.site-loader){opacity:0!important;visibility:hidden!important}body.site-ready #app>:not(.site-loader){opacity:1;visibility:visible;transition:opacity .5s}.site-loader{z-index:9999999;color:#f4e8d7;opacity:1;visibility:visible;background:radial-gradient(circle at 50% 38%,#ffffff2e,#0000 38%),linear-gradient(#34291f 0%,#211913 100%);place-items:center;transition:opacity .6s,visibility .6s;display:grid;position:fixed;inset:0}.site-loader.is-hidden{opacity:0;visibility:hidden;pointer-events:none}.site-loader-inner{text-align:center;flex-direction:column;align-items:center;width:min(74vw,320px);display:flex}.site-loader-monogram{letter-spacing:8px;margin-bottom:26px;font-family:Cormorant Garamond,serif;font-size:clamp(28px,8vw,42px);font-weight:400}.site-loader-line{background:#ffffff2e;width:min(58vw,230px);height:1px;overflow:hidden}.site-loader-line span{background:#fff8eeeb;width:8%;height:100%;transition:width .35s;display:block;box-shadow:0 0 14px #fff4e18c}.site-loader p{letter-spacing:3px;color:#fff8eec2;margin-top:18px;font-size:11px}@supports (-webkit-touch-callout:none){:root{--responsive-safe-bottom:max(20px, env(safe-area-inset-bottom));--responsive-nav-edge:clamp(10px, 2.2dvh, 24px)}.section-nav.bottom{bottom:calc(var(--responsive-safe-bottom) + var(--responsive-nav-edge) + 8px)!important}}@media (height<=720px){.section-nav.bottom{bottom:calc(max(16px, env(safe-area-inset-bottom)) + 14px)!important}}:root{--nav-size:clamp(34px, 9vw, 42px);--nav-icon-size:clamp(7px, 2vw, 9px);--nav-edge:clamp(8px, 1.5dvh, 16px);--safe-top:max(8px, env(safe-area-inset-top));--safe-bottom:max(8px, env(safe-area-inset-bottom))}.paper-full,.countdown,.locations-section,.reminder-section,.contact-section{min-height:var(--app-viewport-height,100dvh)!important;position:relative!important}.section-nav{width:var(--nav-size)!important;height:var(--nav-size)!important;z-index:99999!important;pointer-events:none!important;place-items:center!important;margin:0!important;padding:0!important;display:grid!important;position:absolute!important;left:50%!important;transform:translate(-50%)!important}.section-nav.top{top:calc(var(--safe-top) + var(--nav-edge))!important}.section-nav.bottom{bottom:calc(var(--safe-bottom) + var(--nav-edge))!important}.nav-arrow{-webkit-backdrop-filter:blur(7px);-webkit-tap-highlight-color:transparent;touch-action:manipulation;width:var(--nav-size)!important;height:var(--nav-size)!important;min-width:var(--nav-size)!important;min-height:var(--nav-size)!important;color:#0000!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important;cursor:pointer!important;background:#faf5ed94!important;border:1px solid #6a4e3824!important;border-radius:50%!important;place-items:center!important;margin:0!important;padding:0!important;font-size:0!important;line-height:0!important;display:grid!important;box-shadow:0 3px 12px #34241917!important}.nav-arrow:before{content:""!important;width:var(--nav-icon-size)!important;height:var(--nav-icon-size)!important;border-bottom:1.6px solid #674c38!important;border-right:1.6px solid #674c38!important;display:block!important}.section-nav.bottom .nav-arrow:before{transform:translateY(-2px)rotate(45deg)!important}.section-nav.top .nav-arrow:before{transform:translateY(2px)rotate(225deg)!important}.nav-arrow:active{scale:.94}@media (height<=700px){:root{--nav-size:32px;--nav-icon-size:7px;--nav-edge:5px}}@media (width>=430px) and (height>=850px){:root{--nav-size:40px;--nav-icon-size:9px;--nav-edge:13px}}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}@media (width<=767px){.guestbook-section,.song-request-section{z-index:50000!important;width:100%!important;height:100dvh!important;min-height:100dvh!important;padding:max(8px, env(safe-area-inset-top)) 8px max(8px, env(safe-area-inset-bottom))!important;background:radial-gradient(circle at 50% 0,#ffffffb8,#0000 38%),linear-gradient(#f8efdf,#f2e7d8)!important;justify-content:center!important;align-items:center!important;display:flex!important;position:fixed!important;inset:0!important;overflow:hidden!important}.guestbook-section[hidden],.song-request-section[hidden]{display:none!important}.guestbook-page-shell,.song-request-shell{-webkit-overflow-scrolling:touch;width:calc(100% - 16px)!important;max-width:520px!important;height:auto!important;max-height:calc(var(--app-viewport-height,100dvh) - 16px)!important;overscroll-behavior:contain!important;zoom:1!important;margin:auto!important;overflow-y:auto!important;transform:none!important}.guestbook-section input,.guestbook-section textarea,.guestbook-section select,.song-request-section input,.song-request-section textarea,.song-request-section select{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;appearance:none;font-size:16px!important;line-height:1.4!important}.guestbook-field input,.song-request-field input{min-height:44px!important}body.keyboard-open .guestbook-section,body.keyboard-open .song-request-section{align-items:flex-start!important}body.keyboard-open .guestbook-page-shell,body.keyboard-open .song-request-shell{margin-top:max(6px, env(safe-area-inset-top))!important;max-height:calc(var(--app-viewport-height,100dvh) - 12px)!important}}@media (width<=390px){.guestbook-page-shell,.song-request-shell{border-radius:16px!important;padding-left:12px!important;padding-right:12px!important}.guestbook-field input,.song-request-field input{height:42px!important}}.countdown>.countdown-inner{margin-left:auto!important;margin-right:auto!important}@media (width<=767px){.countdown>.countdown-inner{margin-left:auto!important;margin-right:auto!important;position:relative!important;left:-3px!important}}
