/* Dropdowns follow their own search field, including narrow laptop and round-trip layouts. */
.aj-sf .aj-sf-field,
.aj-sf .aj-pax-field { min-width:0; overflow:visible; }
.aj-pax-field { position:relative; }
.aj-pax-field,
.aj-pax-field *,
.aj-airport-menu,
.aj-airport-menu * { box-sizing:border-box; }

.aj-pax-input {
  display:block; width:100%; min-width:0; margin:0; border:0; border-radius:0;
  background:transparent; color:#f4f1e9; font:500 16px/24px Manrope,sans-serif;
  outline:none; padding-right:36px!important; -webkit-appearance:none; appearance:none;
}
.aj-sf-hero .aj-pax-input { height:100%; padding:30px 36px 10px 42px!important; }
.aj-sf.aj-sf-stack .aj-pax-field .aj-pax-input { flex:none; height:24px; min-height:24px; padding:0 32px 0 26px!important; }
/* Keep the selected pet count beside its icon; the generic stacked-field rule removes this inset. */
.aj-sf.aj-sf-stack .aj-sf-field select.aj-sf-iconed { padding-left:26px!important; }
.aj-pax-toggle {
  position:absolute; right:3px; bottom:5px; display:grid; place-items:center;
  width:32px; height:34px; padding:0; border:0; border-radius:0; background:transparent;
  color:#d4bd91; cursor:pointer; touch-action:manipulation;
}
.aj-pax-toggle svg { width:13px; height:13px; pointer-events:none; transition:transform .16s ease; }
.aj-pax-toggle[aria-expanded="true"] svg { transform:rotate(180deg); }
.aj-pax-toggle:hover { background:rgba(212,189,145,.08); }
.aj-pax-toggle:focus-visible { outline:1px solid #d4bd91; outline-offset:-4px; }
.aj-pax-field:focus-within { box-shadow:inset 0 0 0 1px rgba(212,189,145,.65); }

.aj-pax-menu,
.aj-airport-menu {
  position:absolute!important; left:0!important; right:auto!important; top:100%!important;
  width:100%!important; min-width:0!important; max-width:100%!important;
  max-height:240px!important; margin:0!important; padding:0; overflow-x:hidden; overflow-y:auto;
  z-index:40!important; border:1px solid rgba(212,189,145,.4); border-radius:0!important;
  background:#111d25; color:#f4f1e9; box-shadow:0 16px 32px rgba(0,0,0,.35);
  scrollbar-width:thin; scrollbar-color:#677176 #111d25; overscroll-behavior:contain;
}
.aj-pax-option,
.aj-airport-menu button {
  display:flex!important; flex-direction:column!important; align-items:flex-start!important;
  justify-content:center!important; width:100%; min-width:0; min-height:43px; gap:3px!important;
  margin:0; padding:10px 12px!important; border:0; border-bottom:1px solid rgba(255,255,255,.06);
  border-radius:0; background:transparent; color:#f4f1e9; font:500 14px/1.4 Manrope,sans-serif;
  text-align:left; white-space:normal; overflow-wrap:anywhere; cursor:pointer;
}
.aj-airport-menu button>span { display:block; max-width:100%; }
.aj-airport-menu button>span:last-child { font-size:11px!important; font-weight:400; line-height:1.4; color:#9fb0b5!important; }
.aj-pax-option:hover,
.aj-pax-option:focus-visible,
.aj-airport-menu button:hover,
.aj-airport-menu button:focus-visible { background:rgba(212,189,145,.1); outline:none; }
.aj-pax-option[aria-selected="true"] { background:rgba(212,189,145,.14); color:#ecd9b1; box-shadow:inset 2px 0 #d4bd91; }

/* The homepage keeps the original light, transparent Concierge treatment. */
.aj-home-hero .aj-concierge-button {
  background:transparent; border:1px solid rgba(212,189,145,.5); border-radius:0;
  box-shadow:none; font-weight:500; color:#e7e5df; transform:none;
}
.aj-home-hero .aj-concierge-button:hover {
  background:rgba(212,189,145,.12); border-color:#d4bd91; box-shadow:none; color:#f4e6c6; transform:none;
}
.aj-home-hero .aj-sf-hero .aj-pax-field .aj-pax-input { padding-left:42px!important; padding-right:36px!important; }
.aj-party-manual { display:flex; align-items:center; justify-content:space-between; gap:16px; color:#aeb9bd; font:13px/1.5 Manrope,sans-serif; }
.aj-party-manual input { box-sizing:border-box; width:92px; min-height:48px; padding:10px 14px; border:1px solid #d4bd9170; border-radius:2px; background:#081017; color:#f4f1e9; text-align:center; font:500 18px Manrope,sans-serif; }
.aj-party-manual input:focus-visible { outline:2px solid #d4bd91; outline-offset:2px; }
@media(min-width:1024px) and (max-width:1279px) and (max-height:850px) { .aj-home-hero .aj-sf-hero .aj-pax-field .aj-pax-input { padding-left:36px!important; } }
@media(prefers-reduced-motion:reduce) { .aj-pax-toggle svg { transition:none; } }
