/* MR Discovery F1 | Scoped, responsive, no new fonts or icon libraries */
.mr-cat-page,.mr-city-page,.mr-district-page{--mrd-orange:#ff5629;--mrd-ink:#14263e;--mrd-muted:#687b93;--mrd-mint:#d9f7f3;color:var(--mrd-ink)}
.mr-cat-page *, .mr-city-page *, .mr-district-page *{box-sizing:border-box;min-width:0}
.mr-dv-intro{position:relative;isolation:isolate;display:flex;justify-content:space-between;align-items:center;gap:22px;background:linear-gradient(110deg,#fff 0%,#fff9f5 58%,#e8f8f7 100%);border:1px solid #e5edf3;border-radius:26px;min-height:176px;padding:24px 28px;margin:0 0 16px;overflow:hidden;box-shadow:0 8px 28px rgba(19,37,58,.045)}
.mr-dv-intro:after{content:"";position:absolute;inset:auto -65px -130px auto;width:310px;height:310px;border:42px solid rgba(1,194,177,.08);border-radius:50%;z-index:-1}
.mr-dv-intro-copy{flex:1 1 460px;min-width:0;max-width:720px}
.mr-dv-eyebrow{display:inline-flex;align-items:center;background:#fff1e9;border:1px solid #ffdbc9;color:#ca3c12;border-radius:99px;padding:6px 12px;font-size:10px;letter-spacing:.07em;font-weight:900}
.mr-dv-intro h1{font-weight:900;color:var(--mrd-ink);font-size:clamp(25px,3vw,40px);letter-spacing:-.046em;line-height:1.1;margin:10px 0 8px}
.mr-dv-intro p{margin:0;color:var(--mrd-muted);font-size:13px;line-height:1.55;max-width:640px}
.mr-dv-intro-actions,.mr-dv-stat-list{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:17px}
.mr-dv-cta{display:inline-flex;justify-content:center;align-items:center;gap:7px;border-radius:13px;padding:11px 16px;background:var(--mrd-orange);color:#fff!important;text-decoration:none!important;font-size:12px;font-weight:800;white-space:nowrap}
.mr-dv-cta-soft{background:white;color:#db4e20!important;border:1px solid #ffe0d0}
.mr-dv-stat-list>span{display:inline-flex;align-items:center;gap:5px;padding:9px 11px;border:1px solid #e7eef1;border-radius:14px;background:#fff;color:#4c6277;font-size:12px}
.mr-dv-stat-list strong{font-weight:900;color:var(--mrd-ink)}
.mr-dv-weather{flex:0 1 290px;display:flex;align-items:center;gap:10px;border-radius:19px;min-height:90px;border:1px solid #dbecef;background:rgba(255,255,255,.91);padding:14px;box-shadow:0 9px 22px rgba(16,53,74,.05)}
.mr-dv-weather-icon{display:flex;align-items:center;justify-content:center;width:39px;height:39px;flex:0 0 39px;border-radius:13px;background:#edfaf9;color:#089f96;font-size:23px}
.mr-dv-weather-copy{display:flex;flex-direction:column;gap:4px}
.mr-dv-weather-copy strong{font-size:12px;font-weight:900;color:var(--mrd-ink)}
.mr-dv-weather-copy small{font-size:10px;color:#61768b;line-height:1.4}
.mr-dv-weather-soon{align-self:flex-start;background:#f5f7f9;border-radius:999px;padding:5px 8px;color:#607286;font-size:9px;font-weight:800}
.mr-dv-events{border:1px solid #e5ebf1;background:#fff;border-radius:23px;padding:16px;margin:0 0 16px;box-shadow:0 8px 26px rgba(19,37,58,.045);width:100%}
.mr-dv-section-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}
.mr-dv-section-title{display:flex;align-items:center;gap:11px;min-width:0}
.mr-dv-heading-icon{display:inline-flex;align-items:center;justify-content:center;border-radius:14px;background:#fff1e9;color:var(--mrd-orange);width:39px;height:39px;flex:0 0 39px;font-size:22px}
.mr-dv-section-title h2{margin:0!important;color:var(--mrd-ink)!important;font-weight:900!important;font-size:clamp(17px,1.7vw,24px)!important;letter-spacing:-.035em;line-height:1.2}
.mr-dv-section-title p{margin:4px 0 0!important;color:#6c7e90!important;font-size:11px!important;line-height:1.4}
.mr-dv-more{color:#e94c21!important;font-weight:800;font-size:11px;text-decoration:none;flex:0 0 auto;border-radius:100px;background:#fff4ef;padding:9px 12px}
.mr-dv-rail{display:flex;gap:12px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#f5ae94 transparent;padding-bottom:5px}
.mr-dv-event{display:block!important;flex:0 0 clamp(190px,18vw,240px);min-width:0;scroll-snap-align:start;border:1px solid #e7ecf1;border-radius:15px;overflow:hidden;background:white;color:#15263e!important;text-decoration:none!important;transition:transform .15s ease,border-color .15s ease}
.mr-dv-event:hover{transform:translateY(-2px);border-color:#ffbc9d}
.mr-dv-event-media{display:block;position:relative;width:100%;aspect-ratio:16/9;background:linear-gradient(135deg,#fde8da,#ebf8f5);overflow:hidden}
.mr-dv-event-media img{display:block;width:100%;height:100%;object-fit:cover}
.mr-dv-event-fallback{display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:#fa5c2d;font-size:36px}
.mr-dv-date{position:absolute;top:8px;left:8px;background:rgba(255,255,255,.96);display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:9px;min-width:38px;padding:6px 7px;box-shadow:0 3px 9px #0002}
.mr-dv-date strong{color:#e94c21;font-size:17px;line-height:1;font-weight:900}
.mr-dv-date small{font-size:10px;color:#b34726}
.mr-dv-event-body{display:flex;flex-direction:column;gap:5px;padding:10px 11px 12px;min-height:114px}
.mr-dv-event-type{align-self:flex-start;border-radius:999px;background:#fff0e7;padding:3px 7px;color:#e54b21;font-size:9px;font-weight:850}
.mr-dv-event-body>strong{font-size:13px;font-weight:900;color:var(--mrd-ink);line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.mr-dv-event-body>small{font-size:11px;color:#66788a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mr-dv-event-foot{display:flex;gap:5px;flex-wrap:wrap;font-size:10px;color:#b84c28}
.mr-dv-empty{margin:0;background:#f8fafb;padding:16px;border:1px dashed #dbe2e9;border-radius:13px;font-size:12px;color:#65778a}
.mr-dv-empty a{color:#e94c21}
/* Categories: discovery before heavy proximity block; no left sidebar dominance. */
.mr-cat-page .mr-page-grid{display:flex!important;flex-direction:column;gap:14px}
.mr-cat-page .mr-page-grid>.mr-main{width:100%!important;max-width:100%!important;flex:1 1 auto;order:0}
.mr-cat-page .mr-page-grid>.mr-sidebar{width:100%!important;max-width:100%!important;flex:0 0 auto;order:1;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;align-items:start}
.mr-cat-page .mr-page-grid>.mr-sidebar>.mr-card{margin:0!important;height:100%}
.mr-cat-page .mr-context-nearby-card{background:#fff!important;border:1px solid #e6ebf0!important;border-radius:21px!important;color:var(--mrd-ink)!important;box-shadow:0 8px 25px rgba(19,37,58,.045)!important;padding:14px!important}
.mr-cat-page .mr-context-nearby-title{color:var(--mrd-ink)!important;font-size:19px!important}
.mr-cat-page .mr-context-nearby-subtitle{color:#63788a!important;font-size:11px!important}
.mr-cat-page .mr-context-nearby-kicker{background:#fff0e7!important;color:#d74819!important;border:0!important}
.mr-cat-page .mr-context-nearby-icon{background:#e4f8f5!important;color:#02a99e!important;border:0!important}
.mr-cat-page .mr-context-nearby-radius.is-active{background:var(--mrd-orange)!important;color:#fff!important}
.mr-cat-page .mr-context-nearby-status{color:#53687b!important}
.mr-cat-page .mr-context-nearby-refresh{background:#fff4ef!important;color:#cb481d!important;border-color:#fdd8c4!important}
.mr-cat-page .mr-category-card,.mr-city-page .mr-category-card,.mr-district-page .mr-category-card{border-radius:16px!important;overflow:hidden;box-shadow:0 5px 15px rgba(19,37,58,.045)!important}
.mr-cat-page .mr-card,.mr-city-page .mr-section-panel,.mr-district-page .mr-section-panel{border-radius:21px!important;box-shadow:0 5px 22px rgba(18,42,66,.04)!important}
.mr-cat-page .mr-pill,.mr-city-page .mr-mini-action,.mr-district-page .mr-mini-action{border-radius:999px!important}
/* City: hero and event rows first; existing SEO/pagination/ad surfaces retained. */
.mr-city-page .mr-main>.mr-dv-events,.mr-district-page .mr-main>.mr-dv-events{margin-bottom:16px}
.mr-city-page .mr-main,.mr-district-page .mr-main{width:100%;max-width:100%}
.mr-city-page #city-all-places,.mr-district-page #district-all-places{border-color:#e9edf2}
.mr-city-page .mr-section-head,.mr-district-page .mr-section-head{gap:10px}
/* District hero: retain DB-backed metrics and SEO; restyle rather than duplicate. */
.mr-district-page .mr-compact-intro{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:15px;border-radius:24px!important;background:linear-gradient(112deg,#fff8f3 0%,#fff 55%,#eaf9f6 100%)!important;border:1px solid #e6edf0!important;padding:24px!important;box-shadow:0 9px 24px rgba(16,42,64,.05)!important}
.mr-district-page .mr-compact-title{font-size:clamp(26px,3vw,38px)!important;line-height:1.15!important;letter-spacing:-.04em!important}
.mr-district-page .mr-compact-metrics{display:flex!important;flex-wrap:wrap;gap:7px}
.mr-district-page .mr-dv-weather{width:100%;margin-bottom:13px;max-width:none;min-height:72px}
/* All mobile screens: no horizontal viewport overflow and compact touch-friendly layout. */
@media(max-width:767px){
 .mr-dv-intro{display:flex;flex-direction:column;align-items:stretch;padding:16px;border-radius:20px;gap:12px;min-height:0}
 .mr-dv-intro-copy{flex:auto;max-width:100%}
 .mr-dv-intro h1{font-size:27px}
 .mr-dv-intro p{font-size:12px}
 .mr-dv-intro-actions{gap:7px}
 .mr-dv-cta{padding:10px 12px;font-size:11px}
 .mr-dv-weather{flex:auto;width:100%;min-height:66px;padding:10px 12px;border-radius:15px}
 .mr-dv-weather-copy strong{font-size:11px}
 .mr-dv-weather-soon{margin-left:auto}
 .mr-dv-events{border-radius:18px;padding:12px;margin-bottom:12px}
 .mr-dv-section-head{align-items:flex-start;gap:8px}
 .mr-dv-section-title{gap:8px}
 .mr-dv-heading-icon{width:34px;height:34px;flex-basis:34px}
 .mr-dv-section-title h2{font-size:17px!important}
 .mr-dv-section-title p{font-size:10px!important;max-width:265px}
 .mr-dv-more{font-size:10px;white-space:nowrap;padding:7px 8px}
 .mr-dv-rail{gap:9px;scroll-padding-inline:2px}
 .mr-dv-event{flex-basis:175px}
 .mr-dv-event-body{min-height:114px;padding:9px}
 .mr-cat-page .mr-page-grid>.mr-sidebar{grid-template-columns:1fr}
 .mr-cat-page .mr-context-nearby-card{padding:12px!important;border-radius:17px!important}
 .mr-cat-page .mr-context-nearby-head{flex-wrap:wrap}
 .mr-district-page .mr-compact-intro{padding:16px!important;border-radius:19px!important}
 .mr-district-page .mr-compact-title{font-size:26px!important}
 .mr-cat-page .mr-horizontal-card,.mr-city-page .mr-horizontal-card,.mr-district-page .mr-horizontal-card{max-width:min(78vw,260px)}
}
@media(prefers-reduced-motion:reduce){.mr-dv-event{transition:none}}
