@font-face{font-family:TravelArabic;src:local('Geeza Pro'),local('Noto Naskh Arabic'),local('Tahoma');font-display:swap}
.skip{position:absolute;inset-inline-start:8px;top:8px;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);z-index:20;background:var(--green);color:#fff;border-radius:8px}.skip:focus{width:auto;height:auto;padding:10px 16px;clip-path:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
html,body{max-width:100%;overflow-x:clip}
.date-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px;min-width:0}.date-pair input{min-width:0}.duration-chips{display:flex;flex-wrap:wrap;gap:8px;margin-block:8px}.duration-chips button{padding:9px 12px;min-height:44px;white-space:normal;max-width:100%}#days-slider{width:100%;height:40px;accent-color:var(--green)}#passenger-total{font-weight:700}.field[data-field$='_age']{border-top:1px solid var(--line);padding-top:20px;margin-top:28px}@media(max-width:600px){.date-pair{grid-template-columns:1fr}}
.field label.choice{display:flex;align-items:center}.choice span{min-width:0;overflow-wrap:anywhere}[dir=rtl] .field label.choice{font-size:16px!important;line-height:1.9}[dir=rtl] .help,[dir=rtl] .privacy{font-size:14px}[dir=rtl] .brand-sub{font-size:13px}
:root{color-scheme:light;--green:#123e35;--ink:#1c3730;--muted:#52685f;--gold:#c7a35b;--paper:#f7f5ef;--line:#d9dfd8;--error:#a32727;font-family:Arial,sans-serif;color:var(--ink);background:var(--paper)}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #ad8231;outline-offset:3px}[dir=rtl]{font-family:TravelArabic,'Geeza Pro',Tahoma,Arial,sans-serif;line-height:1.9}header.top{max-width:1240px;margin:auto;padding:27px 40px;display:flex;align-items:center;justify-content:space-between;gap:20px}.wordmark{font-weight:850;letter-spacing:.18em;font-size:26px;direction:ltr}.brand-sub{font-size:11px;letter-spacing:.04em;font-weight:500}.languages{display:flex;gap:4px;padding:5px;border:1px solid var(--line);border-radius:50px}.languages button{background:transparent;border:0;border-radius:30px;padding:8px 14px;min-height:44px;color:var(--ink)}.languages button[aria-pressed=true]{background:var(--green);color:#fff}.layout{max-width:1240px;margin:24px auto 50px;padding:0 40px;display:grid;grid-template-columns:.8fr 1.2fr;gap:64px;align-items:start}.story{padding-top:36px}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:11px;font-weight:700;color:#746035}.story h1{font:normal clamp(38px,4.2vw,60px)/1.08 Georgia,serif;white-space:pre-line;letter-spacing:-.04em;margin:25px 0}.story p{font-size:16px;line-height:1.8;max-width:370px;color:var(--muted)}[dir=rtl] .story h1{font-family:inherit;line-height:1.65;letter-spacing:0;font-size:42px}[dir=rtl] .eyebrow{letter-spacing:0}.quiet-line{height:1px;background:var(--line);margin:30px 0;width:70px}.trust{font-size:13px!important}.form-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:32px;box-shadow:0 12px 50px #153c3306;min-width:0}.step-row{display:flex;justify-content:space-between;gap:12px;font-size:12px;color:var(--muted);margin-bottom:14px}.track{height:4px;background:#ebeee9;border-radius:4px;overflow:hidden}.track div{height:100%;background:var(--gold);transition:width .3s}h2{font-family:Georgia,serif;font-weight:400;font-size:28px;line-height:1.2;margin:27px 0 22px;outline:none}[dir=rtl] h2{font-family:inherit;line-height:1.7}.field{margin:0 0 23px;padding:0;border:0;min-width:0}.field label,.field legend{display:block;font-size:14px;font-weight:650;margin-bottom:10px;padding:0}.optional{font-weight:400;font-size:11px;color:var(--muted);margin-inline-start:8px}.choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.choice{display:flex;align-items:center;gap:9px;min-height:56px;border:1px solid var(--line);border-radius:11px;padding:12px;cursor:pointer;font-weight:400!important;font-size:13px!important;margin:0!important;line-height:1.5}.choice:has(input:checked){border-color:var(--green);background:#edf5f0;box-shadow:inset 0 0 0 1px var(--green)}.choice input{accent-color:var(--green);width:16px;height:16px;flex-shrink:0}.input{width:100%;min-width:0;border:1px solid #b5c2ba;border-radius:9px;padding:13px 14px;background:#fff;color:var(--ink);min-height:48px;font-size:16px}.input[type=date],.input[type=tel]{direction:ltr;text-align:start}textarea.input{min-height:105px;resize:vertical}.help{font-size:12px;line-height:1.7;color:var(--muted);margin:8px 0 0}.callout{padding:16px;background:#f6f5ee;border-radius:10px;font-size:13px;line-height:1.8;margin-bottom:22px}.actions{display:flex;justify-content:space-between;gap:12px;margin-top:25px;border-top:1px solid var(--line);padding-top:22px}.primary,.secondary{border-radius:10px;padding:14px 20px;min-height:48px;font-size:14px}.primary{background:var(--green);color:white;border:1px solid var(--green);flex:1}.secondary{background:white;border:1px solid var(--line);color:var(--ink)}.privacy{max-width:550px;font-size:11px;text-align:center;line-height:1.8;color:var(--muted);margin:16px auto}.error{color:var(--error);font-size:13px;line-height:1.7}.field.bad .input,.field.bad .choices,.field.bad .consent{outline:2px solid var(--error);outline-offset:3px;border-radius:8px}.consent{display:flex!important;align-items:flex-start;gap:12px;font-weight:400!important;line-height:1.8}.consent input{width:19px;height:19px;margin-top:4px;flex-shrink:0;accent-color:var(--green)}.review-group{border-bottom:1px solid var(--line);padding:4px 0 18px;margin-bottom:18px}.review-title{display:flex;justify-content:space-between;align-items:center}.review-title h3{font-size:16px}.edit{border:0;background:none;color:var(--green);text-decoration:underline;padding:10px;min-height:44px}dl{margin:0}dl>div{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:12px 0;font-size:13px;line-height:1.7}dt{color:var(--muted)}dd{margin:0;overflow-wrap:anywhere}.success-mark{width:60px;height:60px;border-radius:50%;background:#eaf4ed;color:var(--green);font-size:30px;display:grid;place-items:center;margin:25px 0}.reference{background:var(--paper);padding:20px;border-radius:12px;margin:25px 0}.reference strong{display:block;font-size:21px;letter-spacing:.08em;margin-top:10px}.footer{max-width:1160px;margin:0 auto;padding:20px 0;border-top:1px solid var(--line);font-size:11px;color:var(--muted)}.admin{max-width:1100px;margin:30px auto;padding:24px}.admin-card{padding:24px;background:white;border:1px solid var(--line);border-radius:14px;margin:15px 0}.admin-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}.admin details{margin:20px 0}.admin summary{cursor:pointer;padding:12px 0}.admin form{max-width:400px}.admin .input{margin-bottom:12px}@media(max-width:800px){header.top{padding:20px}.layout{padding:0 20px;margin-top:4px;grid-template-columns:1fr;gap:22px;max-width:600px}.story{padding-top:10px}.story h1{font-size:37px;margin:14px 0;white-space:normal}.story p{max-width:none;font-size:14px;margin:9px 0}.story .quiet-line,.story .extra{display:none}.eyebrow{font-size:10px}.form-card{padding:24px}.footer{margin:0 20px}[dir=rtl] .story h1{font-size:32px}.privacy{padding:0 10px}}@media(max-width:800px){.choices{grid-template-columns:1fr}dl>div{grid-template-columns:1fr;gap:4px 12px}header.top{flex-wrap:wrap}.field{scroll-margin-bottom:96px}.actions{position:sticky;bottom:0;z-index:6;background:#fff;margin-top:16px;padding:12px 0 calc(12px + env(safe-area-inset-bottom,0px));box-shadow:0 -10px 18px #fff}.airport-results{max-height:min(40vh,240px)}}
@media(max-width:380px){header.top{padding:16px 12px;gap:8px}.languages button{padding:8px}.wordmark{font-size:22px}.brand-sub{font-size:10px}.layout{padding:0 12px}.form-card{padding:18px}.choices{grid-template-columns:1fr}h2{font-size:25px}}
.airport-results{max-height:min(40vh,320px);overflow-y:auto;border:1px solid #a7bbb2;border-radius:10px;margin-top:6px;background:#fff}.airport-results[hidden]{display:none}.airport-option{padding:14px 12px;cursor:pointer;border-bottom:1px solid #e4eae7;line-height:1.6;overflow-wrap:anywhere}.airport-option:hover,.airport-option[aria-selected=true]{background:#e6f1eb;color:#123e34}
.date-calendar{margin-top:12px;padding:12px;border:1px solid var(--line);border-radius:12px;background:#fff}.date-calendar[hidden]{display:none}.calendar-heading{display:grid;grid-template-columns:40px minmax(0,1fr) 76px 40px;gap:5px;align-items:center}.calendar-heading .input{min-width:0;padding:10px 5px}.calendar-heading button{padding:0;min-height:44px}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;margin-block:12px}.calendar-weekday{font-size:11px;text-align:center;overflow-wrap:anywhere;padding-block:6px}.calendar-day{padding:0;min-height:44px;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--green)}.calendar-day:hover:not(:disabled),.calendar-day[aria-pressed=true]{background:var(--green);color:#fff}.calendar-day:disabled{opacity:.35;cursor:not-allowed}.calendar-close{width:100%;min-height:44px}.calendar-toggle{min-height:48px}.calendar-day:focus-visible{outline:3px solid var(--gold);outline-offset:1px}@media(max-width:380px){.date-calendar{padding:7px}.calendar-heading{grid-template-columns:32px minmax(0,1fr) 65px 32px;gap:3px}}
@media(max-width:800px){.airport-results,.hotel-results{max-height:min(40vh,240px)}}
.suggestion-chips{grid-template-columns:1fr;gap:12px}.suggestion-chip{width:100%;margin:0!important;min-height:68px;padding:16px 18px;font-size:20px!important;font-weight:800!important;background:#fff;color:var(--ink);text-align:start;line-height:1.35}.suggestion-chip[aria-pressed=true]{border-color:var(--green);background:#edf5f0;box-shadow:inset 0 0 0 2px var(--green)}.location-ask>label,.location-ask>legend{font-size:26px;font-weight:800;letter-spacing:.01em;margin-bottom:14px}.hotel-ask>label{font-size:18px;font-weight:750}.hotel-pick{display:block;width:100%;margin-top:10px;min-height:52px;border:1px solid var(--line);border-radius:11px;background:#fff;color:var(--ink);font-size:16px;font-weight:650;text-align:start;padding:14px 16px}.hotel-pick[aria-expanded=true]{border-color:var(--green);box-shadow:inset 0 0 0 1px var(--green)}.hotel-results{max-height:min(42vh,340px);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scroll-behavior:smooth;border:1px solid var(--line);border-radius:10px;margin-block:10px;background:#fff}.hotel-results[hidden]{display:none}.hotel-option{display:block;width:100%;min-height:48px;text-align:start;white-space:normal;overflow-wrap:anywhere;padding:12px 14px;border:0;border-bottom:1px solid var(--line);background:white;color:var(--green)}.hotel-option:hover,.hotel-option:focus-visible,.duration-chips button[aria-pressed=true]{background:var(--green);color:white}
.hotel-hint{margin:8px 2px 0;font-size:13px;color:#2f5047;font-weight:600}
.hotel-group-title{padding:8px 12px;font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;border-block:1px solid #d8e2dc}
.hotel-group-title.premium{background:#e9f6ee;color:#0f5c37}
.hotel-group-title.tier23{background:#eef3fb;color:#224b8e}
.hotel-group-title.rest{background:#f5f5f5;color:#445}
.hotel-option.premium{background:#f8fffb}
.hotel-option.tier23{background:#f9fbff}
.hotel-option.rest{background:#fff}

/* Stay-step refresh: clearer questions and stronger hierarchy */
.field[data-field="room"],.field[data-field="hotelClass"],.field[data-field="location"]{padding:14px;border:1px solid #d8e3dc;border-radius:14px;background:linear-gradient(180deg,#fff 0%,#f8fbf9 100%)}
.field[data-field="room"]>label,.field[data-field="hotelClass"]>label,.field[data-field="location"]>label,.field[data-field="location"]>legend{font-size:16px;font-weight:760;color:#173f34}
.field[data-field="room"] .choice,.field[data-field="hotelClass"] .choice{font-size:14px!important;border-color:#cfddd5;background:#fff;min-height:58px}
.field[data-field="room"] .choice:has(input:checked),.field[data-field="hotelClass"] .choice:has(input:checked){background:#eaf4ef}
.location-ask .input{margin-top:6px}
.location-ask .suggestion-chip{min-height:64px;font-size:18px!important}

/* Hotel picker refresh: live, clearer, and less clunky */
.hotel-ask{padding:12px;border:1px solid #d6e2db;border-radius:14px;background:#fcfffd;transition:border-color .15s ease,box-shadow .15s ease}
.hotel-ask.open{border-color:#2a6452;box-shadow:0 0 0 2px #e4f1eb}
.hotel-ask>label{font-size:17px;font-weight:760;margin-bottom:8px}
.hotel-hint{margin:6px 2px 0;font-size:13px;line-height:1.55;color:#365c50}
.hotel-pick{margin-top:8px;background:#f1f7f4;border-color:#cadad1;font-size:15px;font-weight:700}
.hotel-results{margin-top:8px;box-shadow:0 10px 24px #123e350f}
.hotel-option{transition:background .12s ease,color .12s ease}
.hotel-empty{padding:12px 14px;margin:0}

@media(max-width:800px){
 .field[data-field="room"],.field[data-field="hotelClass"],.field[data-field="location"],.hotel-ask{padding:12px}
 .field[data-field="room"]>label,.field[data-field="hotelClass"]>label,.field[data-field="location"]>label,.field[data-field="location"]>legend{font-size:15px}
 .hotel-ask>label{font-size:16px}
}

/* Mobile typography and flow refinement */
.form-side{min-width:0}
@media(max-width:800px){
 .layout{display:flex;flex-direction:column;gap:14px}
 .form-side{order:1}
 .story{order:2;padding-top:0}
 .story h1{font-size:clamp(30px,8.2vw,36px);line-height:1.12;margin:8px 0 10px}
 .story p{font-size:14px;line-height:1.7;margin:8px 0}
 .story .quiet-line,.story .trust.extra{display:none}
 .form-card{padding:18px;border-radius:18px}
 .step-row{font-size:13px;margin-bottom:10px}
 h2{font-size:32px;line-height:1.16;margin:18px 0 14px}
 .field{margin:0 0 18px}
 .field label,.field legend{font-size:15px;font-weight:700}
 .optional{font-size:12px}
 .choice{min-height:60px}
 .choice span{font-size:14px;line-height:1.5}
 .input{padding:14px}
 .help{font-size:13px;line-height:1.6}
 .callout{font-size:14px;line-height:1.65;padding:14px}
 .privacy{font-size:12px;line-height:1.7}
 .hotel-results{max-height:min(50vh,300px)}
 form#enquiry-form{padding-bottom:86px}
}
@media(max-width:480px){
 .form-card{padding:16px}
 h2{font-size:30px}
 .step-row{font-size:12.5px}
 .hotel-option{font-size:15px;line-height:1.45}
 .hotel-group-title{font-size:11.5px}
}
@media(max-width:800px){
 [dir=rtl] .story h1{font-size:34px;line-height:1.45}
 [dir=rtl] h2{line-height:1.4}
 [dir=rtl] .field label.choice{font-size:15px!important;line-height:1.8}
}
