@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/cormorant-garamond-latin-600-normal-Co1r35X9.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-600-normal-2CBVLo0M.woff) format("woff")}@font-face{font-family:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:600;src:url(/assets/cormorant-garamond-latin-600-italic-DCuhXWyK.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-600-italic-BcJbkSJ4.woff) format("woff")}:root{color:#5d5554;background:#fff0eb;font-family:PingFang SC,Microsoft YaHei,Arial,sans-serif;font-synthesis:none;--paper: #fff0eb;--rose: #d686a8;--ink: #5d5554;--pink: #e685ad;--line: #ef8794;--white: #fff7f3}*{box-sizing:border-box}html{overflow-x:hidden;overflow-y:auto;scroll-behavior:auto}body{margin:0;min-width:320px;min-height:100vh;overflow-x:hidden;overflow-y:visible;touch-action:pan-y;background:var(--paper);-webkit-font-smoothing:antialiased;-webkit-overflow-scrolling:touch}#root,main{min-height:100vh}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{display:block;max-width:100%}.reveal-ready .scroll-reveal{opacity:0;transform:translate3d(0,16px,0);transition:opacity .8s cubic-bezier(.22,1,.36,1),transform .8s cubic-bezier(.22,1,.36,1);transition-delay:var(--reveal-delay, 0ms);will-change:opacity,transform}.reveal-ready .scroll-reveal.is-visible{opacity:1;transform:translateZ(0);will-change:auto}.section-shell{width:min(100%,660px);margin:0 auto;padding:104px 28px;text-align:center}.section-heading{margin-bottom:30px;text-align:center}.section-heading span,.reply-modal__eyebrow{display:block;margin-bottom:10px;color:#b69aa5;font-size:11px;font-weight:600;letter-spacing:.24em}.section-heading h2,.display-copy,.reply-modal h2{margin:0;color:var(--pink);font-family:Songti SC,STSong,serif;font-size:clamp(32px,7vw,46px);font-weight:800;letter-spacing:.03em;line-height:1.15}.section-heading--light span{color:#ffffffb3}.section-heading--light h2{color:var(--white)}p{font-size:17px;line-height:1.75}.hero{min-height:100svh;padding-top:30px;display:flex;flex-direction:column;align-items:center}.hero__bow{width:min(100%,560px)}.hero__date{margin:-8px 0 7px;color:#c97398;font-family:Cormorant Garamond,Baskerville,Times New Roman,serif;font-size:clamp(27px,5.4vw,38px);font-weight:600;letter-spacing:.15em;line-height:1}.hero h1{margin:0;display:flex;align-items:baseline;gap:15px;color:var(--pink);font-family:Cormorant Garamond,Baskerville,Times New Roman,serif;font-size:clamp(48px,10vw,76px);line-height:.98}.hero h1 span{font-weight:600;letter-spacing:.015em}.hero h1 b{font-weight:600;font-style:italic;font-size:.72em}.hero__photo{width:min(100%,590px);margin-top:25px}.display-copy{margin-top:26px;font-size:clamp(29px,6vw,40px)}.hero__intro{margin:12px auto 0;max-width:520px}.music-button{margin-top:35px;padding:6px 14px 6px 7px;display:inline-flex;align-items:center;gap:9px;border:1px solid rgba(214,134,168,.45);border-radius:999px;color:#a56f84;background:#ffffff47}.music-button img{width:42px;height:42px}.music-button.is-playing img{animation:spin 8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.intro{padding-top:70px}.intro p{max-width:530px;margin:7px auto}.intro .angels{width:300px;margin:46px auto 0}.date-section{padding-top:40px}.calendar{width:min(100%,420px);margin:0 auto}.calendar__month{margin-bottom:20px;font-size:24px;letter-spacing:.16em}.calendar__weekdays,.calendar__days{display:grid;grid-template-columns:repeat(7,1fr);gap:10px 4px}.calendar__weekdays{margin-bottom:10px;color:#b0a4a2;font-size:12px}.calendar__days span{min-height:37px;display:grid;place-items:center}.calendar__days .is-wedding-day{width:37px;margin:0 auto;border-radius:50%;color:#fff;background:var(--line);font-weight:700}.calendar p{margin:20px 0 0;color:#9a8580}.color-section{background:var(--rose);color:var(--white)}.location .section-shell{padding-top:94px;padding-bottom:96px}.location p{margin:0 auto}.outline-button{width:min(100%,330px);margin:25px auto 40px;padding:12px 20px;display:block;border:1.5px solid var(--white);border-radius:999px;color:var(--white);text-decoration:none;transition:background .2s,color .2s}.outline-button:hover{background:var(--white);color:var(--rose)}.table-illustration{width:280px;margin:0 auto 36px;filter:brightness(0) invert(1)}.location__note{max-width:510px;opacity:.92}.schedule{padding-bottom:120px}.timeline{margin-top:55px}.timeline__item{min-height:190px;display:flex;flex-direction:column;align-items:center}.timeline__item img{width:72px;height:72px;object-fit:contain}.timeline__item strong{margin-top:11px;font-size:18px;font-weight:500}.timeline__item span{margin-top:4px;font-size:17px}.timeline__item i{width:1px;height:45px;margin:24px 0;background:var(--line)}.wishes .section-shell{padding-top:95px;padding-bottom:92px}.wishes p{margin:4px auto;max-width:500px}.champagne{width:175px;margin:35px auto;filter:brightness(0) invert(1)}.dress-code p{max-width:540px;margin:14px auto}.dress-code strong{color:#b24f78;font-weight:700}.dress-code__request{margin-top:24px!important;padding:13px 18px;border-top:1px solid rgba(214,134,168,.55);border-bottom:1px solid rgba(214,134,168,.55);color:#a64f73;font-weight:600}.palette{margin:34px auto;display:flex;justify-content:center;gap:8px}.palette img{width:54px;height:54px}.weather-note{color:#897c79}.dress-code__ideas-title{margin-top:45px!important;font-weight:600}.dress-code__gallery{width:min(100%,580px);margin:24px auto 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:12px}.dress-code__gallery img{width:100%;border-radius:14px;box-shadow:0 8px 22px #774c581a}.rsvp{padding-top:50px}.rsvp__lead{margin:0 auto 40px}form{width:min(100%,520px);margin:0 auto;text-align:left}.field{display:grid;gap:9px;margin-bottom:26px}.field>span,legend{font-size:16px;font-weight:600}.field input{width:100%;padding:13px 18px;border:1px solid #aa9d99;border-radius:999px;outline:none;color:var(--ink);background:transparent}.field input:focus{border-color:var(--pink);box-shadow:0 0 0 3px #e685ad26}.field--reveal{animation:reveal .25s ease-out}@keyframes reveal{0%{opacity:0;transform:translateY(-6px)}}fieldset{margin:0 0 27px;padding:0;border:0}legend{margin-bottom:12px}.choice{min-height:38px;display:flex;align-items:center;gap:12px;cursor:pointer}.choice input{width:21px;height:21px;accent-color:var(--pink)}.submit-button{width:100%;padding:14px 22px;border:0;border-radius:999px;color:#fff;background:var(--rose);font-weight:600}.submit-button:hover{background:#ca759b}.submit-button:disabled{cursor:wait;opacity:.72}.form-message{margin:-5px 0 18px;font-size:14px;line-height:1.55;text-align:center}.form-message--error{color:#a34265}.cake{width:210px;margin:70px auto 0}footer{padding:55px 20px 60px;text-align:center;background:#f8dce2}footer p{margin:0;color:var(--pink);font-family:Cormorant Garamond,Baskerville,Times New Roman,serif;font-size:34px;font-weight:600}footer span{display:block;margin-top:8px;color:#9e858d;font-size:11px;letter-spacing:.18em}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;padding:24px;display:grid;place-items:center;background:#523a4173}.reply-modal{width:min(100%,470px);max-height:calc(100svh - 48px);overflow:auto;padding:38px 28px 28px;border-radius:24px;text-align:center;background:var(--paper);box-shadow:0 24px 80px #5a394440}.reply-modal h2{font-size:31px}.reply-modal p{font-size:15px}.reply-modal pre{margin:18px 0;padding:15px;border:1px solid #e3c8d2;border-radius:14px;overflow-wrap:anywhere;white-space:pre-wrap;text-align:left;font-family:inherit;line-height:1.65;background:#ffffff59}.text-button{margin-top:13px;padding:8px 20px;border:0;color:#9d7f89;background:transparent}@media(max-width:600px){.section-shell{padding:82px 30px}p{font-size:15px;line-height:1.62}.hero{padding-top:22px}.hero__bow{width:345px}.hero__date{margin-top:-4px;margin-bottom:7px;font-size:28px;letter-spacing:.13em}.hero h1{gap:9px;font-size:47px}.hero__photo{width:365px;margin-top:20px}.display-copy{margin-top:20px;font-size:clamp(23px,6.4vw,27px);white-space:nowrap}.hero__intro{font-size:15px}.music-button{margin-top:27px}.intro{padding-top:80px}.section-heading h2{font-size:33px}.section-heading span{font-size:9px}.intro .angels{width:275px}.date-section{padding-top:30px}.location .section-shell,.wishes .section-shell{padding:82px 30px}.timeline__item{min-height:176px}.palette img{width:48px;height:48px}.dress-code__gallery{gap:9px}.dress-code__gallery img{border-radius:10px}.rsvp{padding-top:35px}.cake{width:185px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.reveal-ready .scroll-reveal{opacity:1!important;transform:none!important;transition:none!important}}
