:root{--ink:#111111;--muted:#5f5f5f;--line:#dedede;--paper:#ffffff;--soft:#f6f6f4;--bar:#c37b5b;--action:#c37b5b;--max:1000px;--narrow:800px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Montserrat,Arial,sans-serif;font-size:16px;line-height:1.72;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body.modal-open{overflow:hidden}img{display:block;max-width:100%;height:auto}a{color:#143d6b;text-underline-offset:4px}.brand,.button,.hotel-book-link,.hotel-logo-link{color:inherit}p{margin:0 0 18px}h1,h2,h3{margin:0;font-weight:500;letter-spacing:0}h1{max-width:900px;margin:0 auto;font-size:clamp(25px,3.35vw,41px);font-weight:700;line-height:1.28}h1,h2{text-align:center}h2{margin-bottom:22px;font-size:clamp(28px,3.4vw,40px);line-height:1.22}h3{margin-bottom:8px;line-height:1.35}.site-header,h3{font-size:18px;text-transform:uppercase}.site-header{display:flex;align-items:center;justify-content:space-between;gap:24px;width:100%;margin:0;padding:28px max(30px,calc((100vw - 1120px) / 2 + 30px)) 26px;background:var(--bar);color:#ffffff;font-weight:600;line-height:1}.site-header a{color:inherit}.brand{gap:11px;text-decoration:none}.brand,.brand-mark{display:inline-flex;align-items:center}.brand-mark{justify-content:center;width:34px;height:34px;border:1px solid rgba(255,255,255,.92);border-radius:50%;font-size:10px;font-weight:700;letter-spacing:0;line-height:1}.date-mark{white-space:nowrap}.section{padding:58px 30px}.narrow{max-width:var(--narrow);margin:0 auto}.hero{padding-top:48px;text-align:center}.hero .narrow{max-width:980px}.wide-image{max-width:var(--max);margin:46px auto 0}.hotel-image img,.image-pair img,.split img,.venue-image img,.wide-image img{width:100%;object-fit:cover}.hero-action{display:flex;justify-content:center;margin-top:28px}.rsvp-open{min-width:min(420px,100%)}.intro{max-width:640px;margin:0 auto 24px;color:var(--muted);text-align:center}.modal{position:fixed;z-index:100;inset:0;display:grid;place-items:center;padding:28px}.modal[hidden]{display:none}[hidden]{display:none!important}.modal-backdrop{position:absolute;inset:0;background:rgba(17,17,17,.74);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-panel{position:relative;z-index:1;width:min(820px,100%);max-height:min(88vh,980px);overflow:auto;padding:34px 34px 32px;background:var(--paper)}.rsvp-modal-panel{width:min(760px,100%);padding:24px 28px 22px;border:1px solid rgba(17,17,17,.12);border-radius:8px;box-shadow:0 24px 70px rgba(0,0,0,.28)}.rsvp-modal-panel:before{content:"";position:absolute;inset:0 0 auto;height:7px;background:#c37b5b}.rsvp-modal-kicker{display:flex;align-items:center;gap:11px;margin:1px 44px 18px 0;color:var(--ink);font-size:12px;font-weight:700;letter-spacing:.08em;line-height:1.2;text-transform:uppercase}.rsvp-modal-kicker span{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid var(--ink);border-radius:50%;flex:0 0 auto;font-size:10px}.rsvp-invite-panel{position:relative;display:grid;grid-gap:8px;gap:8px;margin:0 0 18px;padding:18px 20px 17px;overflow:hidden;border:1px solid rgba(195,123,91,.28);background:linear-gradient(135deg,rgba(195,123,91,.13),rgba(255,255,255,0) 58%),#fffaf7}.rsvp-invite-panel:after{content:"";position:absolute;top:18px;right:20px;width:54px;height:54px;border:1px solid rgba(195,123,91,.32);border-radius:50%;background:radial-gradient(circle,rgba(195,123,91,.2) 0 3px,transparent 4px)}.rsvp-eyebrow{margin:0;color:var(--action);font-size:11px;font-weight:900;letter-spacing:.14em;line-height:1.2;text-transform:uppercase}.rsvp-invite-panel h2{max-width:540px;margin:0;color:var(--ink);font-size:clamp(28px,5vw,44px);font-weight:700;line-height:1.05;text-align:left}.rsvp-invite-panel p:not(.rsvp-eyebrow){max-width:560px;margin:0;color:#4f4a47;font-size:14px;line-height:1.5}.modal-panel h2{margin-bottom:10px;font-size:clamp(30px,4vw,42px)}.modal-close{position:absolute;top:18px;right:18px;width:34px;min-height:34px;padding:0;border:1px solid var(--action);border-radius:0;background:var(--action)}.modal-close:after,.modal-close:before{content:"";position:absolute;top:16px;left:8px;width:16px;height:2px;background:#ffffff}.modal-close:before{transform:rotate(45deg)}.modal-close:after{transform:rotate(-45deg)}.modal-close:hover{border-color:var(--action);background:var(--action);opacity:.82}.modal-close:hover:after,.modal-close:hover:before{background:#ffffff}.rsvp-form{display:grid;grid-gap:14px;gap:14px;max-width:720px;margin:0 auto;padding:0;border:0;background:transparent}.rsvp-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.rsvp-steps span{display:block;padding:11px 12px;border:1px solid var(--line);color:var(--muted);font-size:12px;font-weight:800;letter-spacing:.08em;text-align:center;text-transform:uppercase}.rsvp-steps span.is-active{border-color:var(--action);background:var(--action);color:#ffffff}.rsvp-steps span.is-disabled{opacity:.4}.rsvp-step{display:grid;grid-gap:14px;gap:14px}.rsvp-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end;padding-top:2px}.rsvp-actions button{min-width:170px;border-radius:0;background:#c37b5b;border-color:#c37b5b;color:#ffffff;box-shadow:0 10px 22px rgba(195,123,91,.24)}.rsvp-actions button:hover{border-color:var(--action);background:var(--action);color:#ffffff}.rsvp-actions [data-rsvp-back]{background:#ffffff;border-color:#d8d8d8;color:var(--ink);box-shadow:none}.form-section{display:grid;grid-gap:12px;gap:12px;padding:0;border:0;background:transparent}.form-section h3{margin-bottom:0;padding-bottom:11px;border-bottom:1px solid var(--line);font-size:16px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.guest-optional-toggle,.optional-field-toggle{display:flex;align-items:center;gap:10px;padding:12px 0;color:var(--ink);font-size:12px;font-weight:800;letter-spacing:.06em;line-height:1.3;text-transform:uppercase}.rsvp-modal-panel .optional-field-toggle{padding:10px 12px;border:1px dashed #c9c9c9;border-radius:8px;background:#fafafa}.guest-optional-toggle input,.optional-field-toggle input{width:16px;height:16px;margin:0;accent-color:#111111}.form-section-fields{display:grid;grid-gap:14px;gap:14px}fieldset,label{display:grid;grid-gap:6px;gap:6px}label span,legend{font-size:12px;font-weight:600;letter-spacing:.08em;line-height:1.3;text-transform:uppercase}input,select,textarea{width:100%;border:1px solid #d5d5d5;border-radius:8px;background:#fbfbfb;color:var(--ink);font:inherit;line-height:1.4;padding:11px 13px}textarea{resize:vertical}input:focus,select:focus,textarea:focus{border-color:#c37b5b;outline:3px solid rgba(195,123,91,.18)}.radio-group{margin:0;padding:0;border:0}.date-options label,.radio-group label{display:flex;align-items:center;gap:11px;padding:11px 12px;border:1px solid #dedede;border-radius:8px;background:#ffffff;cursor:pointer;transition:border-color .16s ease,background .16s ease,transform .16s ease}.date-options label:hover,.radio-group label:hover{border-color:#c37b5b;background:#fff7f4;transform:translateY(-1px)}.date-options label:has(input:checked),.radio-group label:has(input:checked){border-color:var(--action);background:var(--action);color:#ffffff}.date-options label:has(input:checked) input,.radio-group label:has(input:checked) input{accent-color:#ffffff}.date-options input,.radio-group input{width:16px;height:16px;margin:0;accent-color:#c37b5b}.attendance-details{display:grid;grid-gap:12px;gap:12px}.attendance-details[hidden]{display:none}.date-options{display:grid;grid-gap:9px;gap:9px;margin:0;padding:0;border:0}.radio-group{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:9px;gap:9px}.date-options legend,.radio-group legend{grid-column:1/-1}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.button,.hotel-book-link,button{display:inline-flex;align-items:center;justify-content:center;min-height:49px;border:1px solid var(--action);border-radius:0;background:var(--action);color:#ffffff;font-family:inherit;font-size:13px;font-weight:600;letter-spacing:.08em;line-height:1.2;padding:14px 26px;text-align:center;text-decoration:none;text-transform:uppercase;cursor:pointer}.button:hover,.hotel-book-link:hover,button:hover{border-color:var(--action);background:var(--action);color:#ffffff}.guest-page .button,.guest-page .hotel-book-link,.guest-page button{border-color:var(--guest-button-bg,var(--action));border-radius:var(--guest-radius,0);background:var(--guest-button-bg,var(--action));color:var(--guest-button-text,#ffffff)}.guest-page .button:hover,.guest-page .hotel-book-link:hover,.guest-page button:hover{border-color:var(--guest-button-bg,var(--action));background:var(--guest-button-bg,var(--action));color:var(--guest-button-text,#ffffff)}.form-note{min-height:22px;margin:0;color:var(--muted);font-size:13px;text-align:center}.rsvp-success{position:relative;display:grid;min-height:380px;place-items:center;overflow:hidden;padding:34px 18px 28px;text-align:center}.rsvp-success[hidden]{display:none}.rsvp-success h2{margin:0 0 8px;color:var(--ink);font-size:clamp(42px,8vw,72px);font-weight:700;letter-spacing:0;line-height:.95}.rsvp-success p{max-width:480px;margin:0 auto 10px;color:#313131;font-size:18px;line-height:1.45}.rsvp-success strong{color:#c37b5b;font-weight:800}.success-kicker{color:#c37b5b!important;font-size:12px!important;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.success-guest-link{width:min(100%,320px);margin-top:16px;border-radius:0;background:#c37b5b;border-color:#c37b5b;color:#ffffff}.confetti-burst{position:absolute;inset:0;pointer-events:none}.confetti-burst span{position:absolute;left:50%;top:42%;width:9px;height:18px;background:#c37b5b;opacity:0;transform:translate(-50%,-50%) rotate(0deg);animation:confetti-pop 1.2s cubic-bezier(.16,1,.3,1) forwards}.confetti-burst span:nth-child(2n){width:12px;height:12px;background:#111111;border-radius:50%}.confetti-burst span:nth-child(3n){background:#efc36b}.confetti-burst span:nth-child(4n){background:#ffffff;border:1px solid #111111}.confetti-burst span:first-child{--x:-210px;--y:-140px;--r:95deg;animation-delay:20ms}.confetti-burst span:nth-child(2){--x:-150px;--y:105px;--r:210deg;animation-delay:80ms}.confetti-burst span:nth-child(3){--x:-95px;--y:-190px;--r:35deg;animation-delay:0s}.confetti-burst span:nth-child(4){--x:-35px;--y:140px;--r:145deg;animation-delay:.12s}.confetti-burst span:nth-child(5){--x:35px;--y:-160px;--r:280deg;animation-delay:40ms}.confetti-burst span:nth-child(6){--x:95px;--y:120px;--r:15deg;animation-delay:90ms}.confetti-burst span:nth-child(7){--x:150px;--y:-125px;--r:250deg;animation-delay:30ms}.confetti-burst span:nth-child(8){--x:210px;--y:88px;--r:70deg;animation-delay:.11s}.confetti-burst span:nth-child(9){--x:-250px;--y:10px;--r:180deg;animation-delay:70ms}.confetti-burst span:nth-child(10){--x:255px;--y:-5px;--r:310deg;animation-delay:10ms}.confetti-burst span:nth-child(11){--x:-5px;--y:-220px;--r:130deg;animation-delay:50ms}.confetti-burst span:nth-child(12){--x:12px;--y:175px;--r:25deg;animation-delay:.13s}@keyframes confetti-pop{0%{opacity:0;transform:translate(-50%,-50%) scale(.4) rotate(0deg)}12%{opacity:1}to{opacity:0;transform:translate(calc(-50% + var(--x)),calc(-50% + var(--y))) scale(1) rotate(var(--r))}}.event-strip{grid-template-columns:repeat(3,minmax(280px,1fr));grid-gap:0;gap:0;width:100%;max-width:none;margin:0;padding:38px 42px;color:#ffffff}.event-strip,.event-strip article{display:grid;background:var(--ink)}.event-strip article{grid-template-columns:66px 1fr;align-items:center;grid-column-gap:22px;column-gap:22px;min-height:76px;padding:0 20px;border-right:0;text-align:left}.event-strip article:last-child{border-right:0}.event-strip h2{margin:0 0 3px;font-size:17px;letter-spacing:.04em;text-align:left}.event-strip h2,.event-strip p{grid-column:2;font-weight:700;line-height:1.25;text-transform:uppercase}.event-strip p{margin-bottom:3px;font-size:16px;letter-spacing:.05em}.event-strip p:last-child{font-size:15px;font-weight:400;letter-spacing:.08em}.event-icon{grid-column:1;grid-row:1/span 3;position:relative;display:block;width:62px;height:62px;margin:0;justify-self:center;color:#ffffff;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:5}.details,.timeline{background:#ffffff}.contact .narrow,.faq .narrow,.timeline .narrow{text-align:center}.details{padding-top:72px;padding-bottom:70px}.details-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(300px,.9fr);align-items:start;grid-gap:82px;gap:82px;max-width:var(--max);margin:0 auto}.details-copy h2{margin-bottom:24px;text-align:left}.details-copy p{color:#333333;font-size:14px;line-height:1.72}.details-copy .detail-time{margin-bottom:4px}.tick-list{display:grid;grid-gap:8px;gap:8px;margin:36px 0 0;padding:0;list-style:none}.tick-list li{position:relative;padding-left:32px;font-size:15px}.tick-list li:before{content:"";position:absolute;left:0;top:5px;width:18px;height:18px;border-radius:50%;background:var(--action)}.tick-list li:after{content:"";position:absolute;left:6px;top:10px;width:6px;height:3px;border-left:2px solid #ffffff;border-bottom:2px solid #ffffff;transform:rotate(-45deg)}.venue-image{margin:0}.venue-image img{aspect-ratio:1.2/1}.accommodation{padding-top:0}.hotel-feature{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(300px,.95fr);max-width:var(--max);margin:0 auto;overflow:hidden;background:var(--ink);color:#ffffff}.hotel-copy{padding:58px 54px 38px}.hotel-copy h2{margin-bottom:22px;font-size:clamp(24px,3vw,31px);text-align:left}.hotel-copy p{font-size:15px;line-height:1.75}.hotel-copy .hotel-time{margin-bottom:4px}.hotel-copy .button-row{display:grid;justify-content:stretch;max-width:320px;margin:28px 0 14px}.hotel-button,.hotel-button:hover{border-color:var(--action);background:var(--action);color:#ffffff}.hotel-note{position:relative;max-width:360px;margin:20px 0 0;padding-left:24px;font-size:12px!important;line-height:1.35!important}.hotel-note:before{content:"";position:absolute;top:2px;left:0;width:15px;height:15px;border-radius:50%;background:var(--action)}.hotel-image{margin:0}.hotel-image img{height:100%;min-height:380px}.button-row{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;margin:30px 0}.hotel-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:68px;gap:68px;max-width:var(--max);margin:54px auto 0}.hotel-list article{display:flex;flex-direction:column;align-items:flex-start;text-align:left}.hotel-logo-link{display:inline-block;line-height:0}.hotel-list img{width:auto;max-width:210px;height:70px;object-fit:contain;object-position:left center;margin-bottom:18px}.hotel-list p{min-height:0;color:var(--muted);font-size:13px;line-height:1.62}.hotel-book-link{min-height:42px;margin-top:auto;padding:12px 18px;font-size:11px}.split{display:grid;grid-template-columns:minmax(0,.95fr) minmax(280px,.75fr);align-items:center;grid-gap:54px;gap:54px;max-width:var(--max);margin:0 auto}.additional-events{padding-top:70px;padding-bottom:72px}.additional-events figure{margin:0}.additional-events img{aspect-ratio:1/1.26}.split h2{text-align:left}.events-copy p{color:var(--muted);font-size:13px;line-height:1.7}.plus-list{display:grid;grid-gap:14px;gap:14px;margin:30px 0;padding:0;list-style:none}.plus-list li{position:relative;padding-left:24px;color:#3f3f3f;font-size:14px;line-height:1.55}.plus-list li:before{content:"+";position:absolute;left:0;top:0;color:var(--action);font-weight:700}.quote-card{display:grid;grid-template-columns:58px 1fr;grid-column-gap:18px;column-gap:18px;align-items:center;margin:34px 0 0;padding:22px 26px;background:#f8f8f8;color:#555555;font-size:13px;line-height:1.55}.quote-card img{grid-row:span 2;width:58px;height:58px;border-radius:50%;object-fit:cover;aspect-ratio:1}cite{display:block;margin-top:4px;color:var(--ink);font-size:13px;font-weight:700;font-style:normal}.image-pair{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.85fr);grid-gap:30px;gap:30px;max-width:var(--max);margin:42px auto 58px}.image-pair img{height:390px}.timeline-list{display:grid;grid-gap:28px;gap:28px;max-width:var(--narrow);margin:0 auto}.timeline-list article{position:relative;display:grid;justify-items:center;grid-gap:10px;gap:10px;padding-top:28px;border-top:1px solid var(--line)}.timeline-list h3,.timeline-list p{text-align:center}.schedule-icon{position:relative;display:block;width:46px;height:46px;margin-bottom:4px;border:1px solid var(--ink);border-radius:50%}.schedule-icon:after,.schedule-icon:before{content:"";position:absolute}.schedule-icon-drinks:before{left:15px;top:9px;width:14px;height:15px;border:2px solid var(--ink);border-top:0;border-radius:0 0 10px 10px}.schedule-icon-drinks:after{left:21px;top:25px;width:2px;height:11px;background:var(--ink);box-shadow:-7px 10px 0 0 var(--ink),7px 10px 0 0 var(--ink)}.schedule-icon-ceremony:after,.schedule-icon-ceremony:before{top:17px;width:16px;height:16px;border:2px solid var(--ink);border-radius:50%}.schedule-icon-ceremony:before{left:10px}.schedule-icon-ceremony:after{right:10px}.schedule-icon-reception:before{left:11px;top:13px;width:22px;height:17px;border:2px solid var(--ink);border-radius:0 0 12px 12px}.schedule-icon-reception:after{left:14px;top:11px;width:16px;height:2px;background:var(--ink)}.schedule-icon-party:before{left:12px;transform:rotate(-20deg)}.schedule-icon-party:after,.schedule-icon-party:before{top:11px;width:8px;height:22px;border:2px solid var(--ink);border-radius:8px 8px 3px 3px}.schedule-icon-party:after{right:12px;transform:rotate(20deg)}.schedule-icon-tour-day:before{left:13px;top:8px;width:18px;height:18px;border:2px solid var(--ink);border-radius:50% 50% 50% 0;transform:rotate(-45deg)}.schedule-icon-tour-day:after{left:20px;top:15px;width:4px;height:4px;border:2px solid var(--ink);border-radius:50%}.faq{background:var(--soft)}details{border-top:1px solid var(--line);text-align:left}details:last-child{border-bottom:1px solid var(--line)}summary{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:66px;font-size:18px;font-weight:500;cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}summary:after{content:"+";flex:0 0 auto;font-size:24px;line-height:1}details[open] summary:after{content:"-"}details p{color:var(--muted)}.contact{padding:58px 24px 54px;background:var(--action);text-align:center}.contact,.contact a,.contact h2,.contact p{color:#ffffff}.contact a{-webkit-text-decoration-color:rgba(255,255,255,.7);text-decoration-color:rgba(255,255,255,.7)}.contact a:hover{color:#ffffff;-webkit-text-decoration-color:#ffffff;text-decoration-color:#ffffff}.footer-brand{margin:44px 0 0;font-size:13px;font-weight:600;letter-spacing:.08em}.admin-page,.guest-page{max-width:1180px;margin:0 auto;padding:42px 24px 70px}.guest-page{background:var(--guest-page-bg,var(--paper))}.guest-page a{color:var(--guest-link,#143d6b)}.guest-mobile-page{max-width:760px}.admin-header,.guest-hero{padding:42px;background:var(--ink);color:#ffffff;text-align:center}.guest-hero{border-radius:var(--guest-radius,0);background:var(--guest-hero-bg,var(--ink));color:var(--guest-hero-text,#ffffff)}.guest-hero-personal{display:grid;grid-gap:10px;gap:10px;text-align:left}.guest-hero-topline{display:flex;align-items:center;justify-content:space-between;gap:14px}.guest-hero-topline p{margin-bottom:0}.guest-live-indicator{display:inline-flex;align-items:center;justify-content:flex-end;gap:7px;margin-left:auto;color:color-mix(in srgb,var(--guest-hero-text,#ffffff) 78%,transparent);font-size:11px;font-weight:800;letter-spacing:.08em;line-height:1.2;text-align:right;text-transform:uppercase;white-space:nowrap}.guest-live-indicator span{width:8px;height:8px;border-radius:50%;background:#2ddf7b;box-shadow:0 0 0 0 rgba(45,223,123,.55);animation:live-pulse 1.8s ease-out infinite}@keyframes live-pulse{0%{box-shadow:0 0 0 0 rgba(45,223,123,.55)}70%{box-shadow:0 0 0 9px rgba(45,223,123,0)}to{box-shadow:0 0 0 0 rgba(45,223,123,0)}}.guest-hero-personal h1{max-width:620px;margin:0;color:var(--guest-hero-text,#ffffff);font-size:40px;line-height:1.08;text-align:left}.guest-countdown-copy{max-width:520px;margin:0;color:color-mix(in srgb,var(--guest-hero-text,#ffffff) 82%,transparent);font-size:17px;line-height:1.45}.guest-shortcut{display:none;max-width:520px;margin-top:8px;padding-top:14px;border-top:1px solid color-mix(in srgb,var(--guest-hero-text,#ffffff) 22%,transparent)}.guest-shortcut button{min-height:34px;padding:8px 13px;border:1px solid color-mix(in srgb,var(--guest-hero-text,#ffffff) 72%,transparent);border-radius:var(--guest-radius,0);background:transparent;color:var(--guest-hero-text,#ffffff);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.guest-shortcut p{max-width:430px;margin:9px 0 0;font-size:12px;line-height:1.45}.admin-header p,.guest-hero p,.guest-hero span{color:rgba(255,255,255,.78)}.guest-hero p,.guest-hero span{color:color-mix(in srgb,var(--guest-hero-text,#ffffff) 78%,transparent)}.admin-section,.guest-section{margin-top:34px;padding:30px;border:1px solid var(--line);background:#ffffff}.guest-section{border-radius:var(--guest-radius,0);background:var(--guest-card-bg,#ffffff)}.admin-section-wide{padding:34px}.admin-section-heading-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.admin-section-heading-row h2{margin:0}.admin-section-heading-row button{min-height:40px;padding:10px 18px;font-size:12px}.admin-section h2,.guest-section h2{text-align:left}.guest-section h2{font-size:22px;line-height:1.15}.guest-section-heading{display:grid;grid-gap:4px;gap:4px;margin-bottom:20px}.guest-section-heading p{margin:0;color:var(--muted);font-size:14px}.guest-section-heading-action{display:grid;grid-template-columns:1fr auto;grid-gap:14px;gap:14px;align-items:start}.guest-release-note{border-color:var(--guest-button-bg,#c37b5b)}.guest-release-note ul{display:grid;grid-gap:8px;gap:8px;margin:0;padding:0;list-style:none}.guest-release-note li{padding-left:18px;position:relative;color:var(--muted);font-size:14px;line-height:1.45}.guest-release-note li:before{content:"";position:absolute;left:0;top:.62em;width:7px;height:7px;background:var(--guest-button-bg,#c37b5b)}.guest-status-card{display:grid;grid-gap:8px;gap:8px;background:var(--guest-summary-bg,#111111);color:var(--guest-summary-text,#ffffff)}.guest-status-header{display:grid;grid-template-columns:1fr auto;grid-gap:14px;gap:14px;align-items:start}.guest-status-header button{min-height:36px;border-color:var(--guest-summary-text,#ffffff);padding:8px 16px;font-size:12px}.guest-status-header button,.guest-status-header button:hover{background:transparent;color:var(--guest-summary-text,#ffffff)}.guest-status-header button:hover{opacity:.82}.guest-summary{border-color:var(--guest-summary-bg,#111111);background:var(--guest-summary-bg,#111111);color:var(--guest-summary-text,#ffffff)}.guest-status-card span{color:color-mix(in srgb,var(--guest-summary-text,#ffffff) 72%,transparent);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.guest-status-card strong{font-size:18px;line-height:1.35}.guest-status-card small{color:color-mix(in srgb,var(--guest-summary-text,#ffffff) 72%,transparent);font-size:12px;line-height:1.45}.guest-status-card dl{display:grid;grid-gap:6px;gap:6px;margin:6px 0 0;padding-top:12px;border-top:1px solid rgba(255,255,255,.18)}.guest-status-card dl div{display:grid;grid-template-columns:92px 1fr;grid-gap:8px;gap:8px}.guest-status-card dd,.guest-status-card dt{margin:0;font-size:12px;line-height:1.45}.guest-status-card dt{font-weight:700}.guest-edit-note,.guest-status-card dt{color:color-mix(in srgb,var(--guest-summary-text,#ffffff) 72%,transparent)}.guest-edit-note{margin:4px 0 0;font-size:13px}.guest-status-card .guest-edit-form{margin-top:8px;padding-top:14px;border-top:1px solid rgba(255,255,255,.18)}.guest-status-card .guest-date-options span,.guest-status-card .guest-edit-form label span,.guest-status-card .guest-edit-form legend{color:color-mix(in srgb,var(--guest-summary-text,#ffffff) 82%,transparent)}.guest-status-card .guest-date-options label{border-bottom-color:rgba(255,255,255,.18)}.guest-save-button,.guest-save-button:hover{border-color:var(--guest-button-bg,#ffffff);background:var(--guest-button-bg,#ffffff);color:var(--guest-button-text,#111111)}.guest-save-button:hover{opacity:.86}.guest-details-list{display:grid;grid-gap:14px;gap:14px;margin:0}.guest-details-list div{display:grid;grid-template-columns:180px 1fr;grid-gap:18px;gap:18px;padding-bottom:14px;border-bottom:1px solid var(--line)}.guest-details-list dt{font-weight:700}.guest-details-list dd{margin:0;color:var(--muted)}.guest-schedule{display:grid;grid-gap:18px;gap:18px}.guest-schedule article{padding-bottom:18px;border-bottom:1px solid var(--line)}.guest-table-card{display:grid;grid-gap:12px;gap:12px;padding:18px;border:2px solid var(--ink);background:#ffffff}.guest-table-card span{color:var(--ink);font-size:26px;font-weight:800;line-height:1.1}.guest-table-card ul{display:grid;grid-gap:6px;gap:6px;margin:0;padding:0;list-style:none}.guest-table-card li{color:var(--muted);font-size:13px;line-height:1.4}.guest-edit-form{display:grid;grid-gap:18px;gap:18px}.guest-edit-heading{grid-template-columns:1fr auto;align-items:center;margin-bottom:0}.guest-edit-heading button{min-height:40px;padding:10px 18px;font-size:12px}.guest-date-options{display:grid;grid-gap:0;gap:0;margin:0;padding:0;border:0}.guest-date-options label{display:flex;align-items:center;gap:11px;padding:13px 0;border-bottom:1px solid var(--line)}.guest-date-options input{width:16px;height:16px;margin:0;accent-color:var(--ink)}.guest-save-message{margin:0;padding:12px 14px;background:#f7f4ef;color:var(--ink);font-size:13px;font-weight:700}.guest-status-card .guest-save-message{border:1px solid #ffffff;background:transparent;color:#ffffff}.guest-timeline{gap:18px}.guest-schedule-section .guest-section-heading{gap:2px;margin-bottom:8px}.guest-schedule-section .guest-section-heading h2{margin-bottom:0}.guest-schedule-section .guest-section-heading p{font-size:13px;line-height:1.35}.guest-calendar-button{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:8px 14px;border:1px solid var(--guest-button-bg,var(--ink));border-radius:var(--guest-radius,0);font-size:11px;font-weight:800;letter-spacing:.08em;line-height:1.2;text-decoration:none;text-transform:uppercase;white-space:nowrap}.guest-calendar-button,.guest-calendar-button:hover{background:var(--guest-button-bg,var(--ink));color:var(--guest-button-text,#ffffff)!important}.guest-calendar-button:hover{border-color:var(--guest-button-bg,var(--ink));opacity:.86}.guest-day{position:relative;display:grid;grid-gap:0;gap:0}.guest-day h3{margin:0 0 8px;color:var(--muted);font-size:12px;letter-spacing:.08em;text-transform:none;text-transform:uppercase}.guest-timeline article{position:relative;display:grid;grid-template-columns:78px 1fr;grid-gap:16px;gap:16px;padding:12px 0 22px 20px;border:0!important}.guest-timeline article:before{content:"";position:absolute;top:21px;left:0;z-index:1;width:9px;height:9px;border:2px solid #111111;border-radius:50%;background:#ffffff}.guest-timeline article:after{content:"";position:absolute;top:33px;bottom:-21px;left:5px;width:1px;background:var(--line)}.guest-day article:last-child:after{display:none}.guest-schedule-when{display:grid;align-content:start;grid-gap:3px;gap:3px;padding-top:1px}.guest-schedule-when span{color:var(--muted);font-size:11px;font-weight:700;line-height:1.25}.guest-timeline time{color:var(--ink);font-size:14px;font-weight:800;line-height:1.25}.guest-timeline article strong{display:block;font-size:15px;line-height:1.35}.guest-timeline article p{margin:4px 0 0;color:var(--muted);font-size:13px;line-height:1.45}.guest-timeline article.has-occurred{opacity:.46}.guest-timeline article.has-occurred:before{border-color:var(--muted);background:var(--line)}.guest-timeline article.has-occurred .event-address-link,.guest-timeline article.has-occurred p,.guest-timeline article.has-occurred strong,.guest-timeline article.has-occurred time{color:var(--muted)}.guest-timeline .event-address-link{display:inline-block;margin-top:7px;font-size:12px;font-weight:800}.schedule-menu-list{display:grid;grid-gap:7px;gap:7px;margin:6px 0 0;padding:12px 14px;border:1px solid var(--line);background:#f7f4ef;list-style:none}.schedule-menu-block{margin-top:12px}.schedule-menu-block>span{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.schedule-menu-list li{display:flex;justify-content:space-between;gap:10px;align-items:center;color:var(--ink);font-size:13px;line-height:1.4}.food-dish-markers{display:inline-flex;flex-wrap:wrap;gap:4px;justify-content:flex-end}.food-dish-marker{display:inline-grid;place-items:center;width:24px;height:24px;flex:0 0 auto;border:1px solid transparent;border-radius:50%;font-size:10px;font-weight:800;line-height:1}.food-dish-marker.is-vegetarian{background:#218c4a;color:#ffffff}.food-dish-marker.is-vegan{background:#64a832;color:#ffffff}.food-dish-marker.is-spicy{background:#c6372d;color:#ffffff;font-size:12px}.food-dish-marker.is-gluten-free{background:#d9a62a;color:#111111}.guest-food-menu{display:grid;grid-gap:8px;gap:8px;border-color:#111111}.guest-food-menu .guest-section-heading{gap:2px;margin-bottom:2px}.guest-food-menu .guest-section-heading h2{margin-bottom:0}.guest-food-menu .guest-section-heading p{font-size:13px;line-height:1.35}.guest-food-menu .schedule-menu-block{margin-top:0}.guest-food-menu .schedule-menu-list{margin-top:4px;padding:8px 10px;background:#ffffff}.guest-faq{display:grid;grid-gap:0;gap:0}.guest-faq .guest-section-heading{margin-bottom:12px}.guest-faq details{background:#ffffff}.guest-faq summary{font-size:13px}.guest-faq details p{font-size:13px;line-height:1.55}.guest-gifts{display:grid;grid-gap:18px;gap:18px;padding:0;border:0;background:transparent}.guest-gift-options{display:grid;grid-gap:10px;gap:10px}.guest-stripe-gift-box{display:grid;grid-gap:14px;gap:14px;padding:18px;border:1px solid var(--line);background:#ffffff}.guest-gifts .guest-stripe-gift-box{border-color:#111111;border-width:2px;box-shadow:0 14px 34px rgba(17,17,17,.08)}.guest-gift-note{display:grid;grid-gap:4px;gap:4px;padding:0 0 14px;border-bottom:1px solid var(--line)}.guest-gift-note strong{font-size:16px}.guest-gift-note span{color:var(--muted);font-size:13px;font-weight:500;letter-spacing:0;line-height:1.45;text-transform:none}.guest-stripe-gift-box label{display:grid;grid-gap:7px;gap:7px}.gift-modal-amount,.guest-stripe-gift-box span{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.guest-stripe-gift-box input,.guest-stripe-gift-box select{width:100%;min-height:46px;padding:11px 12px;border:1px solid var(--line);border-radius:0;font:inherit;background:#f7f4ef;color:var(--ink)}.guest-stripe-gift-box p{margin:0;font-size:13px;color:var(--muted)}.guest-payment-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.guest-payment-actions button{width:100%}.guest-gifts .guest-payment-actions button{min-height:46px}.guest-gifts .guest-payment-actions button:first-child{border-color:#c37b5b;background:#c37b5b;color:#ffffff}.guest-gifts .guest-payment-actions button:first-child:hover{background:#c37b5b;color:#ffffff;opacity:.86}.guest-bank-details{display:grid;grid-gap:10px;gap:10px;margin:0;padding:16px;border:1px solid var(--line);background:#f7f4ef}.guest-bank-details div{display:grid;grid-template-columns:140px 1fr;grid-gap:12px;gap:12px}.guest-bank-details dd,.guest-bank-details dt{margin:0;font-size:13px;line-height:1.45}.guest-bank-details dt{font-weight:700}.guest-hotels{display:grid;grid-gap:18px;gap:18px}.guest-booked-hotel-button{min-height:36px;padding:8px 16px;font-size:12px;white-space:nowrap}.guest-hotel-confirmed{display:grid;grid-gap:14px;gap:14px;border-color:#111111;background:#111111;color:#ffffff}.guest-hotel-confirmed .guest-section-heading p,.guest-hotel-confirmed p{color:rgba(255,255,255,.78)}.guest-hotel-confirmed>p{margin:0;padding-top:12px;border-top:1px solid rgba(255,255,255,.2);font-size:16px;font-weight:800}.guest-hotel-list{display:grid;grid-gap:14px;gap:14px}.guest-hotel{position:relative;display:grid;grid-template-columns:96px 1fr;grid-gap:14px;gap:14px;padding:16px;border:1px solid var(--line)}.guest-hotel.is-featured{border-color:#111111;border-width:3px;margin-top:12px;padding-top:21px}.guest-hotel-tag{position:absolute;top:-14px;left:50%;padding:6px 14px;border:2px solid #111111;background:#ffffff;color:#111111;font-size:10px;font-weight:900;letter-spacing:.08em;line-height:1;text-transform:uppercase;transform:translateX(-50%);white-space:nowrap}.guest-hotel img{width:96px;height:96px;object-fit:contain;background:#f7f4ef}.guest-hotel h3{display:flex;flex-wrap:wrap;gap:8px;align-items:baseline;margin:0 0 3px;font-size:17px;text-transform:none}.guest-hotel h3 span{color:var(--muted);font-size:12px;font-weight:700}.guest-hotel p{margin:0 0 12px;font-size:13px}.guest-gift-modal{position:fixed;z-index:140;inset:0;display:grid;place-items:center;padding:18px;background:rgba(17,17,17,.74)}.guest-gift-modal-panel{position:relative;width:min(720px,100%);max-height:90vh;overflow:auto;padding:32px;background:#ffffff}.guest-gift-modal-panel h2{text-align:left}.guest-gift-modal-panel .hotel-modal-title{font-size:24px}.guest-hotel-booking-form{display:grid;grid-gap:14px;gap:14px;margin:18px 0}.guest-hotel-booking-form label{display:grid;grid-gap:7px;gap:7px}.guest-hotel-booking-form span{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.guest-hotel-booking-form input{width:100%;min-height:46px;padding:11px 12px;border:1px solid var(--line);border-radius:0;font:inherit;background:#f7f4ef;color:var(--ink)}.stripe-gift-checkout{min-height:420px;margin:18px 0}.gift-amount-form{display:grid;grid-gap:14px;gap:14px;margin:18px 0}.admin-login{display:grid;grid-template-columns:minmax(220px,1fr) 120px auto;grid-gap:12px;gap:12px;max-width:720px;margin:24px auto 0}.admin-actions{display:flex;justify-content:center;gap:12px;margin-top:24px}.admin-nav{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px;padding:12px;border:1px solid var(--line);background:#ffffff}.admin-nav a{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:10px 18px;border:1px solid transparent;color:var(--ink);font-size:12px;font-weight:700;letter-spacing:.08em;text-decoration:none;text-transform:uppercase}.admin-nav a.is-active,.admin-nav a:hover{border-color:var(--ink);background:var(--ink);color:#ffffff}.admin-help,.admin-message{font-size:13px}.admin-countdown{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-bottom:12px;color:var(--ink)}.admin-countdown span{padding:5px 9px;background:#111111;color:#ffffff;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.admin-table-wrap{overflow-x:auto}.admin-page table{width:100%;border-collapse:collapse;font-size:13px}.admin-page td,.admin-page th{padding:11px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.guest-name-cell{display:grid;grid-gap:3px;gap:3px;min-width:180px}.guest-name-cell strong{font-size:13px;line-height:1.3}.guest-name-cell span{color:var(--muted);font-size:12px;line-height:1.3}.guest-detail-cell{min-width:118px;max-width:220px;color:var(--muted);line-height:1.35;overflow-wrap:anywhere}.guest-detail-cell a{color:var(--ink)}.guest-day-cell{text-align:center!important}.guest-day-cell input{width:17px;height:17px;margin:0;accent-color:#111111}.guest-row-actions{display:flex;flex-wrap:wrap;gap:7px;min-width:190px}.guest-row-actions a,.guest-row-actions button{min-height:32px;padding:8px 10px;font-size:10px}.contact-modal-panel{width:min(520px,100%)}.contact-detail-list{display:grid;grid-gap:0;gap:0;margin:0}.contact-detail-list div{display:grid;grid-template-columns:92px 1fr;grid-gap:14px;gap:14px;padding:13px 0;border-bottom:1px solid var(--line)}.contact-detail-list dd,.contact-detail-list dt{margin:0;font-size:13px;line-height:1.4}.contact-detail-list dt{font-weight:800;letter-spacing:.06em;text-transform:uppercase}.template-grid{display:grid;grid-template-columns:1fr;grid-gap:24px;gap:24px}.template-editor{display:grid;grid-gap:16px;gap:16px;padding:28px;border:1px solid var(--line)}.template-editor h3{text-transform:none}.email-workflow-list{display:grid;grid-gap:14px;gap:14px}.email-workflow-card{display:grid;grid-template-columns:42px minmax(0,1fr);grid-gap:18px;gap:18px;align-items:start;padding:18px;border:1px solid var(--line);background:#ffffff}.email-workflow-step{display:grid;place-items:center;width:36px;height:36px;border:2px solid #111111;border-radius:50%;font-weight:800}.email-workflow-main{min-width:0}.email-workflow-title{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:4px}.email-workflow-title h3{margin:0;font-size:18px;letter-spacing:.04em}.email-workflow-main p{margin:0 0 10px;color:var(--muted)}.email-workflow-meta{padding:7px 10px;border:1px solid var(--line);font-size:12px;font-weight:700;letter-spacing:.06em}.email-workflow-meta,.workflow-pill{display:inline-flex;text-transform:uppercase}.workflow-pill{padding:5px 8px;background:#f0eee9;color:#111111;font-size:11px;font-weight:800;letter-spacing:.1em}.workflow-pill.is-instant{background:#111111;color:#ffffff}.email-schedule-controls{display:grid;grid-template-columns:minmax(190px,230px) minmax(0,1fr);grid-gap:12px;gap:12px;align-items:stretch;max-width:960px;padding:10px;border:1px solid var(--line);background:#fbfaf7}.email-send-summary{display:grid;grid-gap:3px;gap:3px;min-width:0}.email-send-summary span{font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.email-send-summary strong{font-size:14px;line-height:1.25}.email-send-fields{display:grid;grid-template-columns:128px minmax(190px,1fr) minmax(150px,180px) minmax(128px,150px);grid-gap:8px;gap:8px;align-items:end}.email-send-fields label:not(.workflow-toggle) span{font-size:10px}.email-send-fields input,.email-send-fields select{min-height:38px;padding:8px 10px;font-size:12px}.workflow-toggle{display:flex;align-items:center;gap:8px;min-height:38px;padding:0 10px;border:1px solid var(--line);background:#ffffff;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.workflow-toggle input{width:16px;height:16px}.email-workflow-actions{grid-column:2;display:flex;gap:8px;align-items:center;justify-content:flex-start}.email-template-modal{width:min(1080px,100%)}.modal-title-row{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:18px}.modal-title-row p{margin:4px 0 0;color:var(--muted)}.editor-label{display:block;margin-bottom:9px;font-size:12px;font-weight:600;letter-spacing:.08em;line-height:1.3;text-transform:uppercase}.html-editor{display:grid;grid-gap:10px;gap:10px}.editor-toolbar{display:flex;flex-wrap:wrap;gap:7px;align-items:center;padding:10px;border:1px solid var(--line);background:#f7f4ef}.editor-toolbar button{min-height:34px;padding:8px 10px;font-size:11px}.editor-toolbar label{display:flex;gap:7px;align-items:center;width:auto}.editor-toolbar label span{font-size:10px}.editor-toolbar input[type=color]{width:38px;height:34px;padding:3px}.editor-toolbar select{width:92px;min-height:34px;padding:7px 8px;font-size:12px}.editor-surface{min-height:440px;max-height:620px;overflow:auto;padding:18px;border:1px solid #cfcfcf;background:#ffffff;font:14px/1.55 Arial,Helvetica,sans-serif}.editor-surface:focus{border-color:var(--ink);outline:1px solid var(--ink)}.schedule-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:16px;gap:16px}.schedule-form>button{align-self:start;min-height:46px}.schedule-modal-form{margin-top:18px}.schedule-modal-actions{grid-column:1/-1;justify-content:flex-start;margin-top:0}.schedule-message{margin:0 0 18px;padding:12px 14px;border:1px solid var(--line);background:#f7f4ef;color:var(--ink);font-size:13px;font-weight:700}.section-save-message{margin:14px 0 0;padding:13px 15px;border:1px solid var(--ink);background:#ffffff;color:var(--ink);font-size:13px;font-weight:800;letter-spacing:.04em}.schedule-address-field,.schedule-description-field{grid-column:1/-1}.event-address-link{display:inline-block;margin-top:4px;font-weight:700}.schedule-admin-list{display:grid;grid-gap:14px;gap:14px;margin-top:28px}.schedule-admin-list article{display:grid;grid-template-columns:1fr auto;grid-gap:18px;gap:18px;align-items:start;padding:18px;border:1px solid var(--line)}.schedule-admin-list p{margin-bottom:6px}.schedule-admin-list small{color:var(--muted)}.table-generator{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;grid-gap:14px;gap:14px;align-items:end}.table-admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));grid-gap:18px;gap:18px;margin-top:22px}.table-editor{align-content:start}.table-seat-input{display:grid;grid-template-columns:auto 72px;grid-gap:8px;gap:8px;align-items:center;width:auto}.table-seat-input span{margin:0}.table-seat-list{display:grid;grid-gap:9px;gap:9px;margin-top:14px}.table-seat-list label{display:grid;grid-template-columns:58px 1fr;grid-gap:10px;gap:10px;align-items:center}.table-seat-list span{margin:0;font-size:11px}.customisation-preview{display:grid;grid-gap:14px;gap:14px;margin:18px 0 24px;padding:18px;border:1px solid var(--line);background:var(--preview-page);color:var(--preview-text)}.custom-preview-card,.custom-preview-hero{display:grid;grid-gap:8px;gap:8px;padding:22px;border-radius:var(--preview-radius)}.custom-preview-hero{background:var(--preview-hero);color:var(--preview-hero-text)}.custom-preview-hero span{color:color-mix(in srgb,var(--preview-hero-text) 75%,transparent);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.custom-preview-hero strong{font-size:24px;line-height:1.12}.custom-preview-card{border:1px solid var(--preview-line);background:var(--preview-summary);color:var(--preview-summary-text)}.custom-preview-card p{margin:0;color:color-mix(in srgb,var(--preview-summary-text) 75%,transparent)}.custom-preview-card button{justify-self:start;min-height:38px;padding:9px 18px;border-radius:var(--preview-radius);background:var(--preview-button);color:var(--preview-button-text)}.customisation-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));grid-gap:16px;gap:16px}.theme-color-field div{display:grid;grid-template-columns:46px minmax(0,1fr);grid-gap:8px;gap:8px}.theme-color-field input[type=color]{width:46px;min-height:46px;padding:4px}.schedule-assignment-summary{display:grid;grid-gap:3px;gap:3px;margin-top:8px}.schedule-admin-actions{display:flex;flex-wrap:wrap;gap:8px}.schedule-admin-actions button{min-height:38px;padding:10px 14px;font-size:11px}.gift-settings-form{margin-top:22px}.food-menu-form,.gift-settings-form{display:grid;grid-gap:18px;gap:18px}.food-save-message{margin:16px 0 0;padding:12px 14px;border:1px solid var(--line);background:#f7f4ef;color:var(--ink);font-size:13px;font-weight:700}.food-dish-list{display:grid;grid-gap:10px;gap:10px}.food-dish-row{display:grid;grid-template-columns:minmax(180px,1fr) minmax(360px,auto) auto;grid-gap:10px;gap:10px;align-items:start}.food-dish-tags{display:flex;flex-wrap:wrap;gap:8px;padding-top:3px}.food-dish-tags label{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:7px 9px;border:1px solid var(--line);background:#ffffff;font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.food-dish-tags input{width:14px;height:14px;margin:0;accent-color:#111111}.food-dish-row button{min-height:40px;padding:10px 14px;font-size:11px}.gift-method{display:grid;grid-gap:16px;gap:16px;padding:22px;border:1px solid var(--line);background:#ffffff}.gift-toggle{display:flex;align-items:center;gap:11px;padding-bottom:12px;border-bottom:1px solid var(--line)}.gift-toggle input{width:16px;height:16px;margin:0;accent-color:var(--ink)}.gift-bank-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px}.gift-bank-instructions{grid-column:1/-1}.hotels-admin-list{display:grid;grid-gap:18px;gap:18px;margin:22px 0}.hotel-editor{display:grid;grid-gap:16px;gap:16px;padding:22px;border:1px solid var(--line)}.hotel-editor-heading{display:flex;justify-content:space-between;gap:16px;align-items:center;padding-bottom:12px;border-bottom:1px solid var(--line)}.hotel-editor-heading h3{margin:0;text-transform:none}.admin-modal{position:fixed;z-index:120;inset:0;display:grid;place-items:center;padding:24px;background:rgba(17,17,17,.72)}.admin-modal-panel{width:min(760px,100%);max-height:88vh;overflow:auto;padding:30px;background:#ffffff}.admin-modal-panel h2{text-align:left}.assign-list{display:grid;grid-gap:10px;gap:10px;margin:20px 0}.assign-list label{display:flex;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid var(--line)}.assign-list input{width:16px;height:16px}.schedule-date-targets{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px 14px;margin:0;padding:10px 12px 12px;border:1px solid var(--line)}.schedule-date-targets legend{padding:0 6px;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.schedule-date-targets label{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:700}.schedule-date-targets input{width:14px;height:14px;margin:0}.schedule-address-toggle{grid-column:1/-1;display:inline-flex;align-items:center;gap:8px;margin:0;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.schedule-address-toggle input{width:15px;height:15px;margin:0;accent-color:#111111}.schedule-address-field input:disabled{opacity:.55;cursor:not-allowed}@media (max-width:860px){.details-grid,.email-schedule-controls,.email-send-fields,.email-workflow-card,.event-strip,.food-dish-row,.gift-bank-grid,.hotel-feature,.hotel-list,.image-pair,.schedule-admin-list article,.schedule-form,.split,.table-generator,.template-grid{grid-template-columns:1fr}.email-workflow-actions,.modal-title-row{align-items:stretch;flex-direction:column}.email-workflow-step{width:30px;height:30px}.event-strip{width:100%;padding:28px 22px;gap:22px}.event-strip article{grid-template-columns:58px 1fr;column-gap:18px;min-height:70px;padding:0}.event-icon{width:58px;height:58px}.event-strip h2{font-size:15px}.event-strip p{font-size:14px}.event-strip p:last-child{font-size:13px}.split h2{text-align:center}.hotel-list h3,.hotel-list p{min-height:0}.details-grid{gap:34px}.hotel-copy{padding:42px 34px 30px}.hotel-image img{min-height:0;aspect-ratio:1.25/1}.image-pair img{height:auto}.guest-shortcut{display:block}}@media (max-width:640px){body{font-size:15px}.guest-page{padding:0 0 44px}.guest-hero{padding:32px 20px 34px}.guest-hero-topline{align-items:flex-start}.guest-live-indicator{max-width:160px;white-space:normal}.guest-hero-personal h1{font-size:31px}.guest-countdown-copy{font-size:15px}.guest-section{margin-top:0;padding:26px 20px;border-right:0;border-left:0}.guest-status-card{padding:16px}.guest-section-heading-action{grid-template-columns:1fr}.guest-booked-hotel-button{justify-self:start}.guest-edit-heading button{min-width:74px}.guest-timeline article{grid-template-columns:64px 1fr;gap:12px;padding-left:18px}.guest-schedule-when span{font-size:10px}.guest-timeline time{font-size:13px}.guest-gift-options{display:grid}.guest-hotel,.guest-payment-actions{grid-template-columns:1fr}.guest-hotel img{width:100%;height:130px}.guest-bank-details div{grid-template-columns:1fr;gap:2px}.guest-gift-modal-panel{padding:30px 18px 20px}.site-header{padding:22px 20px 18px;font-size:15px}.brand{gap:9px}.date-mark{white-space:normal;text-align:right}.section{padding:44px 20px}.hero{padding-top:34px}.wide-image{margin-top:34px}.modal{padding:16px}.modal-panel{padding:36px 18px 22px}.rsvp-modal-panel{padding:25px 16px 18px}.rsvp-modal-kicker{margin-right:42px}.form-grid,.radio-group{grid-template-columns:1fr}.event-strip{padding-top:28px;padding-bottom:28px}.event-strip article{min-height:0}.button-row{align-items:stretch;flex-direction:column}.button-row .button,button{width:100%}.additional-events,.details{padding-top:48px;padding-bottom:50px}.details-copy h2,.hotel-copy h2,.split h2{text-align:left}.hotel-list{gap:34px}summary{min-height:60px;font-size:16px}}