@font-face{font-family:Nunito;src:url("/static/fonts/nunito-black.cde860028be8.ttf")}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:18px/1.65 'Manrope',Arial,sans-serif;-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit;color:inherit}button,a{touch-action:manipulation}button{cursor:pointer;border:1px solid var(--ink);background:var(--ink);color:var(--paper);border-radius:40px;padding:12px 23px;min-height:48px}a{color:inherit;text-underline-offset:5px}button:hover{filter:brightness(.93)}:focus-visible{outline:3px solid var(--ink);outline-offset:5px}[hidden]{display:none!important}h1,h2,h3,p{margin:0}h1,h2{font-family:Georgia,serif;font-weight:400;line-height:1.08;text-wrap:balance}h1{font-size:clamp(58px,7.6vw,110px);letter-spacing:-.055em;white-space:pre-line}h2{font-size:clamp(38px,4.4vw,64px);letter-spacing:-.035em}h3{font-size:26px}p{max-width:660px}label{font-size:17px}.toolbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:18px;padding:10px 28px;background:var(--paper);border-bottom:1px solid var(--line);font-size:16px}.toolbar strong{margin-right:auto;font-size:16px}.toolbar a{font-size:16px}.toolbar button{font-size:16px;padding:8px 18px;min-height:44px}#editor{display:none;position:fixed;top:77px;left:0;bottom:0;width:320px;overflow:auto;padding:28px 23px;background:#fffdf8;color:#252c28;border-right:1px solid #c5c5bc;z-index:15}#editor h2{font-size:31px;margin-bottom:16px}#editor p{font-size:16px;margin:12px 0}#editor label{display:block;margin:20px 0 8px}#editor input:not([type=checkbox]),#editor textarea{display:block;width:100%;border:1px solid #7b817b;background:#fff;color:#252c28;padding:11px;border-radius:8px;margin-top:5px;font-size:17px;min-height:48px}#editor textarea{min-height:110px}#editor button{margin:8px 0;color:#fff;background:#303e34;font-size:16px}#editor .check{display:flex;align-items:center;gap:10px}input[type=checkbox],input[type=radio]{width:22px;height:22px;accent-color:var(--ink);flex:none}body.editing #editor{display:block}body.editing main{margin-left:320px}.edit-only{display:none!important}body.editing .edit-only{display:inline-flex!important}body.editing [data-field]{cursor:text;outline:1px dashed var(--line);outline-offset:5px;position:relative}body.editing [data-field]:before{content:'✎';font:16px/24px Arial;position:absolute;left:-25px;top:0;color:var(--ink);background:var(--paper);border-radius:50%;width:24px;text-align:center}body.editing [data-field]:empty:after{content:attr(data-label);font:18px/1.5 Arial;opacity:.8}.mobile-settings,.mobile-close{display:none}.scene{position:relative;padding:100px max(5vw,28px);overflow:hidden}.hero{min-height:calc(100svh - 70px);display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:center;gap:15px;padding-top:90px;padding-bottom:85px}.hero-copy{position:relative;z-index:2}.eyebrow,.section-mark{font-size:16px;letter-spacing:.1em;line-height:1.5}.hero .eyebrow{margin-bottom:28px}.subtitle{font-size:22px;line-height:1.45;white-space:pre-line;margin-top:25px;max-width:420px}.date{font-size:21px;margin-top:32px}.settings{font-size:16px;padding:8px 16px;margin-top:15px}.hero-foot{position:absolute;bottom:26px;left:max(5vw,28px);font-size:16px}.art-stage{position:relative;isolation:isolate;align-self:center;min-width:0;animation:breathe 9s ease-in-out infinite}.art-stage img{position:relative;width:100%;height:auto;max-height:650px;object-fit:contain;display:block;z-index:1}.atmosphere{position:absolute;inset:15% 2%;z-index:0}.intro{display:grid;grid-template-columns:1fr 2fr;gap:50px;border-top:1px solid var(--line)}.intro h2{margin-bottom:30px}.intro .section-mark{align-self:start;padding-top:12px}.intro p{font-size:21px;line-height:1.8}.venue{background:var(--panel);display:flex;align-items:center;justify-content:center;gap:50px;text-align:center;min-height:460px}.venue-copy{max-width:650px;position:relative;z-index:1}.venue h2{margin:20px 0}.venue p{margin:auto}.venue a{display:inline-block;margin-top:22px}.venue figure{margin:0;flex:0 1 42%;min-width:0}.venue figure img{width:100%;max-height:500px;object-fit:contain;border-radius:100px 100px 12px 12px}.venue-accent{position:absolute;right:30px;bottom:18px;font:italic 30px Georgia;opacity:.8}.photo-tools{gap:8px;flex-wrap:wrap;margin-top:15px}.photo-tools button{font-size:16px}.program{display:grid;grid-template-columns:1fr 1.15fr;gap:65px}.program h2{margin-top:20px}.schedule{border-top:1px solid var(--line)}.schedule-row{display:grid;grid-template-columns:80px 1fr;gap:18px;padding:24px 0;border-bottom:1px solid var(--line);position:relative;font-size:18px}.schedule-row time{font-variant-numeric:tabular-nums;font-size:18px}.plan-text{white-space:pre-wrap;grid-column:1/-1;display:none}.invitation-details{background:var(--panel);text-align:center}.details-copy{max-width:740px;margin:auto}.details-copy h2{margin:22px 0 28px}.details-copy p{margin:auto;font-size:19px}.gallery-section h2{text-align:center;margin-bottom:45px}.gallery{display:flex;flex-wrap:wrap;justify-content:center;gap:24px}.gallery figure{margin:0;max-width:480px;flex:0 1 calc(50% - 12px)}.gallery img{display:block;width:100%;height:auto;border:10px solid var(--panel);box-shadow:0 10px 30px #0000000c}.gallery button{margin-top:16px;font-size:16px}.rsvp{text-align:center;background:var(--rsvp);color:var(--ink);isolation:isolate}.rsvp:before{content:'';position:absolute;width:320px;height:320px;border:1px solid var(--line);border-radius:50%;left:-220px;top:70px;z-index:-1}.rsvp:after{content:'';position:absolute;width:320px;height:320px;border:1px solid var(--line);border-radius:50%;right:-220px;bottom:50px;z-index:-1}.rsvp h2{margin:20px auto 32px;max-width:680px}.rsvp details{max-width:600px;margin:auto}.rsvp summary{list-style:none;display:inline-flex;background:var(--ink);color:var(--paper);padding:14px 27px;border-radius:40px;cursor:pointer;min-height:52px;font-size:18px}.rsvp summary::-webkit-details-marker{display:none}#rsvp{margin-top:30px;background:var(--paper);border:1px solid var(--line);color:var(--ink);padding:30px;text-align:start;border-radius:20px}#rsvp fieldset{border:0;margin:15px 0;padding:0}#rsvp fieldset label{display:flex;align-items:center;gap:14px;padding:14px 0;min-height:48px;font-size:18px}#rsvp textarea{display:block;width:100%;min-height:100px;margin:12px 0;border:1px solid var(--ink);border-radius:8px;background:#fffdf8;color:#252c28;padding:14px}#extra{display:block}.consent{display:flex;align-items:flex-start;gap:12px;margin:24px 0 28px}.consent input{margin-top:4px}.consent label{font-size:17px}.preview-note,#rsvp-status{font-size:16px;line-height:1.6}#rsvp-status{margin-top:20px}.closing{text-align:center;padding-bottom:50px}.closing h2{white-space:pre-line;max-width:800px;margin:auto}.closing-symbol{display:block;font:80px/1.5 Georgia;margin-bottom:24px}footer{text-align:center;padding:70px 20px 38px}footer a{font-size:14px;text-decoration:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.waiting{opacity:0;transform:translateY(24px)}.scene>div,.scene>h2,.scene>p{transition:opacity .8s,transform .8s}.scene>div:nth-child(2){transition-delay:.12s}@keyframes breathe{50%{transform:translateY(-9px) rotate(.4deg)}}
@media(min-width:761px) and (max-width:1200px){body.editing .hero{grid-template-columns:1fr}.editing .hero-copy{max-width:600px}.editing .art-stage{max-width:440px;margin:auto}.editing .intro,.editing .program{grid-template-columns:1fr;gap:28px}.editing h1{font-size:72px}}
@media(max-width:760px){.toolbar{padding:9px 12px;gap:10px;min-height:64px}.toolbar strong{display:none}.toolbar a{margin-right:auto}.toolbar button{font-size:16px;padding:8px 14px}.mobile-settings{display:none}.editing .mobile-settings{display:block}.mobile-close{display:block}body.editing #editor{display:none}body.editing #editor.open{display:block;width:100%;top:64px}body.editing main{margin-left:0}.scene{padding:65px 25px}.hero{grid-template-columns:1fr;text-align:center;gap:0;min-height:auto;padding-top:46px;padding-bottom:60px}.hero-copy{z-index:2}.hero .eyebrow{margin-bottom:20px}h1{font-size:clamp(54px,14vw,82px);letter-spacing:-.045em}h2{font-size:40px}.subtitle{font-size:20px;max-width:360px;margin:22px auto 0}.date{font-size:20px;margin-top:24px}.art-stage{width:min(100%,410px);margin:5px auto -5px}.art-stage img{max-height:390px}.hero-foot{left:25px;right:25px;bottom:20px;font-size:16px}.intro,.program{grid-template-columns:1fr;gap:26px}.intro p{font-size:18px}.intro h2{margin-bottom:23px}.venue{flex-direction:column;gap:30px;padding-bottom:80px}.venue figure{flex:auto;width:100%}.venue-accent{font-size:25px;bottom:20px;right:25px}.details-copy p{font-size:18px}.gallery{gap:26px}.gallery figure{flex-basis:100%}.rsvp h2{font-size:40px}#rsvp{padding:22px 18px}.closing{padding-top:58px}.closing h2{font-size:42px}.closing-symbol{font-size:64px}.schedule-row{grid-template-columns:64px 1fr;gap:14px}.toolbar+aside+main .edit-only{max-width:100%}.editing [data-field]:before{left:-20px;width:20px}.photo-tools{justify-content:center}footer{padding-top:65px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.waiting{opacity:1;transform:none}}
#music-toggle{position:absolute;top:22px;right:max(3vw,24px);z-index:4;font-size:16px;min-height:44px;padding:8px 18px;background:transparent;color:var(--ink);border-color:var(--line)}
@media(max-width:760px){#music-toggle{top:16px;right:20px;font-size:16px;padding:7px 14px}.hero{padding-top:88px}}
.schedule-time-hint{display:block;font:16px/1.5 Arial;margin-top:8px;color:inherit}
