.focused-booking .account-open{position:absolute;left:14px;right:auto;top:50%;transform:translateY(-50%);width:44px;height:44px;display:grid;place-items:center;padding:0;border:0;background:transparent;color:#66717a;cursor:pointer}
.account-open svg{width:19px;height:19px}
.account-open:hover{color:#30373d}
.account-open:focus-visible{outline:2px solid #7e8b91;outline-offset:-4px;border-radius:6px}
#accountDialog{width:min(760px,calc(100% - 32px));height:auto;max-height:90dvh;margin:auto;padding:40px;overflow:auto;background:#f7f8f9;border:1px solid #dbe1e0;border-radius:18px;color:#202c29;box-shadow:0 20px 80px #142c3826}
#accountDialog[open]{display:block;height:fit-content}#accountDialog [hidden]{display:none!important}
#accountDialog::backdrop{background:#17202c80;backdrop-filter:blur(4px)}
#accountDialog h2{font:600 30px/1.2 Manrope,sans-serif;letter-spacing:-1px;margin:0 0 28px;text-align:left}
#accountDialog h3{font-size:18px;line-height:1.4;margin:0 0 22px}
#accountDialog p{font-size:14px;line-height:1.6;color:#54625c}
#accountDialog label{display:block;font-size:13px;font-weight:600;margin:18px 0 8px;color:#37463f}
#accountDialog input{display:block;width:100%;box-sizing:border-box;font:inherit;font-size:16px;background:white;color:#202c29;border:1px solid #bcc8c2;border-radius:10px;min-height:52px;padding:12px 14px}
#accountDialog input:focus-visible{outline:2px solid #168442;outline-offset:2px}
#accountDialog input::placeholder{color:#64736c}#accountDialog .button{width:100%;justify-content:center;margin-top:24px;white-space:nowrap}
#accountDialog .account-panel:not(#accountSetupPanel){max-width:400px;margin:0 auto}
#accountClose{position:absolute;right:12px;top:10px;width:44px;height:44px;border:0;background:transparent;font-size:28px;cursor:pointer;color:#54625c}
.account-choices{display:grid;grid-template-columns:1.2fr 1fr;gap:24px;align-items:start}.account-choice{min-width:0}
.account-new-choice{border-left:1px solid #dbe1e0;padding-left:24px;align-self:stretch;display:flex;flex-direction:column;justify-content:center}
#accountNewBrand{width:100%;background:#fff;border:1px solid #bcc8c2;border-radius:12px;padding:24px 14px;min-height:110px;font:600 17px/1.4 Manrope,sans-serif;cursor:pointer;color:#202c29;transition:background .15s}
#accountNewBrand:hover{background:#eef4f0}.account-choices.new-brand{display:block;max-width:400px;margin:0 auto}.new-brand .account-new-choice{border:0;padding:0}
#accountDialog .text-button{font:inherit;font-size:13px;min-height:44px;padding:8px 0;color:#326245;background:transparent;border:0;cursor:pointer}
#accountError{margin:18px 0 0;color:#a52a26!important}#accountError:empty{display:none}
.account-logo{display:block;max-width:200px;width:auto;max-height:74px;object-fit:contain;margin:20px 0}
#accountSummaryPanel #accountName{font-size:21px;font-weight:600;color:#202c29;margin-bottom:0}#accountAgency{margin-top:4px}
.account-session-actions{display:flex;gap:20px;flex-wrap:wrap;margin-top:12px}
@media(max-width:600px){#accountDialog{padding:38px 24px 26px;width:calc(100% - 24px);border-radius:16px;max-height:92dvh}#accountDialog h2{font-size:27px}.account-choices{grid-template-columns:1fr;gap:24px}.account-new-choice{border-left:0;border-top:1px solid #dbe1e0;padding:24px 0 0}#accountNewBrand{min-height:64px;padding:18px}}
@media(prefers-reduced-motion:reduce){#accountDialog *{transition:none!important}}
#accountDialog.phone-entry{width:min(580px,calc(100% - 28px));box-sizing:border-box;padding:38px 32px 40px;border-radius:24px;border:1px solid #ffffffc9;background:linear-gradient(145deg,#ffffffb8,#eef2f56b);backdrop-filter:blur(24px) saturate(150%);-webkit-backdrop-filter:blur(24px) saturate(150%);box-shadow:0 24px 75px #273a4a26,inset 0 1px 0 #ffffffd9;overflow:visible}
#accountDialog.phone-entry::backdrop{background:#263b4914;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
body:has(#accountDialog.phone-entry[open])>:not(#accountDialog){filter:blur(5px)}
#accountDialog.phone-entry h2{font-size:23px;font-weight:500;letter-spacing:-.65px;text-align:center;margin:0 0 26px}
#accountDialog.phone-entry .account-panel{max-width:none}
.phone-digits{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:7px}
#accountDialog .phone-digit{min-width:0;min-height:0;height:58px;padding:0;text-align:center;font-size:24px;font-weight:500;border:1px solid #ffffffd9;border-radius:10px;background:#ffffff75;box-shadow:inset 0 1px 3px #35485408;color:#303b42;caret-color:#526975;transition:border-color .15s,background .15s}
#accountDialog .phone-digit:focus-visible{outline:2px solid #6e849a80;outline-offset:2px;background:#ffffffb3}
#accountDialog .phone-digit[aria-invalid=true]{border-color:#b96969}
#accountDialog.phone-entry[aria-busy=true] .phone-digits{opacity:.55}
#accountDialog.phone-entry #accountError{position:absolute;width:1px;height:1px;margin:0;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(max-width:600px){#accountDialog.phone-entry{padding:30px 16px 32px;border-radius:21px}#accountDialog.phone-entry h2{font-size:21px;margin-bottom:23px}.phone-digits{gap:4px}#accountDialog .phone-digit{height:48px;font-size:20px;border-radius:8px}}
@media(max-width:350px){#accountDialog.phone-entry{padding-left:12px;padding-right:12px}.phone-digits{gap:3px}#accountDialog .phone-digit{height:44px;font-size:18px}}
.focused-booking .mast{padding-bottom:72px}
.focused-booking .mast .account-open,.focused-booking .mast .phone-link{top:36px}
.account-greeting{position:absolute;top:66px;left:50%;transform:translateX(-50%);width:calc(100% - 100px);font:400 12px/18px Manrope,sans-serif;color:#78838b;text-align:center;pointer-events:none}
.account-greeting>span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.account-greeting-name{color:#59666d}
.account-greeting-agency{margin-top:3px;font-size:11px}
body.account-departing{opacity:0;transition:opacity 220ms ease}
body.account-departing #accountDialog{opacity:0;transition:opacity 220ms ease;pointer-events:none}
body.account-departing #accountDialog::backdrop{background:transparent;backdrop-filter:blur(0);-webkit-backdrop-filter:blur(0);transition:background 220ms ease,backdrop-filter 220ms ease}
body.account-revealing{transition:opacity 400ms ease}
@media(prefers-reduced-motion:reduce){body.account-departing,body.account-departing #accountDialog,body.account-departing #accountDialog::backdrop,body.account-revealing{transition:none!important}}
.discount-open{position:absolute;left:58px;top:36px;transform:translateY(-50%);height:30px;padding:0 12px;border:1px solid #c5d8b4;border-radius:15px;background:#eef5e7;color:#2e5138;font:600 12px/28px Manrope,sans-serif;white-space:nowrap;cursor:pointer}
.discount-open:hover{background:#e3eed8}
.discount-open:focus-visible{outline:2px solid #7e8b91;outline-offset:2px}
#discountDialog{width:min(440px,calc(100% - 32px));height:fit-content;padding:34px 28px 28px;background:#f7f8f9;border:1px solid #dbe1e0;border-radius:18px;color:#202c29;box-shadow:0 20px 80px #142c3826}
#discountDialog::backdrop{background:#17202c80;backdrop-filter:blur(4px)}
#discountDialog h2{font:600 26px/1.2 Manrope,sans-serif;letter-spacing:-.8px;margin:0 0 20px}
#discountClose{position:absolute;right:12px;top:10px;width:44px;height:44px;border:0;background:transparent;font-size:28px;cursor:pointer;color:#54625c}
.discount-item+.discount-item{margin-top:24px;padding-top:24px;border-top:1px solid #dbe1e0}
.discount-item .discount-percent{font:600 20px/1.3 Manrope,sans-serif;margin:0;color:#2e5138}
.discount-item p{font-size:14px;line-height:1.5;color:#54625c;margin:6px 0 14px}
.discount-packages{display:grid;gap:8px}
.discount-packages button{display:flex;justify-content:space-between;align-items:center;min-height:52px;padding:0 16px;border:1px solid #cfd8d3;border-radius:10px;background:#fff;font:500 15px Manrope,sans-serif;color:#202c29;text-align:left;cursor:pointer}
.discount-packages button[aria-pressed=true]{border-color:#2e5138;background:#eef5e7}
.discount-packages button[aria-pressed=true]::after{content:'Applied';font-size:12px;font-weight:600;color:#2e5138}
#discountError{margin:16px 0 0;color:#a52a26;font-size:14px}#discountError:empty{display:none}
@media(max-width:600px){#discountDialog{width:100%;max-width:100%;margin:auto 0 0;border-radius:20px 20px 0 0;padding:30px 20px max(24px,env(safe-area-inset-bottom))}}
#discountNotice{width:min(380px,calc(100% - 40px));height:fit-content;margin:auto;padding:30px 26px 24px;text-align:center;background:#f7f8f9;border:1px solid #dbe1e0;border-radius:20px;color:#202c29;box-shadow:0 24px 80px #142c3830}
#discountNotice::backdrop{background:transparent}
.discount-notice-shade{position:fixed;inset:0;z-index:2147483000;background:#17202c66;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);pointer-events:none}
#discountNotice h2{font:600 24px/1.2 Manrope,sans-serif;letter-spacing:-.6px;margin:0 0 12px}
#discountNotice p{font-size:15px;line-height:1.55;color:#54625c;margin:0}
#discountNotice .button{width:100%;justify-content:center;margin-top:24px}
#discountNotice:focus{outline:none}
