/* Show each selected city panorama in full on phones. */
@media(max-width:700px){
 html:is([data-city="okc"],[data-city="norman"],[data-city="tulsa"],[data-city="all"]) .has-skyline-artwork{display:flex;flex-direction:column;align-items:stretch;min-height:0!important}
 html:is([data-city="okc"],[data-city="norman"],[data-city="tulsa"],[data-city="all"]) .has-skyline-artwork .hero-city-photo{position:relative;inset:auto;z-index:auto;height:auto;aspect-ratio:auto;object-fit:contain;animation:none}
 html:is([data-city="okc"],[data-city="norman"],[data-city="tulsa"],[data-city="all"]) .has-skyline-artwork .hero-shade{display:none}
 html:is([data-city="okc"],[data-city="norman"],[data-city="tulsa"],[data-city="all"]) .has-skyline-artwork .hero-home-content{padding-block:16px!important}
 html:is([data-city="okc"],[data-city="norman"],[data-city="tulsa"],[data-city="all"]) .has-skyline-artwork .hero-caption{position:static;margin:0 14px 12px;text-align:left}
}

/* Shared dimensions, alignment and arrow placement across ordinary actions. */
:root{--action-width:164px;--action-height:52px}
[data-ui-control]{position:relative!important;box-sizing:border-box!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 auto!important;width:var(--action-width)!important;max-width:100%!important;height:var(--action-height)!important;min-height:var(--action-height)!important;margin:0!important;padding:6px 25px!important;border-radius:12px!important;font:750 13px/1.2 ui-sans-serif,-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif!important;letter-spacing:0!important;text-align:center!important;white-space:normal!important;text-decoration:none!important;gap:0!important;transform:none!important}
[data-ui-arrow]:not([data-ui-arrow=""])::after{content:attr(data-ui-arrow);position:absolute;right:10px;top:50%;transform:translateY(-50%);font-size:17px;line-height:1}
[data-ui-control]:focus-visible{outline:3px solid #df8a25;outline-offset:3px}
.browse-nav .nav-main,.travel-actions,.daily-tabs{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;width:100%}
.browse-nav .nav-main{max-width:680px;margin-inline:auto}
.travel-actions{max-width:680px;margin-inline:auto}.travel-actions>details{width:var(--action-width)}.travel-actions>details[open]{width:100%;flex-basis:100%}.travel-affiliate-note{flex-basis:100%;text-align:center}
.city-picker-actions{max-width:336px;justify-self:end}.city-main-buttons{display:flex;gap:8px}.city-picker .city-choice{width:var(--action-width);height:52px;min-height:52px;padding:5px;text-align:center}.city-choice-name{font-size:16px}.city-choice-detail{font-size:10px}.city-action-icon,.travel-caret{display:none!important}
.links,.quicklinks{justify-content:center;gap:8px;padding-top:10px}.section-close-control{font-size:13px!important}.daily-tabs{margin-block:12px}.daily-panel{padding:16px!important}.daily-panel>.section-close-control{margin-top:12px!important}
.spotlight-card,.placecard,.neighborhood-place,.map-popup{position:relative}
.card-save-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;min-width:0;margin-bottom:8px}
.card-save-row>.save-place{position:static!important;align-self:center!important;margin-left:auto!important;background:#fffaf0;color:#482030;border:1px solid #b6a18a;box-shadow:0 2px 6px #24131b16}
.card-save-row>.save-place.is-saved{background:#f4d296;color:#361824;border-color:#9f6b26}
.placecard{padding:16px}.placecard .cardtop{min-height:52px;padding-right:0}.placecard .locico{display:none}.placecard h2{margin:9px 0 5px;font-size:24px}.placecard .desc{flex:0;margin:8px 0 12px;line-height:1.5}.placecard .tags{margin-bottom:10px}.placecard .links{margin-top:auto}.placephoto{margin:-16px -16px 12px}.placephoto img{height:150px}.report-inline{margin-top:9px}
.cardgrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.spotlight-photo{height:140px!important}.spotlight-card:hover{transform:none}.spotlight-body{padding:15px!important}.spotlight-body h3{font-size:23px!important;margin:6px 0 8px!important}.spotlight-body>p{font-size:14px;line-height:1.5;margin:0 0 12px!important}.spotlight-bottom{gap:8px;align-items:center;flex-wrap:wrap}.spotlight-bottom small{font-size:10px}.spotlight-photo .editorial-badge{max-width:calc(100% - 20px);font-size:10px;left:10px;bottom:10px}.editorial-section,.stories-preview-section{padding-block:30px}.section-heading{gap:14px;margin-bottom:18px}.section-heading .sectiontitle{font-size:32px;margin-bottom:7px}.section-heading>.text-link{flex-shrink:0}.section-heading>.text-link[data-ui-control]{font-size:12px!important}.history-teaser{gap:16px!important;min-height:0!important}.history-teaser-photo{min-height:180px!important}.history-teaser>div:last-child{padding:16px!important}.history-teaser h3{font-size:27px!important;margin:7px 0!important}.history-teaser p{font-size:14px;line-height:1.5;margin-bottom:10px}.history-teaser .teaser-credit{margin-top:8px}.compact-home-hero{min-height:240px!important}.compact-home-hero .hero-home-content{padding-block:28px!important}.compact-home-hero h1{font-size:48px!important}.compact-home-hero .herolead{margin-bottom:12px;font-size:15px}

@media(max-width:700px){:root{--action-width:min(164px,calc((100vw - 68px)/2))}.cardgrid{grid-template-columns:1fr}.city-picker-actions{justify-self:auto;margin-inline:auto}.city-picker-inner{gap:12px}.spotlight-photo{height:125px!important}.history-teaser-photo{min-height:150px!important;height:150px!important}.history-teaser{gap:0!important}.compact-home-hero{min-height:210px!important}.compact-home-hero h1{font-size:38px!important}.section-heading{align-items:flex-start}.section-heading .sectiontitle{font-size:28px}.section-heading>.text-link{align-self:center}.section-heading{flex-wrap:wrap}.section-heading>.text-link[data-ui-control]{width:var(--action-width)!important}.editorial-section,.stories-preview-section{padding-block:24px}}

/* Close actions occupy a dedicated right-hand lane, outside the title's text flow. */
.section-close-bar{display:flex;justify-content:flex-end;align-items:center;clear:both;width:100%;gap:12px;padding:0 0 14px;margin:0 0 14px;border-bottom:1px solid #b79b7a50}
.section-close-bar>.section-close-control{position:relative!important;float:none!important;grid-column:auto!important;align-self:center!important;margin:0!important;background:#481b2c!important;color:#fffaf2!important;border:1px solid #c69d60!important}
html[data-city="okc"] .section-close-bar>.section-close-control{background:#143e65!important;color:#fffaf2!important}
.has-side-close{position:relative;display:block!important;padding-right:190px!important;min-height:66px}
.has-side-close>.section-close-bar{position:absolute;right:0;top:0;width:174px;height:100%;padding:0 0 0 10px;margin:0;border-bottom:0;border-left:1px solid #b79b7a50;align-items:flex-start}
.has-side-close>h1,.has-side-close>h2{grid-column:auto!important}
.daily-panel>.section-close-bar{margin-bottom:12px}
details>.section-close-bar{padding-top:12px}
.section-return-footer>.section-close-bar{border-top:1px solid #b79b7a50;border-bottom:0;padding-top:16px;margin-top:12px}
@media(max-width:650px){
 .has-side-close{padding-right:0!important;display:flex!important;flex-direction:column;align-items:stretch!important}
 .has-side-close>.section-close-bar{position:static;width:100%;height:auto;border-left:0;border-bottom:1px solid #b79b7a50;padding:0 0 12px;margin:0 0 14px;order:-1}
 .pagehero:has(.has-side-close){height:auto;min-height:300px;padding-top:22px}
}


/* Bottom city story cards: contain photos and keep every line on a readable surface. */
.history-teaser{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:0!important;align-items:stretch}
.history-teaser-photo{position:relative;align-self:stretch;height:auto;min-height:240px!important;overflow:hidden}
.history-teaser-photo img{position:absolute;inset:0;width:100%;height:100%;min-height:0!important;object-fit:cover;display:block}
.history-teaser>.history-teaser-copy{min-width:0;padding:22px!important;background:#fffaf2;color:#332d2a;text-align:left;display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.history-teaser-copy>.kicker{color:#754527;font-size:11px;line-height:1.5;letter-spacing:.08em;margin:0!important}
.history-teaser-copy>h3{color:#332d2a;font-size:27px!important;line-height:1.18;margin:0!important}
.history-teaser-copy>p:not(.kicker){color:#514b46;font-size:15px;line-height:1.65;margin:0!important}
.history-teaser-copy>.text-link{background:#481b2c;color:#fffaf2!important;border:1px solid #481b2c;margin-top:2px!important}
html[data-city="okc"] .history-teaser-copy>.text-link{background:#143e65;border-color:#143e65}
.history-teaser-copy>.teaser-credit{display:block;color:#514b46;font-size:12px;line-height:1.6;margin:0!important;overflow-wrap:anywhere}
.history-teaser-copy>.teaser-credit a{color:#514b46;font-size:inherit;line-height:inherit;text-decoration:underline;text-underline-offset:2px}
@media(max-width:700px){
 .history-teaser{grid-template-columns:minmax(0,1fr)}
 .history-teaser-photo{height:180px!important;min-height:180px!important}
 .history-teaser>.history-teaser-copy{padding:18px!important}
 .history-teaser-copy>h3{font-size:25px!important}
}

/* Compact hearts and consistent left-aligned photo-card actions. */
.save-place[data-ui-control]{width:92px!important;height:40px!important;min-height:40px!important;padding:6px 10px!important;gap:6px!important;font-size:12px!important;border-radius:10px!important}
.save-place[data-ui-control]::before{content:"♥";font-size:18px;line-height:1;color:#7b253b}
html[data-city="okc"] .save-place[data-ui-control]::before{color:#005b92}
.save-place.is-saved[data-ui-control]::before{color:#6b253a}
html[data-city="okc"] .save-place.is-saved[data-ui-control]::before{color:#143e65}
.card-save-row{margin-bottom:5px;gap:6px}
.card-save-row>.kicker{margin:0!important}
.placecard .cardtop{min-height:40px}
.spotlight-grid{align-items:start;gap:14px}
.spotlight-photo{height:110px!important}
.spotlight-body{padding:13px!important;flex:0 0 auto}
.spotlight-body h3{font-size:22px!important;line-height:1.15;margin:4px 0 7px!important}
.spotlight-body>p{margin-bottom:10px!important;line-height:1.45}
.spotlight-bottom{margin-top:0;align-items:flex-start;justify-content:flex-start;gap:7px;text-align:left}
.spotlight-bottom>.text-link,.history-teaser-copy>.text-link{align-self:flex-start!important;background:#481b2c;color:#fffaf2!important;border:1px solid #481b2c;box-shadow:none}
html[data-city="okc"] .spotlight-bottom>.text-link,html[data-city="okc"] .history-teaser-copy>.text-link{background:#143e65;border-color:#143e65}
.spotlight-bottom small{font-size:11px;line-height:1.5;overflow-wrap:anywhere}
.history-teaser-photo{min-height:200px!important}
.history-teaser>.history-teaser-copy{padding:16px!important;gap:8px}
.history-teaser-copy>h3{font-size:24px!important}
.history-teaser-copy>p:not(.kicker){font-size:14px;line-height:1.5}
.editorial-section,.stories-preview-section{padding-block:22px}
.footer a.footbrand{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0;margin:0;font-size:16px;color:#fffaf2;text-decoration:none}
.footer a.footbrand:hover{text-decoration:underline;text-underline-offset:4px}
.footer .developer-line{margin:12px 0 0;font-size:12px}
.footer .developer-line a{display:inline;margin:0;font-size:inherit;text-decoration:underline;text-underline-offset:3px}
#about-matt{scroll-margin-top:100px}
@media(max-width:700px){
 .spotlight-photo{height:100px!important}
 .history-teaser-photo{height:140px!important;min-height:140px!important}
 .history-teaser>.history-teaser-copy{padding:15px!important}
 .history-teaser-copy>h3{font-size:23px!important}
}

/* Homepage section links use the same visible button treatment as card actions. */
.editorial-section .section-heading>.text-link,
.stories-preview-section .section-heading>.text-link{background:#481b2c;color:#fffaf2!important;border:1px solid #481b2c;box-shadow:none}
html[data-city="okc"] .editorial-section .section-heading>.text-link,
html[data-city="okc"] .stories-preview-section .section-heading>.text-link{background:#143e65;border-color:#143e65}
@media(max-width:700px){
 .editorial-section .section-heading>.text-link,
 .stories-preview-section .section-heading>.text-link{align-self:flex-start}
}

/* Quick picks stay compact; existing full filter controls remain available. */
.quick-filters{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 12px}
.quick-filter{min-height:44px;padding:8px 13px;border:1px solid #bda78f;border-radius:10px;background:#fffaf2;color:#481b2c;font:700 13px/1.25 system-ui;cursor:pointer}
.quick-filter[aria-pressed="true"]{background:#481b2c;color:#fffaf2;border-color:#481b2c}
html[data-city="okc"] .quick-filter{color:#143e65;border-color:#8ba1b4}
html[data-city="okc"] .quick-filter[aria-pressed="true"]{background:#143e65;color:#fffaf2;border-color:#143e65}
.quick-filter:disabled{opacity:.5;cursor:default}
.quick-filter:focus-visible,.saved-map-toggle:has(input:focus-visible){outline:3px solid #df8a25;outline-offset:3px}
.active-filter-summary{font-size:13px;line-height:1.5;margin:0 0 12px;color:var(--sub)}
.place-glance{font-size:13px;line-height:1.5;color:var(--sub);margin:4px 0 8px;overflow-wrap:anywhere}
.place-glance span{padding-inline:3px}
.spotlight-body>.place-glance{font-size:12px!important;line-height:1.45;margin:0 0 8px!important}
.saved-map-action{margin:12px 0}
.saved-map-link[data-ui-control]{width:210px!important;background:#481b2c;color:#fffaf2;border:1px solid #481b2c}
/* Keep the saved-map label and its inherited arrow readable over the OKC navy fill. */
html[data-city="okc"] .saved-map-link[data-ui-control]{background:#143e65;border-color:#143e65;color:#fffaf2}
.saved-map-toggle{display:flex;align-items:center;gap:10px;min-height:44px;padding:10px 12px;margin:0 0 14px;border:1px solid var(--line);border-radius:10px;background:var(--paper);font:700 14px/1.4 system-ui;color:var(--ink);cursor:pointer;width:fit-content;max-width:100%}
.saved-map-toggle input{width:20px;height:20px;accent-color:#481b2c;margin:0;flex:none}
html[data-city="okc"] .saved-map-toggle input{accent-color:#143e65}

/* Listing facts are browse links; ordinary action buttons keep their existing sizes. */
.place-glance .glance-tag{display:inline;color:inherit;text-decoration:underline;text-decoration-color:#a99b8b;text-underline-offset:3px;line-height:1.8;border-radius:3px;padding:3px 0}
.place-glance .glance-tag:hover,.place-glance .glance-tag.is-active{color:#481b2c;text-decoration-thickness:2px}
html[data-city="okc"] .place-glance .glance-tag:hover,html[data-city="okc"] .place-glance .glance-tag.is-active{color:#005b92}
.tags .listing-tag{display:inline-flex;align-items:center;min-height:36px;padding:6px 10px;box-sizing:border-box;font-size:12px;text-decoration:underline;text-underline-offset:3px;border:1px solid var(--line);cursor:pointer}
.tags .listing-tag.is-active{background:#481b2c;color:#fffaf2}
html[data-city="okc"] .tags .listing-tag.is-active{background:#143e65;color:#fffaf2}
.listing-tag:focus-visible,.glance-tag:focus-visible,.clear-tag-filters:focus-visible{outline:3px solid #df8a25;outline-offset:3px}
.browse-filter-status{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 12px;scroll-margin-top:100px}
.browse-filter-status[hidden]{display:none}
.browse-filter-status>.active-filter-summary{margin:0;flex:1;min-width:180px}
.clear-tag-filters{min-height:44px;padding:7px 12px;border:1px solid #bda78f;border-radius:10px;background:#fffaf2;color:#481b2c;font:700 12px system-ui;cursor:pointer}
html[data-city="okc"] .clear-tag-filters{color:#143e65;border-color:#8ba1b4}

/* A compact sharing area on Saved lists, including a manual-copy fallback. */
.saved-share-tools{margin:14px 0;padding:14px 0;border-block:1px solid var(--line)}
.saved-share-buttons{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-start}
.saved-share-buttons button:disabled{opacity:.5;cursor:default}
.saved-share-hint,.saved-share-status{font-size:13px;line-height:1.5;margin:8px 0 0;color:var(--sub)}
.saved-share-status:empty{display:none}
.share-link-field{margin-top:10px;max-width:600px}
.share-link-field[hidden],.shared-list-note[hidden],.saved-map-action[hidden]{display:none}
.share-link-field label{display:block;font-size:12px;font-weight:700;margin-bottom:5px}
.share-link-field input{box-sizing:border-box;width:100%;min-height:44px;padding:9px 11px;border:1px solid var(--line);border-radius:9px;background:var(--paper);color:var(--ink);font:14px system-ui}
.shared-list-note{font-size:14px;line-height:1.6;margin:12px 0}
.shared-own-link{font-weight:700;text-underline-offset:3px;color:var(--wine)}
html[data-city="okc"] .shared-own-link{color:#005b92}

/* Personal Saved visit groups remain compact and never travel in shared links. */
.saved-groups{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 12px}
.saved-groups[hidden],.saved-group-notice[hidden]{display:none}
.saved-group-notice{font-size:13px;line-height:1.5;color:var(--sub);margin:0 0 12px}.saved-group-notice:empty{display:none}
.saved-visit-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:8px 0}
.saved-visit-label{font-size:12px;font-weight:750;color:#481b2c}
.saved-visit-toggle{min-height:44px;padding:7px 12px;border:1px solid #bda78f;border-radius:10px;background:#fffaf2;color:#481b2c;font:700 12px/1.3 system-ui;cursor:pointer}
html[data-city="okc"] .saved-visit-toggle,html[data-city="okc"] .saved-visit-label{color:#143e65}
.saved-visit-toggle:focus-visible{outline:3px solid #df8a25;outline-offset:3px}

.saved-share-buttons #copy-saved{background:#481b2c;color:#fffaf2;border:1px solid #481b2c}
html[data-city="okc"] .saved-share-buttons #copy-saved{background:#143e65;border-color:#143e65;color:#fffaf2}

/* Nearby outing ideas open inside the card only when requested. */
.place-outing{margin-top:12px;min-width:0}
.outing-toggle[data-ui-control],.outing-stop[data-ui-control]{background:#481b2c;color:#fffaf2;border:1px solid #481b2c}
html[data-city="okc"] .outing-toggle[data-ui-control],html[data-city="okc"] .outing-stop[data-ui-control]{background:#143e65;border-color:#143e65;color:#fffaf2}
.outing-toggle{scroll-margin-top:100px}
.outing-toggle::after{content:'+';position:absolute;right:10px;top:50%;transform:translateY(-50%);font-size:18px}
.outing-toggle[aria-expanded="true"]::after{content:'−'}
.outing-panel{margin-top:12px;padding:12px;border:1px solid var(--line);border-radius:12px;background:#fffaf2;color:#332d2a}
.outing-panel[hidden]{display:none}
.outing-panel .outing-intro{margin:0 0 12px;font-size:13px;line-height:1.5;color:#514b46}
.outing-picks{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.outing-pick{min-width:0;border-top:1px solid var(--line);padding-top:12px}
.outing-pick-top{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-bottom:5px}
.outing-kind{font-size:11px;font-weight:750;color:#754527}
.outing-pick h3{font-size:19px;line-height:1.2;margin:5px 0;color:#332d2a}
.outing-pick .outing-district{font-size:12px;line-height:1.5;margin:0 0 9px;color:#514b46}
.outing-pick .save-place{position:static!important;margin-left:auto}

/* Expanded ideas must not stretch the neighboring card into empty space. */
.cardgrid:has(.place-outing){align-items:start}

/* Fill columns independently when outing cards have different heights. */
@media(min-width:701px){.cardgrid.outing-flow{grid-auto-rows:1px;align-items:start}}
@media(max-width:700px){.cardgrid.outing-flow{grid-auto-rows:auto}.cardgrid.outing-flow>.placecard{grid-row-end:auto!important}}
/* One compact search form, shared across the public guide. */
.guide-search{padding-block:10px;background:var(--paper,#fffaf2);border-bottom:1px solid var(--line,#d8cbb7)}
.guide-search form{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px}
.guide-search label{display:block;font:700 12px/1.4 system-ui;color:var(--ink,#332d2a);margin:0 0 4px}
.guide-search input[type=search]{box-sizing:border-box;width:100%;height:52px;min-width:0;padding:9px 12px;border:1px solid #bda78f;border-radius:10px;background:#fff;color:#332d2a;font:16px system-ui}
.guide-search button[data-ui-control],.guide-result-link[data-ui-control],#guide-search-more[data-ui-control]{background:#481b2c;color:#fffaf2;border:1px solid #481b2c}
html[data-city="okc"] .guide-search button[data-ui-control],html[data-city="okc"] .guide-result-link[data-ui-control],html[data-city="okc"] #guide-search-more[data-ui-control]{background:#143e65;color:#fffaf2;border-color:#143e65}
.guide-search input:focus-visible{outline:3px solid #df8a25;outline-offset:2px}
.guide-search-results{padding-block:24px}.guide-search-results .wrap{max-width:900px}
#guide-search-count{font-size:15px;line-height:1.5;margin:0 0 14px;color:var(--ink)}
.guide-result{padding:16px 0;border-top:1px solid var(--line);scroll-margin-top:100px}
.guide-result-top{display:flex;justify-content:space-between;align-items:center;gap:8px;font:700 12px/1.5 system-ui;color:var(--sub)}
.guide-result-top>.save-place{position:static!important;flex-shrink:0;margin-left:auto}.guide-result h2{font-size:23px;line-height:1.2;margin:7px 0;scroll-margin-top:100px}.guide-result p{font-size:14px;line-height:1.5;margin:0 0 12px}
.guide-search-on-page{padding-top:0;margin-bottom:18px;border-bottom:0}.guide-search-on-page>.wrap{width:100%;max-width:none;padding:0}.guide-search-empty{padding:16px 0;line-height:1.6}#guide-search-more[hidden]{display:none!important}
@media(max-width:430px){.guide-search form{gap:7px}.guide-search input[type=search]{padding-inline:9px}.guide-result-top>.save-place{position:static!important;flex-shrink:0;margin-left:auto}.guide-result h2{font-size:21px}}

/* Optional compact listings retain every detail and action behind a local toggle. */
.listing-view-switch{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 12px}
.listing-details{display:flex;flex-direction:column;flex:1;min-width:0}
.listing-details[hidden],.listing-detail-toggle[hidden]{display:none!important}
.cardgrid.is-compact{grid-template-columns:minmax(0,1fr);grid-auto-rows:auto;gap:10px;align-items:start}
.cardgrid.is-compact>.placecard{grid-row-end:auto!important;padding:12px 14px;box-shadow:none}
.cardgrid.is-compact>.placecard>.placephoto{display:none}
.cardgrid.is-compact .cardtop{min-height:40px;margin-bottom:0}
.cardgrid.is-compact>.placecard>h2{font-size:22px;margin:4px 0}
.cardgrid.is-compact>.placecard>.place-glance{margin:2px 0 8px}
.listing-detail-toggle[data-ui-control]{align-self:flex-start;background:#481b2c;color:#fffaf2;border:1px solid #481b2c;flex:none}
html[data-city="okc"] .listing-detail-toggle[data-ui-control]{background:#143e65;border-color:#143e65;color:#fffaf2}
.listing-detail-toggle::after{content:'+';position:absolute;right:10px;top:50%;transform:translateY(-50%);font-size:18px}
.listing-detail-toggle[aria-expanded="true"]::after{content:'−'}
.cardgrid.is-compact .listing-details{margin-top:10px}
.cardgrid.is-compact .listing-details>.links{justify-content:flex-start;margin-top:0}
@media(min-width:701px){.cardgrid.is-compact>.placecard{position:relative;padding-right:206px;min-height:126px}.cardgrid.is-compact>.placecard>.cardtop{padding-right:0}.cardgrid.is-compact .cardtop>.save-place{position:absolute!important;right:14px;top:12px;margin:0!important}.cardgrid.is-compact>.placecard>.listing-detail-toggle{position:absolute!important;right:14px;top:60px}.cardgrid.is-compact .listing-details{margin-right:-192px;margin-top:34px}.cardgrid.is-compact>.placecard>h2{margin-top:0}.cardgrid.is-compact .cardtop{min-height:26px}}

/* Menu-based per-person planning bands, with a compact key above Dining. */
.price-guide{padding:12px 14px;margin:0 0 14px;border:1px solid var(--line);border-radius:12px;background:var(--paper,#fffaf2);color:var(--ink,#332d2a)}
.price-guide[hidden]{display:none}
.price-guide h3{font:750 14px/1.4 system-ui;margin:0 0 7px}
.price-guide ul{list-style:none;display:flex;flex-wrap:wrap;gap:6px 18px;margin:0;padding:0;font:13px/1.5 system-ui}
.price-guide li strong{color:#481b2c;margin-right:4px;font-weight:800}
html[data-city="okc"] .price-guide li strong{color:#143e65}
.price-guide p{font-size:12px;line-height:1.5;margin:8px 0 0;color:var(--sub)}
.place-glance .price-band{display:inline;padding:0;font-weight:800;white-space:nowrap;color:#481b2c}
html[data-city="okc"] .place-glance .price-band{color:#143e65}
.place-glance .price-unconfirmed{display:inline;padding:0;font-size:12px;color:var(--sub)}
.price-context{font-size:12px;line-height:1.5;color:var(--sub);margin:6px 0 8px}
.price-context a{color:inherit;text-decoration:underline;text-underline-offset:3px}.price-reviewed{font-size:11px}

/* Compact editorial visit estimates and locally expanding practical notes. */
.place-glance .visit-estimate{white-space:normal}
.visit-estimate-key{font-size:.82rem;line-height:1.4;color:#5e554c;margin:5px 0 10px}
.place-practical{margin:0 0 10px;min-width:0}
.practical-panel{margin-top:8px;padding:10px 12px;border-left:3px solid #bc994e;background:#faf6ed;font-size:.9rem;line-height:1.5;color:#332d29}
.practical-panel[hidden]{display:none!important}
.practical-panel p{margin:0 0 6px}.practical-panel p:last-child{margin-bottom:0}
.practical-panel .planning-caption{font-size:.8rem;color:#5e554c}
.price-pending{font-size:.84rem}
.practical-toggle[data-ui-control]{background:#481b2c;color:#fffaf2;border:1px solid #481b2c;cursor:pointer}
html[data-city="okc"] .practical-toggle[data-ui-control]{background:#143e65;color:#fffaf2;border-color:#143e65}
.practical-toggle::after{content:'+';position:absolute;right:10px;top:50%;transform:translateY(-50%);font-size:18px}
.practical-toggle[aria-expanded="true"]::after{content:'−'}

/* Featured photo labels are links in the card body, never photo overlays. */
.spotlight-body .spotlight-tags{display:flex;flex-wrap:wrap;gap:6px;margin:5px 0 3px;min-width:0}
.spotlight-body .feature-tag{position:static;inset:auto;display:inline-flex;align-items:center;max-width:100%;min-height:44px;padding:6px 11px;border:1px solid #dfc8bd;border-radius:9px;background:#f8efea;color:#481b2c;font-size:11px;line-height:1.3;font-weight:800;letter-spacing:.02em;text-decoration:none;overflow-wrap:anywhere}
.spotlight-body .feature-tag:hover{background:#efe0d8;text-decoration:underline;text-underline-offset:3px}
html[data-city="okc"] .spotlight-body .feature-tag{background:#edf4fa;border-color:#c5d7e7;color:#143e65}
html[data-city="okc"] .spotlight-body .feature-tag:hover{background:#dceaf5}

/* Close shares the content heading, outside photos and without a separate band. */
.content-close-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start;margin:0 0 8px;min-width:0}
.pagehero+section:has(.content-close-heading){padding-top:18px}
.game-hero~section:has(.content-close-heading),.smash-hero+section:has(.content-close-heading){padding-top:18px}
.content-close-heading>:not(.section-close-bar){margin:0!important;min-width:0;overflow-wrap:break-word}
.content-close-heading>.section-close-bar{position:static;width:auto;height:auto;padding:0;margin:0;border:0;justify-content:flex-end;align-items:start;clear:none}
.pagehero:has(+section .content-close-heading)>.wrap{padding-right:0!important}
.game-hero:has(~section .content-close-heading)>.wrap,.smash-hero:has(~section .content-close-heading) .has-side-close{padding-right:0!important}
@media(max-width:650px){.content-close-heading{gap:10px}.content-close-heading>.sectiontitle{font-size:28px}}
.listing-details>.place-practical{border-top:1px solid #b79b7a50;padding-top:10px;margin:10px 0 0}

/* Keep the legend heading and its Close control clear of the fixed header. */
.smash-hero+#legend{scroll-margin-top:calc(var(--page-header-offset,0px) + 12px)}

/* Restaurant ordering and review links stay in the text area. */
.dining-utilities{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:12px 0}.dining-utilities .map-view-link{margin:0}.dining-service-hint{font-size:13px;line-height:1.45;color:var(--muted);margin:0 0 14px}.links>.place-service-note{flex:0 0 100%;font-size:12px;line-height:1.45;color:var(--muted);margin:0;overflow-wrap:anywhere}.spotlight-body>.links{margin:8px 0}.place-service-link{white-space:normal}

/* Scoreboard Close stays beside its title at every screen width. */
.local-scores-heading:has(>.scoreboard-title-row){display:block!important;padding:0!important;min-height:0;margin-bottom:14px}
.local-scores-heading>.scoreboard-title-row{align-items:center;margin-bottom:6px}
.local-scores-heading>.scoreboard-title-row>.section-close-bar{align-items:center;border:0;padding:0;margin:0}
.local-scores-heading>.scoreboard-title-row>h2{margin:0;min-width:0}
.local-scores-heading:has(>.scoreboard-title-row)>p{margin:0}
@media(max-width:650px){.local-scores-heading>.scoreboard-title-row>h2{font-size:20px;line-height:1.2}}

/* One compact action area per listing; the two local panels share a button row. */
.place-actions{display:grid;grid-template-columns:repeat(2,minmax(0,var(--action-width)));justify-content:start;gap:8px;margin-top:8px;min-width:0}
.place-actions>.links{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));justify-content:start;gap:8px;margin:0!important;padding:0;border:0}
.place-actions>.links>:is(a,button){width:100%!important;min-width:0!important}
.place-actions>.links>.place-service-note{grid-column:1/-1}
.place-actions>.place-service-note{grid-column:1/-1;margin:0;font-size:12px;line-height:1.45;color:var(--muted);overflow-wrap:anywhere}
.spotlight-body>.spotlight-bottom{display:grid;grid-template-columns:repeat(2,minmax(0,var(--action-width)));justify-content:start;gap:8px;margin-top:8px}
.spotlight-bottom>:is(a,button){width:100%!important;min-width:0!important}
.spotlight-bottom>:is(small,.place-service-note){grid-column:1/-1;margin:0}
.place-actions>.place-practical,.place-actions>.place-outing{display:contents}
.place-actions .practical-toggle{grid-column:1;grid-row:2}
.place-actions .outing-toggle{grid-column:2;grid-row:2}
.place-actions .practical-panel{grid-column:1/-1;grid-row:3;margin:0}
.place-actions .outing-panel{grid-column:1/-1;grid-row:4;margin:0}
.place-actions .practical-panel[hidden],.place-actions .outing-panel[hidden]{display:none!important}
.dining-utilities [data-dining-service]{background:#481b2c;color:#fffaf2!important;border:1px solid #481b2c;box-shadow:none}
html[data-city="okc"] .dining-utilities [data-dining-service]{background:#143e65;border-color:#143e65;color:#fffaf2!important}
/* Keep the brand available and align each destination below it. */
.topbar{position:sticky!important;top:0!important;z-index:1000;transform:none!important}
main [id],.place-actions,.pagehero,.game-hero,.smash-hero,.editorial-hero{scroll-margin-top:calc(var(--page-header-offset,80px) + 12px)!important}

/* Keep long section headings readable beside Close on narrow phones. */
@media(max-width:650px){.content-close-heading>h2:not(#local-scores-title){font-size:22px;line-height:1.2}.content-close-heading:has(>.kicker){align-items:center}}

/* Three short lines fit the smallest action width without changing button size. */
.cultures-action[data-ui-control]{padding-block:3px!important}


/* Audit: Close shares the expanded panel heading rather than adding a blank band. */
.has-detail-close{position:relative}
.has-detail-close>summary,.daily-tabs{scroll-margin-top:calc(var(--page-header-offset,80px) + 12px)}
details[open].has-detail-close>.section-close-bar{position:absolute;top:0;right:0;width:110px;height:52px;padding:0;margin:0;border:0;clear:none;align-items:center;z-index:1}
details[open].has-detail-close>summary:not([data-ui-control]){min-height:52px;padding-right:0;overflow-wrap:break-word}
details[open].has-detail-close>summary[data-ui-control]{max-width:calc(100% - 122px)!important}
.story-card details[open].has-detail-close>.section-close-bar{top:15px}
details.riddle[open].has-detail-close>.section-close-bar{top:12px}
.section-close-bar>.section-close-control[data-ui-control]{padding-inline:10px 22px!important}
details.has-detail-close>.section-close-bar>.section-close-control[data-ui-control]{width:110px!important;height:44px!important;min-height:44px!important;font-size:12px!important}
.panel-close-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;margin-bottom:12px}
.panel-close-heading>.daily-intro{margin:0;min-width:0;overflow-wrap:anywhere}
.panel-close-heading>.section-close-bar{width:auto;padding:0;margin:0;border:0;clear:none}
.panel-close-heading>.section-close-bar>.section-close-control[data-ui-control]{width:110px!important;height:44px!important;min-height:44px!important;font-size:12px!important}
.section-intro-actions{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 14px}
.section-intro-actions>.pillbtn{background:#481b2c;color:#fffaf2;border:1px solid #481b2c}
html[data-city="okc"] .section-intro-actions>.pillbtn{background:#143e65;color:#fffaf2;border-color:#143e65}
@media(max-width:700px){
 .section{padding-block:28px}.section.narrow{padding-top:24px}
 .pagehero+section:has(.content-close-heading),.game-hero~section:has(.content-close-heading),.smash-hero+section:has(.content-close-heading){padding-top:18px}
 .section.editorial-section,.section.stories-preview-section{padding-block:22px}
 .game-hero{padding-block:28px}.smash-hero{padding-block:30px}
 .smash-rule-section{padding-block:28px}.game-box{margin-block:18px}
 .history-jumps{margin-bottom:22px}.oklahoma-icons,.native-history{margin-bottom:28px}
 .footer{margin-top:12px;padding-top:24px}.photo-credits{margin-top:20px;padding-top:12px}.footbottom{margin-top:18px}
}

/* Keep the tilted decorative stamp inside the mobile viewport. */
.smash-hero{overflow:hidden}

/* Long native summaries flow below the compact Close after its first lines. */
details[open].has-detail-close>summary:not([data-ui-control])::before{content:"";float:right;width:122px;height:52px}

@media(max-width:700px){.filterfield input,.filterfield select,.quick-controls select,.map-controls select{font-size:16px}}

/* All place and city-story card photos share the same responsive frame. */
:root{--card-photo-height:180px}
.spotlight-photo,.placephoto>img,.history-teaser-photo{height:var(--card-photo-height)!important;min-height:var(--card-photo-height)!important;max-height:var(--card-photo-height)!important}
.spotlight-photo>img,.placephoto>img,.history-teaser-photo>img{display:block;width:100%;object-fit:cover}
.spotlight-photo>img,.history-teaser-photo>img{height:100%;min-height:0!important}
.history-teaser{grid-template-columns:minmax(0,1fr)}
img[src*="Cattlemen%27s_Steakhouse_exterior.jpg"]{object-position:50% 58%}
img[src*="Oklahoma_City_National_Memorial_4948.jpg"]{object-position:50% 85%}
@media(max-width:700px){:root{--card-photo-height:150px}}

/* Tripadvisor and other ordinary card actions use the existing city button color. */
.spotlight-bottom>:is(a,button),.placecard .links>:is(a,button){background:#481b2c!important;color:#fffaf2!important;border:1px solid #481b2c!important;box-shadow:none}
html[data-city="okc"] .spotlight-bottom>:is(a,button),html[data-city="okc"] .placecard .links>:is(a,button){background:#143e65!important;border-color:#143e65!important}

/* Every selected city uses its own banner, including alternate section headers. */
html:is([data-city="norman"],[data-city="all"]) .pagehero{background-image:linear-gradient(90deg,#321323ed,#481b2c99 65%,#30131f66),var(--city-photo)}


/* Compact homepage tidbits: one row of three buttons directly above search. */
.daily-on-demand{padding-block:8px}
.daily-on-demand .daily-heading{margin-bottom:7px}
.daily-on-demand .daily-heading h2{font-size:22px;line-height:1.2}
.daily-on-demand .daily-subtitle{display:none}
.daily-on-demand .daily-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;max-width:480px;margin:0}
.daily-on-demand .daily-tabs>button{width:100%!important;max-width:none!important;height:44px!important;min-height:44px!important;padding:6px 20px 6px 6px!important;font-size:12px!important;white-space:nowrap!important}
.daily-on-demand .daily-tabs>button::after{right:7px;font-size:15px}
.daily-on-demand .daily-panel{margin-top:8px}


/* Three evenly sized navigation/travel buttons per row, with room for labels. */
.browse-nav .nav-main,.travel-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:508px;gap:8px;margin-inline:auto}
.browse-nav .nav-main>.navlink,.travel-actions>.uber-link,.travel-actions>details>.uber-link{width:100%!important}
.travel-actions>details{width:100%;min-width:0}
.travel-actions>details[open]{grid-column:1/-1;width:100%}
.travel-actions>.travel-affiliate-note{grid-column:1/-1}
.daily-on-demand{border-bottom:6px solid #fdbb30}
html:is([data-city="norman"],[data-city="all"]) .daily-on-demand{border-top:6px solid #481b2c;border-bottom-color:#481b2c}
@media(max-width:700px){
 .browse-nav .nav-main,.travel-actions{gap:6px}
 .browse-nav .nav-main>.navlink,.travel-actions>.uber-link,.travel-actions>details>.uber-link{padding:6px 20px 6px 4px!important;font-size:11.5px!important;line-height:1.2!important}
 .browse-nav .nav-main>.navlink::after,.travel-actions>.uber-link::after,.travel-actions>details>.uber-link::after{right:4px;font-size:13px}
}

/* Three actions per row; flex centering balances every incomplete final row. */
.browse-nav .nav-main,.travel-actions,.spotlight-body>.spotlight-bottom,.place-actions,.placecard .links,.quicklinks,.outing-pick{--button-gap:8px;display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;gap:var(--button-gap)}
.browse-nav .nav-main>.navlink,.travel-actions>.uber-link,.travel-actions>details:not([open]),.spotlight-bottom>:is(a,button),.placecard .links>:is(a,button),.place-actions :is(.practical-toggle,.outing-toggle),.quicklinks>a,.outing-pick>:is(a,button){width:min(164px,calc((100% - 2 * var(--button-gap))/3))!important;min-width:0!important;flex:0 0 auto!important;padding:5px 17px 5px 4px!important;font-size:11.5px!important;line-height:1.2!important}
.travel-actions>details>summary.uber-link{width:100%!important}
.travel-actions>details[open]{width:100%!important;flex-basis:100%}
.place-actions>.links{display:contents}
.place-actions>.place-practical,.place-actions>.place-outing{display:contents}
.place-actions :is(.practical-panel,.outing-panel){flex:0 0 100%;min-width:0;box-sizing:border-box;order:10}
.place-actions>.place-service-note,.spotlight-bottom>:is(small,.place-service-note),.travel-actions>.travel-affiliate-note{flex:0 0 100%;order:20}
.spotlight-bottom>:is(a,button)::after,.placecard .links>:is(a,button)::after,.place-actions :is(.practical-toggle,.outing-toggle)::after,.quicklinks>a::after,.outing-pick>:is(a,button)::after{right:4px;font-size:13px}
@media(max-width:700px){
 .browse-nav .nav-main,.travel-actions,.spotlight-body>.spotlight-bottom,.place-actions,.placecard .links,.quicklinks,.outing-pick{--button-gap:6px}
}

.outing-pick>:not(a,button){flex:0 0 100%;min-width:0;box-sizing:border-box}

.outing-pick>:is(a,button)[data-ui-control]{margin:0!important;align-self:auto!important}

/* Airport disclosure and its links keep the shared three-column button size. */
.travel-actions>details.airport-menu[open]>summary.uber-link{width:min(164px,calc((100% - 2 * var(--button-gap))/3))!important;max-width:calc(100% - 122px)!important}
.airport-panel{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}
.airport-panel>:is(p,.section-close-bar){flex:0 0 100%;min-width:0}
.airport-panel>a[data-ui-control]{width:min(164px,calc((100% - 16px)/3))!important;height:52px!important;min-height:52px!important;min-width:0;padding:5px 17px 5px 4px!important;font-size:11.5px!important;line-height:1.2!important;background:#481b2c;color:#fffaf2;border:1px solid #481b2c}
.airport-panel>a[data-ui-control]::after{right:4px;font-size:13px}
html[data-city="okc"] .airport-panel>a[data-ui-control]{background:#143e65;border-color:#143e65}

.travel-actions>details.airport-menu{padding:0!important;border:0;margin:0;background:transparent}

/* Today's observances sit directly below the zodiac season without a disclosure. */
.sky-today-observances{width:100%;max-width:640px;text-align:center;font-size:13px;line-height:1.45;overflow-wrap:anywhere}
.sky-today-observances:empty{display:none}
.sky-today-observances p{margin:3px 0}
.sky-today-observances a{color:inherit;text-underline-offset:3px}
.sky-holidays{font-weight:750;color:var(--gold)}
.sky-fun-day{color:#f9efe2}
.daily-on-demand .daily-tabs{grid-template-columns:repeat(2,minmax(0,1fr));max-width:318px;margin-inline:auto}

.sky-holiday-preview{margin:0;padding:6px 10px;border:1px solid var(--gold);border-radius:8px;color:#fffaf2;font-size:12px;line-height:1.4;text-align:center}.sky-holiday-preview a{color:var(--gold);text-underline-offset:3px}

/* A district can be searched alone or combined with a keyword. */
.guide-search form{grid-template-columns:minmax(0,1fr) minmax(160px,260px) auto}
.guide-search form>div{min-width:0}
.guide-search select{box-sizing:border-box;width:100%;height:52px;min-width:0;max-width:100%;padding:9px 8px;border:1px solid #bda78f;border-radius:10px;background:#fff;color:#332d2a;font:16px system-ui}
.guide-search select:focus-visible{outline:3px solid #df8a25;outline-offset:2px}
@media(max-width:600px){
 .guide-search form{grid-template-columns:minmax(0,1fr) 100px}
 .guide-search form>div:first-child{grid-column:1/-1}
 .guide-search button[data-ui-control]{width:100%!important}
}

/* Browse controls share centered rows and a clear gap below the search panel. */
body main :is(.listing-view-switch,.quick-filters,.saved-groups){display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px}
body main .listing-view-switch{margin:18px 0 14px!important}
body main :is(.listing-view-switch,.quick-filters,.saved-groups)>.quick-filter{flex:0 0 auto;width:min(164px,calc((100% - 16px)/3))!important;min-width:0!important;height:52px!important;min-height:52px!important;padding:5px 7px!important;font-size:12px!important;line-height:1.25!important;text-align:center;white-space:normal}
body main .controls{margin-bottom:18px}
body main .quick-filters{margin-bottom:14px}
body main .saved-groups{margin:14px 0}
body main .visit-estimate-key{margin:14px 0 18px!important;line-height:1.5}
body main .resultsbar{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px!important;margin:18px 0 22px!important}
body main .resultsbar>strong{width:100%;align-self:stretch;line-height:1.45}
body main .resultsbar>.reset{align-self:center;margin:0 auto!important;flex:none!important;width:164px!important;max-width:100%;height:52px!important;min-height:52px!important;padding:5px 8px!important;text-align:center}
body main .browse-filter-status{justify-content:center;gap:12px}
body main .browse-filter-status>.active-filter-summary{flex:1 0 100%;min-width:0}
body main .browse-filter-status>button{margin-inline:auto}
body main .placecard>.listing-detail-toggle{display:flex;align-items:center;justify-content:center;width:164px!important;max-width:100%;height:52px!important;min-height:52px!important;margin:12px auto!important;padding:5px 24px 5px 8px!important;text-align:center}

/* Full-bleed panoramas: conceal the artwork's pale outer pixels, retain originals. */
html{--panorama-divider:#c9a66b}
html[data-city="okc"]{--panorama-divider:#fdbb30}
.hero-panorama{width:100%;flex:none;overflow:hidden;background:#361824;border-bottom:6px solid var(--panorama-divider)}
html[data-city="okc"] .hero-panorama{background:#002d62}
html:is([data-city="okc"],[data-city="norman"],[data-city="tulsa"],[data-city="all"]) .has-skyline-artwork .hero-panorama>.hero-city-photo{display:block;position:relative;inset:auto;width:100.4%;max-width:none;height:auto;margin:-0.2%;object-fit:contain;flex:none}
/* Warm gold separates the burgundy and cream sections without dark framing. */
html:is([data-city="norman"],[data-city="all"]) .city-picker{border-bottom:6px solid #c9a66b}
html:is([data-city="norman"],[data-city="all"]) .guide-search{border-bottom:0}
html:is([data-city="norman"],[data-city="all"]) body[data-page="index"] .guide-search{border-bottom:6px solid #c9a66b}
html:is([data-city="norman"],[data-city="all"]) .local-now{border-top:6px solid #c9a66b;border-bottom:6px solid #c9a66b}
html:is([data-city="norman"],[data-city="all"]) .daily-on-demand{border-top:0;border-bottom:6px solid #c9a66b}
html:is([data-city="norman"],[data-city="all"]) .hero-home{border-bottom:6px solid #c9a66b}
