:root{--text:#68745e;--text-h:#4f5c47;--bg:#fff;--border:#a297764d;--code-bg:#f2ece3;--accent:#7d806f;--accent-bg:#7d806f1a;--accent-border:#7d806f59;--social-bg:#f2ece28c;--shadow:#604a2c1a 0 10px 15px -3px, #604a2c0d 0 4px 6px -2px;--sans:"Cormorant Garamond", Georgia, serif;--heading:"Cormorant Garamond", Georgia, serif;--script:"Snell Roundhand", "Apple Chancery", "Brush Script MT", cursive;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html{scroll-behavior:auto;overflow:hidden}#root{box-sizing:border-box;min-height:100svh}*,:before,:after{box-sizing:border-box}body{background:var(--bg);min-width:320px;height:100vh;min-height:100vh;color:var(--text);margin:0;overflow:hidden}a,button,input,textarea,select{font:inherit}:root{--fs:clamp(.88rem, .85vw + .5vh, 1.18rem)}.wedding-page{background:#fff;flex-direction:column;width:100%;height:100svh;display:flex;position:relative;overflow:hidden}.floral{opacity:.88;pointer-events:none;object-fit:contain;z-index:0;width:clamp(220px,24vw,480px);height:auto;position:absolute}.floral-top-left{top:0;left:0;transform:translate(-16px,-16px)}.floral-bottom-right{bottom:0;right:0;transform:translate(16px,16px)}.site-header{z-index:10;flex-shrink:0;justify-content:flex-end;padding:clamp(12px,1.8vw,22px) clamp(16px,3vw,34px) 0;display:flex;position:relative}.site-nav{background:#ffffffeb;border:1px solid #a9a08273;border-radius:999px;align-items:center;gap:clamp(12px,1.8vw,26px);padding:10px 16px;display:inline-flex;box-shadow:0 8px 26px #b0917a1f}.site-nav a{color:#5f6d54;text-transform:uppercase;letter-spacing:.16em;font-size:.76rem;text-decoration:none}.site-nav a:hover{color:#46543f}.site-nav a.active{color:#41503a;text-underline-offset:4px;text-decoration:underline;text-decoration-thickness:1px}.scenes-wrap{z-index:1;flex:1;position:relative;overflow:hidden}.scene{will-change:transform;justify-content:center;align-items:center;padding:clamp(16px,2.5vw,40px) clamp(20px,5vw,80px) calc(clamp(16px,2.5vw,40px) + clamp(40px,9vh,110px));transition:transform .75s cubic-bezier(.16,1,.3,1),opacity .45s;display:flex;position:absolute;inset:0}.scene[data-state=active]{opacity:1;pointer-events:auto;transform:translateY(0)}.scene[data-state=above]{opacity:0;pointer-events:none;transform:translateY(-100%)}.scene[data-state=below]{opacity:0;pointer-events:none;transform:translateY(100%)}.scene-inner{text-align:center;align-content:center;justify-items:center;gap:clamp(36px,5vw,72px);width:min(820px,100%);display:grid}.scene-dots{z-index:10;background:0 0;border:none;flex-direction:column;gap:10px;margin:0;padding:0;display:flex;position:absolute;top:50%;right:clamp(14px,2vw,28px);transform:translateY(-50%)}.scene-dots button{cursor:pointer;background:0 0;border:1.5px solid #5f6d548c;border-radius:50%;width:7px;height:7px;padding:0;transition:background .25s,border-color .25s,transform .25s}.scene-dots button.active{background:#627158;border-color:#627158;transform:scale(1.35)}.eyebrow{font-family:Georgia,Times New Roman,serif;font-style:italic;font-size:calc(var(--fs) * .85);color:#6f7866;letter-spacing:.03em;margin:0 0 12px}.card-label{text-transform:uppercase;letter-spacing:.2em;font-family:Georgia,Times New Roman,serif;font-size:calc(var(--fs) * .62);color:#6f7866;margin:0 0 6px}.hero-scene{gap:clamp(32px,5vw,72px)}.countdown-panel{justify-self:center;width:min(680px,100%)}.detail-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(10px,1.6vw,20px);display:grid}.detail-grid div{text-align:center;gap:2px;display:grid}.detail-grid span{font-family:var(--heading);font-size:calc(var(--fs) * 1.75);letter-spacing:.07em;color:#627158}.detail-grid small{font-size:calc(var(--fs) * .5);text-transform:uppercase;letter-spacing:.14em;color:#6f7866}.hero-panel{text-align:center}.hero-panel h1{color:var(--text-h);font-family:var(--heading);font-weight:500;font-size:clamp(calc(var(--fs) * 3.2), 10vw, calc(var(--fs) * 5.6));letter-spacing:.02em;text-wrap:balance;margin:0;line-height:.9}.wedding-date{color:#5f6d54;font-family:var(--heading);font-size:calc(var(--fs) * 1.35);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;margin:18px 0 0}.date-short{display:none}.lede{max-width:44ch;font-family:Georgia,Times New Roman,serif;font-size:calc(var(--fs) * .9);color:#667055;letter-spacing:.03em;text-wrap:balance;margin:16px auto 0;font-style:italic}.lede-link{color:inherit;text-underline-offset:3px;-webkit-text-decoration:underline #0000;text-decoration:underline #0000;transition:text-decoration-color .2s}.lede-link:hover{text-decoration-color:currentColor}.details-scene{gap:clamp(10px,2vw,28px)}.details-scene h2{color:var(--text-h);font-family:var(--heading);font-weight:500;font-size:calc(var(--fs) * 1.9);text-wrap:balance;margin:6px 0 0;line-height:1}.details-rows{border-top:1px solid var(--border)}.detail-row{border-bottom:1px solid var(--border);text-align:left;grid-template-columns:minmax(90px,1fr) 3fr;gap:12px;padding:clamp(14px,2vw,24px) 0;display:grid}.detail-row span{color:#6f7866;font-family:Georgia,Times New Roman,serif;font-style:italic;font-size:calc(var(--fs) * .82);padding-top:2px}.detail-row strong{font-family:var(--heading);font-weight:500;font-size:calc(var(--fs) * .92);color:#627158}.content-scene{gap:clamp(8px,1.5vw,18px)}.content-scene>div:first-child{margin-bottom:clamp(8px,2vw,20px)}.content-scene h2{color:var(--text-h);font-family:var(--heading);font-weight:500;font-size:calc(var(--fs) * 1.9);text-wrap:balance;margin:0;line-height:1.05}.content-scene p{color:#667055;max-width:54ch;font-family:Georgia,Times New Roman,serif;font-size:calc(var(--fs) * .88);overflow-wrap:anywhere;letter-spacing:.02em;margin:0 auto;line-height:1.65}.content-scene a{color:inherit}.rsvp-form{text-align:left;-webkit-backdrop-filter:blur(8px);background:#ffffffd1;border-radius:14px;gap:14px;width:min(420px,100%);margin:0 auto;padding:24px 28px;display:grid;box-shadow:0 2px 32px #b0917a1a}.rsvp-field{gap:5px;display:grid}.rsvp-field label{font-family:Georgia,Times New Roman,serif;font-style:italic;font-size:calc(var(--fs) * .78);color:#6f7866}.rsvp-field .optional{opacity:.65;font-style:normal}.rsvp-field input,.rsvp-field textarea{border:1px solid var(--border);width:100%;font-family:var(--heading);font-size:calc(var(--fs) * .85);color:var(--text-h);resize:vertical;background:#ffffffd9;border-radius:6px;outline:none;padding:8px 12px;transition:border-color .2s}.rsvp-field input:focus,.rsvp-field textarea:focus{border-color:#62715899}.rsvp-attend{border:none;flex-wrap:wrap;gap:10px;margin:0;padding:0;display:flex}.rsvp-attend legend{font-family:Georgia,Times New Roman,serif;font-style:italic;font-size:calc(var(--fs) * .78);color:#6f7866;flex-basis:100%;margin-bottom:-2px}.rsvp-pill{border:1px solid var(--border);font-family:var(--heading);font-size:calc(var(--fs) * .82);color:#6f7866;cursor:pointer;white-space:nowrap;background:#ffffffd9;border-radius:6px;flex:1;justify-content:center;align-items:center;gap:7px;padding:8px 12px;transition:border-color .2s,background .2s,color .2s;display:flex}.rsvp-pill input[type=radio]{display:none}.rsvp-pill.selected{color:#41503a;background:#6271581a;border-color:#627158}.rsvp-submit{color:#fff;font-family:var(--heading);font-size:calc(var(--fs) * .82);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;background:#627158;border:1px solid #627158;border-radius:999px;align-self:start;padding:10px 28px;transition:background .2s,border-color .2s,opacity .2s}.rsvp-submit:disabled{opacity:.45;cursor:default}.rsvp-submit:not(:disabled):hover{background:#41503a;border-color:#41503a}.rsvp-alt{font-size:calc(var(--fs) * .72);color:#8a9480;margin:0;font-style:italic}.rsvp-error{font-size:calc(var(--fs) * .78);color:#8b4a4a;margin:0}.rsvp-confirmation{font-family:Georgia,Times New Roman,serif;font-style:italic;font-size:calc(var(--fs) * 1.05);color:#627158;text-align:center;max-width:36ch;line-height:1.7}.gift-list{border-top:1px solid var(--border);text-align:left;gap:0;width:min(440px,100%);margin:0;padding:0;list-style:none;display:grid}.gift-list li{border-bottom:1px solid var(--border);justify-content:space-between;align-items:baseline;gap:12px;padding:10px 0;display:flex}.gift-list strong{font-family:var(--heading);font-weight:500;font-size:calc(var(--fs) * .9);color:#627158;white-space:nowrap}.gift-list span{font-family:Georgia,Times New Roman,serif;font-style:italic;font-size:calc(var(--fs) * .75);color:#8a9480;text-align:right}@media (width<=820px){.floral{opacity:.84;width:clamp(230px,52vw,460px)}.floral-top-left{transform:translate(-14px,-14px)}.floral-bottom-right{transform:translate(14px,14px)}.detail-row{text-align:center;grid-template-columns:1fr;gap:4px}}@media (width<=620px){.date-long{display:none}.date-short{display:inline}}@media (width<=520px){.site-header{padding:10px 12px 0}.site-nav{gap:10px;padding:8px 10px}.site-nav a{letter-spacing:.13em;font-size:.68rem}.scene{padding:10px 22px calc(10px + clamp(40px,9vh,110px))}.detail-grid{gap:6px}.floral{opacity:.86;width:clamp(220px,66vw,360px)}.floral-top-left{transform:translate(-10px,-10px)}.floral-bottom-right{transform:translate(10px,10px)}.scene-dots{right:8px}}@media (height<=700px){.site-header{padding-top:8px}.scene{padding:8px 24px calc(8px + clamp(40px,9vh,110px))}.scene-inner{gap:16px}.hero-scene{gap:14px}.wedding-date{margin-top:8px}.lede{margin-top:6px}.eyebrow{margin-bottom:6px}.detail-row{padding:10px 0}}
