.visually-hidden{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}.g-shell{flex-direction:column;min-height:100svh;display:flex}.g-skip{z-index:20;background:var(--color-ink);color:var(--color-cream);padding:.5rem 1rem;position:absolute;top:0;left:-999px}.g-skip:focus{left:max(1rem, env(safe-area-inset-left,0px));top:.5rem}.g-header{background:var(--color-linen);padding-top:max(1rem, env(safe-area-inset-top,0px));border-bottom:1px solid #2b26222e}.g-header-row{justify-content:space-between;align-items:center;gap:1rem;max-width:72rem;margin:0 auto;display:flex}.g-brand{color:var(--color-ink);font-size:clamp(.95rem,2.4vw,1.15rem);text-decoration:none}.g-signout{color:var(--color-olive);cursor:pointer;background:0 0;border:0;min-height:44px;padding:.75rem 0}.g-signout:hover{color:var(--color-wine)}.g-nav{scrollbar-width:none;max-width:72rem;margin:0 auto;overflow-x:auto}.g-nav::-webkit-scrollbar{display:none}@media (max-width:48rem){.g-nav{-webkit-mask-image:linear-gradient(90deg,#000 82%,#0000);mask-image:linear-gradient(90deg,#000 82%,#0000)}.g-nav ul{padding-right:2.5rem}}.g-nav ul{white-space:nowrap;gap:clamp(1.1rem,3vw,2.25rem);margin:0;padding:.35rem 0 0;list-style:none;display:flex}.g-nav a{color:var(--color-olive);border-bottom:2px solid #0000;padding:.7rem 0 .8rem;text-decoration:none;display:inline-block}.g-nav a:hover{color:var(--color-ink)}.g-nav a[aria-current=page]{color:var(--color-wine);border-bottom-color:var(--color-wine)}.g-main{flex:1;width:100%;max-width:48rem;margin:0 auto;padding-block:clamp(2.5rem,6vw,4.5rem) 4rem}.g-main:has(.g-wide){max-width:72rem}.g-main:has(.g-wide)>.g-stack>:not(.g-wide){max-width:48rem}.g-footer{padding-block:0 max(2.5rem, env(safe-area-inset-bottom,0px));color:var(--color-olive);font-size:.9rem}.g-footer-inner{gap:1rem;max-width:72rem;margin:0 auto;display:grid}.g-footer .hemstitch{max-width:16rem}.g-footer p{margin:0}.g-stack{gap:clamp(2.5rem,5vw,3.5rem);min-width:0;display:grid}.g-stack-sm{gap:1.25rem;display:grid}.g-head{gap:.9rem;display:grid}.g-eyebrow{color:var(--color-wine);margin:0}.g-title{margin:0;font-size:clamp(1.75rem,5vw,2.75rem);line-height:1.12}.g-rule{max-width:14rem}.g-lede{gap:.75rem;max-width:62ch;display:grid}.g-lede p,.g-section p{margin:0}.g-note{color:var(--color-olive);font-size:.92em}.g-hint{color:var(--color-olive);margin:0;font-size:.95rem}.g-section{gap:1rem;min-width:0;display:grid}.g-section-label{color:var(--color-olive);margin:0}.g-loading{color:var(--color-olive);padding:4rem 0}.g-card{background:var(--color-linen-white);border:1px solid #2b26221f;border-radius:2px;gap:.6rem;min-width:0;margin:0;padding:clamp(1.1rem,3vw,1.75rem);display:grid}.g-card p{margin:0}.g-card-title{margin:0;padding:0;font-size:1.05rem}fieldset.g-card{min-inline-size:0}fieldset.g-card>legend.g-card-title{float:left;width:100%;margin-bottom:.4rem}fieldset.g-card>legend.g-card-title+*{clear:both}.g-placeholder{color:var(--color-olive)}.g-status-list,.g-party,.g-rooms,.g-updates,.g-days,.g-events-list{margin:0;padding:0;list-style:none}.g-status-list{gap:.75rem;display:grid}.g-status{background:var(--color-linen-white);border:1px solid #2b26221f;grid-template-columns:auto 1fr auto;align-items:center;gap:.9rem;padding:1rem 1.15rem;display:grid}.g-status p{margin:0}.g-status-dot{border:1.5px solid var(--color-wine);border-radius:50%;width:.8rem;height:.8rem}.g-status[data-state=started] .g-status-dot{background:linear-gradient(90deg, var(--color-wine) 50%, transparent 50%)}.g-status[data-state=done] .g-status-dot{background:var(--color-wine)}.g-status-text{min-width:0}.g-status-title{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.14em;font-size:.95rem}.g-status-detail{color:var(--color-olive);font-size:.95rem}.g-link{color:var(--color-wine);white-space:nowrap;padding:.6rem 0;text-decoration:none}.g-link:hover{text-underline-offset:4px;text-decoration:underline}@media (max-width:30rem){.g-status{grid-template-columns:auto 1fr}.g-status .g-link{grid-column:2;padding-top:0}}.g-party{border-top:1px solid #2b262226;display:grid}.g-party li{border-bottom:1px solid #2b262226;flex-wrap:wrap;justify-content:space-between;gap:1rem;padding:.7rem 0;display:flex}.g-party-meta{color:var(--color-olive)}.g-countdown{padding-top:1rem}.g-form{gap:1.25rem;min-width:0;display:grid}.g-field{gap:.35rem;min-width:0;display:grid}.g-field>span:first-child,.g-field-label{color:var(--color-ink);font-size:.95rem}.g-field input,.g-field select,.g-field textarea{font:inherit;color:var(--color-ink);background:#fffdf9;border:1px solid #2b26224d;border-radius:2px;width:100%;min-width:0;min-height:44px;padding:.65rem .75rem;font-size:1rem}.g-field textarea{resize:vertical}.g-field input:focus-visible,.g-field select:focus-visible,.g-field textarea:focus-visible{outline:2px solid var(--color-wine);outline-offset:1px;border-color:var(--color-wine)}.g-field [aria-invalid=true]{border-color:var(--color-wine)}.g-field-error{color:var(--color-wine);font-size:.9rem}.g-row{grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.75rem;display:grid}.g-row>.g-hint{grid-column:1/-1}.g-choice-block{border:0;gap:.6rem;min-inline-size:0;margin:0;padding:0;display:grid}.g-choice{flex-wrap:wrap;gap:.6rem;display:flex}.g-pill{cursor:pointer;position:relative}.g-pill input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.g-pill span{background:#fffdf9;border:1px solid #2b262259;border-radius:999px;align-items:center;min-height:44px;padding:.55rem 1.1rem;transition:background .15s,color .15s,border-color .15s;display:inline-flex}.g-pill input:checked+span{background:var(--color-wine);border-color:var(--color-wine);color:var(--color-cream)}.g-pill input:focus-visible+span{outline:2px solid var(--color-wine);outline-offset:3px}.g-pill:hover span{border-color:var(--color-wine)}.g-check{cursor:pointer;align-items:flex-start;gap:.6rem;min-height:44px;padding:.35rem 0;display:flex}.g-check input{width:1.15rem;height:1.15rem;accent-color:var(--color-wine);flex:none;margin-top:.25rem}.g-check-day{color:var(--color-olive);margin-left:auto;padding-left:.75rem;font-size:.9rem}.g-events{border:0;gap:.25rem;min-inline-size:0;margin:.25rem 0 0;padding:0;display:grid}.g-events legend{color:var(--color-olive);margin-bottom:.25rem}.g-events ul{border-top:1px solid #2b26221f;margin:0;padding:0;list-style:none;display:grid}.g-events li{border-bottom:1px solid #2b26221f}.g-when-attending{gap:1rem;display:grid}.g-rsvp-guest:has(input[value=declined]:checked) .g-when-attending{display:none}.g-details summary{cursor:pointer;color:var(--color-olive);align-items:center;min-height:44px;padding:.4rem 0;display:flex}.g-details[open] summary{margin-bottom:.4rem}.g-actions{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.g-button{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.2em;background:var(--color-wine);color:var(--color-cream);cursor:pointer;border:0;border-radius:2px;min-height:48px;padding:.95rem 1.6rem;font-size:.85rem}.g-button:hover{background:#5f1926}.g-button:disabled{opacity:.6;cursor:progress}.g-form-message{min-height:1.5em;margin:0}.g-form-message[data-ok=true]{color:var(--color-olive)}.g-form-message[data-ok=false]{color:var(--color-wine)}.g-travel-grid{grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:1.25rem;display:grid}.g-leg{min-width:0;border:0;gap:.75rem;min-inline-size:0;margin:0;padding:0;display:grid}.g-leg legend{color:var(--color-wine);margin-bottom:.4rem}.g-rooms,.g-updates{gap:1rem;display:grid}.g-room-building{color:var(--color-olive)}.a-wrap{min-height:100svh;padding-block:max(2.5rem, env(safe-area-inset-top,0px)) max(2.5rem, env(safe-area-inset-bottom,0px));place-content:center;justify-items:center;gap:1.5rem;display:grid}.a-sheet{background:var(--color-linen-white);text-align:center;border:1px solid #2b26221f;justify-items:center;gap:1rem;width:min(30rem,100%);padding:clamp(1.75rem,6vw,3rem);display:grid;box-shadow:0 1px #2b26220f,0 18px 40px -28px #2b262259}.a-title{margin:0;font-size:clamp(1.5rem,6vw,2.1rem);line-height:1.15}.a-rule{width:10rem}.a-body{justify-items:center;gap:1rem;width:100%;display:grid}.a-body p{max-width:36ch;margin:0}.a-body form{text-align:left;gap:.9rem;width:100%;display:grid}.a-body .g-button{width:100%}.a-secondary{color:var(--color-olive);text-underline-offset:4px;cursor:pointer;font:inherit;background:0 0;border:0;justify-self:center;min-height:44px;padding:.5rem;text-decoration:underline}.a-secondary:hover{color:var(--color-wine)}.a-message{color:var(--color-olive);text-align:center;font-size:.95rem}.a-message[role=alert]{color:var(--color-wine)}.a-link{color:var(--color-wine);text-underline-offset:4px}.a-foot{color:var(--color-olive);text-align:center;margin:0}.a-code{letter-spacing:.4em;text-align:center;font-variant-numeric:tabular-nums;font-size:1.35rem!important}.g-days{gap:clamp(2.5rem,6vw,3.5rem);display:grid}.g-day{gap:.6rem;display:grid}.g-day-label{color:var(--color-wine);margin:0}.g-day-title{margin:0 0 .5rem;font-size:clamp(1.25rem,3.5vw,1.6rem)}.g-events-list{border-top:1px solid #2b26222e}.g-event{border-bottom:1px solid #2b26222e;grid-template-columns:minmax(0,1fr) minmax(0,15rem);gap:.4rem 1.5rem;padding:.95rem 0;display:grid}.g-event p{margin:0}.g-event-title{font-size:1.1rem}.g-event-teaser,.g-event-meta{color:var(--color-olive);font-size:.95rem}.g-event-who{color:var(--color-wine)}@media (max-width:36rem){.g-event{grid-template-columns:1fr}}
