/* InAsia free native-search MVP. Staging until production approval. */
.site-search { position: relative; flex: 0 0 auto; }
.site-search__trigger {
  display: flex; align-items: center; justify-content: center;
  width: 32px; height: 36px; cursor: pointer; color: var(--inasia-text);
  list-style: none;
}
.site-search__trigger::-webkit-details-marker { display: none; }
.site-search__trigger svg { width: 20px; height: 20px; }
.site-search[open] .site-search__trigger,
.site-search__trigger:hover { color: var(--inasia-blue); }
.site-search__trigger:focus-visible,
.site-search input:focus-visible,
.inasia-search-page-form input:focus-visible {
  outline: 2px solid var(--inasia-blue); outline-offset: 3px;
}
.site-search__popup {
  position: absolute; right: 0; top: calc(100% + 14px); z-index: 1100;
  width: min(360px, calc(100vw - 32px));
  padding: 20px; border: 1px solid var(--inasia-border);
  background: var(--inasia-warm); box-shadow: 0 14px 38px rgba(0,0,0,.12);
}
.site-search__popup label { display:block; font-weight:600; font-size:13px; margin-bottom:10px; }
.site-search__controls { display:flex; gap:8px; }
.site-search__controls input,
.inasia-search-page-form input {
  min-width:0; flex:1; font:inherit; background:white; color:var(--inasia-text);
  border:1px solid var(--inasia-border); border-radius:var(--inasia-radius);
  padding:11px 12px;
}
.site-search__controls button,
.inasia-search-page-form button {
  border:0; border-radius:var(--inasia-radius);
  padding:11px 16px; color:#fff; background:var(--inasia-blue);
  font:inherit; font-weight:600; cursor:pointer;
}
.site-search__controls button:hover,
.inasia-search-page-form button:hover { background:var(--inasia-green); }
.inasia-search-hero { padding:clamp(50px,7vw,92px) 0 48px; background:var(--inasia-soft-green); }
.inasia-search-hero h1 { font-size:clamp(34px,5vw,56px); margin:0 0 18px; font-weight:500; }
.inasia-search-hero p { max-width:670px; margin:0 0 28px; }
.inasia-search-page-form { max-width:680px; }
.inasia-search-page-form label { display:block; margin-bottom:10px; font-size:14px; font-weight:600; }
.inasia-search-page-form__row { display:flex; gap:10px; }
.inasia-search-results { padding:clamp(38px,5vw,66px) 0 80px; min-height:300px; }
.inasia-search-count { color:var(--inasia-muted); margin:0 0 26px; }
.inasia-search-note { max-width:650px; }
.inasia-search-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.inasia-search-card { background:white; border:1px solid var(--inasia-border); min-width:0; }
.inasia-search-card a { display:block; height:100%; text-decoration:none; }
.inasia-search-card:hover { border-color:var(--inasia-blue); }
.inasia-search-card__image { aspect-ratio:16/10; overflow:hidden; background:var(--inasia-soft-green); }
.inasia-search-card__image img { display:block; width:100%; height:100%; object-fit:cover; }
.inasia-search-card__body { padding:23px; }
.inasia-search-card__category { font-size:12px; color:var(--inasia-green); text-transform:uppercase; letter-spacing:.08em; font-weight:600; }
.inasia-search-card h2 { font-size:clamp(20px,2.3vw,25px); font-weight:500; margin:12px 0 22px; line-height:1.24; overflow-wrap:anywhere; }
.inasia-search-card__link { font-size:14px; color:var(--inasia-blue); }
.inasia-search-pagination { display:flex; gap:13px; flex-wrap:wrap; margin-top:36px; }
.inasia-search-pagination a,.inasia-search-pagination .current { padding:8px 12px; border:1px solid var(--inasia-border); text-decoration:none; }
.inasia-search-pagination .current { background:var(--inasia-blue); color:white; }
.inasia-search-browse { margin-top:38px; }
.inasia-search-browse a { color:var(--inasia-blue); font-weight:600; text-decoration:underline; }
@media(max-width:980px) { .inasia-search-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:720px) {
  .site-header__actions { gap:12px; }
  .site-search__popup { right:-43px; top:calc(100% + 12px); }
  .inasia-search-grid { grid-template-columns:1fr; }
  .inasia-search-page-form__row { flex-wrap:wrap; }
  .inasia-search-page-form__row input { flex-basis:100%; }
}
