/* Algolia Search Widget — base styles
   These are intentionally minimal and unstyled so the theme controls the look.
   The theme's existing .btn, .badge, .stars classes apply automatically.
*/

/* ─── Widget wrapper ──────────────────────────────────────────────────────── */

.algolia-search-widget {
  position: relative;
}

/* ─── Input ───────────────────────────────────────────────────────────────── */

.algolia-search-widget__input-wrap {
  position: relative;
  margin-bottom: 1.5rem;
}

/* Search icon */
.algolia-search-widget__input-wrap::before {
  content: '';
  position: absolute;
  left: 1rem;
  top: 50%;
  transform: translateY(-50%);
  width: 1.1rem;
  height: 1.1rem;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.35-4.35'/%3E%3C/svg%3E") center / contain no-repeat;
  pointer-events: none;
}

.algolia-search-widget__input {
  display: block;
  width: 100%;
  padding: .875rem 1.25rem .875rem 2.75rem;
  font-size: 1rem;
  line-height: 1.5;
  border: 2px solid var(--c-border, #e2e8f0);
  border-radius: var(--radius, 10px);
  background: #fff;
  box-shadow: 0 1px 4px rgba(0,0,0,.06);
  box-sizing: border-box;
  -webkit-appearance: none;
  appearance: none;
  transition: border-color var(--t, 180ms ease), box-shadow var(--t, 180ms ease);
}

.algolia-search-widget__input:focus {
  outline: none;
  border-color: var(--c-dark, #0f172a);
  box-shadow: 0 0 0 3px rgba(15,23,42,.08);
}

/* ─── Results container ───────────────────────────────────────────────────── */

.algolia-search-widget {
  scroll-margin-top: calc(var(--header-h, 4rem) + 1rem);
}

/* No forced compositing layer here. A `transform: translateZ(0)` promotes the
   results to a GPU layer whose texture is NOT re-rastered when its contents are
   replaced via innerHTML — leaving cards invisible until a scroll/DOM-move
   invalidates it. Rendering in the normal paint tree repaints on every update. */

/* ─── Loading state ───────────────────────────────────────────────────────── */

.algolia-search-widget.is-loading .algolia-search-widget__results {
  pointer-events: none;
}

/* ─── Reserved space for JS-filled containers ─────────────────────────────── */
/* The pill row is built on DOMContentLoaded and the filter bar only after two
   Algolia round-trips (facet prefetch + option-availability multi-query), so
   both used to pop in and shove everything below them down. Reserving one row
   of height each keeps the layout still. Heights are one row of the real
   control plus that container's own bottom spacing; JS removes the host
   element entirely when it has nothing to render, so the space is never
   reserved for good. Both wrap on narrow screens — a reserve is a floor, not a
   cap, so a wrapped second row still grows the box. */

.algolia-search-widget__pills {
  /* pill 1.94rem + margin-bottom 1.25rem + padding-bottom .25rem */
  min-height: var(--algolia-pills-h, 3.5rem);
}

.algolia-search-widget__filters {
  /* button 2.09rem + padding-bottom 1rem + border 1px + margin-bottom 1.5rem */
  min-height: var(--algolia-filter-bar-h, 4.6rem);
}

/* ─── Loading skeleton ────────────────────────────────────────────────────── */
/* Server-rendered into __results so the container has height in the very first
   paint. Shares .algolia-hits, so the grid and gap match the real results at
   every breakpoint; the first customHits render replaces innerHTML and drops
   it. Four cards are printed — trim to exactly one row per grid width. */

@media (max-width: 1199px) {
  .algolia-skeleton .algolia-skeleton__card:nth-child(n+4) { display: none; }
}

@media (max-width: 767px) {
  .algolia-skeleton .algolia-skeleton__card:nth-child(n+3) { display: none; }
}

@media (max-width: 479px) {
  .algolia-skeleton .algolia-skeleton__card:nth-child(n+2) { display: none; }
}

.algolia-skeleton__thumb,
.algolia-skeleton__line {
  background: var(--c-border, #e2e8f0);
  border-radius: var(--radius, 10px);
  animation: algolia-skeleton-pulse 1.4s ease-in-out infinite;
}

.algolia-skeleton__thumb {
  /* Matches the 600×375 img the tours template emits. */
  aspect-ratio: 600 / 375;
  margin-bottom: .75rem;
}

.algolia-skeleton__line {
  height: .7rem;
  border-radius: 4px;
  margin-bottom: .5rem;
}

.algolia-skeleton__line--title {
  height: 1rem;
  width: 85%;
}

.algolia-skeleton__line--short {
  width: 45%;
}

@keyframes algolia-skeleton-pulse {
  0%, 100% { opacity: 1; }
  50%      { opacity: .45; }
}

@media (prefers-reduced-motion: reduce) {
  .algolia-skeleton__thumb,
  .algolia-skeleton__line {
    animation: none;
  }
}

/* ─── Result fade-in ──────────────────────────────────────────────────────── */
/* Opacity is managed entirely via inline styles in algolia-search.js. */

/* ─── No results / error messages ────────────────────────────────────────── */

.algolia-no-results,
.algolia-error {
  text-align: center;
  color: #555;
  padding: 1.5rem 0;
  font-size: .95rem;
}

.algolia-error {
  color: #c00;
}

/* ─── Hits grid ───────────────────────────────────────────────────────────── */

.algolia-hits {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: var(--space-xl, 2.5rem);
}

@media (max-width: 1199px) {
  .algolia-hits { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 767px) {
  .algolia-hits { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 479px) {
  .algolia-hits { grid-template-columns: 1fr; }
}

/* ─── Default hit card (non-tours template) ───────────────────────────────── */

.algolia-hit--default {
  display: flex;
  flex-direction: column;
  border: 1px solid #e5e5e5;
  border-radius: 6px;
  overflow: hidden;
  background: #fff;
  transition: box-shadow .15s ease;
}

.algolia-hit--default:hover {
  box-shadow: 0 4px 16px rgba(0,0,0,.1);
}

.algolia-hit--default .algolia-hit__thumb {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}

.algolia-hit--default .algolia-hit__body {
  display: flex;
  flex-direction: column;
  flex: 1;
  padding: 1rem;
  gap: .5rem;
}

.algolia-hit--default .algolia-hit__title {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.35;
  margin: 0;
}

.algolia-hit--default .algolia-hit__title a {
  text-decoration: none;
  color: inherit;
}

.algolia-hit--default .algolia-hit__title a:hover {
  text-decoration: underline;
}

.algolia-hit--default .algolia-hit__excerpt {
  font-size: .875rem;
  color: #555;
  line-height: 1.5;
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  line-clamp: 3;
  overflow: hidden;
}

.btn--sm {
  padding: .4rem .85rem;
  font-size: .875rem;
}

/* ─── Powered by Algolia ──────────────────────────────────────────────────── */

.algolia-powered-by {
  display: flex;
  justify-content: flex-end;
  margin-bottom: .5rem;
  text-decoration: none;
  /* Muting is done by the fill below, not by opacity. A translucent mark blends
     toward whichever backdrop is behind it, and this corner sits over two
     different ones (see the fill rule) — at .55 the neutral tone dropped to
     ~2:1 on white and ~2.8:1 on the hero, failing on both. */
  transition: opacity var(--t, 180ms ease);
}

/* Dims rather than strengthens: "stronger" would mean darker over the white
   card but lighter over the dark hero, and one rule can't do both. */
.algolia-powered-by:hover {
  opacity: .7;
}

.algolia-powered-by svg {
  height: .75rem;
  width: auto;
}

/* One neutral tone, because this corner straddles two backdrops: the dark hero
   (rgb(28,25,23)) on the front page at >=768px, where the theme's negative
   margin pulls the white .search-stage card up far enough that the hero still
   covers the logo — and the white card itself on /tours at every width, and on
   the front page below 768px once the hero shrinks. The old `fill:#fff` only
   worked in the first case and left the mark invisible white-on-white in the
   other two. --c-text-muted clears 4.4:1 on white and 4.0:1 on the hero.
   A CSS fill overrides the inline presentation attributes on the SVG paths. */
.algolia-powered-by svg path {
  fill: var(--c-text-muted, #64748b);
}

/* ─── Filter bar ──────────────────────────────────────────────────────────── */

.algolia-filter-bar {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--space-sm, .5rem);
  margin-bottom: var(--space-lg, 1.5rem);
  padding-bottom: var(--space-md, 1rem);
  border-bottom: 1px solid var(--c-border, #e2e8f0);
}

/* ─── Custom dropdown ─────────────────────────────────────────────────────── */

.filter-dropdown {
  position: relative;
}

.filter-dropdown__btn {
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  font-family: var(--font-sans, system-ui, sans-serif);
  font-size: .85rem;
  font-weight: 500;
  color: var(--c-text, #1e293b);
  background: #fff;
  border: 1.5px solid var(--c-border, #e2e8f0);
  border-radius: 999px;
  padding: .45rem 1rem;
  cursor: pointer;
  white-space: nowrap;
  line-height: 1.4;
  box-shadow: 0 1px 3px rgba(0,0,0,.05);
  transition: border-color var(--t, 180ms ease), background var(--t, 180ms ease), box-shadow var(--t, 180ms ease);
}

.filter-dropdown__btn:hover,
.filter-dropdown__btn[aria-expanded="true"] {
  border-color: #94a3b8;
  box-shadow: 0 2px 6px rgba(0,0,0,.09);
}

.filter-dropdown__btn--active {
  background: var(--c-dark, #0f172a);
  border-color: var(--c-dark, #0f172a);
  color: #fff;
}

.filter-dropdown__chevron {
  width: .7rem;
  height: .7rem;
  flex-shrink: 0;
  color: var(--c-text-muted, #64748b);
  transition: transform var(--t, 180ms ease);
}

.filter-dropdown__btn[aria-expanded="true"] .filter-dropdown__chevron {
  transform: rotate(180deg);
}

.filter-dropdown__btn--active .filter-dropdown__chevron {
  color: rgba(255,255,255,.7);
}

/* Option panel */

.filter-dropdown__panel {
  position: absolute;
  top: calc(100% + .4rem);
  left: 0;
  z-index: 200;
  min-width: 210px;
  max-height: 16rem;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-width: thin;
  scrollbar-color: var(--c-border, #e2e8f0) transparent;
  margin: 0;
  padding: .4rem 0;
  list-style: none;
  background: var(--c-surface, #fff);
  border: 1.5px solid var(--c-border, #e2e8f0);
  border-radius: var(--radius, 10px);
  box-shadow: 0 8px 24px rgba(0,0,0,.12);
}

.filter-dropdown__option {
  display: flex;
  align-items: center;
  gap: .5rem;
  padding: .45rem .85rem;
  font-size: .875rem;
  color: var(--c-text, #1e293b);
  cursor: pointer;
  white-space: nowrap;
  outline: none;
  user-select: none;
}

.filter-dropdown__option--child {
  padding-left: 1.85rem;
  font-size: .8125rem;
  color: var(--c-text-muted, #64748b);
}

.filter-dropdown__option:hover,
.filter-dropdown__option:focus {
  background: var(--c-bg-alt, #f8fafc);
}

.filter-dropdown__option[aria-selected="true"] {
  font-weight: 600;
}

/* Toggle switch indicator (multi and single-select) */

.filter-dropdown__check {
  display: inline-block;
  position: relative;
  width: 2rem;
  height: 1.1rem;
  flex-shrink: 0;
  border-radius: 999px;
  background: var(--c-border, #cbd5e1);
  transition: background var(--t, 180ms ease);
}

.filter-dropdown__option[aria-selected="true"] .filter-dropdown__check {
  background: var(--c-accent, #7db3c8);
}

.filter-dropdown__check::after {
  content: '';
  display: block;
  position: absolute;
  top: 50%;
  left: 2px;
  width: .7rem;
  height: .7rem;
  border-radius: 50%;
  background: #fff;
  transform: translateY(-50%);
  transition: transform var(--t, 180ms ease);
}

.filter-dropdown__option[aria-selected="true"] .filter-dropdown__check::after {
  transform: translateX(calc(2rem - .7rem - 4px)) translateY(-50%);
}

/* Facet count */

.filter-dropdown__count {
  margin-left: auto;
  font-size: .75rem;
  font-weight: 400;
  color: var(--c-text-muted, #64748b);
  padding-left: .5rem;
}

/* ─── Toggle chip with switch ─────────────────────────────────────────────── */

.filter-toggle {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  font-family: var(--font-sans, system-ui, sans-serif);
  font-size: .85rem;
  font-weight: 500;
  color: var(--c-text, #1e293b);
  background: #fff;
  border: 1.5px solid var(--c-border, #e2e8f0);
  border-radius: 999px;
  padding: .45rem 1rem;
  cursor: pointer;
  white-space: nowrap;
  line-height: 1.4;
  box-shadow: 0 1px 3px rgba(0,0,0,.05);
  transition: border-color var(--t, 180ms ease), background var(--t, 180ms ease), color var(--t, 180ms ease), box-shadow var(--t, 180ms ease);
}

.filter-toggle:hover {
  border-color: #94a3b8;
  box-shadow: 0 2px 6px rgba(0,0,0,.09);
}

.filter-toggle[aria-pressed="true"] {
  background: var(--c-dark, #0f172a);
  border-color: var(--c-dark, #0f172a);
  color: #fff;
}

/* Switch track */
.filter-toggle__switch {
  display: inline-block;
  position: relative;
  width: 1.8rem;
  height: 1rem;
  border-radius: 999px;
  background: var(--c-border, #cbd5e1);
  flex-shrink: 0;
  transition: background var(--t, 180ms ease);
}

/* Switch thumb */
.filter-toggle__switch::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 2px;
  width: .65rem;
  height: .65rem;
  border-radius: 50%;
  background: #fff;
  transform: translateY(-50%);
  transition: transform var(--t, 180ms ease);
}

.filter-toggle[aria-pressed="true"] .filter-toggle__switch {
  background: rgba(255,255,255,.25);
}

.filter-toggle[aria-pressed="true"] .filter-toggle__switch::after {
  background: #fff;
  transform: translateX(calc(1.8rem - .65rem - 4px)) translateY(-50%);
}

/* ─── Clear-all link ──────────────────────────────────────────────────────── */

.filter-clear {
  margin-left: auto;
  font-family: var(--font-sans, system-ui, sans-serif);
  font-size: .8rem;
  color: var(--c-text-muted, #64748b);
  background: none;
  border: none;
  cursor: pointer;
  text-decoration: underline;
  padding: 0 .25rem;
  white-space: nowrap;
}

.filter-clear:hover {
  color: var(--c-text, #1e293b);
}

/* ─── Pagination ──────────────────────────────────────────────────────────── */

.algolia-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .35rem;
  margin-top: var(--space-xl, 2.5rem);
}

.algolia-pagination__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2.25rem;
  height: 2.25rem;
  padding: 0 .6rem;
  font-family: var(--font-sans, system-ui, sans-serif);
  font-size: .875rem;
  font-weight: 500;
  color: var(--c-text, #1e293b);
  background: #fff;
  border: 1.5px solid var(--c-border, #e2e8f0);
  border-radius: 6px;
  cursor: pointer;
  transition: border-color var(--t, 180ms ease), background var(--t, 180ms ease), color var(--t, 180ms ease);
}

.algolia-pagination__btn:hover:not(:disabled):not(.is-current) {
  border-color: #64748b;
  background: #f8fafc;
}

.algolia-pagination__btn.is-current {
  background: var(--c-dark, #0f172a);
  border-color: var(--c-dark, #0f172a);
  color: #fff;
  cursor: default;
}

.algolia-pagination__btn:disabled {
  opacity: .35;
  cursor: default;
}

.algolia-pagination__prev svg,
.algolia-pagination__next svg {
  width: .5rem;
  height: .75rem;
}

.algolia-pagination__ellipsis {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2.25rem;
  height: 2.25rem;
  font-size: .875rem;
  color: var(--c-text-muted, #64748b);
  user-select: none;
}

/* ─── Consent banner ──────────────────────────────────────────────────────── */

#algolia-consent-banner {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 9999;
  background: rgba(15, 23, 42, 0.97);
  color: #e2e8f0;
  padding: 1rem 1.25rem;
  box-shadow: 0 -4px 24px rgba(0, 0, 0, 0.25);

  /* Slide-up animation — starts hidden below viewport. */
  transform: translateY(100%);
  transition: transform 300ms ease, opacity 300ms ease;
  opacity: 0;
}

#algolia-consent-banner.is-visible {
  transform: translateY(0);
  opacity: 1;
}

#algolia-consent-banner.is-hiding {
  transform: translateY(100%);
  opacity: 0;
}

.algolia-consent__inner {
  max-width: 72rem;
  margin: 0 auto;
  display: flex;
  align-items: center;
  gap: 1.5rem;
  flex-wrap: wrap;
}

.algolia-consent__text {
  flex: 1;
  margin: 0;
  font-size: .8125rem;
  line-height: 1.55;
  color: #cbd5e1;
}

.algolia-consent__link {
  color: #7db3c8;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.algolia-consent__link:hover {
  color: #fff;
}

.algolia-consent__actions {
  display: flex;
  align-items: center;
  gap: .625rem;
  flex-shrink: 0;
}

.algolia-consent__btn {
  display: inline-flex;
  align-items: center;
  padding: .45rem 1.1rem;
  font-family: var(--font-sans, system-ui, sans-serif);
  font-size: .8125rem;
  font-weight: 600;
  border-radius: 999px;
  cursor: pointer;
  white-space: nowrap;
  transition: background 180ms ease, color 180ms ease, border-color 180ms ease;
  line-height: 1.4;
}

.algolia-consent__btn--deny {
  background: transparent;
  color: #94a3b8;
  border: 1.5px solid #334155;
}

.algolia-consent__btn--deny:hover {
  background: #1e293b;
  color: #e2e8f0;
  border-color: #475569;
}

.algolia-consent__btn--accept {
  background: #7db3c8;
  color: #0f172a;
  border: 1.5px solid #7db3c8;
}

.algolia-consent__btn--accept:hover {
  background: #93c5da;
  border-color: #93c5da;
}

@media (max-width: 600px) {
  .algolia-consent__inner {
    flex-direction: column;
    align-items: flex-start;
    gap: .875rem;
  }

  .algolia-consent__actions {
    width: 100%;
    justify-content: flex-end;
  }
}

/* ─── AI thinking indicator ───────────────────────────────────────────────── */

.algolia-ai-indicator {
  position: absolute;
  right: 1rem;
  top: 50%;
  transform: translateY(-50%);
  font-size: .7rem;
  font-weight: 600;
  letter-spacing: .06em;
  color: var(--c-accent, #7db3c8);
  text-transform: uppercase;
  pointer-events: none;
  animation: algolia-ai-pulse 900ms ease-in-out infinite alternate;
}

@keyframes algolia-ai-pulse {
  from { opacity: .5; }
  to   { opacity: 1; }
}

/* ─── Category quick-pills ────────────────────────────────────────────────── */

.algolia-category-pills {
  display: flex;
  flex-wrap: nowrap;
  gap: .5rem;
  margin-bottom: 1.25rem;
  overflow-x: auto;
  scrollbar-width: none;
  -ms-overflow-style: none;
  /* Bleed to container edges so pills aren't clipped by padding */
  margin-left: calc(-1 * var(--space-xl, 2rem));
  margin-right: calc(-1 * var(--space-xl, 2rem));
  padding-left: var(--space-xl, 2rem);
  padding-right: var(--space-xl, 2rem);
  padding-bottom: .25rem; /* prevent bottom clip on focus ring */
}

/* The fixed -2.5rem (--space-xl) bleed above matches the container padding only
   on desktop. On mobile the container padding shrinks (front page: --space-lg;
   /tours: --gutter), so a fixed bleed over-extends past the viewport edge and
   makes the whole page scroll horizontally. Full-bleed to the viewport instead:
   this is exactly viewport-wide regardless of container padding or nesting, so
   the pills still scroll edge-to-edge but never widen the page. */
@media (max-width: 768px) {
  .algolia-category-pills {
    margin-left:   calc(50% - 50vw);
    margin-right:  calc(50% - 50vw);
    padding-left:  calc(50vw - 50%);
    padding-right: calc(50vw - 50%);
  }
}

.algolia-category-pills::-webkit-scrollbar {
  display: none;
}

.algolia-category-pill {
  display: inline-flex;
  align-items: center;
  padding: .4rem .9rem;
  font-family: var(--font-sans, system-ui, sans-serif);
  font-size: .8125rem;
  font-weight: 500;
  color: var(--c-text, #1e293b);
  background: var(--c-bg-alt, #f8fafc);
  border: 1.5px solid var(--c-border, #e2e8f0);
  border-radius: 999px;
  cursor: pointer;
  white-space: nowrap;
  line-height: 1.4;
  transition: border-color 180ms ease, background 180ms ease, color 180ms ease;
}

.algolia-category-pill:hover {
  border-color: #94a3b8;
  background: #f1f5f9;
}

.algolia-category-pill.is-active {
  background: var(--c-dark, #0f172a);
  border-color: var(--c-dark, #0f172a);
  color: #fff;
}

/* ─── Autocomplete dropdown ───────────────────────────────────────────────── */

.algolia-search-widget__input-wrap {
  position: relative;
}

.algolia-autocomplete__dropdown {
  position: absolute;
  top: calc(100% + .25rem);
  left: 0;
  right: 0;
  z-index: 300;
  background: #fff;
  border: 1.5px solid var(--c-border, #e2e8f0);
  border-radius: var(--radius, 10px);
  box-shadow: 0 8px 24px rgba(0,0,0,.12);
  overflow: hidden;
}

.algolia-autocomplete__item {
  display: flex;
  align-items: center;
  gap: .75rem;
  padding: .625rem .875rem;
  cursor: pointer;
  text-decoration: none;
  color: var(--c-text, #1e293b);
  transition: background 120ms ease;
}

.algolia-autocomplete__item:hover,
.algolia-autocomplete__item.is-focused {
  background: var(--c-bg-alt, #f8fafc);
}

.algolia-autocomplete__thumb {
  width: 3rem;
  height: 2rem;
  object-fit: cover;
  border-radius: 4px;
  flex-shrink: 0;
}

.algolia-autocomplete__thumb--empty {
  width: 3rem;
  height: 2rem;
  border-radius: 4px;
  flex-shrink: 0;
  background: #e2e8f0;
}

.algolia-autocomplete__title {
  font-size: .875rem;
  font-weight: 500;
  line-height: 1.35;
  flex: 1;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  line-clamp: 2;
}

.algolia-autocomplete__price {
  font-size: .8125rem;
  color: var(--c-text-muted, #64748b);
  white-space: nowrap;
  flex-shrink: 0;
}

/* ─── Sticky filter bar ───────────────────────────────────────────────────── */

.algolia-filter-bar {
  position: sticky;
  top: var(--header-h, 4rem);
  z-index: 1;
  background: rgba(255,255,255,.97);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  transition: box-shadow 200ms ease;
}

.algolia-filter-bar.is-stuck {
  box-shadow: 0 2px 12px rgba(0,0,0,.08);
  padding-top: .625rem;
  padding-bottom: .625rem;
  margin-bottom: 0;
  border-bottom-color: transparent;
}

/* ─── No-results suggestions ──────────────────────────────────────────────── */

.algolia-no-results__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: .5rem;
  margin-top: .75rem;
}

.algolia-no-results__clear {
  display: inline-flex;
  align-items: center;
  padding: .4rem .9rem;
  font-family: var(--font-sans, system-ui, sans-serif);
  font-size: .8125rem;
  font-weight: 500;
  color: var(--c-text, #1e293b);
  background: #fff;
  border: 1.5px solid var(--c-border, #e2e8f0);
  border-radius: 999px;
  cursor: pointer;
  transition: border-color 180ms ease, background 180ms ease;
}

.algolia-no-results__clear:hover {
  border-color: #94a3b8;
  background: #f8fafc;
}
