@font-face{font-family:'League Gothic';src:url('/assets/league-gothic.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
:root{--navy:#091027;--navy-soft:#17223e;--ivory:#f7eedd;--gold:#d4ac59;--gold-pale:#f2dba4;--ink:#182039;--muted:#675f50;--line:#dcd1bc;--green:#1e624e;--red:#a1332d;--paper:#fffaf0;--radius:14px;color-scheme:light;font-family:Arial,Helvetica,sans-serif;font-size:16px;font-synthesis:none;scrollbar-color:var(--gold) var(--navy)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}button,input,select{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:wait;opacity:.6}a{color:inherit;text-underline-offset:4px}svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}img{max-width:100%;display:block}h1,h2,p{margin:0}h1,h2{text-wrap:balance}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:4px}input:focus-visible,select:focus-visible{outline:3px solid #b5862d;outline-offset:2px}input{caret-color:#9a711c}::selection{background:var(--gold);color:var(--navy)}[hidden]{display:none!important}.skip-link{position:fixed;top:8px;left:8px;z-index:10;transform:translateY(-160%);padding:12px;background:var(--ivory);color:var(--navy);border-radius:6px}.skip-link:focus{transform:none}.brand{display:block;width:246px;flex-shrink:0}.brand img{width:100%;height:auto}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:50px;padding:13px 20px;border:1px solid transparent;border-radius:7px;text-decoration:none;font-weight:700;font-size:.94rem;line-height:1.35;transition:background-color .18s,color .18s,border-color .18s}.button-primary{background:var(--navy);color:var(--ivory)}.button-primary:hover{background:var(--navy-soft)}.button-primary:active{background:#28375a}.button-outline{border-color:#bdb39f;color:var(--ink);background:transparent}.button-outline:hover{background:#eee5d4}.button-quiet{background:transparent;color:#635b4c;padding-left:10px;padding-right:10px}.button-quiet:hover{color:var(--ink);background:#eee5d4}.text-link{display:inline-flex;gap:9px;align-items:center;font-size:.9rem;line-height:1.5}.text-link svg{width:16px;height:16px}.invitation-page{background:var(--navy);color:var(--ivory)}.invitation-shell{max-width:1300px;margin:0 auto;padding:0 64px}.invitation-header{height:134px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #453f37}.edition{font-size:.83rem;letter-spacing:.07em;color:#cfc2a8}.invitation-main{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:80px;padding:62px 0 64px;align-items:start}.event-story{padding-top:2px}.event-story h1{font-family:'League Gothic',sans-serif;font-size:clamp(4rem,6.2vw,5.75rem);font-weight:400;line-height:1.02;letter-spacing:.005em;max-width:520px}.event-story h1 span{display:block;color:var(--gold)}.event-intro{font-size:1rem;line-height:1.6;color:#d2c7b2;max-width:31ch;margin-top:22px}.event-details{margin-top:43px}.event-date{border-top:1px solid #6e5f41;padding:20px 0 22px;border-bottom:1px solid #6e5f41}.event-date time{display:flex;align-items:center;gap:22px}.date-day{font-family:'League Gothic',sans-serif;font-size:5.75rem;line-height:1;color:var(--gold-pale)}.date-rest{display:flex;flex-direction:column;gap:9px}.date-rest>span:first-child{font-size:1.35rem;font-weight:700;letter-spacing:-.02em}.date-rest>span:last-child{font-size:.95rem;color:#d2c7b2}.event-location{margin-top:26px}.event-location h2{font-family:inherit;font-size:1.15rem;line-height:1.4;font-weight:700}.event-location address{font-style:normal;color:#d2c7b2;font-size:.95rem;line-height:1.7;margin-top:5px}.map-link{margin-top:13px;color:var(--gold-pale)}.map-link:hover{color:#fff}.invitation-note{font-size:.91rem;line-height:1.6;color:#d2c7b2;margin-top:34px}.registration-panel{background:var(--ivory);color:var(--ink);border-radius:var(--radius);padding:34px 34px 25px}.registration-panel h2{font-family:'League Gothic',sans-serif;font-weight:400;font-size:2.75rem;line-height:1.05}.form-intro{font-size:.91rem;line-height:1.6;color:var(--muted);margin-top:9px}#registration-form{margin-top:26px}.field{display:flex;flex-direction:column;min-width:0}.field label,.search-field>label,.filter-field>label{font-size:.86rem;font-weight:700;line-height:1.4;margin-bottom:8px}.field label>span{color:#8c6220}.field input,.field select,.search-field input,.filter-field select{background:var(--paper);border:1px solid #bdb39f;border-radius:6px;color:var(--ink);height:49px;padding:11px 12px;width:100%;min-width:0}.field input:hover,.field select:hover,.filter-field select:hover{border-color:#897b61}.field input:user-invalid{border-color:var(--red)}.field-pair{display:grid;grid-template-columns:1fr 1fr;gap:14px}#registration-form>.field{margin-top:19px}.field-help{font-size:.76rem;line-height:1.5;color:var(--muted);margin-top:7px}.companion-choice{display:flex;align-items:flex-start;gap:12px;margin-top:26px;padding-top:24px;border-top:1px solid var(--line);position:relative;cursor:pointer}.companion-choice input{width:21px;height:21px;margin:2px 0 0;flex-shrink:0;accent-color:var(--navy);cursor:pointer}.choice-copy{display:flex;flex-direction:column;gap:6px;padding-bottom:24px}.choice-copy strong{font-size:.91rem;font-weight:700}.choice-copy>span{font-size:.78rem;line-height:1.5;color:var(--muted);max-width:28ch}.party-count{position:absolute;bottom:0;left:33px;font-size:.76rem;font-weight:700;color:#63563e}.companion-fields{margin:18px 0 0;padding:17px 0 0;border:0;border-top:1px solid var(--line)}.companion-fields legend{padding:0 7px 0 0;font-size:.86rem;font-weight:700}.companion-fields legend span{font-size:.77rem;font-weight:400;color:var(--muted)}.companion-fields .field label{font-size:.8rem}.honey-field{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(100%);white-space:nowrap}.submit-button{width:100%;justify-content:space-between;text-align:left;margin-top:25px;padding:16px 18px;min-height:55px}.required-note{font-size:.75rem;color:var(--muted);margin-top:11px}.form-message,.dashboard-message{font-size:.86rem;line-height:1.55;color:var(--red);background:#f9e9e2;border:1px solid #d8a79a;border-radius:7px;padding:12px 14px;margin-top:19px}.privacy{margin-top:23px;border-top:1px solid var(--line);padding-top:17px;color:var(--muted)}.privacy summary{cursor:pointer;font-size:.75rem;line-height:1.5;font-weight:700;min-height:25px}.privacy p{font-size:.75rem;line-height:1.65;margin-top:10px}.privacy a{overflow-wrap:anywhere}.invitation-footer{display:flex;justify-content:space-between;align-items:center;gap:24px;border-top:1px solid #453f37;color:#c4b89f;padding:25px 0 30px;font-size:.75rem;line-height:1.5}.invitation-footer a{display:inline-flex;align-items:center;gap:8px}.invitation-footer svg{width:17px;height:17px}.success-view{padding:2px 0 7px;outline:none}.success-symbol{width:56px;height:56px;display:flex;align-items:center;justify-content:center;border:1px solid #7c9d86;border-radius:50%;color:var(--green);margin-bottom:25px}.success-symbol svg{width:33px;height:33px;stroke-width:2}.success-view h2{font-size:2.8rem}.success-lead{font-size:1rem;line-height:1.6;margin-top:18px}.success-email{font-size:.86rem;line-height:1.65;color:var(--muted);margin-top:15px;overflow-wrap:anywhere}.success-event{display:flex;flex-direction:column;gap:7px;padding:20px 0;margin:24px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:.85rem;line-height:1.5}.success-event strong{font-size:.94rem}.success-view .button{width:100%;justify-content:space-between}.success-map{margin-top:20px}.noscript{position:relative;padding:24px;background:#fff1df;color:var(--navy);line-height:1.7;text-align:center}.staff-page{background:#f4f0e7;color:var(--ink);min-height:100vh}.staff-header{height:86px;background:var(--navy);display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 max(28px,calc((100vw - 1144px)/2));color:#e7dac0}.staff-header .brand{width:195px}.staff-header>span{font-size:.84rem}.staff-main{max-width:1200px;padding:0 28px;margin:0 auto}.staff-login{width:100%;max-width:420px;margin:78px auto;padding-bottom:40px}.staff-login h1{font-family:'League Gothic',sans-serif;font-size:3.1rem;font-weight:400;line-height:1.1}.staff-login>p{font-size:.95rem;line-height:1.6;color:var(--muted);margin-top:15px}.staff-login form{margin-top:29px}.staff-login form .button{width:100%;margin-top:20px}.staff-login .staff-login-note{font-size:.79rem;margin-top:22px}.dashboard{padding-top:36px;padding-bottom:24px}.dashboard-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.dashboard h1{font-family:'League Gothic',sans-serif;font-size:3rem;font-weight:400;line-height:1.1}.connection{display:flex;gap:8px;align-items:center;line-height:1.45;color:#426453;font-size:.78rem;margin-top:10px}.connection-dot{width:7px;height:7px;border-radius:50%;background:#2d785b;flex-shrink:0}.connection.is-offline{color:#9a3d2e}.connection.is-offline .connection-dot{background:#ac4936}.dashboard-actions{display:flex;gap:12px;align-items:center}.dashboard-actions .button{font-size:.8rem;min-height:44px}.attendance-counts{display:flex;margin:29px 0 28px;padding:22px 0;border-top:1px solid #cfc5b1;border-bottom:1px solid #cfc5b1;gap:58px}.attendance-counts>div{display:flex;flex-direction:column;gap:7px}.attendance-counts dt{font-size:.81rem;color:#675f50}.attendance-counts dd{font-size:2rem;line-height:1.1;font-weight:700;font-variant-numeric:tabular-nums;margin:0;letter-spacing:-.025em}.attendance-counts>div:nth-child(2) dd{color:var(--green)}.guest-toolbar{display:flex;gap:15px;align-items:end}.search-field{flex:1}.search-field>label,.filter-field>label{display:block}.search-input-wrap{position:relative}.search-input-wrap svg{position:absolute;left:13px;top:14px;width:20px;height:20px;color:#756b58}.search-field input{padding-left:41px}.search-field input::placeholder{color:#756b58;opacity:1}.filter-field{width:190px}.filter-field select{appearance:auto;padding-right:8px}.refresh-button{height:49px;min-height:49px;background:transparent;padding:10px 14px;font-size:.84rem}.refresh-button svg{width:19px;height:19px}.list-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:32px}.list-heading h2{font-size:1.12rem;font-weight:700}.list-heading>span{font-size:.77rem;color:var(--muted)}.list-help{font-size:.8rem;line-height:1.6;color:var(--muted);margin-top:7px;margin-bottom:17px}.guest-list{border-top:1px solid #cfc5b1}.guest-item{padding:21px 0;border-bottom:1px solid #d8cfbc;display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.8fr);gap:22px;align-items:start}.guest-info h3{margin:0;font-size:1.02rem;line-height:1.5;font-weight:700;overflow-wrap:anywhere}.guest-details{display:flex;flex-wrap:wrap;gap:7px 15px;align-items:center;font-size:.76rem;line-height:1.6;margin-top:4px;color:var(--muted)}.guest-email{overflow-wrap:anywhere}.guest-tag{display:inline-flex;align-items:center;gap:4px;font-size:.75rem;color:#51462e;border:1px solid #bfb08e;border-radius:4px;padding:1px 6px;line-height:1.5}.email-status{display:block;font-size:.75rem;line-height:1.5;color:var(--muted);margin-top:8px}.email-status.email-failed{color:var(--red)}.email-status.email-sent{color:var(--green)}.arrival-controls{display:flex;flex-direction:column;gap:8px}.arrival-button{display:flex;align-items:center;gap:11px;width:100%;min-height:48px;padding:10px 13px;border:1px solid #bdb39f;border-radius:7px;color:var(--ink);background:#fffaf0;text-align:left;transition:background-color .15s,border-color .15s}.arrival-button:hover{background:#ede5d3;border-color:#8b7b5a}.arrival-button[aria-pressed=true]{background:#e1ebe1;border-color:#91ad97;color:#24513d}.arrival-checkbox{width:20px;height:20px;border:1.5px solid currentColor;border-radius:4px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.arrival-checkbox svg{display:none;width:16px;height:16px;stroke-width:2.5}.arrival-button[aria-pressed=true] .arrival-checkbox{background:#2c6149;border-color:#2c6149;color:#fff}.arrival-button[aria-pressed=true] .arrival-checkbox svg{display:block}.arrival-label{font-size:.82rem;line-height:1.4;min-width:0;flex:1;overflow-wrap:anywhere}.arrival-state{display:block;font-size:.75rem;font-weight:400;opacity:.9;margin-top:2px}.arrival-time{font-size:.75rem;font-variant-numeric:tabular-nums;color:inherit;white-space:nowrap}.empty-state{padding:60px 20px;text-align:center;border-bottom:1px solid #d8cfbc}.empty-state h2{font-size:1.1rem;line-height:1.5}.empty-state p{font-size:.9rem;color:var(--muted);line-height:1.6;margin-top:10px}.staff-footer{font-size:.75rem;line-height:1.6;color:#756b58;margin-top:28px}.dashboard-message{margin:20px 0 0}.dashboard-message.is-info{color:#554220;background:#f5ead0;border-color:#d0b67a}
@media(min-width:1300px){.event-story h1{font-size:5.75rem}}@media(max-width:1050px){.invitation-shell{padding:0 38px}.invitation-main{gap:45px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding-top:48px}.registration-panel{padding:28px 26px 22px}.event-story h1{font-size:4.65rem}.brand{width:225px}.dashboard-actions{gap:5px}}
@media(max-width:760px){.invitation-shell{padding:0 24px;max-width:600px}.invitation-header{height:92px}.brand{width:202px}.edition{font-size:.75rem;letter-spacing:.03em}.invitation-main{display:flex;flex-direction:column;gap:32px;padding:31px 0 33px}.event-story{width:100%}.event-story h1{font-size:3.75rem;line-height:1.02;max-width:390px}.event-intro{font-size:.91rem;line-height:1.5;max-width:34ch;margin-top:16px}.event-details{display:grid;grid-template-columns:1fr 1.1fr;gap:17px;margin-top:26px;padding:20px 0;border-top:1px solid #6e5f41;border-bottom:1px solid #6e5f41}.event-date{border:0;padding:0}.event-date time{display:block}.date-day{font-size:3.5rem;line-height:.95}.date-rest{gap:5px;margin-top:6px}.date-rest>span:first-child{font-size:.91rem;line-height:1.4;letter-spacing:0}.date-rest>span:last-child{font-size:.76rem;line-height:1.4;white-space:nowrap}.event-location{margin-top:0;padding-top:2px}.event-location h2{font-size:.96rem;line-height:1.5}.event-location address{font-size:.78rem;line-height:1.6;margin-top:6px}.map-link{font-size:.76rem;margin-top:10px;gap:6px}.map-link svg{width:13px;height:13px}.invitation-note{display:none}.registration-panel{width:100%;padding:26px 23px 21px}.registration-panel h2{font-size:2.5rem}.form-intro{font-size:.84rem}.field input{height:49px;font-size:16px}#registration-form{margin-top:23px}.field-pair{gap:12px}.field label{font-size:.81rem}.field-help{font-size:.75rem}.companion-choice{margin-top:22px;padding-top:21px}.choice-copy>span{max-width:none}.submit-button{font-size:.87rem}.invitation-footer{padding:21px 0 25px;align-items:flex-start;gap:14px;font-size:.75rem}.invitation-footer span{max-width:24ch}.invitation-footer a{white-space:nowrap}.invitation-footer svg{width:15px;height:15px}.staff-header{height:77px;padding:0 22px}.staff-header .brand{width:160px}.staff-header>span{font-size:.75rem}.staff-main{padding:0 22px}.staff-login{margin:52px auto}.dashboard{padding-top:29px}.dashboard h1{font-size:2.5rem}.dashboard-title-row{gap:14px;flex-wrap:wrap}.dashboard-title-row>.button{font-size:.75rem;min-height:40px;padding:8px 7px}.dashboard-actions{width:100%;justify-content:space-between;margin-top:2px}.dashboard-actions .button{font-size:.75rem;padding:10px 12px}.dashboard-actions .button svg{width:17px;height:17px}.connection{font-size:.75rem;max-width:40ch}.attendance-counts{gap:0;justify-content:space-between;margin:24px 0;padding:19px 0}.attendance-counts>div{gap:8px}.attendance-counts dt{font-size:.75rem}.attendance-counts dd{font-size:1.75rem}.guest-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:13px}.search-field{grid-column:1/-1}.filter-field{width:100%}.filter-field>label{position:absolute;clip-path:inset(100%);width:1px;height:1px;overflow:hidden}.filter-field select{font-size:.82rem}.refresh-button{font-size:.76rem;gap:7px;min-width:116px}.guest-item{display:flex;flex-direction:column;gap:15px;padding:20px 0}.guest-info,.arrival-controls{width:100%}.arrival-button{min-height:51px;padding:11px 12px}.arrival-label{font-size:.83rem}.list-heading{margin-top:27px}.list-heading h2{font-size:1.03rem}.list-help{font-size:.76rem}.list-heading>span{font-size:.75rem}.guest-info h3{font-size:1.03rem}.empty-state{padding:44px 10px}.staff-footer{margin-top:22px}.success-view h2{font-size:2.7rem}.success-view .button{font-size:.82rem;padding-left:13px;padding-right:13px}}
@media(max-width:370px){.invitation-shell{padding:0 18px}.brand{width:180px}.event-story h1{font-size:3.65rem}.registration-panel{padding:24px 19px 20px}.event-details{gap:13px}.date-rest>span:first-child{font-size:.83rem}.event-location address{font-size:.75rem}.staff-header{padding:0 16px}.staff-header .brand{width:143px}.staff-main{padding:0 16px}.attendance-counts dt{font-size:.75rem}.dashboard h1{font-size:2.3rem}.submit-button{font-size:.79rem;padding-left:13px;padding-right:13px}.submit-button svg{width:18px;height:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.calendar-choice select{font-size:16px}.calendar-status{font-size:.86rem;line-height:1.6;color:var(--muted);margin-bottom:14px}.calendar-actions{display:grid;gap:10px}

.calendar-auto-help{margin-top:20px}

/* Invitation and registration are separate steps, each sized for a phone. */
.landing-shell{max-width:1120px;margin:0 auto;min-height:100svh;padding:0 48px;display:flex;flex-direction:column}
.landing-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:27px 0;border-bottom:1px solid #453f37}
.landing-header .brand{width:226px}
.landing-main{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 0;text-align:center}
.landing-main h1{font-family:'League Gothic',sans-serif;font-weight:400;font-size:clamp(3.25rem,7.5vw,5.75rem);line-height:1.02;letter-spacing:.005em;margin:0}
.landing-main h1 span{display:block;color:var(--gold)}
.landing-intro{font-size:1rem;line-height:1.55;color:#d2c7b2;margin-top:18px}
.landing-presenter{font-size:.9rem;line-height:1.5;color:#d2c7b2;margin-top:16px}
.landing-presenter strong{display:block;margin-top:4px;font-family:'League Gothic',sans-serif;font-size:clamp(2.75rem,5vw,3.5rem);line-height:1.05;letter-spacing:.015em;color:var(--gold-pale);font-weight:400}
.landing-details{display:flex;align-items:center;justify-content:center;gap:40px;text-align:left;border-top:1px solid #6e5f41;border-bottom:1px solid #6e5f41;padding:22px 0;margin-top:25px;width:100%;max-width:570px}
.landing-date{display:flex;align-items:center;gap:16px;flex-shrink:0}
.landing-day{font-family:'League Gothic',sans-serif;font-size:4.75rem;line-height:1;color:var(--gold-pale)}
.landing-date>span:last-child{display:flex;flex-direction:column;gap:8px}
.landing-date strong{font-size:1.05rem;line-height:1.4}
.landing-date>span>span{font-size:.86rem;color:#d2c7b2;white-space:nowrap}
.landing-location h2{font-size:1rem;font-family:inherit;line-height:1.4;text-wrap:initial}
.landing-location address{font-size:.86rem;line-height:1.65;font-style:normal;color:#d2c7b2;margin-top:5px}
.landing-cta{background:var(--gold);color:var(--navy);width:auto;min-width:220px;max-width:100%;justify-content:center;gap:12px;margin-top:24px;min-height:76px;padding:20px 24px;font-size:1.25rem}
.landing-cta svg{width:28px;height:28px}
.landing-cta:hover{background:var(--gold-pale)}
.landing-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 0;border-top:1px solid #453f37;font-size:.75rem;line-height:1.5;color:#c4b89f}
.form-shell{max-width:540px;margin:0 auto;padding:0 20px 24px}
.form-header{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:86px}
.form-header .brand{width:192px}
.back-link{display:inline-flex;align-items:center;gap:7px;font-size:.8rem;color:#e7dac0;text-decoration:none;min-height:44px}
.back-link svg{width:17px;height:17px}
.back-link:hover{text-decoration:underline}
.form-main{width:100%}
.form-page .registration-panel{padding:28px 28px 21px}
.form-page .registration-panel h1{font-family:'League Gothic',sans-serif;font-weight:400;font-size:2.75rem;line-height:1.05;letter-spacing:0;margin:0}
.form-page .form-intro{font-size:.81rem;line-height:1.45;margin-top:8px}
.form-page #registration-form{margin-top:20px}
.form-page .companion-choice{margin-top:18px;padding-top:17px;align-items:center}
.form-page .choice-copy{padding-bottom:0;gap:0}
.form-page .choice-copy>span{display:none}
.form-page .party-count{position:static;margin-left:auto;white-space:nowrap;font-size:.75rem}
.form-page .calendar-auto-help{margin-top:15px}
.form-page .submit-button{margin-top:20px}
.form-page .privacy{margin-top:18px;padding-top:14px}
@media(max-width:760px){
 .landing-shell{padding:0 24px}
 .landing-header{padding:19px 0}
 .landing-header .brand{width:192px}
 .landing-main{padding:24px 0}
 .landing-main h1{font-size:clamp(2.8rem,13vw,3.75rem)}
 .landing-intro{font-size:.9rem;margin-top:16px}
 .landing-details{gap:18px;padding:18px 0;margin-top:21px;justify-content:space-between}
 .landing-date{display:block}
 .landing-day{font-size:3.6rem}
 .landing-date>span:last-child{gap:4px;margin-top:5px}
 .landing-date strong{font-size:.85rem}
 .landing-date>span>span{font-size:.76rem}
 .landing-location h2{font-size:.94rem}
 .landing-location address{font-size:.78rem}
 .landing-cta{max-width:100%;margin-top:20px;min-height:72px}
 .landing-footer{font-size:.75rem;align-items:flex-start;padding:14px 0}
 .landing-footer span{max-width:22ch}
 .landing-footer a{white-space:nowrap}
 .form-shell{padding:0 16px 16px}
 .form-header{min-height:66px}
 .form-header .brand{width:172px}
 .form-page .registration-panel{padding:22px 21px 17px}
 .form-page .registration-panel h1{font-size:2.45rem}
 .form-page #registration-form{margin-top:17px}
 .form-page .field label{margin-bottom:6px}
 .form-page .field input{height:46px}
 .form-page #registration-form>.field{margin-top:15px}
 .form-page .companion-choice{margin-top:16px;padding-top:14px}
 .form-page .choice-copy strong{font-size:.85rem}
 .form-page .submit-button{min-height:51px;margin-top:18px;padding:13px 15px;font-size:.85rem}
 .form-page .required-note{margin-top:9px}
 .form-page .privacy{margin-top:14px;padding-top:12px}
}
@media(max-height:700px) and (max-width:760px){
 .landing-header{padding:13px 0}
 .landing-main{padding:16px 0}
 .landing-main h1{font-size:2.8rem}
 .landing-intro{font-size:.83rem;margin-top:12px}
 .landing-details{padding:14px 0;margin-top:15px}
 .landing-day{font-size:3.1rem}
 .landing-cta{margin-top:18px;min-height:68px}
 .landing-footer{padding:11px 0}
 .form-shell{padding-bottom:8px}
 .form-header{min-height:54px}
 .form-page .registration-panel{padding-top:14px;padding-bottom:10px}
 .form-page #registration-form{margin-top:14px}
}
@media(max-width:350px){
 .landing-shell{padding:0 18px}
 .landing-header .brand{width:172px}
 .landing-details{gap:12px}
 .landing-location address{font-size:.75rem}
 .form-page .registration-panel{padding-left:17px;padding-right:17px}
 .form-page .party-count{display:none}
 .form-header .brand{width:155px}
}
.landing-cta-row{display:flex;gap:14px;align-items:stretch;flex-wrap:wrap}
.landing-catalogue{background:var(--gold);color:var(--navy);width:auto;min-width:220px;max-width:100%;justify-content:center;gap:12px;margin-top:24px;min-height:76px;padding:20px 24px;font-size:1.25rem}
.landing-catalogue:hover{background:var(--gold-pale)}
.landing-catalogue svg{width:24px;height:24px}
.success-catalogue{margin-top:26px;border-top:1px solid var(--line);padding-top:22px}
.success-catalogue p{font-size:.86rem;line-height:1.5;color:var(--muted);margin-bottom:12px}
@media(max-width:640px){.landing-cta-row{flex-direction:column}.landing-cta,.landing-catalogue{width:100%}}

.delete-guest{align-self:flex-end;border:1px solid #a9493e;border-radius:6px;padding:9px 12px;background:transparent;color:#91362d;font-size:.8rem;font-weight:700}.delete-guest:hover{background:#f5e4df}
.source-stats{margin:0 0 28px}.source-stats h2{font-size:1.02rem;font-weight:700;margin-bottom:10px}.source-stats table{width:100%;max-width:520px;border-collapse:collapse;font-size:.86rem}.source-stats th{text-align:left;font-size:.76rem;font-weight:400;color:#675f50;padding:0 12px 8px 0;border-bottom:1px solid #cfc5b1}.source-stats td{padding:9px 12px 9px 0;border-bottom:1px solid #e0d8c7;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.source-stats th:not(:first-child),.source-stats td:not(:first-child){text-align:right;padding-right:0;padding-left:12px;white-space:nowrap}.source-stats td.source-general{color:var(--muted)}.guest-source{font-size:.75rem;color:#755622}
