/* Search stays separate from the booking stylesheet. */
.ev-search-trigger { display:inline-flex; align-items:center; justify-content:center; flex:0 0 42px; width:42px; min-height:42px; color:#f7fbf4; background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.14); border-radius:8px; }
.ev-search-trigger svg { display:block; width:20px; height:20px; }
.ev-search-trigger:hover { background:rgba(255,255,255,.14); color:#fff; }
.ev-search-trigger:focus-visible,.ev-search :focus-visible,.ev-search-page :focus-visible { outline:2px solid #a8e66f; outline-offset:3px; }
html.ev-search-open { overflow:hidden; }
dialog.ev-search { box-sizing:border-box; width:min(720px,calc(100% - 32px)); max-width:none; max-height:calc(100dvh - 48px); margin:24px auto auto; padding:28px; color:#f6f8f4; background:#101910; border:1px solid #40513b; border-radius:18px; box-shadow:0 24px 90px #0009; overflow:auto; overscroll-behavior:contain; font-family:Inter,Arial,sans-serif; }
.ev-search::backdrop { background:rgba(2,7,3,.78); backdrop-filter:blur(5px); }
.ev-search__top { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:24px; }
.ev-search__top h2 { margin:0; color:#fff; font-size:clamp(24px,4vw,32px); line-height:1.15; letter-spacing:-.04em; }
.ev-search__close { flex:0 0 44px; width:44px; height:44px; border:1px solid #495143; border-radius:10px; background:#ffffff0c; color:#fff; font:30px/1 Arial,sans-serif; cursor:pointer; }
.ev-search__form { margin:0; }
.ev-search__label { display:block; margin-bottom:8px; color:#d8e2d1; font-size:14px; font-weight:650; }
.ev-search__input-row { display:flex; align-items:stretch; gap:10px; }
.ev-search__input { box-sizing:border-box; min-width:0; flex:1; width:100%; min-height:52px; padding:12px 14px; border:1px solid #8f9d87; border-radius:10px; background:#fff; color:#172111; font:400 16px/1.4 Inter,Arial,sans-serif; }
.ev-search__input::placeholder { color:#626b5d; opacity:1; }
.ev-search__input-row .ev-btn { flex:0 0 auto; }
.ev-search__popular { display:flex; flex-wrap:wrap; gap:8px; margin-top:16px; }
.ev-search__chip { min-height:36px; padding:7px 11px; color:#e6f2df; border:1px solid #45543d; border-radius:999px; background:transparent; font:500 13px/1.4 Inter,Arial,sans-serif; cursor:pointer; }
.ev-search__chip:hover { border-color:#94cc68; background:#24351e; }
.ev-search__status { margin:22px 0 12px; color:#c2cdbb; font-size:14px; line-height:1.6; }
.ev-search__results { display:grid; gap:0; margin:0; padding:0; list-style:none; }
.ev-search__results li { margin:0; padding:0; border-top:1px solid #34412d; }
.ev-search__result { display:grid; gap:6px; padding:18px 8px; border-radius:8px; color:#fff; text-decoration:none; overflow-wrap:anywhere; }
.ev-search__result:hover { color:#fff; background:#1c2918; }
.ev-search__result-title { color:#d4f3b8; font-size:18px; line-height:1.4; font-weight:750; }
.ev-search__description { color:#c7d0c2; font-size:14px; line-height:1.6; }
.ev-search__path { color:#9cae91; font-size:12px; line-height:1.5; }
.ev-search__more { margin-top:18px; }
.ev-search [hidden],.ev-search-page [hidden] { display:none!important; }
.ev-search__all { display:inline-block; padding:14px 0 2px; color:#c8e7ae; font-size:14px; text-decoration:underline; text-underline-offset:4px; }
.ev-search-page { padding:64px 20px 80px; background:radial-gradient(ellipse at top left,#1c3212 0,transparent 60%),#0b130c; color:#f6f8f4; min-height:65vh; }
.ev-search-page__inner { width:min(760px,100%); margin:auto; }
.ev-search-page h1 { margin:0 0 16px; color:#fff; font-size:clamp(32px,6vw,48px); line-height:1.15; }
.ev-search-page__lead { margin:0 0 28px; color:#c7d0c2; line-height:1.7; }
.ev-search-page__links { margin-top:36px; border-top:1px solid #34412d; padding-top:24px; }
.ev-search-page__links h2 { color:#fff; font-size:20px; }
.ev-search-page__links ul { display:flex; flex-wrap:wrap; gap:8px 24px; list-style:none; padding:0; }
.ev-search-page__links a { display:inline-block; padding:8px 0; color:#d4f3b8; text-decoration:underline; text-underline-offset:4px; }
@media (min-width:1121px) and (max-width:1240px) { .ev-shell-brand__tag { display:none; } .ev-shell-header__inner { gap:12px; } .ev-shell-nav { gap:2px; } .ev-shell-nav__link { padding-inline:10px; } }
@media (max-width:540px) {
  .ev-shell-header__inner { grid-template-columns:minmax(0,1fr) auto; gap:8px; }
  .ev-shell-actions { gap:6px; }
  .ev-shell-brand { gap:6px; min-width:0; }
  .ev-shell-brand__name { font-size:18px; }
  dialog.ev-search { width:calc(100% - 16px); max-height:calc(100dvh - 16px); margin:8px auto; padding:18px; border-radius:14px; }
  .ev-search__top { margin-bottom:20px; }
  .ev-search__input-row { flex-wrap:wrap; }
  .ev-search__input { flex-basis:100%; }
  .ev-search__input-row .ev-btn { width:100%; }
  .ev-search-page { padding:40px 16px 56px; }
}
