/* Public search owns its appearance on every page. Page CSS only places the header. */
.marketplace-search {
  --search-height:65px;
  --search-label-size:12px;
  --search-text-size:13px;
  --search-button-size:13px;
  --search-radius:16px;
  --search-max-width:980px;
  --search-shadow:var(--public-search-shadow);
  box-sizing:border-box;
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(0,.95fr) minmax(0,.95fr) auto;
  align-items:stretch;
  width:100%;
  max-width:var(--search-max-width);
  min-width:0;
  min-height:var(--search-height);
  margin:0 auto;
  border:0;
  border-radius:var(--search-radius);
  background:#fff;
  color:#07172f;

  font-size:16px;
  line-height:1.3;
  text-align:left;
  box-shadow:var(--search-shadow);
}
.marketplace-search--hero {
  --search-label-size:14px;
  --search-text-size:14px;
  --search-button-size:14px;
  --search-radius:18px;
  --search-max-width:900px;
  --search-shadow:var(--public-search-shadow-large);
}
@media(min-width:801px){.marketplace-search--hero{--search-max-width:1200px}.marketplace-search--hero .marketplace-search-button{align-self:center;min-width:0;min-height:45px;margin:0 8px 0 6px;padding-inline:16px;border-radius:999px;font-weight:700;box-shadow:none}}
.marketplace-search *{box-sizing:border-box}
.shared-header>.marketplace-search{grid-column:2;justify-self:stretch}
.marketplace-search-field{position:relative;display:flex;align-items:center;gap:10px;min-width:0;min-height:var(--search-height);padding:0 16px;text-align:left}
.marketplace-search-field+.marketplace-search-field{border-left:0}
.marketplace-search-field+.marketplace-search-field::before{position:absolute;top:14px;bottom:14px;left:0;width:1px;background:#eee4d7;content:"";pointer-events:none}
.marketplace-search-field:focus-within{background:#fffaf4}
.marketplace-search-field-icon{width:20px;height:20px;flex:0 0 20px;fill:none;stroke:#c96a0d;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.marketplace-search-chevron{width:17px;height:17px;flex:0 0 17px;fill:none;stroke:#697386;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;pointer-events:none;transition:transform .18s ease}
.marketplace-search-field:has([aria-expanded="true"])>.marketplace-search-chevron{transform:rotate(180deg)}
.marketplace-search-copy{display:block;flex:1;min-width:0}
.marketplace-search-label{display:block;margin:0;color:#07172f;font-size:var(--search-label-size);font-weight:700;line-height:1.3;white-space:nowrap}
.marketplace-search-input,.marketplace-date-trigger{display:block;width:100%;min-width:0;height:auto;margin:2px 0 0;padding:0;border:0;border-radius:0;outline:0;background:transparent;color:#07172f;font: 500 var(--search-text-size)/1.3 var(--site-font-family);text-align:left;text-overflow:ellipsis}
.marketplace-search-input::placeholder{color:#8a8f98;font-weight:500;opacity:1}
.marketplace-date-trigger{cursor:pointer;white-space:nowrap}
.marketplace-search .marketplace-date-trigger{font-family:var(--site-font-family);font-size:var(--search-text-size);font-weight:500;line-height:1.3}
.marketplace-search .marketplace-date-trigger.is-placeholder{color:#8a8f98;font-weight:500}
.marketplace-search-button{display:flex;align-items:center;justify-content:center;gap:8px;min-width:116px;margin:6px;padding:0 16px;border:1px solid var(--pill-gold,var(--gold,#b8873f));border-radius:999px;background:var(--pill-gold,var(--gold,#b8873f));color:#fff;font:750 var(--search-button-size)/1 var(--site-font-family);cursor:pointer;box-shadow:none}
.marketplace-search-button:hover{border-color:var(--pill-gold-hover,var(--gold-dark,#9f7335));background:var(--pill-gold-hover,var(--gold-dark,#9f7335))}
.marketplace-search-button:focus-visible,.marketplace-date-trigger:focus-visible{outline:2px solid var(--gold-dark,#9f7335);outline-offset:3px}
.marketplace-search-menu{position:absolute;z-index:50;left:0;top:calc(100% + 9px);width:max(260px,100%);max-height:320px;overflow:auto;padding:12px;border:1px solid #eadfce;border-radius:18px;background:#fff;box-shadow:0 18px 45px rgba(34,31,27,.14)}
.marketplace-search-menu>strong{display:block;margin:2px 10px 7px;color:#7a8494;font-size:11px;letter-spacing:.06em;text-transform:uppercase}
.marketplace-search-menu>button{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:40px;padding:8px 10px;border:0;border-radius:10px;background:transparent;color:#07172f;font: 600 14px/1.25 var(--site-font-family);text-align:left;cursor:pointer}
.marketplace-search-menu>button:hover,.marketplace-search-menu>button:focus-visible{background:#fff3e5}
.marketplace-search-menu small{color:#9297a2;font-size:11px}
.marketplace-date-menu{left:auto;right:0;width:260px}
.marketplace-date-menu label{display:grid;gap:6px;margin:8px 10px 3px;color:#697485;font-size:12px;font-weight:700}
.marketplace-date-menu input{width:100%;min-height:40px;padding:0 9px;border:1px solid #eadfce;border-radius:9px;color:#07172f;background:#fff;font: 500 14px var(--site-font-family)}
.mobile-search-heading,.find-mobile-searchbar{display:none}
.marketplace-search [hidden]{display:none}
body.mobile-search-visible .shared-header{z-index:1001}

@media(min-width:801px) and (max-width:1000px){
  .marketplace-search:not(.marketplace-search--hero){--search-label-size:11px;--search-text-size:12px;--search-button-size:12px}
  .marketplace-search-field{gap:7px;padding-inline:9px}
  .marketplace-search-button{min-width:82px;padding-inline:10px}
}

.marketplace-search--hero .marketplace-search-button{min-height:45px;border-radius:20px}
@media(max-width:800px){
  body.mobile-search-visible{overflow:hidden}
  .marketplace-search{--search-text-size:16px;--search-label-size:14px;--search-button-size:16px;grid-template-columns:minmax(0,1fr);gap:0}
  .marketplace-search:not(.marketplace-search--hero){display:none}
  .marketplace-search--hero{--search-height:68px;padding:6px}
  .marketplace-search-field{width:100%;flex:0 0 auto;padding:12px 14px;border-bottom:1px solid #eee4d7}
  .marketplace-search-field+.marketplace-search-field::before{display:none}
  .marketplace-search-field[data-search-field="date"]{border-bottom:0}
  .marketplace-search-input::placeholder{color:#5f6670;font-weight:500}
  .marketplace-search .marketplace-date-trigger.is-placeholder{color:#5f6670;font-weight:500}
  .marketplace-search-button{min-height:52px;margin:6px 0 0}
  .marketplace-search-menu{top:calc(100% + 2px);left:0;right:0;width:100%;max-height:min(270px,42dvh)}
  .marketplace-search.is-mobile-open{position:fixed;z-index:1000;inset:0;display:flex;flex-direction:column;align-items:stretch;width:100%;max-width:none;height:100dvh;min-height:0;margin:0;padding:0 20px max(20px,env(safe-area-inset-bottom));overflow-y:auto;border-radius:0;box-shadow:none}
  .marketplace-search.is-mobile-open .mobile-search-heading{display:grid;grid-template-columns:42px minmax(0,1fr) 42px;align-items:center;min-height:88px;margin-bottom:12px}
  .mobile-search-heading::before{content:""}
  .mobile-search-heading h2{grid-column:2;margin:0;text-align:center;font-size:27px;line-height:1.2;letter-spacing:-.04em}
  .mobile-search-heading button{grid-column:3;width:42px;height:42px;border:0;border-radius:50%;background:#f5f1eb;color:#07172f;font: 400 31px/1 var(--site-font-family);cursor:pointer}
  .marketplace-search.is-mobile-open .marketplace-search-button{flex:0 0 auto;margin-top:auto}
  .find-mobile-searchbar{display:grid;grid-template-columns:44px minmax(0,1fr) 48px;align-items:center;gap:10px;width:100%;min-height:72px;padding:8px;border:1px solid #e9ddcd;border-radius:20px;background:#fff;box-shadow:var(--public-card-shadow);line-height:1.3}
  .find-mobile-back{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:#f8f2e9;color:#182033;text-decoration:none}
  .find-mobile-back svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
  .find-mobile-search{display:grid;gap:3px;min-width:0;padding:4px 0;border:0;background:transparent;color:#07172f;text-align:left;cursor:pointer}
  .find-mobile-search strong,.find-mobile-search span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .find-mobile-search strong{font-size:15px;line-height:1.2;font-weight:700;letter-spacing:-.02em}
  .find-mobile-search span{color:#6f7480;font-size:13px;line-height:1.25;font-weight:500}
  .find-mobile-search span i{padding-inline:3px;color:#bf873d;font-style:normal}
  .find-mobile-searchbar .find-mobile-map{display:grid;place-items:center;width:46px;height:46px;padding:0;border:0;border-radius:14px;background:#f2dfc0;color:#8d4d08;cursor:pointer}
  .find-mobile-map svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
  .find-mobile-searchbar .find-mobile-map[aria-pressed="true"]{background:var(--pill-gold);color:#fff}
  .find-mobile-search-icon{width:22px;height:22px;justify-self:center;fill:none;stroke:#8d4d08;stroke-width:1.8;stroke-linecap:round}
}
@media(max-width:380px){
  .find-mobile-searchbar{grid-template-columns:40px minmax(0,1fr) 44px;gap:7px;min-height:66px;padding:7px}
  .find-mobile-back{width:40px;height:40px}
  .find-mobile-searchbar .find-mobile-map{width:42px;height:42px}
  .find-mobile-search strong{font-size:14px}
  .find-mobile-search span{font-size:12px}
}

/* The field surface indicates focus without drawing a box around its text. */
.marketplace-search .marketplace-search-input:focus,
.marketplace-search .marketplace-search-input:focus-visible,
.marketplace-search .marketplace-date-trigger:focus:not(:focus-visible){outline:none;box-shadow:none;border:0}

.hero-booking .marketplace-search--hero{--search-height:74px;--search-label-size:14px;--search-text-size:14px;--search-button-size:14px;--search-radius:999px;--search-max-width:1024px;--search-shadow:0 14px 36px rgba(65,49,28,.08);margin-top:30px;border:1px solid var(--public-line)}
.hero-booking .marketplace-search-button{width:128px;min-width:128px;height:56px;min-height:56px;align-self:center;justify-self:center;margin:0 8px;padding:0 12px;border-radius:999px;background:var(--pill-gold,var(--gold,#b8873f));color:#fff;font-size:18px;font-weight:700;white-space:nowrap;box-shadow:none}
.hero-booking .marketplace-search-button:hover{background:var(--pill-gold-hover,var(--gold-dark,#9f7335))}
@media(max-width:800px){.hero-booking .marketplace-search--hero{--search-height:66px;--search-radius:24px;margin-top:20px;padding:4px;border-radius:24px}.hero-booking .marketplace-search--hero .marketplace-search-field{min-height:64px;padding:11px 12px}.hero-booking .marketplace-search-button{width:100%;min-width:0;height:48px;min-height:48px;margin:5px 0 0;border-radius:999px;font-size:16px}}
