.baipar-explore { --explore-primary: var(--baipar-primary,#e11b22); --explore-secondary: var(--baipar-secondary,#0d1b34); --explore-line:#e4e8ee; --explore-muted:#616b7a; position:relative; width:100%; color:var(--explore-secondary); font-family:var(--wp--preset--font-family--body,"DM Sans",sans-serif); }
html body.baipar-archive-listing { width:100%!important; max-width:none!important; display:block!important; grid-template-columns:none!important; grid-template-rows:none!important; align-items:initial!important; float:none!important; margin:0!important; padding:0!important; }
html body.baipar-archive-listing > .baipar-listing-archive-page { display:block!important; float:none!important; clear:both!important; grid-column:1/-1!important; }
.baipar-explore *,.baipar-explore *::before,.baipar-explore *::after { box-sizing:border-box; }
.baipar-explore [hidden] { display:none!important; }
.baipar-explore button,.baipar-explore input,.baipar-explore select { font:inherit; }
.baipar-explore button { cursor:pointer; }
.baipar-explore-icon { width:18px; height:18px; display:block; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
/* Aligned to the header, not to --baipar-container-max: same gutter, no cap,
   so the hero starts on the same line as the logo on every screen. */
.baipar-default-main.baipar-explore-page { width:calc(100% - (2 * var(--baipar-shell-gutter,clamp(18px,1.25vw,40px)))); max-width:none; padding-top:14px; }
.baipar-default-main.baipar-listing-archive-page { width:min(var(--baipar-container-max,1482px),calc(100vw - (2 * var(--baipar-container-gutter,18px))))!important; max-width:var(--baipar-container-max,1482px)!important; margin-right:auto!important; margin-left:auto!important; padding-top:14px; }
.baipar-explore__hero { display:flex; align-items:end; justify-content:space-between; gap:30px; margin-bottom:16px; padding:25px 27px; border-radius:16px; background:var(--baipar-primary-light-background,#e01b220d); }
.baipar-explore__hero > div { max-width:760px; }
.baipar-explore__hero span { color:color-mix(in srgb, var(--explore-primary) 88%, #000); font-size:10px; font-weight:850; letter-spacing:.12em; text-transform:uppercase; }
.baipar-explore__hero h1 { margin:7px 0 0; color:var(--explore-secondary); font-size:clamp(32px,4vw,54px); font-weight:850; letter-spacing:-.045em; line-height:1.02; }
.baipar-explore__hero p { margin:12px 0 0; color:var(--explore-muted); font-size:14px; line-height:1.65; }
.baipar-explore__search { position:relative; z-index:20; display:grid; grid-template-columns:minmax(230px,1fr) minmax(190px,.55fr) auto auto; align-items:center; gap:0; padding:7px; border:1px solid var(--explore-line); border-radius:15px; background:#fff; box-shadow:0 12px 34px rgba(13,27,52,.09); }
.baipar-explore__query,.baipar-explore__select { min-width:0; min-height:52px; display:flex; align-items:center; gap:10px; padding:0 15px; color:#788395; }
.baipar-explore__select { position:relative; border-left:1px solid var(--explore-line); }
.baipar-explore__query { position:relative; }
.baipar-explore__suggestions { position:absolute; z-index:60; top:calc(100% + 9px); right:-8px; left:-8px; max-height:min(430px,60vh); overflow-y:auto; padding:7px; border:1px solid var(--explore-line); border-radius:14px; background:#fff; box-shadow:0 22px 48px rgba(13,27,52,.18); }
.baipar-explore__suggestion { display:flex; align-items:center; gap:11px; padding:8px 10px; border-radius:10px; color:var(--explore-secondary); text-decoration:none; }
.baipar-explore__suggestion.is-active,.baipar-explore__suggestion:focus-visible { background:var(--baipar-primary-light-background,#e01b220d); outline:0; }
.baipar-explore__suggestion-media { width:40px; height:40px; display:grid; flex:0 0 40px; place-items:center; overflow:hidden; border:1px solid var(--explore-line); border-radius:9px; background:#f5f7fa; color:var(--explore-muted); }
.baipar-explore__suggestion-media img { width:100%; height:100%; display:block; object-fit:cover; }
.baipar-explore__suggestion-media svg { width:17px; height:17px; fill:none; stroke:currentColor; stroke-width:1.9; stroke-linecap:round; stroke-linejoin:round; }
.baipar-explore__suggestion-copy { min-width:0; display:grid; flex:1; gap:2px; }
.baipar-explore__suggestion-copy strong { overflow:hidden; color:var(--explore-secondary); font-size:13px; font-weight:700; text-overflow:ellipsis; white-space:nowrap; }
.baipar-explore__suggestion-copy strong mark { background:transparent; color:color-mix(in srgb, var(--explore-primary) 88%, #000); font-weight:850; }
.baipar-explore__suggestion-copy small { overflow:hidden; color:var(--explore-muted); font-size:11px; text-overflow:ellipsis; white-space:nowrap; }
.baipar-explore__suggestion em { flex:0 0 auto; padding:3px 8px; border-radius:999px; background:#f2f4f7; color:var(--explore-muted); font-size:9px; font-style:normal; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
.baipar-explore__fallback { margin-top:26px; }
.baipar-explore-card__serves { color:color-mix(in srgb, var(--explore-primary) 88%, #000); font-weight:800; }
.baipar-explore__query input { width:100%; min-width:0; border:0; background:transparent; color:var(--explore-secondary); outline:0; }

/* Taxonomy listboxes in the search bar. A native <select> cannot show a term's
   flag or a filter box, and its popup ignores every style below, so the trigger
   and the panel are ordinary elements wired up in explore.js. */
.baipar-explore__select { z-index:12; }
.baipar-explore__select + .baipar-explore__select { z-index:11; }
.baipar-explore__select.is-open { z-index:40; }
.baipar-explore__trigger { min-width:0; width:100%; display:flex; flex:1; align-items:center; gap:9px; padding:0; border:0; background:transparent; color:var(--explore-secondary); font-size:13px; font-weight:600; text-align:left; }
.baipar-explore__trigger > .baipar-explore-icon:first-of-type { flex:0 0 18px; color:#788395; }
.baipar-explore__select.is-selected .baipar-explore__trigger { color:var(--explore-secondary); }
.baipar-explore__trigger-label { min-width:0; flex:1; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.baipar-explore__trigger-media,.baipar-explore__option-media { width:22px; height:22px; display:grid; flex:0 0 22px; place-items:center; overflow:hidden; border:1px solid var(--explore-line); border-radius:50%; background:#fff; }
.baipar-explore__trigger-media img,.baipar-explore__trigger-media svg,.baipar-explore__option-media img,.baipar-explore__option-media svg { width:100%!important; height:100%!important; display:block; object-fit:cover; }
.baipar-explore__option-media svg,.baipar-explore__trigger-media svg { padding:4px; fill:none; stroke:currentColor; stroke-width:1.9; color:var(--explore-muted); }
.baipar-explore__chevron { width:14px; height:14px; flex:0 0 14px; display:block; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; color:#9aa3b2; transition:transform .16s ease; }
.baipar-explore__select.is-open .baipar-explore__chevron { transform:rotate(180deg); }
.baipar-explore__menu { position:absolute; z-index:60; top:calc(100% + 12px); left:0; width:max(100%,264px); padding:9px; border:1px solid var(--explore-line); border-radius:14px; background:#fff; box-shadow:0 22px 48px rgba(13,27,52,.18); }
.baipar-explore__menu-filter { height:38px; display:flex; align-items:center; gap:8px; padding:0 11px; border:1px solid var(--explore-line); border-radius:9px; background:#f5f6fb; color:var(--explore-muted); }
.baipar-explore__menu-filter .baipar-explore-icon { width:15px; height:15px; flex:0 0 15px; }
.baipar-explore__menu-filter input { width:100%; min-width:0; border:0; outline:0; background:transparent; color:var(--explore-secondary); font-size:12px; }
.baipar-explore__options { max-height:min(280px,50vh); overflow-y:auto; margin-top:7px; }
.baipar-explore__option { width:100%; min-height:37px; display:flex; align-items:center; gap:9px; padding:0 9px; border:0; border-radius:8px; background:transparent; color:var(--explore-secondary); font-size:12px; font-weight:600; text-align:left; }
.baipar-explore__option-label { min-width:0; flex:1; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.baipar-explore__option small { flex:0 0 auto; color:var(--explore-muted); font-size:10px; font-weight:700; }
.baipar-explore__option:hover,.baipar-explore__option:focus-visible { background:rgba(13,27,52,.06); outline:0; }
.baipar-explore__option.is-selected { background:var(--baipar-primary-light-background,#e01b220d); color:color-mix(in srgb, var(--explore-primary) 88%, #000); }
.baipar-explore__menu-empty { margin:15px 0; color:var(--explore-muted); font-size:12px; text-align:center; }
.baipar-explore__search-button { min-height:48px; display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:0 16px; border:0; border-radius:10px; font-size:11px; font-weight:800; }
/* Near me: a labelled button, the same height and shape as Search, outlined until it is on. */
.baipar-explore__near { min-height:48px; display:inline-flex; align-items:center; justify-content:center; gap:8px; margin-left:7px; padding:0 15px; border:1.5px solid var(--explore-primary); border-radius:10px; background:#fff; color:color-mix(in srgb, var(--explore-primary) 88%, #000); font-size:11px; font-weight:800; white-space:nowrap; cursor:pointer; }
.baipar-explore__near svg { width:17px; height:17px; flex:0 0 17px; }
.baipar-explore__near.is-active { background:var(--explore-primary); color:#fff; }
.baipar-explore__near:not(.is-active):hover,.baipar-explore__near:not(.is-active):focus-visible { background:var(--baipar-primary-light-background,#e01b220d); color:color-mix(in srgb, var(--explore-primary) 88%, #000); }
.baipar-explore__near.is-active:hover { filter:brightness(.95); }
.baipar-explore__near[aria-busy="true"] { opacity:.55; }
.baipar-explore__search-button { margin-left:7px; background:var(--explore-primary); color:#fff; box-shadow:0 8px 19px rgba(225,27,34,.18); }
.baipar-explore__tabs { display:flex; gap:7px; margin-top:18px; }
.baipar-explore__tabs button { min-height:40px; padding:0 17px; border:1px solid var(--explore-line); border-radius:999px; background:#fff; color:#657084; font-size:10px; font-weight:800; }
.baipar-explore__tabs button[aria-pressed="true"] { border-color:var(--explore-secondary); background:var(--explore-secondary); color:#fff; }
.baipar-explore__toolbar { position:sticky; z-index:15; top:10px; min-height:64px; display:flex; align-items:center; gap:12px; margin-top:16px; padding:10px 12px; border:1px solid var(--explore-line); border-radius:14px; background:rgba(255,255,255,.96); box-shadow:0 10px 28px rgba(13,27,52,.08); backdrop-filter:blur(14px); }
.baipar-explore__filter-toggle { display:none; min-height:40px; align-items:center; gap:7px; padding:0 13px; border:0; border-radius:9px; background:#f2f4f7; color:var(--explore-secondary); font-size:10px; font-weight:800; }
.baipar-explore__filter-toggle b { min-width:18px; height:18px; display:grid; place-items:center; border-radius:50%; background:var(--explore-primary); color:#fff; font-size:8px; }
.baipar-explore__chips { min-width:0; flex:1; display:flex; gap:6px; overflow-x:auto; scrollbar-width:none; }
.baipar-explore__chips::-webkit-scrollbar { display:none; }
.baipar-explore__chip { min-height:31px; display:inline-flex; align-items:center; gap:6px; padding:0 9px; border:0; border-radius:999px; background:#fff0f2; color:#9f2632; font-size:9px; font-weight:750; white-space:nowrap; }
.baipar-explore__toolbar-end { display:flex; align-items:center; gap:10px; }
.baipar-explore__toolbar-end p { min-height:38px; display:flex; align-items:center; gap:4px; margin:0; padding:0 11px; border-radius:9px; background:#f7f8fa; color:#67717f; font-size:10px; white-space:nowrap; }
.baipar-explore__toolbar-end p strong { color:var(--explore-secondary); font-size:12px; }
.baipar-explore__sort { position:relative; z-index:16; }
.baipar-explore__sort-trigger { min-height:38px; display:flex; align-items:center; justify-content:space-between; gap:8px; padding:0 11px; border:1px solid transparent; border-radius:9px; background:#f2f4f7; color:var(--explore-secondary); font-size:11px; font-weight:750; white-space:nowrap; }
.baipar-explore__sort-trigger:hover,.baipar-explore__sort.is-open .baipar-explore__sort-trigger { border-color:var(--explore-line); background:#fff; }
.baipar-explore__sort-chevron { width:14px; height:14px; flex:0 0 14px; display:block; transition:transform .15s ease; }
.baipar-explore__sort.is-open .baipar-explore__sort-chevron { transform:rotate(180deg); }
.baipar-explore__sort-menu { position:absolute; z-index:40; top:calc(100% + 8px); right:0; min-width:190px; padding:7px; border:1px solid var(--explore-line); border-radius:12px; background:#fff; box-shadow:0 18px 38px rgba(21,28,65,.2); }
.baipar-explore__sort-menu[hidden] { display:none; }
.baipar-explore__sort-options { display:grid; gap:1px; }
.baipar-explore__sort-option { width:100%; min-height:36px; display:flex; align-items:center; justify-content:space-between; gap:10px; padding:0 9px; border:0; border-radius:8px; background:transparent; color:#1b2234; font-size:12px; font-weight:600; text-align:left; }
.baipar-explore__sort-option:hover,.baipar-explore__sort-option:focus-visible { background:rgba(13,27,52,.06); outline:0; }
.baipar-explore__sort-option.is-selected { background:var(--baipar-primary-light-background,#e01b220d); color:color-mix(in srgb, var(--explore-primary) 88%, #000); font-weight:800; }
.baipar-explore__sort-check { width:15px; height:15px; flex:0 0 15px; opacity:0; }
.baipar-explore__sort-option.is-selected .baipar-explore__sort-check { opacity:1; }
.baipar-explore__views { display:none; gap:3px; padding:3px; border-radius:10px; background:#f2f4f7; }
.baipar-explore__views button { width:34px; height:34px; display:grid; place-items:center; padding:0; border:0; border-radius:7px; background:transparent; color:#778294; }
.baipar-explore__views button.is-active { border-color:var(--explore-secondary); background:var(--explore-secondary); color:#fff; }
.baipar-explore__layout { display:grid; grid-template-columns:270px minmax(390px,1fr) minmax(420px,42vw); align-items:start; gap:18px; padding:22px 0 50px; }
.baipar-explore.no-map .baipar-explore__layout { grid-template-columns:270px minmax(0,1fr); }
.baipar-explore.no-map .baipar-explore__views,.baipar-explore.no-map [data-explore-view="map"],.baipar-explore.no-map [data-explore-show-map] { display:none; }
.baipar-explore.is-grid .baipar-explore__cards { grid-template-columns:repeat(3,minmax(0,1fr)); gap:17px; }
.baipar-explore.has-map.is-grid .baipar-explore__cards { grid-template-columns:repeat(2,minmax(0,1fr)); }
.baipar-explore.is-grid .baipar-explore-card { grid-template-columns:minmax(0,1fr); align-content:start; }
.baipar-explore.is-grid .baipar-explore-card__image { min-height:205px; aspect-ratio:1.55; }
.baipar-explore.is-grid .baipar-explore-card__body { padding:18px; }
.baipar-explore.is-grid .baipar-explore-card h3 { font-size:18px; }
.baipar-explore.is-grid .baipar-explore-card__body > p { min-height:45px; }
/* Sticky and never taller than the screen: a sticky panel longer than the viewport
   has a bottom part that no amount of page scrolling brings into view, so focus
   landed under its footer. It scrolls itself instead. */
.baipar-explore__filters { position:sticky; top:78px; max-height:calc(100vh - 90px - var(--baipar-consent-h, 0px)); overflow-y:auto; overscroll-behavior:contain; scroll-padding-bottom:80px; border:1px solid var(--explore-line); border-radius:14px; background:#fff; }
.baipar-explore__filters header { display:flex; align-items:center; justify-content:space-between; gap:15px; padding:18px; border-bottom:1px solid var(--explore-line); }
.baipar-explore__filters header small,.baipar-explore__filters header h2 { display:block; margin:0; }
.baipar-explore__filters header small { color:color-mix(in srgb, var(--explore-primary) 88%, #000); font-size:8px; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }
.baipar-explore__filters header h2 { margin-top:3px; font-size:18px; }
.baipar-explore__filters header button { display:none; width:38px; height:38px; padding:0; border:0; border-radius:50%; background:#f2f4f7; color:var(--explore-secondary); font-size:23px; }
.baipar-explore-filter-group { border-bottom:1px solid #edf0f3; background:#fff; }
.baipar-explore-filter-group > summary { min-height:55px; display:grid; grid-template-columns:minmax(0,1fr) auto 20px; align-items:center; gap:8px; padding:0 17px; color:var(--explore-secondary); font-size:11px; font-weight:850; list-style:none; cursor:pointer; transition:color .16s ease,background .16s ease; }
.baipar-explore-filter-group > summary::-webkit-details-marker { display:none; }
.baipar-explore-filter-group > summary:hover,.baipar-explore-filter-group > summary:focus-visible { background:#f8f9fb; color:color-mix(in srgb, var(--explore-primary) 88%, #000); outline:none; }
.baipar-explore-filter-group[open] > summary { background:#fafbfc; color:color-mix(in srgb, var(--explore-primary) 88%, #000); }
.baipar-explore-filter-group > summary b { min-width:20px; height:20px; display:grid; place-items:center; padding:0 5px; border-radius:999px; background:#fff0f2; color:color-mix(in srgb, var(--explore-primary) 88%, #000); font-size:8px; }
/* Always the last column. The count badge beside it is hidden until a filter
   is chosen, and without this the chevron slides into the badge's column and
   ends up 28px adrift of the counts down the rows. */
.baipar-explore-filter-group > summary i { grid-column:3; width:20px; height:20px; display:grid; place-items:center; color:#929aa7; }
.baipar-explore-filter-group > summary i svg { width:16px; height:16px; display:block; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; transition:transform .18s ease; }
.baipar-explore-filter-group[open] > summary i svg { transform:rotate(180deg); }
/* Type to narrow a long group. Sits outside the scrolling list on purpose, so
   it stays put while the terms move under it. */
.baipar-explore-filter-search { position:relative; display:flex; align-items:center; margin:0 11px 6px; }
.baipar-explore-filter-search svg { position:absolute; left:9px; width:13px; height:13px; fill:none; stroke:#9aa3b2; stroke-width:2; stroke-linecap:round; pointer-events:none; }
.baipar-explore-filter-search input { width:100%; min-height:34px; padding:0 10px 0 28px; border:1px solid var(--explore-line); border-radius:8px; background:#fff; color:var(--explore-secondary); font:inherit; font-size:10px; transition:border-color .15s ease,box-shadow .15s ease; }
.baipar-explore-filter-search input::placeholder { color:#a0a7b2; }
.baipar-explore-filter-search input:focus { border-color:var(--explore-primary); box-shadow:0 0 0 3px rgba(225,27,34,.1); outline:none; }
.baipar-explore-filter-search input::-webkit-search-cancel-button { cursor:pointer; }
.baipar-explore-filter-none { margin:6px 8px; color:#a0a7b2; font-size:10px; }

/* Every term that is on a listing appears here, so a taxonomy with fifty
   features scrolls inside its own group rather than pushing the rest of the
   filters off the screen. Six rows show, with the seventh cut off so it reads
   as scrollable without being told. */
.baipar-explore-filter-group__content { display:grid; gap:5px; max-height:268px; overflow-y:auto; overscroll-behavior:contain; padding:5px 11px 15px; scrollbar-width:thin; scrollbar-color:var(--explore-primary) #f1f3f7; }
.baipar-explore-filter-group__content::-webkit-scrollbar { width:6px; }
.baipar-explore-filter-group__content::-webkit-scrollbar-track { margin:6px 0; border-radius:999px; background:#f1f3f7; }
.baipar-explore-filter-group__content::-webkit-scrollbar-thumb { border-radius:999px; background:var(--explore-primary); }
.baipar-explore-filter-group__content::-webkit-scrollbar-thumb:hover { background:color-mix(in srgb, var(--explore-primary) 84%, #000); }
.baipar-explore-filter-group__content > label { min-height:38px; padding:7px 8px; border-radius:8px; transition:background .15s ease,color .15s ease; }
.baipar-explore-filter-group__content > label:hover { background:#f5f7fa; color:var(--explore-secondary); }
.baipar-explore-filter-group__content > label:has(input:checked) { background:#fff4f5; color:#972532; }
.baipar-explore-filter-date { display:grid!important; grid-template-columns:44px minmax(0,1fr); }
.baipar-explore-filter-date input { min-width:0; }
.baipar-explore__filters fieldset { display:grid; gap:9px; margin:0; padding:17px 18px; border:0; border-bottom:1px solid #edf0f3; }
.baipar-explore__filters legend { width:100%; margin:0 0 4px; color:var(--explore-secondary); font-size:11px; font-weight:850; }
.baipar-explore__filters label { min-width:0; display:flex; align-items:center; gap:8px; color:#5f6a7c; font-size:10px; cursor:pointer; }
.baipar-explore__filters label > span { min-width:0; flex:1; }
.baipar-explore__filters label > small { color:#a0a7b2; font-size:8px; }
.baipar-explore__filters input[type="checkbox"],.baipar-explore__filters input[type="radio"] { width:16px; height:16px; flex:0 0 16px; accent-color:var(--explore-primary); }
.baipar-explore__filters input[type="date"] { width:100%; min-height:39px; padding:0 9px; border:1px solid var(--explore-line); border-radius:7px; }
.baipar-explore__range { display:grid!important; grid-template-columns:1fr auto; }
.baipar-explore__range input { grid-column:1/-1; width:100%; accent-color:var(--explore-primary); }
/* The filter footer sticks to the bottom of the screen; keep focused filters clear of it (WCAG 2.4.11). */
html:has(.baipar-explore__filters footer) { scroll-padding-bottom:84px; }
.baipar-explore-filter-note { margin:6px 0 0; color:#606a79; font-size:9px; }
.baipar-explore__filters footer { position:sticky; bottom:0; display:grid; grid-template-columns:.8fr 1.2fr; gap:8px; padding:13px 18px; border-top:1px solid var(--explore-line); background:#fff; }
.baipar-explore__filters footer button { min-height:42px; border:1px solid var(--explore-line); border-radius:8px; background:#fff; color:var(--explore-secondary); font-size:9px; font-weight:800; }
.baipar-explore__filters footer button:last-child { border-color:var(--explore-primary); background:var(--explore-primary); color:#fff; }
.baipar-explore__filter-overlay { display:none; }
.baipar-explore__results { position:relative; min-width:0; }
.baipar-explore__cards { display:grid; gap:12px; }
.baipar-explore-card { min-width:0; display:grid; grid-template-columns:150px minmax(0,1fr); overflow:hidden; border:1px solid var(--explore-line); border-radius:13px; background:#fff; box-shadow:0 5px 18px rgba(13,27,52,.045); transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease; }
.baipar-explore-card:hover,.baipar-explore-card.is-selected { border-color:rgba(225,27,34,.34); box-shadow:0 13px 28px rgba(13,27,52,.1); transform:translateY(-2px); }
.baipar-explore-card__image { position:relative; min-height:165px; display:block; overflow:hidden; background:#eef1f4; }
.baipar-explore-card__image img { width:100%; height:100%; display:block; object-fit:cover; }
.baipar-explore-card__image > span { width:100%; height:100%; display:grid; place-items:center; color:#8a94a2; }
.baipar-explore-card__image time { position:absolute; bottom:9px; left:9px; padding:6px 8px; border-radius:7px; background:rgba(13,27,52,.9); color:#fff; font-size:9px; font-weight:800; }
.baipar-explore-card__body { min-width:0; padding:16px 17px; }
.baipar-explore-card__meta { display:flex; flex-wrap:wrap; gap:5px; }
.baipar-explore-card__meta span { padding:3px 6px; border-radius:999px; background:#f0f2f5; color:#636d7d; font-size:7px; font-weight:800; text-transform:uppercase; }
.baipar-explore-card__meta span:first-child { background:#fff0f2; color:color-mix(in srgb, var(--explore-primary) 88%, #000); }
.baipar-explore-card__meta .is-verified { background:#edf6ff; color:#2570b7; }
.baipar-explore-card h3 { margin:9px 0 0; font-size:16px; line-height:1.3; }
.baipar-explore-card h3 a { color:var(--explore-secondary); text-decoration:none; }
.baipar-explore-card__body > p { display:-webkit-box; overflow:hidden; margin:7px 0 0; color:#6c7584; font-size:10px; line-height:1.5; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
.baipar-explore-card__facts { display:flex; flex-wrap:wrap; gap:7px 13px; margin-top:11px; color:#677385; font-size:9px; }
.baipar-explore-card__facts span { display:inline-flex; align-items:center; gap:5px; }
.baipar-explore-card__facts svg { width:13px; height:13px; color:color-mix(in srgb, var(--explore-primary) 88%, #000); }
.baipar-explore-card__actions { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:14px; }
.baipar-explore-card__actions button,.baipar-explore-card__actions a { display:inline-flex; align-items:center; gap:6px; border:0; background:transparent; color:var(--explore-secondary); font-size:9px; font-weight:800; text-decoration:none; }
.baipar-explore-card__actions button:hover,.baipar-explore-card__actions a:hover { color:color-mix(in srgb, var(--explore-primary) 88%, #000); }
.baipar-explore-card__actions svg { width:14px; height:14px; }
.baipar-explore__empty { min-height:300px; display:grid; place-items:center; align-content:center; gap:7px; padding:30px; border:1px dashed #d9dee5; border-radius:14px; color:#657081; text-align:center; }
.baipar-explore__empty svg { width:38px; height:38px; }
.baipar-explore__empty h3,.baipar-explore__empty p { margin:0; }
.baipar-explore__empty h3 { color:var(--explore-secondary); font-size:17px; }
.baipar-explore__empty p { font-size:10px; }
.baipar-explore__loading { position:absolute; z-index:5; inset:0; display:flex; align-items:flex-start; justify-content:center; gap:8px; padding-top:60px; background:rgba(255,255,255,.75); color:var(--explore-secondary); font-size:10px; font-weight:800; backdrop-filter:blur(2px); }
.baipar-explore__loading span { width:16px; height:16px; border:2px solid #d7dce3; border-top-color:var(--explore-primary); border-radius:50%; animation:explore-spin .7s linear infinite; }
@keyframes explore-spin { to { transform:rotate(360deg); } }
.baipar-explore__pagination { display:flex; justify-content:center; gap:6px; margin-top:20px; }
.baipar-explore__pagination button { width:39px; height:39px; padding:0; border:1px solid var(--explore-line); border-radius:8px; background:#fff; color:#697487; font-size:10px; font-weight:800; }
.baipar-explore__pagination button.is-current { border-color:var(--explore-primary); background:var(--explore-primary); color:#fff; }
.baipar-explore__map-panel { position:sticky; top:78px; height:calc(100vh - 98px); min-height:520px; overflow:hidden; border:1px solid var(--explore-line); border-radius:15px; background:#edf1f4; }
.baipar-explore__map { position:relative; width:100%; height:100%; }
.baipar-explore__map-canvas { position:absolute; inset:0; width:100%; height:100%; }
.baipar-explore__map-loading { position:absolute; z-index:4; inset:0; display:grid; place-items:center; align-content:center; gap:8px; padding:25px; background:linear-gradient(145deg,#f3f5f7,#e9edf1); color:#606a78; text-align:center; transition:opacity .3s ease,visibility .3s ease; }
.baipar-explore__map.is-ready .baipar-explore__map-loading { visibility:hidden; opacity:0; pointer-events:none; }
.baipar-explore__map-loading svg { width:38px; height:38px; color:color-mix(in srgb, var(--explore-primary) 88%, #000); }
.baipar-explore__map-loading strong { font-size:11px; }
.baipar-explore__map-loading > span { width:min(220px,70%); height:6px; display:block; overflow:hidden; border-radius:999px; background:rgba(13,27,52,.1); }
.baipar-explore__map-loading > span i { width:8%; height:100%; display:block; border-radius:inherit; background:var(--explore-primary); transition:width .22s ease; }
.baipar-explore__map-loading small { color:#606a79; font-size:8px; }
/* Nothing to fit until the map has drawn; until then the button would sit under the loading panel. */
.baipar-explore__map-panel:not(:has(.baipar-explore__map.is-ready)) .baipar-explore__fit { display:none; }
.baipar-explore__fit { position:absolute; z-index:2; top:13px; left:50%; min-height:38px; padding:0 13px; transform:translateX(-50%); border:1px solid #dfe3e8; border-radius:999px; background:#fff; color:var(--explore-secondary); font-size:9px; font-weight:800; box-shadow:0 7px 18px rgba(13,27,52,.12); }
.baipar-explore-map-popup { width:210px; display:grid; grid-template-columns:58px minmax(0,1fr); gap:9px; font-family:inherit; }
.baipar-explore-map-popup img { width:58px; height:58px; border-radius:8px; object-fit:cover; }
.baipar-explore-map-popup strong,.baipar-explore-map-popup span { display:block; }
.baipar-explore-map-popup strong { color:#172238; font-size:11px; }
.baipar-explore-map-popup span { margin-top:4px; color:#747f8f; font-size:8px; }
.baipar-explore-map-popup a { display:inline-block; margin-top:6px; color:#c6181e; font-size:8px; font-weight:800; text-decoration:none; }
/* "You are here": the point the radius is measured from. Blue on purpose —
   the result pins are the theme's red, and the one thing on the map that is
   not a result should not look like one. */
/* The marker is anchored at the bottom centre of its content, so the dot sits
   at the bottom and the tag floats above it; the dot's centre is the point. */
.baipar-explore-map-origin-wrap { position:relative; display:flex; flex-direction:column; align-items:center; gap:7px; transform:translateY(12px); pointer-events:none; }
.baipar-explore-map-origin-tag { position:relative; padding:5px 10px; border-radius:999px; background:#0d1b34; color:#fff; font-size:11.5px; font-weight:800; line-height:1.2; letter-spacing:.01em; white-space:nowrap; box-shadow:0 4px 12px rgba(13,27,52,.35); }
.baipar-explore-map-origin-tag::after { content:''; position:absolute; left:50%; bottom:-4px; width:8px; height:8px; background:#0d1b34; transform:translateX(-50%) rotate(45deg); }
.baipar-explore-map-origin { position:relative; width:24px; height:24px; border:4px solid #fff; border-radius:50%; background:#1a73e8; box-shadow:0 0 0 2px rgba(26,115,232,.35), 0 3px 10px rgba(13,27,52,.5); }
.baipar-explore-map-origin::before,
.baipar-explore-map-origin::after { content:''; position:absolute; inset:-4px; border-radius:50%; background:rgba(26,115,232,.28); border:2px solid rgba(26,115,232,.55); animation:baipar-explore-origin-pulse 2.4s ease-out infinite; z-index:-1; }
.baipar-explore-map-origin::after { animation-delay:1.2s; }
@keyframes baipar-explore-origin-pulse { 0% { transform:scale(1); opacity:.85; } 100% { transform:scale(3.2); opacity:0; } }
@media (prefers-reduced-motion: reduce) { .baipar-explore-map-origin::before, .baipar-explore-map-origin::after { animation:none; opacity:.35; transform:scale(1.8); } }
.baipar-explore-legacy-origin-label { padding:4px 9px; border-radius:999px; background:#0d1b34; box-shadow:0 4px 12px rgba(13,27,52,.35); }

.baipar-explore-map-marker { position:relative; display:flex; align-items:center; gap:6px; transform:translateY(-3px); white-space:nowrap; cursor:pointer; filter:drop-shadow(0 5px 8px rgba(13,27,52,.2)); }
.baipar-explore-map-marker > span { width:25px; height:25px; display:grid; flex:0 0 25px; place-items:center; border:2px solid #fff; border-radius:50% 50% 50% 7px; transform:rotate(-45deg); background:var(--explore-primary); }
.baipar-explore-map-marker > span::after { width:6px; height:6px; border-radius:50%; content:""; transform:rotate(45deg); background:#fff; }
.baipar-explore-map-marker > strong { max-width:145px; overflow:hidden; padding:6px 9px; border:1px solid #e3e7ec; border-radius:8px; background:#fff; color:var(--explore-secondary); font-size:9px; font-weight:800; text-overflow:ellipsis; }
.baipar-explore-map-marker.is-event > span { background:var(--explore-secondary); }
.baipar-explore-map-marker.is-selected > strong { border-color:var(--explore-primary); color:color-mix(in srgb, var(--explore-primary) 88%, #000); }
.baipar-explore-legacy-label { padding:4px 7px!important; border-radius:7px!important; background:#fff!important; color:#172238!important; font-size:9px!important; font-weight:800!important; box-shadow:0 4px 10px rgba(13,27,52,.16); }
.baipar-explore__discoveries { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; padding:5px 0 60px; }
.baipar-explore-mini { min-width:0; padding:20px; border:1px solid var(--explore-line); border-radius:15px; background:#fff; }
.baipar-explore-mini > header { display:flex; align-items:end; justify-content:space-between; gap:15px; margin-bottom:14px; }
.baipar-explore-mini > header small,.baipar-explore-mini > header h2 { display:block; margin:0; }
.baipar-explore-mini > header small { margin-bottom:3px; color:color-mix(in srgb, var(--explore-primary) 88%, #000); font-size:8px; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }
.baipar-explore-mini > header h2 { font-size:17px; }
.baipar-explore-mini > header > a { color:var(--explore-secondary); font-size:9px; font-weight:800; text-decoration:none; white-space:nowrap; }
.baipar-explore-mini__grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }
.baipar-explore-mini-card { min-width:0; overflow:hidden; border:1px solid #e8ebef; border-radius:10px; }
.baipar-explore-mini-card > a { min-height:84px; display:grid; grid-template-columns:78px minmax(0,1fr); color:inherit; text-decoration:none; }
.baipar-explore-mini-card img,.baipar-explore-mini-card > a > span { width:78px; height:100%; min-height:84px; display:grid; place-items:center; object-fit:cover; background:#edf0f3; color:#8b95a3; }
.baipar-explore-mini-card > a > div { min-width:0; align-self:center; padding:10px; }
.baipar-explore-mini-card small { color:color-mix(in srgb, var(--explore-primary) 88%, #000); font-size:7px; font-weight:850; text-transform:uppercase; }
.baipar-explore-mini-card h3 { display:-webkit-box; overflow:hidden; margin:4px 0 0; color:var(--explore-secondary); font-size:10px; line-height:1.35; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
.baipar-explore-mini-card p { margin:5px 0 0; color:#67707e; font-size:8px; }

@media (max-width:1279px) {
	.baipar-explore__filter-toggle { display:inline-flex; }
	.baipar-explore__layout { grid-template-columns:minmax(360px,1fr) minmax(400px,48vw); }
	.baipar-explore__filters { position:fixed; z-index:10030; top:0; bottom:0; left:0; width:min(360px,88vw); max-height:none; overflow-x:hidden; overflow-y:auto; border-radius:0 16px 16px 0; visibility:hidden; opacity:0; transform:translateX(-105%); transition:transform .25s ease,opacity .2s ease,visibility .25s ease; }
	/* Visible at once on opening (it still slides in), so the script can move focus into it straight away. */
	.baipar-explore.is-filter-open .baipar-explore__filters { visibility:visible; opacity:1; transform:translateX(0); transition:transform .25s ease,opacity .2s ease,visibility 0s; }
	.baipar-explore__filters header button { display:grid; place-items:center; }
	.baipar-explore__filters footer { bottom:var(--baipar-consent-h, 0px); }
	.baipar-explore__filter-overlay { position:fixed; z-index:10020; inset:0; display:block; background:rgba(13,27,52,.42); visibility:hidden; opacity:0; backdrop-filter:blur(3px); transition:opacity .2s ease,visibility .2s ease; }
	.baipar-explore.is-filter-open .baipar-explore__filter-overlay { visibility:visible; opacity:1; }
	.baipar-explore.no-map .baipar-explore__layout { grid-template-columns:minmax(0,1fr); }
}
@media (max-width:899px) {
	.baipar-explore__search { grid-template-columns:minmax(0,1fr) minmax(140px,.5fr) auto auto; }
	.baipar-explore__near, .baipar-explore__search-button { padding:0 12px; }
	.baipar-explore__layout { grid-template-columns:minmax(0,1fr); }
	.baipar-explore:not(.no-map) .baipar-explore__views { display:flex; }
	.baipar-explore__map-panel { position:relative; top:auto; height:65vh; min-height:480px; display:none; }
	.baipar-explore.is-map-view .baipar-explore__results { display:none; }
	.baipar-explore.is-map-view .baipar-explore__map-panel { display:block; }
	.baipar-explore.is-list-view .baipar-explore__map-panel { display:none; }
	.baipar-explore__discoveries { grid-template-columns:minmax(0,1fr); }
	.baipar-explore.is-grid .baipar-explore__cards { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:620px) {
	.baipar-explore-page { padding-top:10px; }
	.baipar-listing-archive-page { padding-top:10px; }
	.baipar-explore__hero { margin-bottom:13px; padding:21px 18px; border-radius:13px; }
	.baipar-explore__hero h1 { font-size:34px; }
	.baipar-explore__search { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; padding:0; border:0; background:transparent; box-shadow:none; }
	.baipar-explore__query { grid-column:1/-1; min-height:56px; border:1px solid var(--explore-line); border-radius:12px; background:#fff; box-shadow:0 8px 22px rgba(13,27,52,.08); }
	.baipar-explore__select { min-height:50px; padding-right:10px; border:1px solid var(--explore-line); border-radius:11px; background:#fff; }
	.baipar-explore__menu { width:max(100%,240px); }
	.baipar-explore__select:last-of-type .baipar-explore__menu { right:0; left:auto; }
	.baipar-explore__select { grid-column:1/-1; }
	.baipar-explore__near { grid-column:1; width:100%; min-height:52px; margin:0; border-radius:11px; }
	/* The button takes the whole last row on its own, or shares it with Near me. */
	.baipar-explore__search-button { grid-column:1/-1; width:100%; min-height:52px; margin:0; }
	.baipar-explore__near + .baipar-explore__search-button { grid-column:2/-1; }
	.baipar-explore__search-button span { display:inline; }
	.baipar-explore__tabs { overflow-x:auto; scrollbar-width:none; }
	.baipar-explore__toolbar { flex-wrap:wrap; gap:8px; padding:9px 10px; }
	.baipar-explore__chips { order:3; width:100%; flex-basis:100%; }
	.baipar-explore__toolbar-end { min-width:0; flex:1 1 auto; flex-wrap:wrap; justify-content:flex-end; gap:8px; }
	.baipar-explore__toolbar-end p { display:none; }
	.baipar-explore__sort { min-width:0; flex:0 1 auto; }
	.baipar-explore__sort-trigger { width:100%; max-width:150px; }
	.baipar-explore__sort-label { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
	.baipar-explore__sort-menu { min-width:170px; }
	.baipar-explore__filter-toggle { flex:0 0 auto; }
	.baipar-explore__layout { padding-top:13px; }
	.baipar-explore-card { grid-template-columns:105px minmax(0,1fr); }
	.baipar-explore-card__image { min-height:145px; }
	.baipar-explore-card__body { padding:13px; }
	.baipar-explore-card__body > p { display:none; }
	.baipar-explore-card__actions button { font-size:0; }
	.baipar-explore-card__actions button svg { width:18px; height:18px; }
	.baipar-explore__map-panel { height:calc(100dvh - 170px); min-height:460px; border-radius:12px; }
	.baipar-explore.is-grid .baipar-explore__cards { grid-template-columns:minmax(0,1fr); }
	.baipar-explore.is-grid .baipar-explore-card__image { min-height:190px; }
	.baipar-explore__discoveries { padding-bottom:35px; }
	.baipar-explore-mini { padding:16px; }
	.baipar-explore-mini__grid { display:flex; overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:none; }
	.baipar-explore-mini-card { min-width:76%; scroll-snap-align:start; }
}
@media (prefers-reduced-motion:reduce) { .baipar-explore * { scroll-behavior:auto!important; transition-duration:.01ms!important; animation-duration:.01ms!important; } }
