.booking-main{padding-bottom:38px}.booking-shell{position:relative;max-width:1040px;margin:38px auto 20px;padding:30px;border:1px solid rgba(75,163,255,.28);border-radius:30px;background:linear-gradient(180deg,rgba(7,14,28,.96),rgba(4,8,17,.98));box-shadow:0 26px 80px rgba(0,0,0,.46);overflow:hidden}.booking-glow{position:absolute;border-radius:50%;filter:blur(60px);opacity:.24;pointer-events:none}.booking-glow-one{width:360px;height:360px;left:-150px;top:-120px;background:#008dff}.booking-glow-two{width:320px;height:320px;right:-130px;top:260px;background:#143dff}.booking-header{position:relative;z-index:1;text-align:center;max-width:820px;margin:0 auto 28px}.booking-logo-wrap{display:grid;place-items:center;margin-bottom:8px}.booking-logo-wrap img{width:min(320px,70vw);height:auto}.booking-kicker{margin:0 0 8px;color:#7fc4ff;font-size:.8rem;letter-spacing:.18em;font-weight:900}.booking-header h1{margin:0;font-size:clamp(2rem,5vw,3.5rem);line-height:1.05}.booking-lead{margin:14px auto 0;color:#c7daf3;max-width:760px}.booking-progress{height:8px;margin:22px auto 0;border-radius:999px;background:#0d1930;overflow:hidden;border:1px solid rgba(75,163,255,.22)}.booking-progress span{display:block;width:0;height:100%;background:linear-gradient(90deg,#0d6efd,#54c9ff);box-shadow:0 0 18px rgba(77,181,255,.55);transition:width .2s ease}.booking-required{margin:10px 0 0;color:#8fa9c9;font-size:.88rem}.booking-required span,.req{color:#5eb8ff;font-weight:900}.booking-form{position:relative;z-index:1;display:grid;gap:20px}.form-section{padding:24px;border:1px solid rgba(75,163,255,.18);border-radius:24px;background:linear-gradient(180deg,rgba(12,22,41,.88),rgba(7,13,25,.92))}.form-section-head{display:flex;align-items:center;gap:14px;margin-bottom:22px}.form-section-head>span{display:grid;place-items:center;flex:0 0 46px;height:46px;border-radius:15px;color:#cfeaff;background:linear-gradient(180deg,#183d72,#102548);border:1px solid #2d66a1;font-weight:900}.form-section-head h2{margin:0;font-size:1.35rem}.form-section-head p{margin:3px 0 0;color:#8fa9c9;font-size:.92rem}.form-question{display:grid;gap:9px;margin-top:18px}.form-question:first-of-type{margin-top:0}.form-question label,.form-question legend{color:#edf6ff;font-weight:800}.form-question input[type="text"],.form-question input[type="date"],.form-question input[type="email"],.form-question input[type="tel"],.form-question textarea{width:100%;padding:14px 15px;border:1px solid #28456c;border-radius:15px;background:#07101e;color:#fff;outline:none;transition:.18s ease}.form-question input:focus,.form-question textarea:focus{border-color:#48a7ff;box-shadow:0 0 0 3px rgba(72,167,255,.13),0 0 24px rgba(18,121,255,.08)}.form-question textarea{resize:vertical;min-height:150px}.field-help{margin:-1px 0 2px;color:#8fa9c9;font-size:.9rem}.option-question{border:0;padding:0;min-width:0}.option-question legend{padding:0 0 10px}.option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.option-grid label{position:relative;display:block;cursor:pointer}.option-grid input{position:absolute;opacity:0;pointer-events:none}.option-grid span{display:flex;align-items:center;min-height:52px;padding:12px 14px;border:1px solid #243e62;border-radius:15px;background:#081221;color:#cfe0f5;font-weight:700;transition:.18s ease}.option-grid span:before{content:"";width:18px;height:18px;flex:0 0 18px;margin-right:10px;border-radius:50%;border:2px solid #496e9d;box-shadow:inset 0 0 0 4px #081221}.option-grid label:hover span{border-color:#3e75aa;background:#0b1930}.option-grid input:focus-visible+span{outline:3px solid rgba(73,163,255,.25);outline-offset:2px}.option-grid input:checked+span{border-color:#45a7ff;background:linear-gradient(180deg,#102b52,#0b1c36);color:#fff;box-shadow:0 10px 24px rgba(13,110,253,.12)}.option-grid input:checked+span:before{border-color:#5eb8ff;background:#5eb8ff;box-shadow:inset 0 0 0 4px #0b1c36}.people-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.venue-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.contact-fields .wide{grid-column:1/-1}.consent-grid{grid-template-columns:repeat(2,minmax(0,220px))}.consent-note{margin:10px 0 0;padding:12px 14px;border-radius:13px;background:#251719;border:1px solid #74434b;color:#ffc0c7}.form-submit-panel{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 24px;border:1px solid rgba(75,163,255,.26);border-radius:22px;background:linear-gradient(180deg,#0e1d36,#081221)}.form-submit-panel strong{display:block;font-size:1.15rem}.form-submit-panel p{margin:5px 0 0;color:#9db4d1;max-width:650px;font-size:.92rem}.booking-submit{flex:0 0 auto;border:0;border-radius:999px;padding:15px 24px;background:linear-gradient(180deg,#2499ff,#0d5af4);color:#fff;font-weight:900;letter-spacing:.04em;box-shadow:0 14px 32px rgba(13,110,253,.32);cursor:pointer}.booking-submit[disabled]{opacity:.55;cursor:wait}.form-status{padding:15px 17px;border-radius:16px;border:1px solid #2c557f;background:#0b1a31;color:#d9edff}.form-status.success{border-color:#28764f;background:#0b271b;color:#c7f6dc}.form-status.error{border-color:#8b3d4a;background:#2a1217;color:#ffc7ce}.invalid-field{border-color:#d34b61!important;box-shadow:0 0 0 3px rgba(211,75,97,.12)!important}.hp-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0!important}.booking-form.shake{animation:formShake .28s linear}@keyframes formShake{25%{transform:translateX(-3px)}50%{transform:translateX(3px)}75%{transform:translateX(-2px)}}@media(max-width:780px){.booking-shell{padding:18px;margin-top:22px;border-radius:24px}.form-section{padding:18px}.option-grid,.people-grid,.venue-grid,.contact-fields{grid-template-columns:1fr}.contact-fields .wide{grid-column:auto}.consent-grid{grid-template-columns:1fr 1fr}.form-submit-panel{align-items:stretch;flex-direction:column}.booking-submit{width:100%}}@media(max-width:480px){.consent-grid{grid-template-columns:1fr}.booking-header h1{font-size:2rem}}
