/* Shared desktop and mobile booking card. */
html,body{max-width:100%;overflow-x:clip}
.hero{min-height:820px}
.hero-inner{max-width:1180px;min-height:820px;margin:auto;padding:300px 440px 130px 0;align-items:center}
.hero h1{font-size:68px;line-height:1.08;letter-spacing:-.035em}
.hero-lead{font-size:22px;line-height:1.4}
.site-header{padding-left:max(4vw,calc((100vw - 1180px)/2));padding-right:max(4vw,calc((100vw - 1180px)/2))}
.booking-wrap{position:absolute;top:180px;left:auto;right:max(4vw,calc((100vw - 1180px)/2));width:400px;margin:0;padding:0}
.booking-wrap .booking-panel{width:100%;padding:24px 32px 28px;background:#fff;border-radius:13px;box-shadow:0 12px 38px #06172524}
.booking-wrap .trip-switch{width:100%;padding:4px;margin:0 0 20px;background:#e4e9ef;border-radius:30px;gap:0}
.booking-wrap .trip-switch button{height:28px;border-radius:24px;background:transparent;color:#253344;font-family:Arial,sans-serif;font-size:14px;font-weight:400;box-shadow:none}
.booking-wrap .trip-switch button.active{background:#fff;color:#253344;box-shadow:0 2px 8px #2533440d}
.booking-wrap .booking-panel #quote-form{display:block;padding:0;background:transparent;border-radius:0;box-shadow:none}
.booking-wrap .booking-panel #quote-form .form-grid,.booking-wrap .booking-panel #quote-form:has(.return-field:not([hidden])) .form-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 24px;width:100%;min-width:0}
.booking-wrap .booking-panel #quote-form .form-grid>label:has(:is(select,input)[name=pickup]),.booking-wrap .booking-panel #quote-form .form-grid>label:has(:is(select,input)[name=dropoff]){grid-column:1/-1;position:relative;order:0!important;margin:0;padding:0;font-size:0;height:47px}
.booking-wrap .booking-panel #quote-form .form-grid>label:has(:is(select,input)[name=pickup]):after,.booking-wrap .booking-panel #quote-form .form-grid>label:has(:is(select,input)[name=dropoff]):after{display:none}
.booking-wrap .booking-panel #quote-form .form-grid>label:has(:is(select,input)[name=pickup]):before,.booking-wrap .booking-panel #quote-form .form-grid>label:has(:is(select,input)[name=dropoff]):before{left:14px;top:13px;font-family:Arial,sans-serif;font-size:19px;font-weight:400;color:#657383}
.booking-wrap .booking-panel #quote-form .form-grid>label:has(:is(select,input)[name=pickup]):before{content:'○'}
.booking-wrap .booking-panel #quote-form .form-grid>label:has(:is(select,input)[name=dropoff]):before{content:'♧'}
.booking-wrap .booking-panel #quote-form :is(select,input)[name=pickup],.booking-wrap .booking-panel #quote-form :is(select,input)[name=dropoff]{width:100%;min-width:0;height:47px;padding:0 14px 0 46px;border:1px solid #aab4c0;border-radius:4px 4px 0 0;background:#fff;appearance:none;font:14px Arial,sans-serif;color:#647184}
.booking-wrap .booking-panel #quote-form :is(select,input)[name=dropoff]{border-top:0;border-radius:0}
.booking-wrap .booking-panel #quote-form .date-trigger{grid-column:1/-1;order:0!important;height:48px;padding:0 14px;border:1px solid #aab4c0;border-top:0;border-radius:0 0 4px 4px;color:#647184;background:#fff;font:14px Arial,sans-serif}
.booking-wrap .booking-panel #quote-form .form-grid>label:has(select[name=passengers]),.booking-wrap .booking-panel #quote-form .form-grid>label:has(select[name=luggage]){grid-column:auto;order:2!important;display:flex;justify-content:start;gap:14px;height:auto;margin:20px 0 0;padding:0;color:#334155;font:600 13px Arial,sans-serif}
.booking-wrap .booking-panel #quote-form .stepper{height:48px;min-width:0;width:100%;border:1px solid #aab4c0;border-radius:4px;overflow:hidden;background:#fff}
.booking-wrap .booking-panel #quote-form .stepper button{height:46px;width:40px;flex:0 0 40px;padding:0;border:0;background:#fff;color:#627080;font:24px Arial,sans-serif;line-height:1}
.booking-wrap .booking-panel #quote-form .stepper select{height:44px!important;width:35px!important;min-width:0;padding:0!important;border:0!important;appearance:none;text-align:center;color:#334155;font:14px Arial,sans-serif!important}
.booking-wrap .booking-panel #quote-form>.primary-button{display:flex;align-items:center;justify-content:center;width:100%;min-width:0;height:56px;margin:24px 0 0;padding:0;background:#00c89a;color:#fff;border-radius:4px;font:700 14px Arial,sans-serif}
.booking-wrap .booking-panel #quote-form>.primary-button:hover{background:#00b68b}
.booking-wrap .booking-panel #quote-form .return-field:not([hidden]){grid-column:1/-1!important;order:1!important;margin-top:12px;padding:0;font-size:12px}
.booking-wrap .booking-panel #quote-form .date-picker{top:142px;left:0;width:100%;font-family:Arial,sans-serif}
.booking-wrap .booking-panel .results{padding:20px 0 0;margin-top:20px;border-top:1px solid #e1e6ec;max-height:360px}
.booking-wrap .booking-panel #status:empty{display:none}
.booking-wrap .form-note{display:none}
body .booking-wrap .booking-panel #quote-form .form-grid>label.address-field:before,body .booking-wrap .booking-panel #quote-form .form-grid>label.address-field:after{display:none!important;content:none!important}
.address-field .address-icon{position:absolute;z-index:2;left:13px;top:50%;transform:translateY(-50%);width:22px;height:24px;color:#101820;pointer-events:none;display:block}
body .booking-wrap .booking-panel #quote-form .form-grid>label:has(input[name=dropoff]):before{content:'';width:22px;height:24px;top:11px;left:12px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 30' fill='none' stroke='%23111827' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 23S6 15.5 6 10a8 8 0 1 1 16 0c0 5.5-8 13-8 13Z'/%3E%3Ccircle cx='14' cy='10' r='2.7'/%3E%3Cpath d='M7 20c-3 1-5 2.5-5 4 0 2.5 5.4 4 12 4s12-1.5 12-4c0-1.5-2-3-5-4'/%3E%3C/svg%3E") center/contain no-repeat}
body .booking-wrap .booking-panel #quote-form .form-grid>label:has(input[name=pickup]):before{content:'';width:19px;height:23px;top:12px;left:13px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 28' fill='none' stroke='%23111827' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 26S2.5 17.4 2.5 11a9.5 9.5 0 1 1 19 0c0 6.4-9.5 15-9.5 15Z'/%3E%3Ccircle cx='12' cy='11' r='4'/%3E%3C/svg%3E") center/contain no-repeat}
.booking-wrap .booking-panel #quote-form .calendar-grid button{width:32px;height:32px;min-width:32px;max-width:32px;padding:0;justify-self:center;border-radius:50%;display:grid;place-items:center;line-height:1;box-sizing:border-box}
.booking-wrap .booking-panel #quote-form .calendar-time{gap:8px;align-items:center;padding:14px 12px}
.booking-wrap .booking-panel #quote-form .calendar-time span{font-size:13px;min-width:70px}
.booking-wrap .booking-panel #quote-form .calendar-time select{width:76px!important;min-width:76px;height:46px!important;padding:0 10px!important;font:16px Arial,sans-serif!important;color:#253344;border:1px solid #d3dde4;border-radius:5px;appearance:auto}
.booking-wrap .booking-panel #quote-form .date-trigger{min-height:52px;height:auto;padding-top:14px;padding-bottom:14px;white-space:normal;line-height:1.4;text-align:left}
.pac-container{z-index:10000;font-family:Arial,sans-serif}.pac-item{padding:10px;font-size:13px}
.booking-wrap .booking-panel #quote-form .form-grid>label>:is(select,input)[name=pickup],.booking-wrap .booking-panel #quote-form .form-grid>label>:is(select,input)[name=dropoff]{border:1px solid #aab4c0!important;font:14px Arial,sans-serif!important;padding:0 12px 0 46px!important;border-radius:4px 4px 0 0!important}
.booking-wrap .booking-panel #quote-form .form-grid>label>:is(select,input)[name=dropoff]{border-top:0!important;border-radius:0!important}
.booking-wrap .booking-panel #quote-form .form-grid>label:has(:is(select,input)[name=dropoff]):before{content:'';width:17px;height:21px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 28' fill='none' stroke='%23657383' stroke-width='2.5'%3E%3Cpath d='M12 26S3 17 3 11a9 9 0 1 1 18 0c0 6-9 15-9 15Z'/%3E%3Ccircle cx='12' cy='11' r='2.5'/%3E%3C/svg%3E") center/contain no-repeat;top:12px}
.booking-wrap .booking-panel #quote-form .date-trigger{padding-left:46px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23657383' stroke-width='1.8'%3E%3Crect x='3' y='5' width='18' height='16' rx='1'/%3E%3Cpath d='M3 10h18M7 2v6M17 2v6'/%3E%3C/svg%3E") 12px center/21px no-repeat}
.site-header .nav-cta{border:0;background:#00c89a;color:#fff}
.intro{padding-top:90px}
@media(max-width:1250px) and (min-width:901px){.hero-inner{padding-left:5vw;padding-right:465px}.hero h1{font-size:58px}.hero-lead{font-size:19px}}
@media(max-width:900px){.hero,.hero-inner{min-height:550px}.hero-inner{display:block;width:100%;padding:115px 28px 160px}.hero h1{max-width:550px;font-size:54px}.hero-lead{max-width:520px;font-size:19px}.booking-wrap{position:relative;top:auto;left:auto;right:auto;width:calc(100% - 40px);max-width:460px;margin:-145px auto 0;padding:0}.booking-wrap .booking-panel{padding:24px 28px 28px}.site-header{padding-left:24px;padding-right:24px}.intro{padding-top:75px}}
@media(max-width:480px){.hero,.hero-inner{min-height:525px}.hero-inner{padding:125px 28px 160px}.hero h1{font-size:46px;line-height:1.04}.hero-lead{font-size:18px}.booking-wrap{width:calc(100% - 32px);margin-top:-135px}.booking-wrap .booking-panel{padding:16px 14px 30px;border-radius:13px}.booking-wrap .booking-panel #quote-form .form-grid{gap:0 20px}.booking-wrap .trip-switch{margin-bottom:20px}.booking-wrap .booking-panel #quote-form .stepper button{width:34px;flex-basis:34px}.booking-wrap .booking-panel #quote-form .form-grid>label:has(select[name=passengers]),.booking-wrap .booking-panel #quote-form .form-grid>label:has(select[name=luggage]){font-size:12px}.site-header .brand{font-size:13px}.site-header .brand-mark{width:30px;height:30px}.booking-wrap .booking-panel .results{max-height:none}}

body .booking-wrap .booking-panel #quote-form .form-grid>label.address-field>input:focus{outline:2px solid #00c89a;outline-offset:-1px;border-color:#00c89a!important;box-shadow:0 0 0 1px #00c89a33;position:relative;z-index:1}
