/* Restore the shared illustration and glass panel on the catalog homepage. */
.page-hero.page-hero--catalog-home { min-height:clamp(260px,26vw,360px); padding:28px 0; display:flex; align-items:flex-end; }
body.page-home { background:var(--bg); }
.page-home .site-header { position:sticky; inset:auto; top:0; }
.page-hero--catalog-home .page-hero__art { display:block; position:absolute; inset:0; height:100%; max-width:none; opacity:1; mask-image:linear-gradient(#000 65%,transparent); -webkit-mask-image:linear-gradient(#000 65%,transparent); }
.page-hero--catalog-home .page-hero__art img { object-fit:cover; object-position:center top; }
.page-hero--catalog-home .page-hero__inner { position:relative; width:100%; }
.page-hero--catalog-home .page-hero__panel { max-width:460px; padding:22px; border:1px solid rgba(255,255,255,.85); border-radius:var(--radius); background:rgba(255,255,255,.76); backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px); box-shadow:0 10px 32px #115e5912; }
.page-hero--catalog-home .page-hero__title { font-size:clamp(25px,3vw,32px); color:var(--brand-dark); line-height:1.2; }
.page-hero--catalog-home .page-hero__subtitle { color:var(--text); margin:8px 0 0; }
.page-hero--catalog-home .page-hero__actions { display:flex; margin-top:14px; }
.page-hero--catalog-home .page-hero__actions .btn { color:var(--brand-dark); background:var(--card); border-color:var(--border); }
.discovery-categories summary small { font-weight:400; font-size:12px; color:var(--brand); }
.catalog-city-picker { position:relative; min-width:0; }
.header-left { display:flex; align-items:center; gap:12px; min-width:0; }
.catalog-city-picker summary { cursor:pointer; display:flex; gap:4px; align-items:center; color:var(--brand); font-size:14px; list-style:none; min-height:40px; }
.catalog-city-name { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; max-width:130px; }
.catalog-city-menu { position:absolute; z-index:100; top:100%; left:0; width:min(390px,calc(100vw - 24px)); max-height:75vh; overflow:auto; padding:18px; border:1px solid var(--border); border-radius:16px; background:var(--card); box-shadow:0 12px 40px #173e3226; }
.catalog-city-menu form { display:grid; gap:12px; }
.catalog-city-menu label { display:grid; gap:6px; }
.catalog-city-menu a { display:flex; justify-content:space-between; gap:8px; color:var(--brand); padding:8px 0; }
.catalog-city-menu p { font-size:13px; line-height:1.5; margin:0; color:var(--muted); }
.catalog-city-menu small { font-size:11px; }
.catalog-city-list { max-height:180px; overflow:auto; }
.unified-discovery-form { gap:12px; align-items:start; }
.discovery-query { position:relative; }
.discovery-query input { padding-left:40px; }
.discovery-search-icon { position:absolute; left:14px; top:8px; font-size:25px; color:var(--muted); }
.discovery-submit-icon { display:none; }
.discovery-date-row,.discovery-quick-row,.discovery-radius { grid-column:1/-1; display:flex; gap:8px; align-items:center; flex-wrap:wrap; min-width:0; }
.discovery-date-row .chip,.discovery-quick-row .chip { min-height:40px; white-space:nowrap; }
.discovery-date-picker { display:flex; gap:8px; align-items:center; font-size:13px; }
.discovery-date-picker input { width:150px; min-width:0; }
.discovery-radius { border:0; padding:0; margin:0; }
.discovery-radius input { width:auto; min-height:0; }
.unified-discovery-form [hidden],.catalog-city-menu [hidden] { display:none!important; }
.discovery-note { grid-column:1/-1; margin:0; font-size:13px; color:var(--muted); }
.discovery-filter-fields label { min-width:0; }
.discovery-categories { grid-column:1/-1; min-width:0; }
.discovery-categories summary { display:flex; align-items:center; justify-content:space-between; cursor:pointer; padding-block:8px; font-weight:700; }
.discovery-collapse,.discovery-expand { font-size:13px; font-weight:400; color:var(--brand); }
.discovery-categories[open] .discovery-expand,.discovery-categories:not([open]) .discovery-collapse { display:none; }
.discovery-selected { font-size:13px; color:var(--brand); margin:0 0 8px; }
.discovery-categories:not([open]) .discovery-selected { display:block; }
.discovery-category-grid { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:10px; }
.discovery-category-grid .category-card { min-width:0; padding:10px 6px; gap:4px; background:var(--card); cursor:pointer; }
.discovery-category-grid .category-art { max-width:62px; }
.discovery-category-grid .category-label { font-size:13px; }
.discovery-category-grid .is-active,.unified-discovery-form [aria-pressed=true] { border-color:var(--brand); background:var(--brand-soft); color:var(--brand-dark); box-shadow:inset 0 0 0 1px var(--brand); }
.discovery-point-dialog { width:min(600px,calc(100vw - 24px)); max-height:90vh; overflow:auto; }
.discovery-point-map { height:320px; position:relative; margin-block:12px; }
.discovery-point-dialog form { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.discovery-point-dialog form label { min-width:0; }
.discovery-point-dialog form button { grid-column:1/-1; }
.unified-discovery :is(button,a,input,summary):focus-visible,.catalog-city-picker :is(a,summary,input,select,button):focus-visible { outline:3px solid var(--brand); outline-offset:3px; }
.discovery-empty-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:12px; }
@media(max-width:1023px) { .discovery-category-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(max-width:767px) {
  .page-hero.page-hero--catalog-home { padding-block:16px; }
  .discovery-category-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
  .discovery-category-grid .category-card { flex-direction:row; padding:8px; min-height:62px; }
  .discovery-category-grid .category-art { width:44px; }
  .discovery-category-grid .category-label { text-align:left; min-height:0; }
  .discovery-date-row { overflow-x:auto; flex-wrap:nowrap; padding:3px; }
  .discovery-date-row>* { flex-shrink:0; }
  .discovery-submit-text { display:none; }
  .discovery-submit-icon { display:inline; font-size:24px; line-height:1; }
  .discovery-submit { min-height:44px; }
  .header-left { gap:6px; }
  .catalog-city-name { max-width:76px; }
  .catalog-city-menu { left:calc(-1 * min(132px,30vw)); }
  .catalog-city-picker summary { font-size:12px; }
}
@media(max-width:359px) { .header-left .brand-logo { width:86px; height:auto; } .catalog-city-name { max-width:57px; } .header-left { gap:3px; } .discovery-quick-row { gap:5px; } .discovery-quick-row .chip { font-size:12px; padding-inline:9px; } }

/* Search stays visible; the secondary controls share one disclosure. */
.unified-discovery-form.places-search { padding:20px; border:1px solid var(--border); border-radius:20px; background:var(--card); box-shadow:0 8px 24px #115e5908; grid-template-columns:minmax(0,1fr) auto; }
.discovery-filters { grid-column:1/-1; min-width:0; }
.discovery-filters > summary { color:var(--brand); font-weight:650; }
.discovery-filters-body { display:grid; gap:16px; padding-top:16px; }
.discovery-filter-panel { grid-column:1/-1; }
@media(max-width:767px) {
  .page-hero.page-hero--catalog-home { min-height:300px; padding:120px 0 18px; }
  .page-hero--catalog-home .page-hero__panel { max-width:100%; padding:18px; }
  .page-hero--catalog-home .page-hero__art { height:230px; }
  .unified-discovery-form.places-search { padding:14px; gap:10px; border-radius:16px; }
  .discovery-date-row { flex-wrap:wrap; overflow:visible; }
  .discovery-date-picker { flex-wrap:wrap; }
}

.discovery-radius label{cursor:pointer}.discovery-radius label:has(input:checked){background:var(--brand-soft);border-color:var(--brand);color:var(--brand-dark)}.discovery-category-grid .category-card{min-height:44px;justify-content:center}.discovery-query input{padding-left:12px}.discovery-point-dialog input{width:100%;min-width:0;padding:10px;border:1px solid var(--border);border-radius:10px}

.unified-discovery-form .discovery-radius label{display:inline-flex;flex-direction:row;align-items:center;gap:6px}.unified-discovery-form .discovery-radius input{width:14px;height:14px;margin:0}.unified-discovery-form [data-catalog-all-categories]{color:var(--brand);border-color:var(--border);margin-top:12px}

.discovery-filters-body>.discovery-categories,.discovery-filters-body>.discovery-filter-panel{min-width:0}.discovery-filters-body h3{font-size:15px;margin:0 0 12px}.discovery-category-grid .category-card{gap:6px;min-height:98px}.discovery-category-grid .category-art{width:72px;max-width:72px}.discovery-category-grid .category-label{min-height:0;line-height:1.3}@media(max-width:767px){.discovery-category-grid .category-card{min-height:70px;justify-content:flex-start;padding:10px;gap:10px}.discovery-category-grid .category-art{width:48px;max-width:48px}.discovery-category-grid .category-label{text-align:left}}

@media(max-width:767px){.discovery-category-grid .category-card{flex-direction:column;justify-content:center;min-height:112px;padding:10px 8px;gap:6px}.discovery-category-grid .category-art{width:56px;max-width:56px}.discovery-category-grid .category-label{text-align:center;width:100%;overflow-wrap:normal;word-break:normal}}

.catalog-empty-actions{display:flex;flex-wrap:wrap;align-items:flex-start;gap:8px}.catalog-empty-actions .btn{max-width:100%;white-space:normal}.discover-empty h3{font-size:1.05rem;margin-bottom:8px}
