.deb-search-results.deb-results { --deb-map-top:130px; width:100%; max-width:none; margin:0; padding:64px 0 100px; background:var(--deb-cream) url('../images/topography.svg') center top / 1945.46px auto repeat-y; }
.deb-results__inner { max-width:1728px; margin:auto; padding-inline:80px; }
.deb-results-status { position:fixed; z-index:100; bottom:24px; left:50%; transform:translateX(-50%); width:max-content; max-width:calc(100% - 32px); margin:0; color:var(--deb-green-dark); font:600 14px/20px 'DEB Space Grotesk',sans-serif; text-align:center; pointer-events:none; }
.deb-results-status:not(:empty) { padding:12px 16px; border:1px solid #ddd9ca; border-radius:8px; background:var(--deb-cream); box-shadow:0 2px 8px #0002; }
/* The count spans the column; the pill and reset only take the space they need. */
.deb-results__summary { display:grid; grid-template-columns:minmax(0,max-content) 44px minmax(0,1fr); grid-template-rows:auto auto; align-items:center; column-gap:8px; margin-bottom:28px; }
.deb-results .deb-results__summary .deb-results__heading { display:grid; grid-template-columns:subgrid; grid-template-rows:subgrid; grid-column:1/-1; grid-row:1/3; min-width:0; margin:0; font:700 26px/1.3 'DEB Space Grotesk',sans-serif; color:var(--deb-ink); }
.deb-results .deb-results__summary > .deb-search-reset { grid-column:2; grid-row:2; width:44px; height:44px; margin:0; padding:0; gap:0; font-size:0; }
.deb-results__heading:focus { outline:none; }
.deb-results .deb-results__filter-pill { display:flex; flex-wrap:wrap; align-items:center; grid-column:1; grid-row:2; width:fit-content; min-width:0; max-width:100%; margin:0; padding:0; border:1px solid #ddd9ca; border-radius:22px; background:#fff; overflow:hidden; }
.deb-results .deb-results__filter { position:relative; display:flex; align-items:center; gap:6px; min-width:0; max-width:100%; min-height:44px; margin:0; padding:10px; border:0; border-radius:0; background:transparent; color:inherit; font:400 14px/20px 'DEB Space Grotesk',sans-serif; letter-spacing:normal; text-transform:none; text-align:left; overflow-wrap:anywhere; cursor:pointer; }
.deb-results__filter + .deb-results__filter::before { content:''; position:absolute; top:12px; bottom:12px; left:-1px; border-left:1px solid #d3d0c5; }
.deb-results .deb-results__filter:is(:hover,:focus-visible) { background:var(--deb-cream); color:var(--deb-green-dark); }
.deb-results .deb-results__filter:focus-visible { outline:2px solid var(--deb-green); outline-offset:-3px; }
.deb-results__filter-value { display:inline-flex; align-items:center; gap:4px; max-width:100%; vertical-align:middle; }
.deb-results__filter-pill strong { font-weight:700; }
.deb-results__filter-icon { display:block; flex:none; width:18px; height:18px; background:var(--deb-green); mask:var(--deb-filter-icon) center / contain no-repeat; -webkit-mask:var(--deb-filter-icon) center / contain no-repeat; }
.deb-results__layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:32px; align-items:start; }
.deb-results__list { min-width:0; scroll-margin-top:130px; }
.deb-results__list:focus { outline:none; }
.deb-results .deb-search-results__grid { --deb-results-gap:32px; container-type:inline-size; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px var(--deb-results-gap); }
.deb-results .deb-search-results__count { display:block; grid-column:1/-1; grid-row:1; margin:0 0 14px !important; font-weight:700; text-wrap:pretty; }
.deb-results .deb-hike-card { cursor:pointer; }
.deb-results .deb-hike-card:is(.is-selected,.is-highlighted) { outline:4px solid var(--deb-green); outline-offset:5px; box-shadow:0 0 0 8px #fff; }
.deb-results__map-column { position:sticky; top:var(--deb-map-top); min-width:0; }
.deb-results #deb-results-map { border-radius:15px; height:calc(100vh - var(--deb-map-visible-top,var(--deb-map-top)) - 20px) !important; height:calc(100dvh - var(--deb-map-visible-top,var(--deb-map-top)) - 20px) !important; overflow:hidden; }
.deb-results .deb-results__map-message { padding:32px; background:#eee9dc; border-radius:15px; }
.deb-results__selected { display:none; position:relative; margin:20px 27px 0; }
.deb-results.has-inline-map-preview { --deb-mobile-map-height:max(360px,min(600px,calc(100vh - var(--deb-map-top) - 92px))); }
.deb-results.has-inline-map-preview .deb-results__map-column { position:relative; top:auto; align-self:start; }
.deb-results.has-inline-map-preview .deb-results__selected:not([hidden]) { display:block; }
.deb-results.has-inline-map-preview #deb-results-map { height:var(--deb-mobile-map-height) !important; }
.deb-results.has-inline-map-preview .deb-results__selected-card { border-radius:15px; }
.deb-results.has-inline-map-preview[data-mobile-preview="over"] .deb-results__selected { position:absolute; z-index:3; bottom:20px; left:27px; right:27px; margin:0; }
.deb-results.has-inline-map-preview[data-mobile-preview="over"] .deb-results__selected-card { max-height:calc(var(--deb-mobile-map-height) - 64px); overflow:auto; }
.deb-results .deb-results__close { position:absolute; z-index:3; left:-22px; top:-22px; display:grid; place-items:center; width:44px; height:44px; border:0; border-radius:50%; background:var(--deb-green); color:#777; padding:0; }
.deb-results__close span { display:grid; place-items:center; width:22px; height:22px; border-radius:50%; background:var(--deb-cream); }
.deb-results__close svg { display:block; width:16px; height:16px; }
.deb-results .deb-results__close:is(:hover,:focus,:active) { background:var(--deb-green-dark); }
.deb-results .deb-results__close:focus-visible { outline:2px solid #fff; outline-offset:2px; }
.deb-results__pager { margin:44px 0 0; }
.deb-results .facetwp-pager { display:flex; justify-content:center; flex-wrap:wrap; gap:8px; }
.deb-results .facetwp-page { display:grid; place-items:center; min-width:36px; min-height:36px; margin:0; padding:5px; border-radius:5px; background:#fff; color:var(--deb-ink); font-size:15px; text-decoration:none; }
.deb-results .facetwp-page.active, .deb-results .facetwp-page:not(.dots):hover { background:var(--deb-green); color:#fff; }
.deb-results-ad--inline { grid-column:1/-1; margin:70px -30px; }
.deb-results-ad--bottom { margin:100px -30px 0; }
.deb-results .deb-advertisement.wp-block-group { padding:16px 30px; }
.deb-results .deb-advertisement__frame { max-width:100%; }
.deb-results-ad--inline .deb-advertisement__frame { width:336px; }
.deb-results .deb-map-pin { position:relative; width:60px; height:80px; filter:drop-shadow(0 1px 2px rgb(0 0 0 / .35)); }
.deb-results .deb-map-pin:is(.is-selected,.is-highlighted) { scale:1.2; filter:drop-shadow(0 0 3px #3f5413); }
.deb-results .deb-map-pin__shape { width:100%; height:100%; }
.deb-results .deb-map-pin.is-selected .deb-map-pin__shape { filter:hue-rotate(65deg) saturate(3); }
.deb-results .deb-map-pin.is-selected { scale:1.3; filter:drop-shadow(0 0 2px #fff) drop-shadow(0 0 5px #006b46); }
.deb-results .deb-results__map-reset { margin:12px; min-height:44px; padding:10px 14px; border:1px solid #ddd9ca; border-radius:8px; background:#fff; color:var(--deb-green-dark); box-shadow:0 1px 5px #0003; font:600 14px/20px 'DEB Space Grotesk',sans-serif; text-transform:none; letter-spacing:normal; cursor:pointer; }
.deb-results .deb-results__map-reset:hover { background:var(--deb-cream); }
.deb-results .deb-results__map-reset:focus-visible { outline:3px solid var(--deb-green); outline-offset:2px; }
.deb-results .deb-map-pin__heart { position:absolute; width:18px; height:18px; bottom:17px; left:21px; }
@media (max-width:1199px) {
	.deb-results__inner { padding-inline:32px; }
	.deb-results__layout { gap:24px; grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); }
	.deb-results .deb-search-results__grid { --deb-results-gap:16px; row-gap:24px; }
	.deb-results-ad--inline, .deb-results-ad--bottom { margin-inline:0; }
}
@media (max-width:767px) {
	.deb-results__summary { column-gap:6px; margin-bottom:24px; }
	.deb-results .deb-results__filter-pill { border-radius:20px; text-align:left; }
	.deb-search-results.deb-results { --deb-mobile-map-height:max(360px,min(600px,calc(100vh - var(--deb-map-top) - 92px))); padding:0; background:none; }
	.deb-results__inner { padding:0; }
	.deb-results .deb-results__summary .deb-results__heading { text-align:center; font-size:18px; }
	.deb-results__layout { display:flex; flex-direction:column; gap:0; }
	.deb-results__layout > .deb-results__summary { order:-2; width:100%; margin:0; padding:24px 27px; background:var(--deb-cream); }
	.deb-results__map-column { position:relative; top:auto; order:-1; width:100%; }
	.deb-results #deb-results-map { border-radius:0; height:var(--deb-mobile-map-height) !important; }
	.deb-results__selected { margin:32px 27px; }
	.deb-results__list { width:100%; padding:32px 27px 50px; border-top:1px solid #ddd; background:#fff; }
	.deb-results .deb-search-results__grid { display:flex; flex-direction:column; gap:16px; }
	.deb-results .deb-search-results__count { display:block; text-align:center; font-size:18px; }
	.deb-results-ad--inline { margin:34px -27px; }
	.deb-results-ad--bottom { margin:50px -27px 0; }
	.deb-results__pager { margin-top:32px; }
	.deb-results .facetwp-page { min-width:32px; }
}
@media (prefers-reduced-motion:reduce) { .deb-results .deb-map-pin { transition:none; } }
.deb-map-cluster { display:grid; place-items:center; min-width:48px; height:48px; padding:8px; border:3px solid #fff; border-radius:50%; background:var(--deb-green); color:#fff; font:700 17px/1 'DEB Space Grotesk',sans-serif; box-shadow:0 1px 4px #0005; }
.deb-map-cluster:hover { background:var(--deb-green-dark); }
.deb-map-cluster:is(.is-selected,.is-highlighted) { background:var(--deb-green-dark); outline:4px solid var(--deb-green); outline-offset:3px; }
.deb-map-pin__count { position:absolute; top:-5px; right:-5px; display:grid; place-items:center; min-width:26px; height:26px; padding:3px; background:var(--deb-green-dark); color:#fff; border:2px solid #fff; border-radius:50%; font:700 13px/1 sans-serif; }
.deb-results__map-choices { position:absolute; z-index:5; top:68px; left:12px; right:60px; max-height:calc(100% - 80px); padding:16px; background:#fff; border-radius:10px; box-shadow:0 2px 12px #0003; }
.deb-results__map-choices:not([hidden]) { display:flex; flex-direction:column; }
.deb-results__map-choices p { margin:0 0 10px; font-size:17px; font-weight:700; line-height:1.35; }
.deb-results__map-choices > div { display:grid; gap:6px; min-height:0; max-height:300px; max-height:min(300px,45vh); overflow:auto; }
.deb-results .deb-results__map-choices button { padding:10px 12px; border:0; border-radius:6px; background:var(--deb-cream); color:var(--deb-ink); text-align:left; font:inherit; font-size:14px; }
.deb-results .deb-results__map-choices button:hover { background:var(--deb-green); color:#fff; }
.deb-results .deb-results__map-choices .deb-map-choice { display:flex; flex-wrap:wrap; align-items:center; gap:6px 16px; width:100%; line-height:1.4; }
.deb-map-choice__title { flex:1 1 200px; min-width:0; font-size:16px; font-weight:700; line-height:1.3; overflow-wrap:anywhere; }
.deb-map-choice__meta { display:flex; flex-wrap:wrap; align-items:center; gap:6px 12px; font-size:12px; }
.deb-map-choice__meta > span { display:inline-flex; align-items:center; gap:5px; white-space:nowrap; }
.deb-map-choice__meta > [hidden] { display:none; }
.deb-map-choice__icon { display:block; flex:none; width:16px; height:16px; background:currentColor; mask:var(--deb-choice-icon) center / contain no-repeat; -webkit-mask:var(--deb-choice-icon) center / contain no-repeat; }
.deb-results .deb-map-choice .deb-hike-card__difficulty { width:16px; height:16px; }
.deb-results .deb-results__map-choices .deb-map-choice:focus-visible { outline:2px solid var(--deb-green-dark); outline-offset:-2px; }

.deb-results__map-message button { border:0; border-radius:8px; padding:10px 16px; background:var(--deb-green); color:#fff; font:inherit; }
.deb-results__map-message button:hover { background:var(--deb-green-dark); }

/* Keep Google's anchored window, with the Figma card instead of its white frame. */
#deb-results-map .gm-style-iw-c:has(.deb-results__popup) { max-width:none !important; max-height:none !important; overflow:visible; padding:0 !important; background:none; border-radius:0; box-shadow:none; }
#deb-results-map .gm-style-iw-d:has(.deb-results__popup) { max-height:none !important; overflow:visible !important; }
#deb-results-map .gm-style-iw-t:has(.deb-results__popup) > .gm-style-iw-tc { display:none; }
.deb-results__popup { position:relative; width:var(--deb-popup-width); padding:30px 30px 0 0; font-family:'DEB Space Grotesk',sans-serif; }
.deb-results__popup-card { max-height:var(--deb-popup-height); overflow:auto; border-radius:15px; }
.deb-results .deb-results__popup-close { position:absolute; z-index:3; top:0; right:0; display:grid; place-items:center; width:60px; height:60px; padding:0; border:0; border-radius:50%; color:#777; background:var(--deb-green); }
.deb-results__popup-close span { display:grid; place-items:center; width:30px; height:30px; border-radius:50%; background:var(--deb-cream); }
.deb-results__popup-close svg { display:block; width:20px; height:20px; }
.deb-results .deb-results__popup-close:is(:hover,:focus,:active) { background:var(--deb-green-dark); color:var(--deb-green-dark); }
.deb-results .deb-results__popup-close:focus-visible { outline:2px solid #fff; outline-offset:2px; }
