:root{--paper-top:#fdfbf7;--paper-bot:#f5efe4;--ink:#574335;--ink-soft:#8a7a6b}*{margin:0;padding:0;box-sizing:border-box}body,html{height:100%}body{min-height:100%;background:linear-gradient(180deg,var(--paper-top) 0,#faf6ee 55%,var(--paper-bot) 100%);background-attachment:fixed;background-repeat:no-repeat;color:var(--ink);font-family:Cormorant Garamond,Georgia,serif;display:flex;align-items:center;align-items:safe center;justify-content:center;padding:48px 24px;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.card{width:100%;max-width:620px;text-align:center}.names{font-family:Cormorant Garamond,serif;font-weight:500;text-transform:uppercase;letter-spacing:.14em;font-size:clamp(40px,12vw,82px);line-height:1;color:var(--ink);padding-left:.14em}.names .amp{font-family:Playfair Display,serif;font-weight:400;font-style:italic;text-transform:none;letter-spacing:0;margin:0 .08em}.sub{text-transform:uppercase;letter-spacing:.34em;font-size:clamp(15px,4vw,20px);color:var(--ink-soft);font-weight:500;margin-top:16px;padding-left:.34em}.countdown{margin:34px auto 22px}.num{font-family:Playfair Display,serif;font-size:clamp(88px,26vw,156px);font-weight:500;line-height:1;color:var(--ink);font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.label{margin-top:18px;letter-spacing:.32em;font-size:clamp(13px,3.4vw,16px);color:var(--ink-soft);padding-left:.32em}.date,.label{text-transform:uppercase}.date{margin-top:8px;letter-spacing:.3em;font-size:clamp(19px,5vw,27px);color:var(--ink);font-weight:500;padding-left:.3em}.date sup{font-size:.55em;top:-.75em;letter-spacing:0}.coming{margin-top:26px;letter-spacing:.14em;font-size:clamp(14px,3.6vw,18px)}.coming,.married{font-style:italic;color:var(--ink-soft)}.married{margin-top:12px;font-family:Playfair Display,serif;font-size:clamp(30px,8vw,46px)}.gate{margin-top:48px;display:inline-flex;flex-direction:column;align-items:center;gap:11px;padding:18px 26px 20px;border:1px solid rgba(87,67,53,.22);border-radius:3px}.gate-label{text-transform:uppercase;letter-spacing:.28em;font-size:clamp(11px,2.8vw,13px);color:var(--ink-soft);padding-left:.28em}.gate-input{width:min(220px,66vw);background:transparent;border:none;border-bottom:1px solid var(--ink-soft);color:var(--ink);font-family:inherit;font-size:18px;text-align:center;letter-spacing:.2em;padding:6px 4px 7px;outline:none;transition:border-color .2s ease}.gate-input:focus{border-bottom-color:var(--ink)}.text-link{color:var(--ink);text-decoration:none;border-bottom:1px solid var(--ink-soft);padding-bottom:1px;transition:border-color .2s ease}.text-link:hover{border-bottom-color:var(--ink)}.site{max-width:840px;margin:0 auto;min-height:calc(100dvh - 96px);flex-direction:column}.nav,.site{width:100%;display:flex}.nav{align-items:center;justify-content:space-between;gap:16px;padding-bottom:20px;border-bottom:1px solid rgba(87,67,53,.16)}.nav-brand{font-family:Cormorant Garamond,serif;text-transform:uppercase;letter-spacing:.14em;font-size:21px;font-weight:500;color:var(--ink);text-decoration:none;white-space:nowrap}.nav-links{display:flex;align-items:center;gap:24px}.nav-link{text-transform:uppercase;letter-spacing:.16em;font-size:12.5px;color:var(--ink-soft);text-decoration:none;padding-bottom:3px;border-bottom:1px solid transparent;white-space:nowrap;transition:color .2s ease,border-color .2s ease}.nav-link:hover{color:var(--ink)}.nav-link.is-active{color:var(--ink);border-bottom-color:var(--ink)}.nav-admin{color:#9a6b4a}.nav-exit{opacity:.65}.nav-toggle{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:6px}.nav-toggle span{display:block;width:24px;height:1.5px;background:var(--ink)}.site-main{width:100%;flex:1 1;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;text-align:center;padding:40px 0}.page{width:100%;max-width:560px}.home-video{width:100%;max-width:480px;height:auto;display:block;margin:0 auto 30px;border-radius:6px}.page-eyebrow{text-transform:uppercase;letter-spacing:.32em;font-size:clamp(11px,2.8vw,13px);color:var(--ink-soft);margin-bottom:16px;padding-left:.32em}.page-title{font-family:Cormorant Garamond,serif;letter-spacing:.12em;font-size:clamp(36px,10vw,62px);line-height:1;color:var(--ink);padding-left:.12em}.page-date,.page-title{text-transform:uppercase}.page-date{margin-top:16px;letter-spacing:.24em;font-size:clamp(13px,3.2vw,15px);color:var(--ink-soft);padding-left:.24em}.page-note{margin:24px auto 0;font-style:italic;letter-spacing:.04em;font-size:clamp(16px,4vw,20px);line-height:1.55;color:var(--ink-soft);max-width:520px}@media (max-width:680px){.nav{flex-wrap:wrap}.nav-toggle{display:flex}.nav-links{display:none;order:3;width:100%;flex-direction:column;gap:0;margin-top:14px}.nav-links.is-open{display:flex}.nav-link{width:100%;text-align:center;padding:15px 0;border-bottom:1px solid rgba(87,67,53,.1);font-size:14px}.nav-link.is-active{border-bottom-color:rgba(87,67,53,.1)}}.btn{display:inline-block;font-family:Cormorant Garamond,serif;text-transform:uppercase;letter-spacing:.2em;font-size:14px;color:#fbf7f0;background:var(--ink);border:1px solid var(--ink);padding:12px 26px;border-radius:2px;cursor:pointer;text-decoration:none;transition:opacity .2s ease}.btn:hover{opacity:.88}.btn:disabled{opacity:.4;cursor:default}.btn-small{padding:8px 16px;font-size:12px;letter-spacing:.16em}.btn-ghost{background:transparent;color:var(--ink)}.rsvp-lead{margin-top:18px;font-style:italic;font-size:clamp(16px,4vw,20px);color:var(--ink-soft)}.rsvp-deadline{margin-top:6px;font-weight:700;text-transform:uppercase;letter-spacing:.14em;font-size:clamp(18px,5vw,24px);color:var(--ink)}.rsvp-sub{margin-top:26px;font-size:clamp(16px,4vw,19px);color:var(--ink)}.rsvp-hint-note{margin:10px auto 0;font-size:clamp(13px,3.2vw,15px);color:var(--ink-soft)}.rsvp-callout,.rsvp-hint-note{font-style:italic;max-width:460px;line-height:1.5}.rsvp-callout{margin:20px auto 0;border:1px solid rgba(87,67,53,.25);border-radius:3px;padding:14px 18px;font-size:clamp(14px,3.4vw,16px);color:var(--ink)}.rsvp-form{margin-top:22px;display:flex;flex-direction:column;align-items:center;gap:16px}.rsvp-others{margin-top:30px}.rsvp-expand{font-family:inherit;text-transform:uppercase;letter-spacing:.16em;font-size:13px;color:var(--ink);background:transparent;border:1px solid rgba(87,67,53,.3);border-radius:2px;padding:11px 20px;cursor:pointer}.rsvp-expand:hover{border-color:var(--ink)}.rsvp-others-list{margin-top:6px}.rsvp-input{width:min(320px,80vw);text-align:center}.rsvp-matches{list-style:none;margin:22px auto 0;display:flex;flex-direction:column;gap:10px;max-width:420px}.rsvp-matches li{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid rgba(87,67,53,.2);border-radius:3px;padding:12px 16px}.rsvp-matches li span{font-size:19px}.rsvp-none{margin-top:20px;font-style:italic;color:var(--ink-soft)}.rsvp-person{margin:26px auto 0;max-width:460px;border-top:1px solid rgba(87,67,53,.16);padding-top:20px}.rsvp-person:first-of-type{border-top:none}.rsvp-person-name{font-family:Cormorant Garamond,serif;text-transform:uppercase;letter-spacing:.1em;font-size:22px;color:var(--ink);margin-bottom:12px}.rsvp-event-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:8px 0}.rsvp-event-label{display:inline-flex;align-items:center;gap:9px;font-size:17px;color:var(--ink-soft)}.rsvp-event-logo{width:26px;height:26px;object-fit:contain}.rsvp-choice{display:flex;gap:8px}.choice{font-family:inherit;text-transform:uppercase;letter-spacing:.12em;font-size:13px;padding:7px 16px;border:1px solid var(--ink-soft);background:transparent;color:var(--ink-soft);border-radius:2px;cursor:pointer;transition:all .15s ease}.choice.is-yes{background:var(--ink);color:#fbf7f0;border-color:var(--ink)}.choice.is-no{background:#8a5a4a;color:#fbf7f0;border-color:#8a5a4a}.rsvp-respond .btn{margin-top:28px}.diet-options{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.diet-detail{width:min(320px,82vw);text-align:center;margin-top:14px}.thankyou-name{margin-top:6px}.thankyou-lead{margin-top:20px;font-family:Cormorant Garamond,serif;font-style:italic;font-size:clamp(22px,5.5vw,30px);line-height:1.35;color:var(--ink)}.rsvp-error{color:#a15b4b;margin-top:14px;font-style:italic}.admin-page{width:100%}.admin-heading{text-align:center;margin-bottom:6px}.admin{width:100%;text-align:left;margin-top:18px}.admin-tabs{display:flex;gap:6px;border-bottom:1px solid rgba(87,67,53,.16);margin-bottom:20px}.admin-tab{font-family:inherit;text-transform:uppercase;letter-spacing:.16em;font-size:13px;padding:10px 16px;background:none;border:none;border-bottom:2px solid transparent;color:var(--ink-soft);cursor:pointer}.admin-tab.is-active{color:var(--ink);border-bottom-color:var(--ink)}.admin-add{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:18px}.admin-add input,.admin-filters select{font-family:inherit;font-size:16px;padding:9px 12px;border:1px solid rgba(87,67,53,.3);border-radius:2px;background:#fff;color:var(--ink)}.admin-add input[type=number]{width:110px}.admin-filters{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:16px}.admin-filter-label{text-transform:uppercase;letter-spacing:.16em;font-size:12px;color:var(--ink-soft)}.admin-filters select{font-size:14px;padding:8px 10px}.admin-count{margin:4px 0 14px;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:19px;font-weight:600;letter-spacing:0;text-transform:none;color:var(--ink)}.admin-table-wrap{width:100%;overflow-x:auto}.admin-table{width:100%;border-collapse:collapse;font-size:15px}.admin-table th{text-align:left;text-transform:uppercase;letter-spacing:.1em;font-size:12px;color:var(--ink-soft);font-weight:500;padding:8px 10px;border-bottom:1px solid rgba(87,67,53,.2);white-space:nowrap}.admin-table th.th-resp{text-align:center}.admin-table td{padding:6px 10px;border-bottom:1px solid rgba(87,67,53,.1)}.cell-input{font-family:inherit;font-size:15px;padding:6px 8px;border:1px solid transparent;border-radius:2px;background:transparent;color:var(--ink);width:100%;min-width:150px}.cell-input:focus,.cell-input:hover{border-color:rgba(87,67,53,.25);background:#fff;outline:none}.cell-num{min-width:64px;width:64px;text-align:center}.cell-text{display:inline-block;padding:6px 8px;font-size:15px;color:var(--ink)}.cell-num-text{min-width:64px;text-align:center}.is-editing{background:rgba(87,67,53,.05)}.cell-resp{text-align:center}.resp{font-size:15px;width:34px;height:34px;border-radius:50%;border:1px solid rgba(87,67,53,.25);background:transparent;cursor:pointer;color:var(--ink-soft)}.resp-yes{background:#e2ede0;color:#5f8256;border-color:#bcd0b4}.resp-no{background:#f3e1de;color:#b06054;border-color:#e3c4bf}.resp:disabled{cursor:default}.invite-tick{width:26px;height:26px;border:1px solid rgba(87,67,53,.35);border-radius:4px;background:transparent;color:transparent;cursor:pointer;font-size:14px;line-height:1;transition:all .15s ease}.invite-tick:hover{border-color:var(--ink-soft)}.invite-tick.is-on{background:#e2ede0;border-color:#bcd0b4;color:#5f8256}.cell-actions{white-space:nowrap;text-align:right}.row-edit{background:none;border:none;color:var(--ink-soft);font-size:16px;cursor:pointer;opacity:.6;margin-right:10px;line-height:1}.row-edit:hover{opacity:1;color:var(--ink)}.row-edit.is-on{opacity:1;color:#5f8256}.row-ack{background:none;border:1px solid rgba(87,67,53,.3);border-radius:50%;width:26px;height:26px;color:var(--ink-soft);font-size:13px;cursor:pointer;opacity:.7;margin-right:10px;line-height:1}.row-ack.is-on,.row-ack:hover{opacity:1;color:#5f8256;border-color:#bcd0b4}.row-ack.is-on{background:#e2ede0}.is-ack td{opacity:.5}.is-ack .cell-actions{opacity:1}.row-del{background:none;border:none;color:var(--ink-soft);font-size:18px;cursor:pointer;opacity:.6;line-height:1}.row-del:hover{opacity:1;color:#8a5a4a}.cell-time{white-space:nowrap;font-size:13px;color:var(--ink-soft)}.cell-diet{font-size:14px;color:var(--ink);min-width:120px}.admin-empty{margin-top:20px;font-style:italic;color:var(--ink-soft)}.dash{width:100%;text-align:center;padding:10px 0 20px}.dash-eyebrow{text-transform:uppercase;letter-spacing:.26em;font-size:clamp(11px,2.8vw,13px);color:var(--ink-soft);padding-left:.26em}.dash-hero{margin-bottom:44px}.dash-hero-num{font-family:Playfair Display,serif;font-weight:500;font-size:clamp(84px,22vw,150px);line-height:1;color:var(--ink);margin-top:8px}.dash-note{margin-top:10px;font-style:italic;letter-spacing:.04em;font-size:clamp(14px,3.6vw,17px);color:var(--ink-soft)}.dash-pair{display:flex;gap:24px;justify-content:center;flex-wrap:wrap}.dash-card{flex:1 1 200px;max-width:300px;border:1px solid rgba(87,67,53,.16);border-radius:4px;padding:26px 18px}.dash-num{font-family:Playfair Display,serif;font-weight:500;font-size:clamp(56px,15vw,92px);line-height:1;color:var(--ink);margin-top:8px}.faq-list{width:100%;text-align:left;margin-top:26px}.faq-item{border-bottom:1px solid rgba(87,67,53,.16)}.faq-q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;background:none;border:none;text-align:left;padding:16px 2px;cursor:pointer;font-family:Cormorant Garamond,serif;font-size:clamp(17px,4.4vw,20px);color:var(--ink)}.faq-chevron{flex-shrink:0;font-size:24px;line-height:1}.faq-a,.faq-chevron{color:var(--ink-soft)}.faq-a{padding:0 2px 18px;font-style:italic;font-size:clamp(15px,3.8vw,17px);line-height:1.6;white-space:pre-wrap}.faq-link{color:var(--ink);text-decoration:none;border-bottom:1px solid var(--ink-soft)}.faq-link:hover{border-bottom-color:var(--ink)}.afaq{width:100%;text-align:left}.afaq-tip{font-size:13px;font-style:italic;color:var(--ink-soft);margin:4px 0 18px;line-height:1.5}.afaq-tip code{font-family:ui-monospace,monospace;font-style:normal;background:rgba(87,67,53,.07);padding:1px 5px;border-radius:3px}.afaq-card{border:1px solid rgba(87,67,53,.18);border-radius:4px;padding:14px;margin-bottom:14px}.afaq-head{display:flex;align-items:center;gap:10px}.afaq-arrows{display:flex;flex-direction:column;gap:3px}.afaq-arrow{width:24px;height:20px;border:1px solid rgba(87,67,53,.25);background:transparent;border-radius:3px;cursor:pointer;color:var(--ink-soft);font-size:11px;line-height:1}.afaq-arrow:disabled{opacity:.3;cursor:default}.afaq-question{flex:1 1;min-width:0;font-size:16px;font-weight:500;padding:8px 10px}.afaq-answer,.afaq-question{font-family:inherit;border:1px solid rgba(87,67,53,.25);border-radius:3px;background:#fff;color:var(--ink)}.afaq-answer{width:100%;margin-top:10px;font-size:15px;line-height:1.5;padding:10px;resize:vertical}.afaq-linkbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px}.afaq-linklabel{font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:var(--ink-soft)}.afaq-linkbar select,.afaq-linktext,.afaq-linkurl{font-family:inherit;font-size:14px;padding:6px 8px;border:1px solid rgba(87,67,53,.25);border-radius:3px;background:#fff;color:var(--ink)}.rtf,.rtf-area{width:100%}.rtf-area{font-family:inherit;font-size:15px;line-height:1.5;padding:10px;border:1px solid rgba(87,67,53,.25);border-radius:3px;background:#fff;color:var(--ink);resize:vertical}.sched-page{max-width:680px}.sched-tabs{display:flex;justify-content:center;flex-wrap:wrap;gap:4px;border-bottom:1px solid rgba(87,67,53,.16);margin-bottom:26px}.sched-tab{font-family:inherit;text-transform:uppercase;letter-spacing:.14em;font-size:12.5px;padding:10px 14px;background:none;border:none;border-bottom:2px solid transparent;color:var(--ink-soft);cursor:pointer}.sched-tab.is-active{color:var(--ink);border-bottom-color:var(--ink)}.sched-head{text-align:center}.sched-logo-wrap{margin-bottom:8px}.sched-logo{width:clamp(64px,18vw,96px);height:auto;display:inline-block}.sched-title{font-size:clamp(30px,8vw,52px)}.sched-meta{text-transform:uppercase;letter-spacing:.2em;font-size:clamp(13px,3.2vw,15px);color:var(--ink-soft);margin-top:12px}.sched-directions{margin-top:16px}.sched-details{margin:22px auto 0;max-width:520px;font-style:italic;font-size:clamp(15px,3.8vw,18px);line-height:1.6;color:var(--ink-soft);white-space:pre-wrap;text-align:center}.dress{margin-top:32px;text-align:center}.dress-label{text-transform:uppercase;letter-spacing:.28em;font-size:13px;color:var(--ink-soft);margin-bottom:14px}.dress-item{margin:0 auto;max-width:340px}.dress-frame{margin:0 auto;border:1px solid rgba(87,67,53,.2);border-radius:4px;overflow:hidden}.dress-frame img{display:block;width:100%;height:auto}.dress-placeholder{aspect-ratio:3/4;align-items:center;color:var(--ink-soft);font-style:italic;background:rgba(87,67,53,.04)}.dress-pair,.dress-placeholder{display:flex;justify-content:center}.dress-pair{gap:20px;flex-wrap:wrap}.dress-pair .dress-item{flex:1 1 240px;max-width:300px}.dress-caption{margin-top:10px;text-transform:uppercase;letter-spacing:.2em;font-size:12px;color:var(--ink-soft)}.timeline{position:relative;max-width:640px;margin:30px auto 0}.timeline:before{content:"";position:absolute;left:50%;top:6px;bottom:6px;width:1px;background:rgba(87,67,53,.28);transform:translateX(-50%)}.tl-item{position:relative;width:50%;padding:14px 30px;box-sizing:border-box}.tl-left{left:0;text-align:right}.tl-right{left:50%;text-align:left}.tl-dot{position:absolute;top:20px;width:9px;height:9px;border-radius:50%;background:var(--ink)}.tl-left .tl-dot{right:-4.5px}.tl-right .tl-dot{left:-4.5px}.tl-time{font-family:Playfair Display,serif;font-size:clamp(18px,4.6vw,22px);color:var(--ink)}.tl-title{text-transform:uppercase;letter-spacing:.12em;font-size:13px;color:var(--ink);margin-top:3px}.tl-detail{font-style:italic;font-size:14px;color:var(--ink-soft);margin-top:4px}@media (max-width:600px){.tl-item{padding:14px 12px}.tl-time{font-size:18px}.tl-title{font-size:12px}}.asched{width:100%;text-align:left}.asched-card{border:1px solid rgba(87,67,53,.18);border-radius:4px;padding:16px;margin-bottom:16px}.asched-kind{text-transform:uppercase;letter-spacing:.14em;font-size:12px;color:var(--ink-soft);margin-bottom:12px}.asched-field{display:block;margin-bottom:12px}.asched-field>span{display:block;text-transform:uppercase;letter-spacing:.1em;font-size:11px;color:var(--ink-soft);margin-bottom:5px}.asched-field input,.asched-field textarea{width:100%;font-family:inherit;font-size:15px;padding:8px 10px;border:1px solid rgba(87,67,53,.25);border-radius:3px;background:#fff;color:var(--ink)}.asched-field textarea{resize:vertical;line-height:1.5}.asched-row{display:flex;gap:12px;flex-wrap:wrap}.asched-row .asched-field{flex:1 1;min-width:140px}.asched-steps{margin-top:8px;border-top:1px solid rgba(87,67,53,.14);padding-top:14px}.asched-steps-label{text-transform:uppercase;letter-spacing:.14em;font-size:12px;color:var(--ink-soft);margin-bottom:10px}.asched-step{display:flex;align-items:flex-start;gap:8px;margin-bottom:10px}.asched-step-time{width:90px;flex-shrink:0;font-family:inherit;font-size:14px;padding:7px 8px;border:1px solid rgba(87,67,53,.25);border-radius:3px;background:#fff;color:var(--ink)}.asched-step-main{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:6px}.asched-step-main input{font-family:inherit;font-size:14px;padding:7px 8px;border:1px solid rgba(87,67,53,.25);border-radius:3px;background:#fff;color:var(--ink)}.travel-page{max-width:660px}.travel-tabs{margin-bottom:26px}.travel-list{width:100%;margin-top:22px}.travel-item{position:relative;display:flex;align-items:center;gap:24px;padding:28px 6px}.travel-item.rev{flex-direction:row-reverse}.travel-item:not(:first-child):before{content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);width:64px;height:1px;background:rgba(87,67,53,.3)}.travel-logo{width:clamp(64px,20vw,104px);height:auto;flex-shrink:0}.travel-content{flex:1 1;min-width:0;text-align:center}.travel-title{font-family:Cormorant Garamond,serif;text-transform:uppercase;letter-spacing:.1em;font-size:clamp(16px,4.2vw,21px);color:var(--ink);margin-bottom:8px}.travel-text{font-style:italic;font-size:clamp(14px,3.6vw,16px);line-height:1.55;color:var(--ink-soft);white-space:pre-wrap}.atravel-shows{display:flex;align-items:center;gap:8px;margin:10px 0}.atravel-shows select{font-family:inherit;font-size:14px;padding:6px 8px;border:1px solid rgba(87,67,53,.25);border-radius:3px;background:#fff;color:var(--ink)}