.welcome-banner{display:grid;grid-template-columns:1.15fr 1fr;background:#234d6e;color:#fff;border-radius:20px;overflow:hidden}.welcome-banner>div{padding:32px}.welcome-banner h2{font:400 2.5rem/1.1 Georgia,serif;margin:16px 0}.welcome-banner p{line-height:1.6;max-width:360px}.welcome-banner img{height:100%;min-height:300px;width:100%;object-fit:cover}.campaign .card-body{display:flex;flex-direction:column;height:100%}.campaign p{flex:1}.coupon{display:flex;align-items:center;justify-content:space-between;border:1px dashed #66869d;border-radius:8px;padding:8px 12px;margin:8px 0 16px;background:#f2f6f9;gap:8px}.coupon code{font-size:.9rem;overflow-wrap:anywhere;color:#234d6e}.coupon button{border:0;background:transparent;color:#234d6e;cursor:pointer;padding:8px;min-height:44px}.campaign-note{font-size:.8rem;line-height:1.7;color:var(--muted)}.event-invite,.event-overview{padding:28px;background:#eaf0f5;border-radius:16px;margin:26px 0;display:flex;align-items:center;justify-content:space-between;gap:24px}.event-invite h2,.event-overview h2{font:400 1.9rem/1.2 Georgia,serif}.event-invite p,.event-overview p{line-height:1.7;max-width:530px}.event-invite .btn{flex-shrink:0}.event-contact{display:grid;gap:14px;min-width:180px}.event-contact small{line-height:1.6}.event-contact a{color:#234d6e;font-weight:bold}.booking-engine iframe{width:100%;height:850px;border:1px solid var(--line);border-radius:12px;background:white}.wide{grid-column:1/-1}.event-form fieldset{border:0;padding:0;margin:24px 0 32px;min-width:0}.event-form legend{font-size:1.2rem;font-weight:700;margin-bottom:20px}.event-form textarea{font:inherit;width:100%;padding:14px;border:1px solid #aebfbc;border-radius:8px;resize:vertical;min-height:110px}.check-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.check-option{display:flex;align-items:flex-start;gap:10px;line-height:1.5;font-size:.88rem;font-weight:400;padding:10px;border:1px solid var(--line);border-radius:8px}.check-option input{width:20px;height:20px;min-height:20px;flex-shrink:0;margin:0;accent-color:#234d6e}.event-extra{margin-top:20px}.consent{border:0;padding:0;margin-bottom:24px}.review-actions{display:flex;flex-wrap:wrap;gap:12px}.event-summary{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;font-size:.9rem;line-height:1.7;background:#f3f6f8;padding:20px;border-radius:12px}.textbutton-link{border:0;background:transparent;text-decoration:underline;padding:12px;color:#234d6e;cursor:pointer;min-height:44px}.table-scroll{overflow-x:auto;margin-bottom:20px}table{width:100%;border-collapse:collapse;font-size:.85rem}th,td{padding:12px;text-align:left;border-bottom:1px solid var(--line)}caption{text-align:left;font-size:.8rem;line-height:1.6;padding-bottom:12px}#event-review{scroll-margin-top:20px}#mobilenav{grid-template-columns:repeat(6,minmax(0,1fr))}@media(max-width:720px){.welcome-banner{grid-template-columns:1fr}.welcome-banner>div{padding:25px}.welcome-banner h2{font-size:2rem}.welcome-banner img{min-height:0;height:170px}.event-invite,.event-overview{display:block;padding:22px}.event-contact{margin-top:22px}.event-invite .btn{margin-top:12px}.check-grid{grid-template-columns:1fr 1fr}.booking-engine iframe{height:760px}.booking-engine .section-head{display:block}.booking-engine .section-head a{display:inline-block;margin-top:12px}.coupon code{font-size:.8rem}.event-summary{padding:15px}.review-actions{display:grid;grid-template-columns:1fr}.large-text .check-grid{grid-template-columns:1fr}.large-text #mobilenav a{font-size:.59rem}#mobilenav a{font-size:.6rem}}

.promo-carousel{min-width:0;margin:18px 0}.carousel-controls{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}.carousel-controls>div{display:flex;gap:8px}.carousel-controls button{width:48px;height:48px;border:1px solid #234d6e;border-radius:50%;background:white;color:#234d6e;font-size:1.5rem;cursor:pointer}.carousel-controls button:disabled{opacity:.35;cursor:default}.promo-track{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;padding:4px 3px 14px;scrollbar-width:thin;position:relative}.promo-track>.campaign{flex:0 0 calc((100% - 18px)/2);min-width:0;scroll-snap-align:start;margin:0}.promo-track:focus-visible,.carousel-controls button:focus-visible{outline:3px solid #234d6e;outline-offset:3px}.carousel-position{font-size:.8rem;color:var(--muted);margin:8px 0}@media(max-width:720px){.promo-track>.campaign{flex-basis:90%}.carousel-controls .muted{font-size:.8rem}.promo-track{gap:12px}}@media(prefers-reduced-motion:reduce){.promo-track{scroll-behavior:auto}}
.update-panel{padding:16px 24px;background:#eaf0f5;border-bottom:1px solid #bdcdd9;display:flex;gap:20px;align-items:center;justify-content:center}.update-panel p{max-width:650px;line-height:1.5;margin:0}.update-panel button{flex-shrink:0}@media(max-width:720px){.update-panel{display:block}.update-panel button{margin-top:12px}}
