.booking-actions{display:grid;gap:10px;margin-top:18px}.booking-actions .booking-link,.booking-site-button{width:100%;min-height:54px;display:flex;align-items:center;justify-content:space-between;gap:10px;border-radius:14px;padding:13px 16px;font:600 14px/1.35 inherit;text-align:left;text-decoration:none;cursor:pointer}.booking-actions .booking-link{background:#e7f5f0;color:#123f45;font-size:14px}.booking-actions .booking-link:hover{background:#fff}.booking-site-button{border:1px solid #ffbc70;background:#ffb35b;color:#173b3b;font-family:inherit;font-size:14px;font-weight:600}.booking-site-button:hover{background:#ffc681}.booking-site-button span,.booking-actions .booking-link span{font-size:20px}.booking-actions :focus-visible,.mango-booking-dialog :focus-visible{outline:3px solid #1995b1;outline-offset:3px}.mango-booking-dialog{box-sizing:border-box;width:min(620px,calc(100vw - 28px));max-width:620px;max-height:calc(100dvh - 32px);margin:auto;padding:0;border:0;border-radius:24px;background:#fcfcf8;color:#173b3b;box-shadow:0 24px 100px #092f4355;overflow:auto;overscroll-behavior:contain;font-family:inherit}.mango-booking-dialog::backdrop{background:#092c38b5;backdrop-filter:blur(5px)}.mango-booking-dialog *{box-sizing:border-box}.mango-booking-dialog [hidden]{display:none!important}.booking-dialog-head{padding:27px 30px 20px;background:#eaf3ed;position:relative;border-bottom:1px solid #d6e5dc}.booking-dialog-head .eyebrow{font-size:10px;letter-spacing:.12em;color:#417265;margin:0 45px 9px 0}.booking-dialog-head h2{font-size:29px;line-height:1.15;margin:0 40px 10px 0;letter-spacing:-.04em;font-weight:600}.booking-dialog-head p:last-child{font-size:14px;line-height:1.5;margin:0;color:#47675c}.booking-close{position:absolute;right:16px;top:16px;width:38px;height:38px;border-radius:50%;border:1px solid #bad1c7;background:#fff;color:#173b3b;font-size:25px;cursor:pointer}.booking-form{padding:22px 30px 28px}.booking-trip-summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;background:#f0f4ee;border:1px solid #dbe5d9;border-radius:14px;margin-bottom:20px}.booking-trip-summary strong{font-size:15px;line-height:1.35}.booking-trip-summary small{display:block;font-size:11px;line-height:1.5;color:#5b756a;margin-top:5px}.booking-estimate{font-size:20px;font-weight:700;white-space:nowrap;color:#17656b}.booking-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.booking-field{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:600;min-width:0}.booking-field.wide{grid-column:1/-1}.booking-field small{font-weight:400;font-size:11px;line-height:1.5;color:#526f63}.booking-field input,.booking-field select,.booking-field textarea{width:100%;min-width:0;min-height:46px;padding:11px 12px;background:#fff;border:1px solid #b8cdc1;border-radius:10px;color:#173b3b;font:400 16px/1.35 inherit;font-family:inherit;font-size:16px;font-weight:400}.booking-field textarea{resize:vertical;min-height:78px}.booking-field input:focus,.booking-field select:focus,.booking-field textarea:focus{border-color:#167f9b;outline:2px solid #167f9b33;outline-offset:1px}.booking-guests{grid-column:1/-1;margin:0;padding:14px 16px;border:1px solid #d7e3da;border-radius:12px;display:grid;gap:12px}.booking-guests legend{font-size:13px;font-weight:600;padding:0 6px}.booking-guest-row{display:grid;grid-template-columns:1fr 76px;align-items:center;gap:14px;font-size:13px}.booking-guest-row small{display:block;font-size:11px;color:#577066;margin-top:3px;font-weight:400}.booking-guest-row input{width:76px;min-height:42px;border:1px solid #b8cdc1;border-radius:9px;padding:8px;font:inherit;font-size:16px;background:#fff;color:#173b3b}.booking-field input::placeholder,.booking-field textarea::placeholder{color:#74877d}.booking-privacy{font-size:11px;line-height:1.6;color:#587267;margin:16px 0}.booking-submit{width:100%;border:0;border-radius:12px;background:#175c63;color:#fff;min-height:50px;font:600 15px/1.3 inherit;font-family:inherit;font-size:15px;font-weight:600;cursor:pointer}.booking-submit:hover{background:#10434a}.booking-submit:disabled{opacity:.55;cursor:default}.booking-status{padding:12px 14px;margin:16px 0;background:#fff1dc;border:1px solid #e5c496;border-radius:10px;color:#795026;font-size:13px;line-height:1.5}.booking-status:empty{display:none}.booking-form-footer{text-align:center;margin:14px 0 0;font-size:12px;color:#4e7062}.booking-form-footer a{color:#176b83;text-decoration:underline;text-underline-offset:3px}.booking-success{padding:36px 30px;text-align:center}.booking-success-icon{display:grid;place-items:center;margin:0 auto 18px;width:56px;height:56px;border-radius:50%;background:#d9eee2;color:#1b745f;font-size:28px}.booking-success h3{font-size:26px;margin:0 0 12px}.booking-success p{font-size:15px;line-height:1.6;margin:0 0 20px}.booking-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}html.booking-dialog-open{overflow:hidden}@media(max-width:600px){.mango-booking-dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 16px);border-radius:19px}.booking-dialog-head{padding:23px 20px 18px}.booking-dialog-head h2{font-size:26px}.booking-form{padding:18px 20px 23px}.booking-form-grid{grid-template-columns:1fr;gap:14px}.booking-trip-summary{align-items:flex-start}.booking-estimate{font-size:18px}.booking-success{padding:30px 22px}}.booking-required-note{font-size:12px;line-height:1.5;color:#486c5f;margin:18px 0 0}.booking-submit:disabled{background:#79908b;opacity:.65}.booking-dialog-head>p:not(.eyebrow){font-size:13px;line-height:1.5;margin:0;color:#47675c}.booking-height-note{margin:0;padding:11px 12px;border-radius:12px;background:#fff0d4;font-size:12px;line-height:1.6;color:#31564b}.booking-height-note strong,.booking-height-note span{display:block}.booking-height-note strong{margin-bottom:3px}.booking-guest-row{grid-template-columns:minmax(0,1fr) 124px;gap:8px;padding:8px 0;border-bottom:1px solid #e1e9df}.booking-guest-row:last-child{border:0}.booking-guest-stepper{display:grid;grid-template-columns:40px 44px 40px;align-items:center;background:#fff;border:1px solid #c5d7ca;border-radius:13px;overflow:hidden}.booking-guest-stepper button{width:40px;min-height:44px;padding:0;border:0;background:#edf4ec;color:#175c63;font:600 23px/1 inherit;font-size:23px;cursor:pointer}.booking-guest-stepper input{width:44px;min-width:0;border:0;border-radius:0;padding:6px 0;text-align:center;appearance:textfield;font-weight:700}.booking-guest-stepper input::-webkit-inner-spin-button,.booking-guest-stepper input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.booking-extra{grid-column:1/-1;padding:12px;border:1px solid #d7e3da;border-radius:12px;background:#f4f7f1}.booking-extra summary{font-size:13px;font-weight:600;cursor:pointer}.booking-extra[open] .booking-field{margin-top:14px}@media(max-width:600px){.mango-booking-dialog{width:100%;max-width:100%;max-height:94dvh;margin:auto 0 0;border-radius:25px 25px 0 0;box-shadow:0 -12px 70px #153a3c44;scroll-padding-top:120px}.mango-booking-dialog[open]{animation:booking-sheet-in .22s ease-out}.booking-dialog-head{position:sticky;top:0;z-index:2;padding:19px 18px 13px;background:#eaf3edf7;backdrop-filter:blur(10px)}.booking-dialog-head:before{content:"";display:block;width:34px;height:4px;border-radius:6px;background:#b8cfc0;margin:-10px auto 12px}.booking-dialog-head .eyebrow{font-size:9px;margin-bottom:5px}.booking-dialog-head h2{font-size:24px;margin-bottom:5px}.booking-close{width:44px;height:44px;right:12px;top:19px}.booking-form{padding:14px 16px max(22px,env(safe-area-inset-bottom))}.booking-form-grid{gap:13px}.booking-trip-summary{padding:12px;margin-bottom:14px;align-items:center;background:#fff;border-color:#dce6d8}.booking-trip-summary strong{font-size:14px}.booking-estimate{font-size:23px}.booking-trip-summary small{font-size:10px;max-width:185px}.booking-guests{padding:10px 12px;gap:4px;background:#fff}.booking-guests legend{font-size:15px}.booking-guest-row{font-size:13px;min-height:62px}.booking-guest-row small{font-size:11px;line-height:1.4}.booking-height-note{margin-bottom:4px}.booking-field{gap:6px}.booking-field input,.booking-field select{min-height:48px}.booking-required-note{font-size:11px;margin-top:14px}.booking-privacy{font-size:10px;line-height:1.5;margin:10px 0 14px}.booking-submit{min-height:54px;border-radius:15px;font-size:16px}.booking-form-footer{line-height:1.8}}@keyframes booking-sheet-in{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}@media(prefers-reduced-motion:reduce){.mango-booking-dialog[open]{animation:none}}
