:root{--forest:#a9cde8;--moss:#344754;--sage:#f4d98b;--paper:#faf8f2;--paper-rgb:250, 248, 242;--blush:#709bbc;--cream-accent:#faedc4;--radius-sm:.4rem;--radius-md:.65rem;--ink:var(--moss);--ink-soft:var(--moss);--hairline:#34475447;--night:#1b262c;--serif:"Playfair Display", "Times New Roman", serif;--sans:"Jost", "Helvetica Neue", sans-serif;--body:"Special Elite", "Courier New", monospace;--script:"Rouge Script", "Playfair Display", cursive;--grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='240' height='240' filter='url(%23n)'/%3E%3C/svg%3E");--fibers:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='600' height='600'%3E%3Cfilter id='f'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.012 0.09' numOctaves='3' seed='7'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='600' height='600' filter='url(%23f)'/%3E%3C/svg%3E")}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--night);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-weight:300}body.is-locked{height:100%;overflow:hidden}h1,h2,h3{font-family:var(--serif);margin:0;font-weight:400}p{margin:0}button{font:inherit;color:inherit}a:focus-visible,button:focus-visible{outline:3px solid var(--sage);outline-offset:3px}.paper{background-color:var(--paper);background-image:radial-gradient(120% 90% at 30% 10%,#ffffffbf,#fff0 60%),radial-gradient(90% 70% at 80% 100%,#34475414,#34475400 65%),linear-gradient(160deg,#fffdf9 0%,#faf8f2 45%,#f0e9d6 100%)}.paper-green{background-color:var(--sage);background-image:radial-gradient(120% 90% at 30% 10%,#ffffff57,#fff0 60%),radial-gradient(90% 70% at 80% 100%,#709bbc2e,#709bbc00 65%),linear-gradient(160deg,#f9e9b8 0%,#f4d98b 45%,#dcb96a 100%)}.paper:before{content:"";background-image:var(--grain);opacity:.4;mix-blend-mode:multiply;pointer-events:none;background-size:180px 180px;position:absolute;inset:0}.paper:after{content:"";background-image:var(--fibers);opacity:.16;mix-blend-mode:multiply;pointer-events:none;background-size:420px 420px;position:absolute;inset:0}@media (prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.envelope-scene{z-index:60;perspective:1700px;perspective-origin:50% 42%;background:radial-gradient(110% 80% at 50% 32%,#709bbc 0%,#4a6c85 45%,#2c4152 100%);place-items:center;display:grid;position:fixed;inset:0;overflow:hidden}.envelope-scene:after{content:"";background-image:var(--grain);opacity:.22;pointer-events:none;background-size:200px 200px;position:absolute;inset:0}.envelope{--tip:52%;width:min(80vw,700px);height:min(62vh,480px);transform-style:preserve-3d;cursor:pointer;will-change:transform;background:0 0;border:0;padding:0;display:block;position:relative}.paper{isolation:isolate}.envelope-back,.envelope-front,.flap,.letter-slot{position:absolute;overflow:visible}.envelope-back,.envelope-front,.flap{overflow:hidden}.envelope-back{border-radius:4px;inset:0;box-shadow:0 40px 70px #1217128c}.envelope-back .shade{z-index:1;background:linear-gradient(#28322966 0%,#709bbc1f 45%,#709bbc0f 100%);position:absolute;inset:0}.letter-slot{will-change:transform;height:76%;top:5%;left:4.5%;right:4.5%}.letter{transform-origin:50%;will-change:transform;border-radius:3px;position:absolute;inset:0;overflow:hidden;box-shadow:0 18px 44px #171d186b;container-type:size}.letter-line{z-index:2;width:84%;max-width:22ch;font-family:var(--serif);text-align:center;color:var(--ink);margin:0;font-size:clamp(7cqh,5.8cqw,11cqh);font-style:italic;font-weight:400;line-height:1.35;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.letter-names{z-index:2;font-family:var(--script);text-align:center;color:var(--ink);margin:0;font-size:min(clamp(5cqh,4.6cqw,8cqh),5.5cqw);line-height:1.15;position:absolute;bottom:10cqh;left:0;right:0}.envelope-front{border-radius:4px;inset:0;box-shadow:inset 0 1px #ffffff4d,0 26px 52px #12171273}.fold{pointer-events:none;z-index:1;position:absolute;inset:0}.fold-left{clip-path:polygon(0 0, 50% var(--tip), 0 100%);background:linear-gradient(100deg,#ffffff42,#709bbc2e)}.fold-right{clip-path:polygon(100% 0, 50% var(--tip), 100% 100%);background:linear-gradient(260deg,#ffffff42,#709bbc2e)}.fold-bottom{clip-path:polygon(0 100%, 50% var(--tip), 100% 100%);background:linear-gradient(#709bbc33,#fff3);box-shadow:inset 0 -2px 6px #709bbc33}.fold-line{z-index:2;pointer-events:none;opacity:.55;clip-path:polygon(0 0, 50% var(--tip), 100% 0, 100% 100%, 0 100%);background:linear-gradient(to bottom right,#0000 calc(50% - .5px),#709bbc61 50%,#0000 calc(50% + .5px));position:absolute;inset:0}.flap{width:100%;height:var(--tip);clip-path:polygon(0 0,100% 0,50% 100%);transform-origin:top;backface-visibility:visible;will-change:transform;top:0;left:0}.flap-edge{z-index:3;clip-path:polygon(0 0,100% 0,50% 100%);pointer-events:none;background:linear-gradient(#ffffff4d,#709bbc29);position:absolute;inset:0}.flap-shadow{width:100%;height:calc(var(--tip) + 6%);z-index:4;clip-path:polygon(0 0,100% 0,50% 90%);pointer-events:none;background:linear-gradient(#232c244d,#232c2400);position:absolute;top:0;left:0}.seal-holder{left:50%;top:var(--tip);aspect-ratio:1;pointer-events:none;width:clamp(66px,10.5vmin,108px);position:absolute;transform:translate(-50%,-50%)translateZ(6px)}.seal{will-change:transform, opacity;background:radial-gradient(70% 70% at 34% 28%,#eaf3f9 0%,#709bbc 42%,#567c96 78%,#3c5567 100%);border-radius:46% 54% 45% 55%/53% 46% 54% 47%;place-items:center;display:grid;position:absolute;inset:0;box-shadow:inset 0 2px 6px #fffcfa8c,inset 0 -6px 12px #3c5a734d,0 6px 16px #1e2d3c66}.seal:before{content:"";border-radius:inherit;border:1px solid #5a7d9b66;position:absolute;inset:8%;box-shadow:inset 1.5px 1.5px 2px #46647d59,-1px -1px 1px #fffcfa99}.seal-motif{color:#f4d98b;filter:drop-shadow(-1px -1px #fffdfb66)drop-shadow(1.5px 1.5px 1.5px #192d3c8c);width:74%;height:74%}.envelope-hint{left:50%;bottom:max(2.2rem, env(safe-area-inset-bottom));letter-spacing:.38em;text-transform:uppercase;color:#faf8f299;pointer-events:none;white-space:nowrap;font-size:.95rem;position:absolute;transform:translate(-50%)}@media (width<=640px){.envelope{--tip:46%;width:86vw;height:min(58vh,112vw)}.envelope-hint{letter-spacing:.28em;font-size:.78rem}}.gift-section{z-index:1;background:var(--paper);color:var(--ink);text-align:center;perspective:1200px;padding:clamp(4rem,11vh,7rem) clamp(1.4rem,5vw,3rem);position:relative}.gift-inner{border:1px solid var(--blush);border-radius:var(--radius-md);max-width:50rem;transform-style:preserve-3d;background:#faedc466;margin:0 auto;padding:clamp(2rem,4.5vw,3rem) clamp(1.4rem,4vw,2.6rem);position:relative}.gift-content{backface-visibility:hidden;transform:rotateY(180deg)}.gift-section .kicker{color:var(--ink)}.gift-section>.kicker{margin-bottom:clamp(1.8rem,4vh,2.5rem)}.gift-lead{margin-top:1.3rem;max-width:36rem;font-family:var(--body);margin-inline:auto;font-size:clamp(.9rem,1.9vw,1.05rem);line-height:1.9}.gift-content>.gift-lead:first-child{margin-top:0}.gift-lead-closing{margin-top:1rem}.gift-columns{margin-top:clamp(1.8rem,4vh,2.5rem);max-width:36rem;margin-inline:auto}@media (width<=520px){.gift-section{padding-inline:1.25rem}.gift-inner{padding-inline:1.2rem}}.gift-column{text-align:center}.gift-column-title{font-family:var(--sans);letter-spacing:.28em;text-transform:uppercase;text-indent:.28em;font-size:.62rem;font-weight:300}.gift-column-holder{font-family:var(--body);margin-top:.4rem;font-size:.8rem}.gift-column-value{font-family:var(--serif);letter-spacing:.03em;font-variant-numeric:lining-nums;margin-top:.8rem;font-size:clamp(.92rem,2vw,1.05rem);line-height:1.5}.copy-btn{color:var(--ink);font-family:var(--sans);letter-spacing:.22em;text-transform:uppercase;text-indent:.22em;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #709bbc66;margin-top:.9rem;padding:.2rem 0;font-size:.66rem;font-weight:300;transition:border-color .25s}.copy-btn:hover{border-bottom-color:var(--blush)}.music-section{z-index:1;background:var(--forest);color:var(--ink);text-align:center;padding:clamp(4.5rem,12vh,8rem) clamp(1.4rem,5vw,3rem);position:relative;overflow:hidden}.music-inner{max-width:42rem;margin:0 auto;position:relative}.kicker.music-kicker{color:var(--ink)}.music-title{font-family:var(--script);color:var(--ink);margin-top:.8rem;font-size:clamp(3rem,8vw,5.2rem);line-height:1.05}.music-lead{max-width:36rem;font-family:var(--body);color:#344754d1;text-wrap:balance;margin:1.3rem auto 0;font-size:clamp(.9rem,1.9vw,1.05rem);line-height:1.9}.music-form{text-align:left;gap:clamp(1.5rem,4vh,2.2rem);margin-top:clamp(2.4rem,6vh,3.5rem);display:grid}.music-suggestion{border:0;gap:.9rem;margin:0;padding:0;display:grid}.music-suggestion legend{font-family:var(--serif);letter-spacing:.08em;color:var(--ink);padding:0;font-size:1rem}.music-fields{grid-template-columns:1fr 1fr;gap:1.3rem;display:grid}.music-field{gap:.65rem;display:grid}.music-field label{font-family:var(--sans);letter-spacing:.28em;text-transform:uppercase;color:var(--ink);font-size:.62rem;font-weight:300}.music-field input{border-radius:var(--radius-sm);width:100%;color:var(--ink);font-family:var(--body);background:#faf8f28c;border:1px solid #709bbc80;outline:none;padding:.95rem 1rem;font-size:.92rem;transition:border-color .25s,background .25s}.music-field input::placeholder{color:#34475480}.music-field input:focus{border-color:var(--blush);background:#faf8f229;box-shadow:0 0 0 3px #709bbc61}.music-submit{border:1px solid var(--sage);border-radius:var(--radius-sm);background:var(--sage);color:var(--moss);font-family:var(--sans);letter-spacing:.28em;text-transform:uppercase;cursor:pointer;margin-top:.4rem;padding:.9rem 1.5rem;font-size:.66rem;font-weight:300;transition:background .3s,color .3s,border-color .3s}.music-submit:not(:disabled):hover{background:var(--blush);border-color:var(--blush);color:var(--paper)}.music-submit:disabled{cursor:wait;opacity:.65}.music-error{font-family:var(--body);color:#efb9b2;font-size:.82rem;line-height:1.7}.music-bot-field{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.music-done{border-radius:var(--radius-md);font-family:var(--serif);color:var(--ink);border:1px solid #709bbc80;justify-content:center;align-items:center;gap:.8rem;margin:clamp(2.4rem,6vh,3.5rem) auto 0;padding:1.4rem;font-size:clamp(1rem,2.2vw,1.2rem);display:flex}.music-done span{font-size:1.8rem}.floating-note{color:#709bbc21;font-family:var(--serif);pointer-events:none;-webkit-user-select:none;user-select:none;will-change:transform;line-height:1;position:absolute}.note-one{font-size:clamp(3.5rem,8vw,7rem);animation:10s ease-in-out infinite note-float-one;top:13%;left:8%}.note-two{font-size:clamp(4rem,10vw,8rem);animation:12s ease-in-out infinite note-float-two;bottom:14%;right:7%}.note-three{font-size:clamp(2.5rem,5vw,4.5rem);animation:9s ease-in-out infinite note-float-three;bottom:8%;left:14%}@keyframes note-float-one{0%,to{transform:translate(0,0)rotate(-14deg)}50%{transform:translate(10px,-16px)rotate(-8deg)}}@keyframes note-float-two{0%,to{transform:translate(0,0)rotate(12deg)}50%{transform:translate(-13px,-18px)rotate(17deg)}}@keyframes note-float-three{0%,to{transform:translate(0,0)rotate(8deg)}50%{transform:translate(8px,-12px)rotate(3deg)}}@media (width<=620px){.music-fields{grid-template-columns:1fr}.floating-note{opacity:.55}}@media (prefers-reduced-motion:reduce){.floating-note{animation:none}.note-one{transform:rotate(-14deg)}.note-two{transform:rotate(12deg)}.note-three{transform:rotate(8deg)}}.photo-slider{pointer-events:none;-webkit-user-select:none;user-select:none;gap:clamp(.55rem,1.2vw,.9rem);width:100vw;margin:clamp(2.8rem,8vh,5rem) 50% 0;display:grid;overflow:hidden;transform:translate(-50%)}.photo-slider-track{will-change:transform;width:max-content;animation:42s linear infinite photo-marquee-left;display:flex}.photo-slider-track.moves-right{animation-name:photo-marquee-right;animation-duration:47s;transform:translate(-33.3333%)}.photo-slider-group{flex:none;gap:clamp(.55rem,1.2vw,.9rem);padding-right:clamp(.55rem,1.2vw,.9rem);display:flex}.photo-slider img{aspect-ratio:4/3;object-fit:cover;filter:saturate(.82)contrast(.96);border-radius:clamp(.65rem,1.2vw,1rem);flex:none;width:clamp(9.5rem,20vw,16rem);display:block}@keyframes photo-marquee-left{to{transform:translate(-33.3333%)}}@keyframes photo-marquee-right{to{transform:translate(0)}}@media (prefers-reduced-motion:reduce){.photo-slider-track{animation:none}}.rsvp-section{z-index:1;background:var(--forest);color:var(--ink);padding:clamp(4rem,11vh,7rem) 0;position:relative;overflow:hidden}.rsvp-stripes{pointer-events:none;grid-template-columns:repeat(6,minmax(0,1fr));gap:clamp(22px,3.2vw,40px);width:min(40%,480px);display:grid;position:absolute;top:0;bottom:0;right:0}.rsvp-stripes span{background:var(--paper);transform-origin:top;height:100%;display:block}.rsvp-inner{max-width:980px;gap:clamp(2rem,5vh,3rem);max-inline-size:980px;margin:0 auto;padding:0 clamp(1.4rem,5vw,3rem);display:grid;position:relative}.rsvp-head{max-width:34rem}.kicker.rsvp-kicker{color:var(--ink);text-align:center}.rsvp-lead{font-family:var(--body);color:#344754e0;margin-top:1.2rem;font-size:clamp(.88rem,1.8vw,1rem);line-height:1.9}.rsvp-deadline{font-family:var(--serif);letter-spacing:.12em;text-transform:uppercase;color:var(--ink);font-variant-numeric:lining-nums;margin-top:1.2rem;font-size:clamp(1rem,2.2vw,1.2rem)}.rsvp-help{font-family:var(--body);color:#344754b8;margin-top:.7rem;font-size:.82rem;line-height:1.8}.rsvp-help a{color:var(--ink);white-space:nowrap;border-bottom:1px solid #709bbc80;text-decoration:none}.rsvp-help a:hover{border-bottom-color:var(--blush)}.rsvp-card{background:var(--paper);border-radius:var(--radius-md);gap:clamp(1.3rem,3vh,1.8rem);width:min(100%,34rem);padding:clamp(1.6rem,4vw,2.6rem);display:grid;box-shadow:0 24px 60px #12171247}.rsvp-card .field{text-align:left;border:0;gap:.6rem;margin:0;padding:0;display:grid}.rsvp-card label,.rsvp-card legend{font-family:var(--sans);letter-spacing:.28em;text-transform:uppercase;color:var(--moss);padding:0;font-size:.62rem;font-weight:300}.rsvp-card input[type=text],.rsvp-card input[type=tel]{font-family:var(--body);color:var(--moss);border:1px solid var(--sage);background:var(--paper);border-radius:var(--radius-sm);outline:none;width:100%;padding:.8rem .9rem;font-size:.92rem}.rsvp-card input:focus{border-color:var(--sage);background:var(--paper);box-shadow:0 0 0 3px #f4d98b73}.choices{gap:.55rem;display:grid}.choices-wrap{grid-template-columns:repeat(auto-fit,minmax(9rem,1fr))}.choice{cursor:pointer;display:block;position:relative}.choice input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute}.choice span{font-family:var(--body);letter-spacing:0;text-transform:none;color:var(--moss);border:1px solid var(--hairline);border-radius:var(--radius-sm);background:rgba(var(--paper-rgb), .45);padding:.75rem .9rem;font-size:.86rem;transition:background .25s,color .25s,border-color .25s;display:block}.choice:hover span{border-color:var(--moss)}.choice.is-on span{background:var(--sage);border-color:var(--sage);color:var(--moss)}.choice input:focus-visible+span{border-color:var(--blush);outline-offset:3px;outline:3px solid #34475461}.rsvp-submit{text-align:center;margin-top:.4rem}.rsvp-submit:disabled{cursor:wait;opacity:.65}.rsvp-error{font-family:var(--body);color:#8a3737;font-size:.82rem;line-height:1.7}.bot-field{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.rsvp-done{text-align:center;font-family:var(--serif);color:var(--ink);place-items:center;padding:clamp(2.4rem,6vw,3.4rem);font-size:1.2rem}@media (width<=760px){.rsvp-stripes{width:auto;height:72px;inset:0 0 auto}.rsvp-inner{text-align:center;justify-items:center;padding-top:4.5rem}.rsvp-kicker{text-align:center}.rsvp-card{text-align:left}}.timeline-section{z-index:1;background:var(--forest);color:var(--ink);padding:clamp(4rem,11vh,7rem) clamp(1.2rem,4vw,2.5rem);position:relative}.timeline-inner{width:min(100%,68rem);margin:0 auto}.kicker.timeline-kicker{text-align:center;color:var(--ink)}.timeline-track{grid-template-columns:repeat(5,minmax(0,1fr));margin-top:clamp(2.8rem,7vh,4.5rem);display:grid}.stop{text-align:center;min-width:0;padding:0 clamp(.7rem,2.5vw,1.8rem);position:relative}.stop+.stop{border-left:1px solid #709bbc52}.stop-icon{width:clamp(3rem,6vw,4.25rem);height:clamp(3rem,6vw,4.25rem);color:var(--ink);place-items:center;margin:0 auto;display:grid;overflow:visible}.stop-icon svg{width:100%;height:100%;display:block;overflow:visible}.stop-time{font-family:var(--serif);color:var(--ink);font-variant-numeric:lining-nums tabular-nums;margin-top:clamp(1rem,2.5vh,1.4rem);font-size:clamp(1rem,2vw,1.25rem);line-height:1.1}.stop-title{font-family:var(--serif);color:#344754c2;margin-top:.55rem;font-size:clamp(.92rem,1.7vw,1.08rem);font-weight:400;line-height:1.25}@media (width<=760px){.timeline-inner{max-width:32rem}.timeline-track{grid-template-columns:repeat(2,minmax(0,1fr))}.stop{padding:1.8rem 1rem}.stop+.stop{border-left:0}.stop:nth-child(2n){border-left:1px solid #709bbc52}.stop:nth-child(n+3){border-top:1px solid #709bbc52}.stop:last-child:nth-child(odd){border-left:0;grid-column:1/-1}}@media (width<=390px){.timeline-track{grid-template-columns:1fr}.stop,.stop:nth-child(2n),.stop:last-child:nth-child(odd){border-left:0;grid-column:auto}.stop+.stop{border-top:1px solid #709bbc52}}.stop-icon img{object-fit:contain;width:100%;height:100%;display:block}.invitation{background:var(--paper);min-height:100vh;position:relative}.invitation:before{content:"";background-image:var(--grain);opacity:.38;mix-blend-mode:multiply;pointer-events:none;z-index:2;background-size:200px 200px;position:fixed;inset:0}.section{z-index:1;max-width:980px;margin:0 auto;padding:clamp(4rem,11vh,8rem) clamp(1.4rem,5vw,3rem);position:relative}.kicker{font-family:var(--sans);letter-spacing:.42em;text-transform:uppercase;text-indent:.42em;color:var(--ink-soft);font-size:clamp(.72rem,1.7vw,.92rem);font-weight:500}.hero{text-align:center;isolation:isolate;place-items:center;min-height:100svh;padding:clamp(2rem,8vh,5rem) 1.4rem;display:grid;position:relative;overflow:hidden}.hero-media{z-index:-1;position:absolute;inset:0}.hero-media img{object-fit:cover;width:100%;height:100%;display:block}.hero-scrim{background:radial-gradient(65% 50% at 50% 45%,#34475466,#34475400 75%),linear-gradient(#34475459 0%,#34475433 45%,#3447546b 100%);position:absolute;inset:0}.hero-inner{width:min(100%,54rem);max-width:54rem;color:var(--paper);--hero-kicker-rise:clamp(-6rem, -8vw, -3.5rem);place-items:center;display:grid;position:relative}.hero-kicker{color:#faf8f2f2;text-shadow:0 1px 12px #34475480;grid-area:1/1}.hero-kicker span{display:block}.hero-names{font-family:var(--script);color:var(--paper);text-shadow:0 2px 28px #34475473;grid-area:1/1;margin:0;font-size:clamp(3.2rem,12vw,9.5rem);font-weight:400;line-height:1.05}.scroll-cue-holder{position:absolute;bottom:clamp(1.8rem,5vh,3rem);left:50%;transform:translate(-50%)}.scroll-cue{cursor:pointer;color:#faf8f2e6;background:0 0;border:0;width:clamp(38px,5vw,52px);padding:.6rem;display:block}.scroll-cue svg{filter:drop-shadow(0 2px 10px #3447548c);width:100%;animation:2.6s ease-in-out infinite scroll-nudge;display:block}@keyframes scroll-nudge{0%,to{transform:translateY(0)}50%{transform:translateY(7px)}}.intro-section{text-align:center}.big-date{font-family:var(--script);color:var(--blush);margin:clamp(.8rem,2.5vh,1.6rem) 0 0;font-size:clamp(3.2rem,10.5vw,7rem);line-height:1.1}.countdown{color:var(--forest);opacity:.72;flex-wrap:wrap;justify-content:center;gap:clamp(1.2rem,4.5vw,2.6rem);margin-top:clamp(.4rem,1.5vh,1rem);display:flex}.countdown-cell{justify-items:center;gap:.3rem;min-width:2.8rem;display:grid}.countdown-cell b{font-family:var(--serif);font-variant-numeric:lining-nums tabular-nums;font-size:clamp(.95rem,2vw,1.2rem);font-weight:400;line-height:1}.countdown-cell small{font-family:var(--sans);letter-spacing:.24em;text-transform:uppercase;font-size:.52rem}.lead{font-family:var(--body);color:var(--moss);text-wrap:balance;max-width:44ch;margin:clamp(2.6rem,7vh,4rem) auto 0;font-size:clamp(.92rem,1.9vw,1.1rem);line-height:1.9}.lead-thanks{margin-top:clamp(1.6rem,4vh,2.4rem)}.info-section{text-align:center}.info-grid{z-index:1;text-align:left;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(2rem,4.5vw,3.5rem);margin-top:clamp(2.5rem,7vh,4rem);display:grid;position:relative}.info-eyebrow,.note-title{font-family:var(--sans);letter-spacing:.22em;text-transform:uppercase;text-indent:.22em;color:var(--ink);font-size:.78rem;font-weight:600}.place-name{font-family:var(--script);color:var(--ink);margin-top:.6rem;font-size:clamp(2.2rem,4.8vw,3.2rem);line-height:1.05}.place-estate{font-family:var(--serif);color:var(--moss);margin-top:.2rem;font-size:clamp(1rem,2.2vw,1.2rem);font-style:italic}.place-address{font-family:var(--body);color:var(--moss);margin-top:1.4rem;font-size:.85rem;line-height:1.9}.place-note{font-family:var(--body);color:var(--moss);max-width:32ch;margin-top:1.1rem;font-size:.85rem;line-height:1.9}.place-time{font-family:var(--serif);letter-spacing:.16em;text-transform:uppercase;color:var(--ink);font-variant-numeric:lining-nums;align-items:center;gap:.55rem;margin-top:1.4rem;font-size:.92rem;display:flex}.clock{width:1.15em;height:1.15em;color:var(--moss);flex:none}.info-place .link-btn{margin-top:1.8rem}.info-notes{border-left:1px solid var(--hairline);gap:clamp(1.8rem,4vh,2.6rem);margin:0;padding:0 0 0 clamp(2rem,4.5vw,3.5rem);list-style:none;display:grid}.note-text{font-family:var(--body);color:var(--moss);margin-top:.7rem;font-size:.85rem;line-height:1.9}@media (width<=720px){.info-section{padding-inline:clamp(1.9rem,8vw,3rem)}.info-grid{text-align:center;grid-template-columns:1fr;gap:clamp(2rem,6vh,3rem)}.place-note{max-width:none}.place-time{justify-content:center}.info-place .link-btn{display:inline-block}.info-notes{border-left:0;border-top:1px solid var(--hairline);padding:clamp(2rem,6vh,3rem) 0 0}}.link-btn{border:1px solid var(--ink);border-radius:var(--radius-sm);color:var(--ink);letter-spacing:.28em;text-transform:uppercase;cursor:pointer;background:0 0;margin-top:1.6rem;padding:.7rem 1.5rem;font-size:.66rem;text-decoration:none;transition:background .3s,color .3s,border-color .3s;display:inline-block}.link-btn.is-solid{background:var(--sage);border-color:var(--sage);color:var(--moss)}.link-btn.is-solid:hover{background:var(--blush);border-color:var(--blush);color:var(--paper)}.link-btn:hover{background:var(--ink);color:var(--paper)}.footer{z-index:1;text-align:center;border-top:1px solid var(--hairline);padding:clamp(4rem,10vh,6.5rem) 1.4rem 4rem;position:relative}.closing-kicker{color:var(--ink-soft)}.closing-countdown{color:var(--forest);flex-wrap:wrap;justify-content:center;gap:clamp(1.2rem,4vw,2.4rem);margin-top:1rem;display:flex}.closing-countdown span{justify-items:center;gap:.25rem;min-width:2.8rem;display:grid}.closing-countdown b{font-family:var(--serif);font-variant-numeric:lining-nums tabular-nums;font-size:clamp(1rem,2vw,1.2rem);font-weight:400;line-height:1}.closing-countdown small{font-family:var(--sans);letter-spacing:.2em;text-transform:uppercase;margin:0;font-size:.5rem}.closing-thanks{max-width:34rem;font-family:var(--body);color:var(--moss);text-wrap:balance;margin:1rem auto 0;font-size:clamp(.9rem,1.9vw,1.05rem);line-height:1.9}.closing-signature{font-family:var(--script);color:var(--ink);margin-top:2.2rem;font-size:clamp(1.3rem,3vw,1.7rem);line-height:1.15}.music-control{z-index:20;width:2.7rem;height:2.7rem;color:var(--ink);cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#faf8f2eb;border:1px solid #709bbc80;border-radius:50%;place-items:center;padding:0;transition:background .25s,color .25s,transform .25s;display:grid;position:fixed;bottom:clamp(1rem,3vw,1.8rem);right:clamp(1rem,3vw,1.8rem);box-shadow:0 7px 24px #171d182e}.music-control:hover{transform:scale(1.06)}.music-control.is-playing{color:var(--paper);background:#709bbceb;border-color:#709bbc8c}.music-control svg{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:1rem;height:1rem}
