.section-link-inline{cursor:pointer;color:#c9a66b;font:inherit;background:0 0;border:none;margin:0;padding:0;font-weight:400;text-decoration:none}.section-link-inline:before{content:"#";margin-right:.15em}.section-link-inline:hover{opacity:.7}
.time-inline{color:#c9a66b;font-weight:400}.time-display{white-space:nowrap;display:inline-block;position:relative}.time-display[data-time-type]{color:#c9a66b;cursor:help;background-color:#c9a66b35;border-radius:3px;padding:.06rem .4rem;transition:filter .12s,box-shadow .12s,transform 80ms}.time-display[data-time-type]:hover,.time-display[data-time-type]:focus-visible{filter:brightness(.95);transform:translateY(-1px);box-shadow:0 6px 18px #14121014}.time-tooltip{color:#f6f1e7;white-space:normal;pointer-events:none;background:#3a3530;border-radius:4px;max-width:min(80vw,22rem);padding:5px 10px;font-size:.7rem;box-shadow:0 6px 18px #00000040}
.transportation-info{color:#3a3530;font-size:.9rem;line-height:1.65}.transportation-info p{margin:0 0 .75rem}.transportation-info a{color:#c9a66b;text-underline-offset:2px;text-decoration:underline}.transportation-info a:hover{opacity:.7}.transportation-info a[href^=\#]{color:#c9a66b;font-weight:400;text-decoration:none}.transportation-info a[href^=\#]:before{content:"#";margin-right:.15em}.transportation-info ul{margin:.25rem 0 .75rem;padding-left:1.25rem}.transportation-info li{margin-bottom:.2rem}.route-label{color:#8a7f74;font-size:.75rem;margin:0 0 .25rem!important}.next-day{color:#8a7f74;vertical-align:baseline;margin-left:.35rem;font-size:.8em;font-weight:700}
.accommodation-info{color:#3a3530;font-size:.9rem;line-height:1.65}.accommodation-info p{margin:0 0 .75rem}.accommodation-info a{color:#c9a66b;text-underline-offset:2px;text-decoration:underline}.accommodation-info a:hover{opacity:.7}.accommodation-info ul{margin:.25rem 0 .75rem;padding-left:1.25rem}.accommodation-info li{margin-bottom:.2rem}.accommodation-info a[href^=\#]{color:#c9a66b;font-weight:400;text-decoration:none}
.rsvp-form-shell{margin-top:.75rem}.rsvp-greeting{color:#3a3530;font-size:1.05rem}.rsvp-form{gap:1rem;display:grid}.rsvp-card{background:#fffcf6c2;border:1px solid #ded5c8;border-radius:8px;margin:0;padding:1rem;transition:border-color .2s,box-shadow .2s,background .2s}.rsvp-card:disabled{opacity:.72}.rsvp-card legend{color:#4a423a;padding:0 .35rem;font-size:.95rem;font-weight:700}.guest-card-coming{background:#fffae9eb;border-color:#b99a48;box-shadow:0 0 0 3px #b99a481f}.rsvp-field{gap:.45rem;margin-top:.85rem;display:grid}.rsvp-field:first-of-type{margin-top:.35rem}.rsvp-label{letter-spacing:.08em;text-transform:uppercase;color:#7c7167;font-size:.75rem;font-weight:700}.segmented-options{gap:.45rem;display:grid}.segmented-options.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.segmented-option{display:block}.segmented-option input{opacity:0;pointer-events:none;position:absolute}.segmented-option span{color:#4a423a;text-align:center;cursor:pointer;background:#fffaf2;border:1px solid #d6cbbd;border-radius:999px;justify-content:center;align-items:center;min-height:2.5rem;padding:.55rem .75rem;font-size:.86rem;transition:border-color .2s,background .2s,color .2s,transform .2s;display:flex}.segmented-option input:checked+span{color:#2f281f;background:#f2df9b;border-color:#9e7f2d}.segmented-option input:focus-visible+span,.rsvp-card select:focus,.rsvp-card textarea:focus,.rsvp-card input[type=email]:focus,.rsvp-card input[type=text]:focus,.rsvp-card input[type=search]:focus,.rsvp-submit-bar button:focus-visible{outline-offset:2px;outline:2px solid #9e7f2d}.segmented-option input:checked+span{transform:translateY(-1px)}.rsvp-card select,.rsvp-card textarea,.rsvp-card input[type=email],.rsvp-card input[type=text],.rsvp-card input[type=search]{color:#3a3530;width:100%;font:inherit;background:#fffdf8;border:1px solid #d6cbbd;border-radius:8px;padding:.72rem .75rem;font-size:.9rem}.rsvp-card textarea{resize:vertical;min-height:5.25rem}.guest-meal-fields,.conditional-fields{margin-top:.85rem;padding-top:.2rem}.spotify-song-field{position:relative}.spotify-selected-song{background:#fffaf2;border:1px solid #d6cbbd;border-radius:8px;justify-content:space-between;align-items:center;gap:.75rem;padding:.65rem .75rem;display:flex}.spotify-selected-song div,.spotify-song-result span{gap:.12rem;display:grid}.spotify-selected-song strong,.spotify-song-result strong{color:#3a3530;font-size:.9rem}.spotify-selected-song span,.spotify-song-result small,.spotify-song-hint{color:#7c7167;font-size:.8rem}.spotify-selected-song button{color:#4a423a;font:inherit;cursor:pointer;background:#fffdf8;border:1px solid #d6cbbd;border-radius:999px;flex:none;padding:.35rem .65rem;font-size:.78rem}.spotify-song-results{gap:.35rem;display:grid}.spotify-song-result{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:#fffdf8;border:1px solid #e4d9c9;border-radius:8px;grid-template-columns:2.5rem 1fr;align-items:center;gap:.65rem;padding:.45rem;display:grid}.spotify-song-result:hover,.spotify-song-result:focus-visible,.spotify-selected-song button:hover,.spotify-selected-song button:focus-visible{background:#fff7dd;border-color:#9e7f2d}.spotify-song-result img{object-fit:cover;border-radius:6px;width:2.5rem;height:2.5rem}.rsvp-error{color:#9b2f21;margin:0;font-size:.82rem}.form-error{background:#9b2f2114;border:1px solid #9b2f2147;border-radius:8px;padding:.85rem 1rem}.rsvp-closed{color:#5a534b;background:#fffcf6b8;border:1px solid #d6cbbd;border-radius:8px;padding:.85rem 1rem}.rsvp-submit-bar{z-index:2;-webkit-backdrop-filter:blur(14px);background:#f6f1e7f0;border:1px solid #d6cbbddb;border-radius:8px 8px 0 0;justify-content:space-between;align-items:center;gap:1rem;padding:.8rem .9rem;display:flex;position:sticky;bottom:0;box-shadow:0 -8px 18px #3a353014}.rsvp-submit-bar p{color:#665d53;margin:.12rem 0 0;font-size:.78rem}.rsvp-status{letter-spacing:.08em;text-transform:uppercase;align-items:center;font-size:.75rem;font-weight:700;display:inline-flex}.rsvp-status.success{color:#537345}.rsvp-status.pending{color:#8c6d20}.rsvp-status.danger{color:#9b2f21}.rsvp-status.muted{color:#7c7167}.rsvp-submit-bar button{color:#fffaf2;font:inherit;cursor:pointer;background:#3a3530;border:none;border-radius:999px;flex:none;padding:.75rem 1.15rem;font-size:.86rem}.rsvp-submit-bar button:disabled{cursor:not-allowed;opacity:.5}@media (min-width:420px){.segmented-options:not(.compact){grid-template-columns:repeat(2,minmax(0,1fr))}}
.hamburger-root{top:1rem;right:max(1rem, calc((100vw - var(--card-width)) / 2 + 1rem));z-index:200;position:fixed}@media (max-width:479px){.hamburger-root{right:1rem}}.hamburger-btn{cursor:pointer;background:0 0;border:none;border-radius:0;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:40px;height:40px;padding:0;display:flex}.hamburger-btn span{background:#fff;border-radius:2px;width:18px;height:1.5px;transition:transform .2s,opacity .2s,background .2s;display:block}.hamburger-btn.dark span{background:#1a1714}.hamburger-btn.open span:first-child{transform:translateY(6.5px)rotate(45deg)}.hamburger-btn.open span:nth-child(2){opacity:0}.hamburger-btn.open span:nth-child(3){transform:translateY(-6.5px)rotate(-45deg)}.hamburger-nav{-webkit-backdrop-filter:blur(10px);background:#141210e0;border:1px solid #ffffff1f;border-radius:10px;min-width:210px;position:absolute;top:calc(100% + .5rem);right:0;overflow:hidden}.hamburger-nav ul{margin:0;padding:.35rem 0;list-style:none}.hamburger-nav li button{color:#fff;width:100%;font-family:var(--font-playfair), Georgia, serif;letter-spacing:.08em;text-align:left;cursor:pointer;background:0 0;border:none;padding:.5rem 1.1rem;font-size:.85rem;transition:background .15s;display:block}.hamburger-nav li button:hover{background:#ffffff1a}.hamburger-nav-subitems{margin:0;padding:0 0 .15rem;list-style:none}.hamburger-nav-subitems li button{letter-spacing:.09em;text-transform:uppercase;color:#ffffff80;align-items:center;gap:.4rem;padding:.2rem 1.1rem .2rem 1.75rem;font-size:.65rem;line-height:1.2;display:flex}.hamburger-nav-subitems li button:before{content:"";background:#ffffff4d;flex-shrink:0;width:8px;height:1px;display:inline-block}.hamburger-nav-subitems li button:hover{color:#ffffffd9;background:#ffffff0f}.hamburger-nav-item:has(.hamburger-nav-subitems)>button{padding-bottom:.25rem}
