/* v8: one page scroll, full-width results, separate detail routes. */
body.home-page.workspace-mode{background:#f5f8fa;color:#183447;height:auto;min-height:100%;overflow-x:hidden;overflow-y:auto!important}
.workspace-mode [hidden]{display:none!important}
.workspace-mode .home-hero{padding:22px 24px 16px;background:#f5f8fa;color:#183447}
.workspace-mode .home-hero:after{display:none}
.workspace-mode .home-hero-inner{max-width:1320px}
.workspace-mode .home-hero-copy .home-kicker,.workspace-mode .home-hero-copy>p,.workspace-mode .quick-links,.workspace-mode .home-stats{display:none}
.workspace-mode .home-hero h1{font-size:clamp(24px,2.8vw,34px);line-height:1.2;letter-spacing:-.035em;margin:0;max-width:none}
.workspace-mode .home-ad-slot{margin:16px auto}
.workspace-mode .home-upcoming-section{display:none}
body.workspace-mode .discover-results{position:relative;inset:auto;display:block;width:calc(100% - 48px);max-width:1320px;margin:0 auto 24px;padding:0;border:0;border-radius:0;box-shadow:none;background:transparent;overflow:visible;scroll-margin-top:calc(var(--discovery-header-height,76px) + 12px)}
.discovery-controls{position:sticky;top:var(--discovery-header-height,76px);z-index:20;padding:12px 0 0;background:#f5f8fa;border-bottom:1px solid #dbe5eb;margin-bottom:20px}
.discovery-topline{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.discovery-tabs{display:flex;gap:4px;border-radius:12px;padding:4px;background:#e6eef3}
.discovery-tabs button{min-height:42px;padding:9px 22px;border:0;border-radius:9px;background:transparent;color:#526e80;font-size:15px;font-weight:700;box-shadow:none}
.discovery-tabs button[aria-pressed=true]{background:#fff;color:#006f98;box-shadow:0 2px 8px #1a43550c}
.workspace-tools{display:flex;gap:8px;flex-shrink:0}
.workspace-mode .btn{display:inline-flex;justify-content:center;align-items:center;min-height:44px;border-radius:10px;font-size:14px;line-height:1.3;text-align:center;padding:10px 16px;box-shadow:none}
.workspace-mode .btn.light{background:#fff;border:1px solid #cfdde6;color:#36566b}
.workspace-mode .btn.primary{background:#007da9;color:#fff}
.workspace-tools [aria-pressed=true]{background:#e4f4fa!important;border-color:#0080ac!important;color:#007196!important}
.workspace-mode .map-search-shell{position:static;display:block;transform:none;width:auto;padding:0;margin:0}
.workspace-mode #mapSearchDock{width:100%}
.workspace-mode #mapSearchDock .home-search{max-width:none;display:grid;grid-template-columns:minmax(250px,1.2fr) minmax(0,1fr);gap:12px;margin:0;padding:0;background:none;border:0;border-radius:0;box-shadow:none}
.workspace-mode #mapSearchDock .home-search>label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.workspace-mode #mapSearchDock .search-row{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:8px}
.workspace-mode #mapSearchDock input{min-width:0;width:100%;height:46px;padding:10px 14px;border:1px solid #c9dbe5;border-radius:10px;background:#fff;font-size:16px!important;color:#183447}
.workspace-mode #mapSearchDock .search-row .btn{height:46px;min-width:100px}
.workspace-mode #mapSearchDock .chip-row{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px;margin:0;overflow:visible}
.workspace-mode #mapSearchDock select{height:46px;min-width:0;width:100%;padding:8px 10px;border:1px solid #c9dbe5;border-radius:10px;background:#fff;color:#36566b;font-size:16px;text-overflow:ellipsis;font-weight:500}
.workspace-filter-toggle{display:none!important}
.workspace-active-filters{display:flex;flex-wrap:wrap;gap:6px;padding-top:10px}
.workspace-active-filters button{display:inline-flex;gap:12px;align-items:center;padding:6px 10px;min-height:36px;background:#e3f1f7;color:#23607c;border:1px solid #c4e2ef;box-shadow:none;border-radius:8px;font-size:13px}
.workspace-active-filters button span{font-size:18px}
.workspace-status{display:flex;justify-content:space-between;gap:12px;padding:12px 0;color:#647e8e;font-size:12px;line-height:1.4}
.workspace-mode .search-result-count{position:static;margin:0;padding:0;color:#3c586b;font-size:13px;font-weight:650}
#workspaceSource{max-width:55%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.workspace-mode .discover-layout{position:static;display:block;height:auto;min-height:0;gap:0}
.workspace-list-pane{min-width:0}
body.workspace-mode #searchResultList{position:static;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));align-content:start;gap:16px;width:100%;max-height:none;height:auto;overflow:visible;padding:0;border:0;border-radius:0;box-shadow:none;background:none;scroll-margin-top:260px}
body.workspace-mode #closeResults{display:inline-flex!important}
.workspace-result{display:flex;flex-direction:column;min-width:0;position:relative;overflow:hidden;border:1px solid #d7e3eb;border-radius:14px;background:#fff;color:#183447;text-decoration:none;box-shadow:0 3px 10px #173c5004;transition:border-color .15s,box-shadow .15s}
.workspace-result:hover{border-color:#75b5ce;box-shadow:0 6px 20px #123b5010}
.workspace-result.is-featured{border-color:#d9bc66}
.workspace-card-icon{font-size:36px;opacity:.7}
.workspace-date{position:absolute;left:12px;bottom:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:44px;min-height:48px;gap:2px;padding:5px 9px;border:1px solid #d5e1e7;border-radius:8px;background:#ffffffed;color:#1c526b}
.workspace-date b{font-size:20px;line-height:1.1}
.workspace-date>span{font-size:10px;text-transform:uppercase}
.workspace-featured{position:absolute;right:10px;top:10px;font-size:11px;padding:5px 8px;border-radius:6px;background:#fff5d8;color:#735710}
.workspace-result-copy{display:flex;flex-direction:column;gap:0;min-width:0;padding:16px;flex:1}
.workspace-result-copy>small{color:#00769f;font-size:11px;font-weight:650;line-height:1.4}
.workspace-result-copy h2{font-size:18px;line-height:1.3;letter-spacing:-.02em;font-weight:700;margin:7px 0 9px;overflow-wrap:anywhere}
.workspace-result-copy p{font-size:12px;line-height:1.5;margin:0 0 5px;overflow-wrap:anywhere;color:#5c7484}
.workspace-result-copy .workspace-time{color:#2e5269;font-weight:550}
.workspace-card-footer{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:auto;padding-top:10px;font-size:11px;line-height:1.5}
.workspace-price{color:#34576b;font-weight:650;overflow-wrap:anywhere}
.workspace-viewed{color:#627b8a;background:#f0f5f7;border-radius:4px;padding:2px 5px}
.workspace-card-link{margin-left:auto;font-weight:700;color:#00779f;white-space:nowrap}
.workspace-pagination{display:flex;flex-direction:column;align-items:center;gap:10px;margin:24px 0;padding-bottom:8px;color:#738995;font-size:12px}
.workspace-pagination .btn{min-width:230px}
.workspace-mode .search-empty{padding:30px;grid-column:1/-1;font-size:15px;line-height:1.6}
.workspace-mode .search-result-list[aria-busy=true]{opacity:.5;pointer-events:none}
.workspace-map{border:1px solid #d5e2ea;border-radius:14px;overflow:hidden;background:#eaf2f6}
.workspace-mode .discover-layout #map{position:relative;inset:auto;height:65dvh;min-height:320px;width:100%;border-radius:0;z-index:1}
#workspaceMapStatus{padding:12px 16px;margin:0;font-size:13px;color:#526e80;background:#fff}
.workspace-mode .with-map .workspace-list-pane{display:none}
/* The details are a normal document at their own URL, with one page scrollbar. */
.workspace-detail{width:calc(100% - 48px);max-width:960px;margin:24px auto 40px;min-width:0}
body.workspace-mode.event-detail-open{overflow-y:auto!important}
.workspace-mode.event-detail-open .home-hero,.workspace-mode.event-detail-open #homeAd,.workspace-mode.event-detail-open #workspaceExtras{display:none}
body.workspace-mode .event-detail-overlay{position:static;inset:auto;display:none;background:none!important;pointer-events:auto!important;transition:none;z-index:auto}
body.workspace-mode.event-detail-open .event-detail-overlay{display:block}
body.workspace-mode .event-detail-panel{position:static;inset:auto;display:block;width:100%;height:auto;max-width:none;max-height:none;overflow:visible;transform:none!important;transition:none;border:1px solid #d7e3eb;border-radius:16px;box-shadow:none;background:#fff;padding-bottom:20px;pointer-events:auto}
.workspace-back{position:sticky;top:var(--discovery-header-height,76px);z-index:25;float:none;display:block;width:100%;min-height:52px;text-align:left;padding:12px 24px;background:#fff;border:0;border-bottom:1px solid #e2eaf0;border-radius:15px 15px 0 0;color:#26708e;font-size:14px;font-weight:650;box-shadow:none;cursor:pointer}
.workspace-mode .event-detail-content{padding:26px 36px;max-width:850px;margin:auto}
.workspace-mode .event-detail-content h1{font-size:clamp(26px,3.5vw,38px);line-height:1.2;letter-spacing:-.035em;margin:12px 0 24px;overflow-wrap:anywhere}
.workspace-mode .event-detail-info{padding:14px 0;margin:0}
.workspace-mode .event-detail-info p{font-size:15px;line-height:1.7;margin:5px 0;overflow-wrap:anywhere}
.workspace-mode .event-detail-actions{display:flex;flex-wrap:wrap;gap:8px;padding:8px 0 20px;margin:0}
.workspace-extras{width:calc(100% - 48px);max-width:1320px;margin:0 auto 30px}
.workspace-extras>summary{padding:16px 18px;min-height:50px;background:#fff;border:1px solid #d7e3eb;border-radius:12px;cursor:pointer;font-size:14px;color:#3d6177}
.workspace-extras .home-content{width:100%;padding-top:24px}
body.workspace-mode .chat-toggle{position:fixed!important;right:20px!important;left:auto!important;bottom:calc(18px + env(safe-area-inset-bottom))!important;z-index:8500!important;display:flex!important;align-items:center;gap:7px;width:auto!important;min-height:50px;padding:12px 18px;background:#007da9;color:#fff;box-shadow:0 8px 24px #153b5d26;font-size:14px}
body.workspace-mode #chatToggle span{display:inline!important}
body.workspace-mode .chat-box{position:fixed!important;right:20px!important;left:auto!important;bottom:calc(80px + env(safe-area-inset-bottom))!important;z-index:8501!important;width:min(410px,calc(100% - 32px))!important;height:560px;max-height:calc(100dvh - 104px)!important;border:1px solid #d3e2eb;border-radius:16px;box-shadow:0 15px 60px #163d5a40}
.workspace-mode .chat-head{background:#153e55;flex-shrink:0}
.workspace-mode .chat-form input,.workspace-mode .chat-messages{min-width:0;min-height:0}
.workspace-mode :is(a,button,input,select):focus-visible{outline:3px solid #0089b8;outline-offset:2px}
@media(max-width:1050px){
 body.workspace-mode #searchResultList{grid-template-columns:repeat(2,minmax(0,1fr))}
 .workspace-mode #mapSearchDock .home-search{grid-template-columns:minmax(220px,1fr) minmax(0,1fr)}
 .workspace-mode #mapSearchDock .search-row .btn{min-width:80px;padding-inline:12px}
 .workspace-mode #mapSearchDock select{font-size:14px}
}
@media(max-width:760px){
 .workspace-mode .home-hero{padding:18px 12px 8px}
 .workspace-mode .home-hero h1{font-size:25px}
 body.workspace-mode .discover-results{width:calc(100% - 24px);margin-bottom:20px}
 .discovery-controls{padding-top:8px;margin-bottom:14px}
 .discovery-topline{gap:8px;margin-bottom:10px;flex-wrap:wrap}
 .discovery-tabs{padding:3px;gap:0}
 .discovery-tabs button{font-size:13px;min-height:40px;padding:8px 12px}
 .workspace-tools{gap:5px}
 .workspace-tools .btn{min-height:40px;font-size:12px;padding:8px 9px}
 body.workspace-mode #closeResults{width:40px;padding:0;font-size:0}
 body.workspace-mode #closeResults:after{content:'↺';font-size:22px}
 .workspace-mode #mapSearchDock .home-search{grid-template-columns:minmax(0,1fr) auto;gap:7px}
 .workspace-mode #mapSearchDock .search-row{gap:6px}
 .workspace-mode #mapSearchDock .search-row .btn{min-width:70px;padding:10px;font-size:13px}
 .workspace-mode #mapSearchDock input{padding:10px;font-size:16px!important}
 .workspace-filter-toggle{display:inline-flex!important;min-height:46px!important;padding:10px!important;font-size:13px!important}
 .workspace-mode #mapSearchDock .chip-row{display:none!important;grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px}
 .workspace-mode.filters-open #mapSearchDock .chip-row{display:grid!important}
 .workspace-mode #mapSearchDock select{font-size:16px;padding:8px 6px}
 .workspace-active-filters{gap:5px;padding-top:8px}
 .workspace-active-filters button{font-size:12px;min-height:40px}
 .workspace-status{padding:10px 0;font-size:11px;gap:8px}
 .workspace-mode .search-result-count{font-size:12px}
 #workspaceSource{max-width:45%;font-size:11px}
 body.workspace-mode #searchResultList{grid-template-columns:1fr;gap:10px}
 .workspace-result{flex-direction:row;border-radius:12px;align-items:stretch}
 .workspace-card-icon{font-size:27px}
 .workspace-date{left:8px;bottom:10px;min-width:36px;min-height:43px;padding:4px 7px}
 .workspace-date b{font-size:19px}
 .workspace-featured{right:5px;top:7px;font-size:9px;padding:3px 4px}
 .workspace-result-copy{padding:12px;min-width:0}
 .workspace-result-copy h2{font-size:16px;margin:5px 0 7px}
 .workspace-result-copy p{font-size:12px;line-height:1.45}
 .workspace-card-footer{padding-top:5px;gap:5px}
 .workspace-detail{width:calc(100% - 24px);margin:14px auto 30px}
 .workspace-back{min-height:48px;padding:12px 18px;font-size:14px}
 .workspace-mode .event-detail-content{padding:20px 18px}
 .workspace-mode .event-detail-content h1{font-size:27px;margin:12px 0 20px}
 .workspace-mode .event-detail-info p{font-size:15px}
 .workspace-mode .event-detail-actions .btn{font-size:13px;padding:10px 12px}
 .workspace-mode .discover-layout #map{height:60dvh;min-height:300px}
 .workspace-extras{width:calc(100% - 24px);margin-bottom:76px}
 body.workspace-mode .chat-toggle{right:12px!important;bottom:calc(12px + env(safe-area-inset-bottom))!important;min-height:48px;padding:12px 16px}
 body.workspace-mode .chat-box{right:12px!important;bottom:calc(74px + env(safe-area-inset-bottom))!important;width:calc(100% - 24px)!important;max-height:calc(100dvh - 94px - env(safe-area-inset-bottom))!important}
}
@media(max-width:359px){.discovery-tabs button{padding-inline:8px}.workspace-tools .btn{padding-inline:7px}.workspace-result-copy{padding:10px}.workspace-result-copy h2{font-size:15px}}
@media(prefers-reduced-motion:reduce){.workspace-mode *{transition:none!important;scroll-behavior:auto!important}}
/* On short landscape screens the controls scroll away to leave room for the entries. */
@media(max-height:500px){
 .discovery-controls{position:relative;top:auto}
 .workspace-mode .site-header{min-height:56px;padding:6px 12px}
 .workspace-mode .home-hero{padding-top:12px}
}

.workspace-mode.controls-static .discovery-controls{position:relative;top:auto}

.workspace-mode.place-search #mapSearchDock .chip-row{grid-template-columns:repeat(3,minmax(0,1fr))!important}
/* v9: consistent page gutters, fluid cards and readable content widths. */
body.workspace-mode{--discovery-max:1240px;--discovery-gutter:clamp(16px,3vw,48px)}
.workspace-mode .site-header{padding-inline:max(var(--discovery-gutter),calc((100vw - var(--discovery-max))/2));gap:24px}
.workspace-mode .home-hero{padding:26px var(--discovery-gutter) 12px}
.workspace-mode .home-hero-inner{max-width:var(--discovery-max);width:100%}
.workspace-mode .home-hero h1{font-size:clamp(24px,2.5vw,36px);font-weight:750;letter-spacing:-.035em}
body.workspace-mode .discover-results,.workspace-mode .workspace-extras{width:calc(100% - 2 * var(--discovery-gutter));max-width:var(--discovery-max)}
.discovery-controls{padding-top:10px;margin-bottom:24px}
.discovery-topline{margin-bottom:14px}
.workspace-mode #mapSearchDock .home-search{grid-template-columns:minmax(280px,.95fr) minmax(0,1.05fr);gap:14px}
.workspace-mode #mapSearchDock input,.workspace-mode #mapSearchDock select,.workspace-mode #mapSearchDock .search-row .btn{height:48px}
.workspace-mode #mapSearchDock select{font-size:16px;padding-inline:12px}
.workspace-status{padding-block:14px}
body.workspace-mode #searchResultList{gap:20px;grid-template-columns:repeat(3,minmax(0,1fr))}
.workspace-result{border-radius:16px;border-color:#dce6ec;box-shadow:0 3px 12px #173c5006}
.workspace-result-copy{padding:18px;gap:0}
.workspace-result-copy h2{font-size:19px;line-height:1.35;margin:8px 0 12px}
.workspace-result-copy p{font-size:13px;line-height:1.55}
.workspace-result-copy>small{font-size:12px}
.workspace-card-footer{padding-top:14px;font-size:12px;min-height:34px}
.workspace-date{left:14px;bottom:12px;min-width:46px;min-height:50px;box-shadow:0 3px 12px #16374a12}
.workspace-pagination{margin:30px 0 36px}
.workspace-mode .workspace-detail{width:calc(100% - 2 * var(--discovery-gutter));max-width:1240px;margin:24px auto 48px}
.workspace-mode .event-detail-content{max-width:850px;padding:30px clamp(20px,4vw,48px)}
.workspace-mode .event-detail-content h1{max-width:24ch}
.workspace-mode .event-detail-info p{line-height:1.75}
.workspace-mode .site-footer{padding-inline:max(var(--discovery-gutter),calc((100vw - var(--discovery-max))/2));padding-bottom:90px}
@media(min-width:1500px){body.workspace-mode #searchResultList{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(min-width:761px) and (max-width:1099px){
 body.workspace-mode #searchResultList{grid-template-columns:repeat(2,minmax(0,1fr))}
 .workspace-mode #mapSearchDock .home-search{grid-template-columns:1fr}
}
@media(max-width:760px){
 body.workspace-mode{--discovery-gutter:14px}
 .workspace-mode .site-header{gap:12px;padding-inline:14px}
 .workspace-mode .home-hero{padding-top:18px;padding-bottom:10px}
 .workspace-mode .home-hero h1{font-size:25px;line-height:1.22;max-width:24ch}
 .discovery-controls{padding-top:6px;margin-bottom:16px}
 .discovery-topline{margin-bottom:10px;gap:6px}
 .workspace-mode #mapSearchDock .home-search{grid-template-columns:minmax(0,1fr) auto;gap:6px}
 .workspace-mode #mapSearchDock .search-row{gap:6px}
 .workspace-mode #mapSearchDock .search-row .btn{min-width:62px;padding-inline:8px;font-size:12px}
 .workspace-mode #mapSearchDock input{padding-inline:10px}
 .workspace-mode #mapSearchDock select{padding-inline:7px;font-size:16px}
 .workspace-mode #mapSearchDock .chip-row{grid-template-columns:1fr!important}
 .workspace-mode.place-search #mapSearchDock .chip-row{grid-template-columns:1fr!important}
 .workspace-status{padding-block:11px}
 #workspaceSource{max-width:45%}
 body.workspace-mode #searchResultList{grid-template-columns:1fr;gap:12px}
 .workspace-result{border-radius:13px}
 .workspace-result-copy{padding:14px;min-width:0}
 .workspace-result-copy h2{font-size:16px;line-height:1.35;margin:6px 0 8px}
 .workspace-result-copy>small{font-size:11px}
 .workspace-result-copy p{font-size:12px;line-height:1.5}
 .workspace-card-footer{font-size:11px;padding-top:8px;min-height:26px}
 .workspace-date{left:8px;bottom:10px;min-width:38px;min-height:44px}
 .workspace-mode .workspace-detail{margin:16px auto 32px}
 .workspace-mode .event-detail-content{padding:22px 18px}
 .workspace-mode .event-detail-content h1{font-size:27px;max-width:none}
 .workspace-extras>summary{line-height:1.6}
}
@media(max-width:359px){body.workspace-mode{--discovery-gutter:10px}.workspace-result-copy{padding:11px}.discovery-tabs button{padding-inline:7px}}
