/* Real controls cover the decorative values in the approved hero artwork. */
.hero-approved-locked .search label {
  background:linear-gradient(#101c28,#07101a) !important;
  border:1px solid #344453 !important;
  padding:6px 10px !important;
  display:flex !important; flex-direction:column !important; justify-content:center !important;
  cursor:pointer;
}
.hero-approved-locked .search label>span {
  position:static !important; width:auto !important; height:auto !important;
  margin:0 !important; clip:auto !important; clip-path:none !important;
  overflow:visible !important; white-space:nowrap !important;
  color:#fff !important; font:700 clamp(10px,.8vw,14px)/1.3 Arial,sans-serif !important;
}
.hero-approved-locked .search input,
.hero-approved-locked .search select {
  position:static !important; width:100% !important; min-width:0 !important;
  height:28px !important; min-height:24px !important; margin:3px 0 0 !important;
  padding:0 !important; color:#fff !important; background:#0a1420 !important;
  font:600 clamp(12px,1vw,17px)/1.2 Arial,sans-serif !important;
  text-shadow:none !important; color-scheme:dark;
}
.hero-approved-locked .search input::-webkit-calendar-picker-indicator {opacity:1 !important;cursor:pointer}
.hero-approved-locked .search select {appearance:auto !important}
.hero-approved-locked .search option {color:white;background:#0a1420}
@media(max-width:980px){
 .hero-approved-locked .search input,.hero-approved-locked .search select {font-size:16px !important;height:30px !important}
 .hero-approved-locked .search label>span {font-size:11px !important}
}

/* Align the desktop hit area with the gold button in the approved hero art.
   Art: 2172 x 525. Visible button: x=1280..1659, y=360..441.
   Mobile retains its separate, normally laid out button. */
@media(min-width:981px){
 .hero-approved-locked .search > button[type="submit"] {
  position:absolute !important;
  left:66.39% !important;top:18.67% !important;right:auto !important;bottom:auto !important;
  width:31.76% !important;height:66.65% !important;
  margin:0 !important;padding:0 !important;
  border-radius:clamp(4px,.45vw,9px) !important;
 }
 .hero-approved-locked .search > button[type="submit"]:hover,
 .hero-approved-locked .search > button[type="submit"]:focus-visible {
  outline:2px solid #ffe07a !important;
  outline-offset:-2px !important;
  box-shadow:inset 0 0 12px rgba(255,255,220,.45),0 0 10px rgba(255,194,48,.4) !important;
 }
}

/* Keep all three desktop fields inside the illustrated gold booking frame. */
@media(min-width:981px){
 .hero-approved-locked .search > label {
  position:absolute !important;top:18.67% !important;bottom:auto !important;right:auto !important;
  height:66.65% !important;min-height:0 !important;
  padding:clamp(3px,.4vw,8px) clamp(5px,.65vw,12px) !important;
  box-sizing:border-box !important;
  border-radius:clamp(4px,.45vw,9px) !important;
 }
 .hero-approved-locked .search > label:nth-of-type(1) {left:2.12700% !important;width:21.70063% !important;}
 .hero-approved-locked .search > label:nth-of-type(2) {left:25.00063% !important;width:20.44383% !important;}
 .hero-approved-locked .search > label:nth-of-type(3) {left:46.61747% !important;width:18.60054% !important;}

 .hero-approved-locked .search > label > span {
  font-size:clamp(9px,.78vw,14px) !important;line-height:1.2 !important;
 }
 .hero-approved-locked .search > label > input,
 .hero-approved-locked .search > label > select {
  flex:1 1 auto !important;min-height:0 !important;height:auto !important;
  margin-top:clamp(2px,.25vw,5px) !important;
  font-size:clamp(10px,.95vw,17px) !important;
 }
}
