/* Scoped to this reservation form only; other Gravity Forms are unchanged. */
.fins-wrapper,.gform_wrapper:has(form.fins-reservation){--fins-ink:#183747;--fins-muted:#536b78;--fins-line:#d5e1e7;--fins-accent:#006b7a;max-width:820px;margin:24px auto;font-family:inherit;color:var(--fins-ink)}
form.fins-reservation{padding:clamp(20px,4vw,36px);border:1px solid var(--fins-line,#d5e1e7);border-radius:18px;background:#fff;box-shadow:0 8px 28px rgba(20,50,65,.06)}
.fins-wrapper .gform_heading{margin-bottom:20px}.fins-wrapper .gform_title{font-size:clamp(25px,4vw,32px);line-height:1.2;letter-spacing:-.025em;color:var(--fins-ink);margin-bottom:10px}.fins-wrapper .gform_description{font-size:16px;line-height:1.6;color:var(--fins-muted)}
form.fins-reservation .gform_fields{row-gap:22px!important;column-gap:20px!important}
form.fins-reservation .gfield_label,form.fins-reservation .gform-field-label{color:var(--fins-ink,#183747);font-weight:600;line-height:1.45;font-size:15px!important}
form.fins-reservation input:not([type=submit]):not([type=checkbox]):not([type=radio]):not([type=hidden]),form.fins-reservation select{min-height:48px!important;border:1px solid var(--fins-line,#d5e1e7)!important;border-radius:8px!important;background-color:#fff!important;box-shadow:none!important;font-family:inherit!important;font-size:16px!important;color:#183747!important;padding:11px 14px!important;box-sizing:border-box;width:100%;max-width:100%}
form.fins-reservation select{padding-right:36px!important;text-overflow:ellipsis}
form.fins-reservation input:focus-visible,form.fins-reservation select:focus-visible,form.fins-reservation button:focus-visible{outline:3px solid #85cbd5!important;outline-offset:2px}
form.fins-reservation select:disabled{background-color:#f3f7f8!important;color:#5b717b!important;opacity:1;cursor:wait}
form.fins-reservation .gfield_description{font-size:13px!important;line-height:1.6;color:var(--fins-muted,#536b78);padding-top:7px!important}
form.fins-reservation .ginput_complex label{font-size:12px!important;font-weight:400!important;color:#536b78}
form.fins-reservation .fins-section{padding-top:18px;border-top:1px solid #dce7eb;margin-top:6px!important}
form.fins-reservation .fins-section .gsection_title{font-size:18px;font-weight:650;color:#183747;margin-bottom:4px}
form.fins-reservation .gform_footer{margin-top:24px!important;padding-top:0!important}
form.fins-reservation input[type=submit],form.fins-reservation button[type=submit]{min-height:50px!important;padding:13px 24px!important;background:#006b7a!important;color:#fff!important;border:0!important;border-radius:9px!important;font-family:inherit;font-weight:600;font-size:16px!important;box-shadow:none!important;cursor:pointer}
form.fins-reservation input[type=submit]:disabled,form.fins-reservation button[type=submit]:disabled{background:#78959c!important;cursor:not-allowed}
form.fins-reservation .fins-live{margin-top:22px;border-top:1px solid #dce7eb;padding-top:18px}.fins-live-message{margin:0 0 8px;font-size:14px;line-height:1.6;color:#355562}.fins-live-message.fins-error{color:#a12727;font-weight:600}
form.fins-reservation .fins-refresh{display:inline-block!important;background:none!important;border:0!important;padding:4px 0!important;margin:0!important;color:#006b7a!important;text-decoration:underline;font-family:inherit;font-size:14px!important;font-weight:500;cursor:pointer;box-shadow:none!important}
form.fins-reservation .fins-refresh:disabled{opacity:.55;cursor:wait}.fins-live-note{font-size:12px;line-height:1.6;color:#596f7b;margin:16px 0 0}
.fins-summary{padding:16px 18px;background:#eef7f8;border:1px solid #c7e1e5;border-radius:10px;margin:16px 0 0}.fins-summary strong,.fins-summary span{display:block;font-size:14px;line-height:1.65}.fins-summary span{margin-top:3px}.fins-summary[hidden]{display:none!important}
.fins-confirmation{max-width:760px;margin:24px auto;padding:30px;border:1px solid #c7e1e5;border-radius:16px;background:#f3fafb;color:#183747;line-height:1.7}.fins-confirmation h2{margin:0 0 12px;font-size:26px}.fins-confirmation dl{display:grid;grid-template-columns:minmax(100px,160px) 1fr;gap:8px 16px}.fins-confirmation dt{font-weight:600}.fins-confirmation dd{margin:0}
@media(max-width:640px){form.fins-reservation .gfield{grid-column:1/-1!important}form.fins-reservation{padding:20px 16px;border-radius:12px}form.fins-reservation input[type=submit],form.fins-reservation button[type=submit]{width:100%}.fins-confirmation dl{display:block}.fins-confirmation dd{margin-bottom:12px}}
