/* content — owned by the content agent.
   Editorial, community, directories, institutional pages. Only --mn-* tokens (dark mode follows).
   Prefix .mc-*. Loaded before pages.css, so rules that compete with pages.css generic
   "main article h2" bridges carry an extra class + !important. */

/* ================= shared primitives ================= */
.mc-wrap{padding-block:clamp(1.5rem,4vw,3rem) clamp(2.5rem,6vw,5rem)}
.mn-body main>section.mc-wrap{padding-block:clamp(1.5rem,4vw,3rem) clamp(2.5rem,6vw,5rem)!important}
.mc-k{display:inline-flex;align-items:center;gap:.4rem;margin:0;font-size:.74rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--mn-brand-ink)}
.mc-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.15rem 0;margin:0;font-size:.85rem;line-height:1.5;color:var(--mn-mute)}
.mc-meta>*+*::before{content:"·";margin-inline:.55rem;color:var(--mn-line-2)}
.mc-meta strong,.mc-meta b{color:var(--mn-ink);font-weight:600}
.mc-meta a{color:inherit;text-decoration:none}.mc-meta a:hover{color:var(--mn-brand-ink)}
.mc-rel{position:relative}
.mc-stretch{color:inherit;text-decoration:none;background:none;border:0;padding:0;font:inherit;text-align:left;cursor:pointer}
.mc-stretch::after{content:"";position:absolute;inset:0;z-index:1}
.mc-stretch:focus-visible{outline:0}
.mc-rel:has(.mc-stretch:focus-visible){outline:2px solid var(--mn-brand);outline-offset:4px;border-radius:var(--mn-r-sm)}
.mc-above{position:relative;z-index:2}
.mc-sec{margin-top:clamp(2.5rem,6vw,4.5rem)}
.mc-sec:first-child{margin-top:0}
.mc-sec__h{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:.5rem 1.5rem;margin-bottom:1.1rem}
.mc-sec__h>div{display:grid;gap:.45rem;max-width:42rem}
.mc-sec__h p{margin:0}
.mc-sec__h .mn-h2{font-size:clamp(1.45rem,3vw,2rem)}
.mc-tags{display:flex;flex-wrap:wrap;gap:.35rem .4rem;margin:0;padding:0;list-style:none}
.mc-tag{display:inline-flex;align-items:center;gap:.3rem;padding:.12rem .55rem;border:1px solid var(--mn-line-2);border-radius:var(--mn-r-pill);font-size:.75rem;font-weight:500;line-height:1.5;color:var(--mn-text);white-space:nowrap}
.mc-tag--ok{border-color:color-mix(in srgb,var(--mn-ok) 45%,transparent);color:var(--mn-ok)}
.mc-tag--gold{border-color:color-mix(in srgb,var(--mn-gold) 50%,transparent);color:var(--mn-gold)}
.mc-tag--brand{border-color:color-mix(in srgb,var(--mn-brand) 45%,transparent);color:var(--mn-brand-ink)}
.mc-tag--red{border-color:color-mix(in srgb,var(--mn-red) 45%,transparent);color:var(--mn-red)}
.mc-tag svg,.mc-tag .mn-i{width:.85rem;height:.85rem}
.mc-status{margin:0 0 1.25rem;padding:.15rem 0 .15rem 1rem;border-left:2px solid var(--mn-brand);color:var(--mn-ink);font-size:.95rem;line-height:1.6}
.mc-status--err{border-left-color:var(--mn-red)}
.mc-err{margin:.35rem 0 0;font-size:.85rem;color:var(--mn-red)}
.mc-go{display:inline-flex;align-items:center;gap:.35rem;font-size:.9rem;font-weight:600;color:var(--mn-brand-ink);text-decoration:none;min-height:2.75rem}
.mc-go:hover{text-decoration:underline;text-underline-offset:4px}
.mc-go svg{width:1rem;height:1rem}
.mc-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* covers: image or calm gradient */
.mc-cover{position:relative;display:block;overflow:hidden;border-radius:var(--mn-r);background:linear-gradient(135deg,color-mix(in srgb,var(--mn-brand) 16%,var(--mn-soft)),var(--mn-sand));aspect-ratio:3/2}
.mc-cover img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .6s var(--mn-ease)}
.mc-rel:hover .mc-cover img{transform:scale(1.025)}
.mc-cover__ph{position:absolute;inset:0;display:grid;place-items:center;color:color-mix(in srgb,var(--mn-brand-ink) 55%,transparent)}
.mc-cover__ph svg,.mc-cover__ph .mn-i{width:2rem;height:2rem}
.mc-cover__tag{position:absolute;left:.6rem;top:.6rem;z-index:1}
.mn-body main article .mc-cover img{width:100%;height:100%}

/* ================= filter / topic bar ================= */
.mc-bar{display:grid;grid-template-columns:minmax(0,1fr);gap:.75rem;padding-bottom:.9rem;margin-bottom:1.75rem;border-bottom:1px solid var(--mn-line)}
.mc-bar__row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.6rem 1rem}
.mc-chips{display:flex;gap:.5rem;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin:0 calc(var(--mn-gut)*-1);padding:0 var(--mn-gut);list-style:none;-webkit-mask:linear-gradient(90deg,#000 calc(100% - 2rem),transparent);mask:linear-gradient(90deg,#000 calc(100% - 2rem),transparent);min-width:0;flex:1 1 20rem}
.mc-chips::-webkit-scrollbar{display:none}
.mc-chips>*{flex:none}
.mc-chips .mn-chip{white-space:nowrap;min-height:2.75rem}
.mc-chips button.mn-chip{background:transparent;font:inherit;font-size:.9rem;cursor:pointer}
.mc-chips button.mn-chip[aria-pressed=true]{border-color:var(--mn-ink);color:var(--mn-ink);font-weight:600}
@media(min-width:1024px){.mc-chips{flex-wrap:wrap;overflow:visible;margin:0;padding:0;-webkit-mask:none;mask:none}}
.mc-bar__tools{display:flex;align-items:center;gap:.75rem;margin-left:auto}
.mc-count{margin:0;font-size:.88rem;color:var(--mn-mute)}
.mc-search{display:flex;align-items:center;gap:.5rem;min-width:0;width:100%;max-width:26rem;border-bottom:1px solid var(--mn-line-2)}
.mc-search:focus-within{border-bottom-color:var(--mn-brand);box-shadow:0 1px 0 var(--mn-brand)}
.mc-search svg,.mc-search .mn-i{width:1.05rem;height:1.05rem;color:var(--mn-mute);flex:none}
.mn-body main .mc-search input{flex:1;min-width:0;border:0!important;box-shadow:none!important;background:transparent;padding:.55rem .1rem;min-height:2.75rem}
.mc-search button{flex:none}
.mc-search__x{display:inline-grid;place-items:center;width:2.75rem;height:2.75rem;color:var(--mn-mute);text-decoration:none}
.mc-search__x:hover{color:var(--mn-ink)}
.mc-filters-open{display:inline-flex}
@media(min-width:1024px){.mc-filters-open{display:none}}
/* .mn-bar is also a progress bar in minimal.css: neutralise that here */
.mn-bar.mc-fbar{height:auto;border-radius:0;background:none;overflow:visible}
.mc-fbar .mn-bar__tools{flex-wrap:wrap;justify-content:flex-end}
/* inline filter form (desktop row / mobile sheet, built on .mn-fs from pages.css) */
.mc-fs .mn-field{min-width:0}
.mc-fs fieldset{border:0;margin:0;padding:0;min-width:0}
.mc-fs legend{padding:0;margin-bottom:.5rem;font-size:.82rem;font-weight:500;color:var(--mn-mute)}
.mc-checks{display:flex;flex-wrap:wrap;gap:.5rem}
.mc-check{display:inline-flex;align-items:center;gap:.5rem;min-height:2.75rem;padding:.3rem .9rem;border:1px solid var(--mn-line);border-radius:var(--mn-r-pill);font-size:.9rem;color:var(--mn-text);cursor:pointer;user-select:none}
.mc-check:has(input:checked){border-color:var(--mn-ink);color:var(--mn-ink);font-weight:600}
.mc-check:has(input:focus-visible){outline:2px solid var(--mn-brand);outline-offset:2px}
.mn-body main .mc-check input{width:1rem;height:1rem;margin:0;accent-color:var(--mn-brand)}
.mn-body main label.mc-check{border:1px solid var(--mn-line)!important;border-radius:var(--mn-r-pill)!important}
.mn-body main label.mc-check:has(input:checked){border-color:var(--mn-ink)!important}
.mc-fs__acts{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}
@media(min-width:1024px){.mc-fs .mn-fs__form{align-items:end}.mc-fs .mn-fs__form>fieldset{flex-basis:100%}}

/* ================= editorial: featured + rows ================= */
.mc-feat{position:relative;display:grid;gap:1.1rem;padding-bottom:clamp(1.75rem,4vw,2.5rem);margin-bottom:.5rem}
.mc-feat .mc-cover{aspect-ratio:16/10;border-radius:var(--mn-r-lg)}
.mc-feat__b{display:grid;gap:.6rem;align-content:center;min-width:0}
.mn-body main article.mc-feat h2.mc-feat__t{margin:0;font-size:clamp(1.55rem,3.6vw,2.3rem)!important;line-height:1.12;letter-spacing:-.03em;font-weight:600!important;text-wrap:balance}
.mc-feat__p{margin:0;font-size:1.02rem;line-height:1.65;color:var(--mn-text);max-width:40rem}
@media(min-width:900px){.mc-feat{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:2.5rem;align-items:center}}

.mc-rows{display:grid;margin:0;padding:0;list-style:none;border-bottom:1px solid var(--mn-line)}
.mc-row{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 5.75rem;gap:.35rem 1rem;align-items:start;padding:1.2rem 0;border-top:1px solid var(--mn-line)}
.mc-row--plain{grid-template-columns:minmax(0,1fr)}
.mc-row__b{display:grid;gap:.4rem;min-width:0;align-content:start}
.mn-body main article.mc-row :is(h2,h3).mc-row__t,.mc-row__t{margin:0;font-size:1.08rem!important;line-height:1.3;font-weight:600!important;letter-spacing:-.012em;color:var(--mn-ink)}
.mc-row:hover .mc-row__t{color:var(--mn-brand-ink)}
.mc-row__p{margin:0;font-size:.93rem;line-height:1.6;color:var(--mn-text);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.mc-row .mc-cover{aspect-ratio:1;border-radius:var(--mn-r-sm)}
.mc-row__n{font-size:.8rem;font-weight:600;font-variant-numeric:tabular-nums;color:var(--mn-brand-ink)}
@media(min-width:640px){
  .mc-row{grid-template-columns:minmax(0,1fr) 12rem;gap:.4rem 2rem;padding:1.5rem 0}
  .mc-row .mc-cover{aspect-ratio:3/2;border-radius:var(--mn-r)}
  .mc-row__p{-webkit-line-clamp:3}
  .mn-body main article.mc-row :is(h2,h3).mc-row__t{font-size:1.2rem!important}
}
@media(min-width:1024px){.mc-rows--wide .mc-row{grid-template-columns:minmax(0,1fr) 15rem}}

/* two-column page body with a quiet aside */
.mc-layout{display:grid;gap:2.5rem;align-items:start}
.mc-layout>*{min-width:0}
@media(min-width:1024px){
  .mc-layout{grid-template-columns:minmax(0,1fr) 18rem;gap:clamp(2.5rem,5vw,4.5rem)}
  .mc-layout--left{grid-template-columns:15rem minmax(0,1fr)}
  .mc-aside--sticky{position:sticky;top:calc(var(--mn-hh) + 1.25rem)}
}
.mc-aside{display:grid;gap:2rem;align-content:start}
.mc-ab{display:grid;gap:.55rem;padding-top:1rem;border-top:1px solid var(--mn-line)}
.mc-ab>*{margin:0}
.mc-ab__t{font-size:1rem;font-weight:600;color:var(--mn-ink);line-height:1.35}
.mc-ab p{font-size:.92rem;line-height:1.6;color:var(--mn-text)}
.mc-ab--warn{border-top-color:var(--mn-red)}
.mc-ab--warn .mc-k{color:var(--mn-red)}
.mc-ab--brand{border-top-color:var(--mn-brand)}
.mc-ab--gold{border-top-color:var(--mn-gold)}
.mc-ab ul,.mc-ab ol{margin:.25rem 0 0;padding:0;list-style:none;display:grid;gap:.5rem}
.mc-ab li{display:flex;gap:.6rem;font-size:.92rem;line-height:1.55;color:var(--mn-text)}
.mc-ab li::before{content:"";flex:none;width:.35rem;height:.35rem;margin-top:.55rem;border-radius:50%;background:var(--mn-brand)}
.mc-ab ol{counter-reset:ab}
.mc-ab ol li{counter-increment:ab}
.mc-ab ol li::before{content:counter(ab);width:1.4rem;height:1.4rem;margin-top:.05rem;display:grid;place-items:center;background:none;border:1px solid var(--mn-line-2);font-size:.72rem;font-weight:600;color:var(--mn-ink)}

/* numbered table of contents */
.mc-toc{margin:0;padding:0;list-style:none;display:grid}
.mc-toc a{display:flex;gap:.75rem;align-items:baseline;min-height:2.75rem;padding:.55rem 0;border-top:1px solid var(--mn-line);font-size:.92rem;font-weight:500;line-height:1.4;color:var(--mn-ink);text-decoration:none}
.mc-toc a:hover{color:var(--mn-brand-ink)}
.mc-toc a span:first-child{flex:none;font-size:.75rem;font-weight:600;font-variant-numeric:tabular-nums;color:var(--mn-brand-ink)}
.mc-tocm{margin-bottom:1.75rem}
.mn-body main details.mc-tocm{border-top:1px solid var(--mn-line)!important}
@media(min-width:1024px){.mc-tocm{display:none}}
.mc-desk-only{display:none!important}
@media(min-width:1024px){.mc-desk-only{display:grid!important}}
@media(max-width:1023px){.mc-layout--left>aside{order:2}}
.mc-layout .mn-empty{margin-top:0}

/* ================= community forum ================= */
.mc-forum{display:grid;gap:2.5rem;align-items:start}
.mc-forum>*{min-width:0}
@media(min-width:1024px){.mc-forum{grid-template-columns:14rem minmax(0,1fr)}}
@media(min-width:1280px){.mc-forum{grid-template-columns:14rem minmax(0,1fr) 17rem}}
.mc-chan{display:flex;gap:.5rem;overflow-x:auto;scrollbar-width:none;margin:0 calc(var(--mn-gut)*-1);padding:0 var(--mn-gut);list-style:none;-webkit-mask:linear-gradient(90deg,#000 calc(100% - 2rem),transparent);mask:linear-gradient(90deg,#000 calc(100% - 2rem),transparent)}
.mc-chan::-webkit-scrollbar{display:none}
.mc-chan a{display:inline-flex;align-items:center;gap:.5rem;flex:none;min-height:2.75rem;padding:.35rem .9rem;border:1px solid var(--mn-line);border-radius:var(--mn-r-pill);font-size:.9rem;font-weight:500;color:var(--mn-text);text-decoration:none;white-space:nowrap}
.mc-chan a svg{width:1.05rem;height:1.05rem;color:var(--mn-brand);flex:none}
.mc-chan a small{font-size:.78rem;color:var(--mn-mute);font-variant-numeric:tabular-nums}
.mc-chan a:hover{border-color:var(--mn-ink);color:var(--mn-ink)}
.mc-chan a[aria-current]{border-color:var(--mn-ink);color:var(--mn-ink);font-weight:600}
.mc-chan__h{display:none}
@media(min-width:1024px){
  .mc-chan__wrap{position:sticky;top:calc(var(--mn-hh) + 1.25rem)}
  .mc-chan__h{display:block;margin:0 0 .5rem;font-size:.74rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--mn-mute)}
  .mc-chan{display:grid;gap:0;overflow:visible;margin:0;padding:0;-webkit-mask:none;mask:none;border-bottom:1px solid var(--mn-line)}
  .mc-chan a{justify-content:flex-start;border:0;border-top:1px solid var(--mn-line);border-radius:0;padding:.55rem 0;white-space:normal}
  .mc-chan a small{margin-left:auto}
  .mc-chan a[aria-current]{box-shadow:inset 2px 0 0 var(--mn-ink);padding-left:.75rem}
}
.mc-forum__aside{display:grid;gap:2rem;align-content:start}
@media(min-width:1024px) and (max-width:1279px){.mc-forum__aside{grid-column:2}}
@media(min-width:1280px){.mc-forum__aside{position:sticky;top:calc(var(--mn-hh) + 1.25rem)}}

.mc-threads{margin:0;padding:0;list-style:none;border-bottom:1px solid var(--mn-line)}
.mc-thr{position:relative;display:grid;gap:.4rem;padding:1.15rem 0;border-top:1px solid var(--mn-line)}
.mn-body main article.mc-thr h3.mc-thr__t,.mn-body main article.mc-thr h2.mc-thr__t{margin:0;font-size:1.08rem!important;line-height:1.35;font-weight:600!important;color:var(--mn-ink)}
.mc-thr:hover .mc-thr__t{color:var(--mn-brand-ink)}
.mc-thr__p{margin:0;font-size:.93rem;line-height:1.6;color:var(--mn-text);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;white-space:pre-line}
.mc-thr__f{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.25rem 1rem}
.mc-thr__n{display:inline-flex;align-items:center;gap:.35rem;font-size:.85rem;color:var(--mn-mute);font-variant-numeric:tabular-nums}
.mc-thr__n svg{width:.95rem;height:.95rem}

/* full thread (group page) */
.mc-post{padding:1.75rem 0;border-top:1px solid var(--mn-line);scroll-margin-top:calc(var(--mn-hh) + 1rem)}
.mc-post:first-child{border-top:0;padding-top:.5rem}
.mn-body main article.mc-post h3.mc-post__t{margin:.45rem 0 0;font-size:clamp(1.2rem,2.6vw,1.45rem)!important;line-height:1.25;font-weight:600!important;letter-spacing:-.02em;color:var(--mn-ink)}
.mn-body main article.mc-post:hover h3.mc-post__t{color:var(--mn-ink)}
.mc-post__body{margin:.75rem 0 0;max-width:68ch;font-size:1rem;line-height:1.7;color:var(--mn-text);white-space:pre-line;overflow-wrap:anywhere}
.mc-replies{margin:1.25rem 0 0;padding:0 0 0 1rem;border-left:1px solid var(--mn-line-2)}
@media(min-width:640px){.mc-replies{margin-left:.25rem;padding-left:1.5rem}}
.mc-replies__h{display:flex;align-items:center;gap:.5rem;margin:0 0 .25rem;font-size:.82rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--mn-mute)}
.mc-reply{padding:.9rem 0;border-top:1px solid var(--mn-line);scroll-margin-top:calc(var(--mn-hh) + 1rem)}
.mc-replies__h+.mc-reply{border-top:0}
.mc-reply p.mc-reply__b{margin:.3rem 0 0;font-size:.95rem;line-height:1.65;color:var(--mn-text);white-space:pre-line;overflow-wrap:anywhere}
.mc-reply--empty{font-size:.92rem;color:var(--mn-mute);border-top:0}
.mc-report{margin-top:.5rem}
.mn-body main .mc-report{border:0!important}
.mn-body main .mc-report>summary{display:inline-flex;min-height:2.75rem;padding:0;font-size:.82rem!important;font-weight:500;color:var(--mn-mute)}
.mn-body main .mc-report>summary::after{content:none}
.mn-body main .mc-report>summary:hover{color:var(--mn-ink)}
.mc-report form{display:grid;gap:.6rem;max-width:30rem}
@media(min-width:640px){.mc-report form{grid-template-columns:minmax(0,1fr) auto;align-items:end}}
.mc-reply-form{display:grid;gap:.6rem;margin-top:1rem;max-width:44rem}
.mc-reply-form label{font-size:.85rem;font-weight:600;color:var(--mn-ink)}
.mc-reply-form .mn-btn{justify-self:start}
.mn-body main .mc-reply-form textarea{min-height:6rem}
.mc-compose{display:grid;gap:1rem}
.mc-compose label{display:block;margin-bottom:.35rem;font-size:.85rem;font-weight:600;color:var(--mn-ink)}
.mc-compose .mn-btn{width:100%}
.mc-fine{margin:0;font-size:.82rem;line-height:1.55;color:var(--mn-mute)}

/* ================= reports / cards with score ================= */
.mc-score{display:inline-grid;gap:.25rem;min-width:6.5rem;font-size:.8rem;color:var(--mn-mute)}
.mc-score b{font-weight:600;color:var(--mn-ink);font-variant-numeric:tabular-nums}
.mc-meter{display:block;width:100%;height:3px;border-radius:3px;background:var(--mn-line-2);overflow:hidden}
.mc-meter i{display:block;height:100%;border-radius:inherit;background:var(--mn-brand)}
.mc-meter--ok i{background:var(--mn-ok)}.mc-meter--gold i{background:var(--mn-gold)}.mc-meter--red i{background:var(--mn-red)}
.mc-rep{display:grid;gap:.6rem;padding:1.4rem 0;border-top:1px solid var(--mn-line)}
.mc-rep__h{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.5rem 1.25rem}
.mc-rep__h>div:first-child{display:grid;gap:.35rem;min-width:0;flex:1 1 18rem}
.mn-body main article.mc-rep h2.mc-rep__t{margin:0;font-size:1.12rem!important;line-height:1.3;font-weight:600!important;color:var(--mn-ink)}
.mn-body main article.mc-rep:hover h2.mc-rep__t{color:var(--mn-ink)}
.mc-rep__d{margin:0;max-width:68ch;font-size:.95rem;line-height:1.65;color:var(--mn-text);white-space:pre-line}
.mc-rep .mn-dl{margin:.25rem 0;max-width:40rem}
.mc-rep .mn-dl>div{font-size:.9rem;padding:.5rem 0}
.mc-rep .mn-note{margin:.25rem 0}
.mc-thumbs{display:flex;flex-wrap:wrap;gap:.5rem}
.mc-thumbs a{display:block;width:4.25rem;height:4.25rem;border-radius:var(--mn-r-sm);overflow:hidden;background:var(--mn-soft)}
.mn-body main .mc-thumbs img{width:100%;height:100%;object-fit:cover}
.mc-legend{display:grid;gap:.4rem;margin:0;padding:0;list-style:none}
.mc-legend li{display:flex;align-items:center;gap:.6rem;font-size:.88rem;color:var(--mn-text)}
.mc-legend .mc-meter{width:2.5rem}
.mc-legend li::before{display:none}

/* ================= directory tiles (dining, partners, crafts, cities) ================= */
.mc-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,17rem),1fr));gap:2.25rem 1.75rem;margin:0;padding:0;list-style:none}
.mc-tile{position:relative;display:grid;gap:.35rem;align-content:start;min-width:0}
.mc-tile .mc-cover{aspect-ratio:4/3;margin-bottom:.45rem}
.mn-body main article.mc-tile h2.mc-tile__t,.mn-body main article.mc-tile h3.mc-tile__t,.mc-tile__t{margin:0;font-size:1.1rem!important;line-height:1.3;font-weight:600!important;letter-spacing:-.012em;color:var(--mn-ink)}
.mc-tile:hover .mc-tile__t{color:var(--mn-brand-ink)}
.mc-tile__p{margin:0;font-size:.92rem;line-height:1.55;color:var(--mn-text);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.mc-tile__logo{position:absolute;left:.6rem;bottom:.6rem;z-index:1;height:2.6rem;width:auto;min-width:2.6rem;max-width:6.5rem;padding:.3rem;border-radius:var(--mn-r-sm);background:#fff;object-fit:contain}
.mn-body main article img.mc-tile__logo{width:auto!important;height:2.6rem!important;object-fit:contain!important}
.mc-tile .mc-tags{margin-top:.2rem}
.mc-tile__f{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.25rem 1rem;margin-top:.15rem}
.mc-tile__check{position:relative;z-index:2;margin-top:.35rem}
.mc-strip{display:flex;gap:.4rem;margin-top:.3rem}
.mc-strip span{position:relative;display:block;width:3.25rem;height:3.25rem;border-radius:var(--mn-r-sm);overflow:hidden;background:var(--mn-soft)}
.mn-body main article .mc-strip img{width:100%;height:100%;object-fit:cover}

/* city tiles: conditions as small text with bars */
.mc-cond{display:flex;flex-wrap:wrap;gap:.35rem 1.25rem;margin:.15rem 0 0}
.mc-cond>span{display:inline-grid;gap:.2rem;font-size:.8rem;color:var(--mn-mute)}
.mc-cond b{color:var(--mn-ink);font-weight:600;font-variant-numeric:tabular-nums}
.mc-cond .mc-meter{width:4.5rem}
.mc-viewsw{display:inline-flex;gap:1.1rem}
.mc-viewsw button{display:inline-flex;align-items:center;width:auto;min-height:2.75rem;padding:0;box-shadow:none;letter-spacing:0;line-height:1.2;border:0;border-bottom:2px solid transparent;background:none!important;color:var(--mn-mute)!important;font:inherit;font-size:.9rem;font-weight:500;cursor:pointer;border-radius:0!important}
.mc-viewsw button[aria-selected=true]{color:var(--mn-ink)!important;font-weight:600;border-bottom-color:var(--mn-ink);border-left:0!important}
.mc-compare{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem 1.5rem;padding:1rem 0;margin-bottom:1.75rem;border-block:1px solid var(--mn-line)}
.mc-compare>div{display:grid;gap:.25rem;max-width:40rem}
.mc-compare h2{margin:0;font-size:1.05rem;font-weight:600;color:var(--mn-ink)}
.mc-compare p{margin:0}
.mc-compare__acts{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem}
.mn-body main [aria-labelledby=city-map-title].sawalife-card{border:0!important;padding:0!important}

/* ================= institutional pages (about, faq, contact, legal) ================= */
.mc-doc{display:grid;gap:2.5rem;align-items:start}
.mc-doc>*{min-width:0}
@media(min-width:1024px){.mc-doc{grid-template-columns:15rem minmax(0,1fr);gap:clamp(2.5rem,5vw,4.5rem)}.mc-doc__nav{position:sticky;top:calc(var(--mn-hh) + 1.25rem)}}
.mc-docnav{display:grid;gap:1.25rem}
.mc-docnav p{margin:0 0 .25rem;font-size:.74rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--mn-mute)}
.mc-docnav ul{margin:0;padding:0;list-style:none;display:grid}
.mc-docnav button,.mc-docnav a{display:flex;align-items:center;width:100%;min-height:2.75rem;padding:.4rem 0;border:0;border-top:1px solid var(--mn-line);background:none;font:inherit;font-size:.93rem;font-weight:500;text-align:left;color:var(--mn-text);text-decoration:none;cursor:pointer}
.mc-docnav button:hover,.mc-docnav a:hover{color:var(--mn-ink)}
.mc-docnav [aria-current=true],.mc-docnav [aria-pressed=true]{color:var(--mn-ink);font-weight:600;box-shadow:inset 2px 0 0 var(--mn-ink);padding-left:.75rem}
@media(max-width:1023px){
  .mc-docnav{display:flex;gap:.5rem;overflow-x:auto;scrollbar-width:none;margin:0 calc(var(--mn-gut)*-1);padding:0 var(--mn-gut);-webkit-mask:linear-gradient(90deg,#000 calc(100% - 2rem),transparent);mask:linear-gradient(90deg,#000 calc(100% - 2rem),transparent)}
  .mc-docnav::-webkit-scrollbar{display:none}
  .mc-docnav>div{display:contents}
  .mc-docnav p{display:none}
  .mc-docnav ul{display:contents}
  .mc-docnav button,.mc-docnav a{flex:none;width:auto;white-space:nowrap;padding:.35rem .95rem;border:1px solid var(--mn-line);border-radius:var(--mn-r-pill)}
  .mc-docnav [aria-current=true],.mc-docnav [aria-pressed=true]{box-shadow:none;padding-left:.95rem;border-color:var(--mn-ink)}
}
.mc-art{max-width:46rem}
.mc-art>*+*{margin-top:1.25rem}
.mc-art .mn-h2{font-size:clamp(1.5rem,3.2vw,2.1rem)}
.mc-art__lead{font-size:1.05rem;line-height:1.7;color:var(--mn-text)}
.mc-clauses{margin:1.75rem 0 0;padding:0;list-style:none;counter-reset:cl;border-bottom:1px solid var(--mn-line)}
.mc-clause{counter-increment:cl;padding:1.4rem 0;border-top:1px solid var(--mn-line)}
.mc-clause h3,.mc-clause h2{margin:0;font-size:1.08rem;font-weight:600;line-height:1.35;color:var(--mn-ink)}
.mc-clause h3::before,.mc-clause h2::before{content:counter(cl,decimal-leading-zero);margin-right:.75rem;font-size:.78rem;font-weight:600;font-variant-numeric:tabular-nums;color:var(--mn-brand-ink)}
.mc-clause--plain h3::before,.mc-clause--plain h2::before{content:none}
.mc-clause--plain:last-of-type{border-bottom:1px solid var(--mn-line)}
.mc-clause p{margin:.65rem 0 0;max-width:68ch;line-height:1.75;color:var(--mn-text);overflow-wrap:break-word}
.mc-clause .pl{white-space:pre-line}
.mc-bul{margin:.75rem 0 0;padding:0;list-style:none;display:grid;gap:.6rem;max-width:68ch}
.mc-bul li{display:flex;gap:.7rem;line-height:1.65;color:var(--mn-text)}
.mc-bul li::before{content:"";flex:none;width:.35rem;height:.35rem;margin-top:.62rem;border-radius:50%;background:var(--mn-brand)}
.mc-bul--gold li::before{background:var(--mn-gold)}
.mc-pubrow{display:flex;flex-wrap:wrap;gap:.25rem 1.5rem;margin:0;font-size:.88rem;color:var(--mn-mute)}
.mc-pubrow strong{color:var(--mn-ink);font-weight:600}
.mc-pubrow a{color:var(--mn-brand-ink)}

/* about: chapters, pillars, quote */
.mc-chapter{display:grid;gap:1rem 4rem;padding-block:clamp(2rem,5vw,3.5rem);border-top:1px solid var(--mn-line)}
.mc-chapter:first-child{border-top:0;padding-top:0}
.mc-chapter>header{display:grid;gap:.6rem;align-content:start}
.mc-chapter>header>*{margin:0}
.mc-chapter .mn-h2{font-size:clamp(1.55rem,3.4vw,2.3rem)}
.mc-chapter__b{display:grid;gap:1rem;min-width:0}
.mc-chapter__b>p{margin:0;max-width:64ch;font-size:1.04rem;line-height:1.75;color:var(--mn-text)}
@media(min-width:900px){.mc-chapter{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}}
.mc-pillars{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr));gap:0 2rem;margin:0;padding:0;list-style:none;counter-reset:pl}
.mc-pillars>li{counter-increment:pl;display:grid;gap:.4rem;align-content:start;padding:1.1rem 0;border-top:1px solid var(--mn-line)}
.mc-pillars>li::before{content:counter(pl,decimal-leading-zero);font-size:.75rem;font-weight:600;font-variant-numeric:tabular-nums;color:var(--mn-brand-ink)}
.mc-pillars--plain>li::before{display:none}
.mc-pillars h3{margin:0;font-size:1.05rem;font-weight:600;color:var(--mn-ink);line-height:1.35}
.mc-pillars p{margin:0;font-size:.93rem;line-height:1.6;color:var(--mn-text)}
.mc-pillars .mc-k{margin-bottom:.1rem}
.mc-quote{margin:0;padding:.25rem 0 .25rem 1.25rem;border-left:2px solid var(--mn-brand);font-size:clamp(1.2rem,2.6vw,1.6rem);line-height:1.4;font-weight:500;letter-spacing:-.015em;color:var(--mn-ink);text-wrap:balance}
.mc-quote-row{display:grid;gap:1.25rem;justify-items:start;margin-top:2rem}

/* faq */
.mc-faq h2.mc-faq__h{margin:2.5rem 0 .25rem;font-size:.78rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--mn-mute)}
.mc-faq>div:first-child h2.mc-faq__h{margin-top:0}
.mn-body main .mc-faq details{border-bottom:1px solid var(--mn-line)!important}
.mn-body main .mc-faq details:first-of-type{border-top:1px solid var(--mn-line)!important}
.mc-faq details p{margin:0;max-width:66ch;line-height:1.7;color:var(--mn-text)}

/* ================= standalone partner welcome pages ================= */
.mc-wl{margin:0;min-height:100vh;background:var(--mn-bg);color:var(--mn-text);font-family:var(--mn-font);-webkit-font-smoothing:antialiased}
.mc-wl *,.mc-wl *::before,.mc-wl *::after{box-sizing:border-box}
.mc-wl__in{width:100%;max-width:40rem;margin:0 auto;padding:clamp(1.25rem,5vw,3rem) var(--mn-gut) 3rem}
.mc-wl__logo{display:inline-flex;min-height:2.75rem;align-items:center;margin-bottom:clamp(1.5rem,5vw,2.5rem)}
.mc-wl__logo img{width:8.5rem;height:auto}
.dark .mc-wl__logo img{background:#fff;padding:.3rem .55rem;border-radius:10px}
.mc-wl h1{margin:.6rem 0 0;font-size:clamp(1.8rem,5.5vw,2.6rem);line-height:1.08;font-weight:600;letter-spacing:-.035em;color:var(--mn-ink);text-wrap:balance}
.mc-wl h2{margin:0;font-size:1.15rem;font-weight:600;line-height:1.35;color:var(--mn-ink)}
.mc-wl h3{margin:0;font-size:1rem;font-weight:600;color:var(--mn-ink)}
.mc-wl p{margin:.75rem 0 0;font-size:1rem;line-height:1.7}
.mc-wl a{color:var(--mn-brand-ink)}
.mc-wl strong{color:var(--mn-ink)}
.mc-wl__lead{font-size:1.08rem!important}
.mc-wl__sec{margin-top:2rem;padding-top:1.25rem;border-top:1px solid var(--mn-line)}
.mc-wl__sec>*:first-child{margin-top:0}
.mc-wl ul,.mc-wl ol{margin:.75rem 0 0;padding:0;list-style:none;display:grid;gap:.6rem}
.mc-wl li{display:flex;gap:.7rem;line-height:1.6}
.mc-wl ul>li::before{content:"";flex:none;width:.35rem;height:.35rem;margin-top:.6rem;border-radius:50%;background:var(--mn-brand)}
.mc-wl ol{counter-reset:wl}
.mc-wl ol>li{counter-increment:wl}
.mc-wl ol>li::before{content:counter(wl);flex:none;display:grid;place-items:center;width:1.5rem;height:1.5rem;border:1px solid var(--mn-line-2);border-radius:50%;font-size:.75rem;font-weight:600;color:var(--mn-ink)}
.mc-wl__acts{display:grid;gap:.75rem;margin-top:2rem}
@media(min-width:560px){.mc-wl__acts{display:flex;flex-wrap:wrap}}
.mc-wl .mn-btn{width:100%;font:inherit;font-weight:600;cursor:pointer}
@media(min-width:560px){.mc-wl .mn-btn{width:auto}}
.mc-wl .mn-btn--primary{color:#fff}
.mc-wl form{margin:0}
.mc-wl label{display:block;margin:1rem 0 .35rem;font-size:.88rem;font-weight:600;color:var(--mn-ink)}
.mc-wl :is(input:not([type=checkbox],[type=radio],[type=hidden]),select,textarea){width:100%;min-height:3rem;padding:.65rem .85rem;border:1px solid var(--mn-line-2);border-radius:var(--mn-r);background:var(--mn-surface);color:var(--mn-ink);font:inherit;font-size:1rem}
.mc-wl textarea{min-height:7rem;line-height:1.5}
.mc-wl :is(input,select,textarea):focus{outline:0;border-color:var(--mn-brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--mn-brand) 18%,transparent)}
.mc-wl .mc-check{margin:.5rem .5rem 0 0}
.mc-wl :is(a,button,summary):focus-visible{outline:2px solid var(--mn-brand);outline-offset:2px;border-radius:6px}
.mc-wl__note{margin-top:1.5rem;padding:.15rem 0 .15rem 1rem;border-left:2px solid var(--mn-gold);color:var(--mn-ink);font-size:.93rem;line-height:1.6}
.mc-wl__note--ok{border-left-color:var(--mn-ok)}
.mc-wl__note--err{border-left-color:var(--mn-red)}
.mc-wl__foot{margin-top:3rem;padding-top:1rem;border-top:1px solid var(--mn-line);font-size:.85rem;color:var(--mn-mute)}
.mc-wl__foot a{color:var(--mn-text);text-decoration:none;min-height:2.75rem;display:inline-flex;align-items:center}
.mc-wl .mn-dl{margin:1rem 0 0}
.mc-wl .mn-dl>div{display:flex;justify-content:space-between;gap:1rem;padding:.7rem 0;border-top:1px solid var(--mn-line);font-size:.95rem}
.mc-wl .mn-dl dt{color:var(--mn-mute)}.mc-wl .mn-dl dd{margin:0;color:var(--mn-ink);font-weight:600;text-align:right}
.mc-wl .mn-eyebrow{display:flex;margin:0}
.mc-wl details{border-top:1px solid var(--mn-line);padding:.25rem 0}
.mc-wl summary{min-height:2.75rem;display:flex;align-items:center;cursor:pointer;font-weight:600;color:var(--mn-ink)}

/* ================= partner portal bits (app layout) ================= */
.mc-pnav{display:flex;gap:1.5rem;overflow-x:auto;scrollbar-width:none;margin:0 0 2rem;border-bottom:1px solid var(--mn-line)}
.mc-pnav::-webkit-scrollbar{display:none}
.mc-pnav a{flex:none;display:inline-flex;align-items:center;min-height:3rem;border-bottom:2px solid transparent;margin-bottom:-1px;font-size:.95rem;font-weight:500;color:var(--mn-mute);text-decoration:none}
.mc-pnav a:hover{color:var(--mn-ink)}
.mc-pnav a[aria-current]{color:var(--mn-ink);font-weight:600;border-bottom-color:var(--mn-ink)}
.mc-ov{margin-top:1.75rem;padding-top:1.5rem;border-top:1px solid var(--mn-line)}
.mc-ov__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));gap:0 2.5rem}
.mc-ov__i{display:grid;gap:.35rem;align-content:start;padding:1.1rem 0;border-top:1px solid var(--mn-line)}
.mc-ov__i>*{margin:0}
.mc-ov__big{font-size:clamp(1.6rem,4vw,2.2rem);font-weight:600;letter-spacing:-.03em;line-height:1.1;color:var(--mn-ink);font-variant-numeric:tabular-nums}
.mc-ov__v{font-size:1.1rem;font-weight:600;color:var(--mn-ink)}
.mc-ov dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem 1.25rem;margin:.5rem 0 0}
.mc-ov dl>div{display:grid;gap:.1rem}
.mc-ov dt{font-size:.8rem;color:var(--mn-mute)}
.mc-ov dd{margin:0;font-weight:600;color:var(--mn-ink);font-variant-numeric:tabular-nums}
@media(min-width:1024px){.mc-ov dl.mc-ov__3{grid-template-columns:repeat(3,minmax(0,1fr))}}
.mc-tip{position:relative;display:none;align-items:center;vertical-align:middle;margin-inline:.35rem;flex:none}
@media(min-width:1024px){.mc-tip{display:inline-flex}}
.mc-tip__btn{display:inline-grid;place-items:center;width:1.35rem;height:1.35rem;padding:0;border:1px solid var(--mn-line-2);border-radius:50%;background:transparent;color:var(--mn-mute);font:inherit;font-size:.72rem;font-weight:600;line-height:1;cursor:pointer}
.mc-tip__btn::after{content:"";position:absolute;inset:-.7rem}
.mc-tip__btn:hover,.mc-tip__btn:focus-visible{border-color:var(--mn-brand);color:var(--mn-brand-ink)}
.mc-tip__box{position:absolute;bottom:calc(100% + .5rem);left:50%;z-index:50;transform:translateX(-50%);width:16rem;max-width:calc(100vw - 2rem);padding:.65rem .85rem;border-radius:var(--mn-r-sm);background:var(--mn-ink);color:var(--mn-bg);font-size:.8rem;font-weight:400;line-height:1.5;text-align:left;box-shadow:var(--mn-sh)}
.gr-pill.mc-gr{display:inline-flex;align-items:center;gap:.45rem;max-width:100%;min-height:2.25rem;padding:.2rem .7rem .2rem .55rem;border:1px solid var(--mn-line-2);border-radius:var(--mn-r-pill);background:transparent;color:var(--mn-text);text-decoration:none;line-height:1.15}
a.gr-pill.mc-gr:hover{border-color:var(--mn-ink)}
.mc-gr .gr-star{flex:none;width:1rem;height:1rem;color:var(--mn-gold)}
.mc-gr.gr-green .gr-star{color:var(--mn-ok)}.mc-gr.gr-orange .gr-star{color:var(--mn-gold)}
.mc-gr .gr-txt{display:flex;flex-direction:column;min-width:0}
.mc-gr .gr-main{font-size:.8rem;font-weight:600;color:var(--mn-ink);white-space:nowrap}
.mc-gr .gr-main span{font-weight:400;color:var(--mn-mute)}
.mc-gr .gr-sub{font-size:.7rem;color:var(--mn-mute)}

/* featured partner banner (open, image right) */
.mc-fb{margin-top:clamp(2rem,5vw,3rem)}
.mc-fb__a{position:relative;display:grid;gap:1rem;padding-top:1.25rem;border-top:1px solid var(--mn-line);color:inherit;text-decoration:none}
.mc-fb .mc-cover{aspect-ratio:21/9}
.mc-fb__b{display:grid;gap:.4rem;align-content:center}
.mc-fb__b>*{margin:0}
.mc-fb__top{display:flex;align-items:center;gap:.65rem}
.mc-fb__logo{height:2.5rem;width:auto;max-width:6.5rem;padding:.3rem;border-radius:var(--mn-r-sm);background:#fff;object-fit:contain}
.mc-fb__n{font-size:1.25rem;font-weight:600;letter-spacing:-.02em;color:var(--mn-ink)}
.mc-fb__a:hover .mc-fb__n{color:var(--mn-brand-ink)}
@media(min-width:768px){.mc-fb__a{grid-template-columns:minmax(0,1fr) 42%;gap:2rem;align-items:center}.mc-fb__b{order:1}.mc-fb .mc-cover{order:2;aspect-ratio:16/9}}

/* launch preview */
.mc-lp{display:grid;gap:2rem 4rem;max-width:62rem}
.mc-lp>div{display:grid;gap:.85rem;align-content:start;min-width:0}
.mc-lp>div>*{margin:0}
.mc-lp .mn-empty__img{max-width:20rem;margin-bottom:.5rem}
.mc-lp__acts{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:.5rem}
@media(min-width:900px){.mc-lp{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}.mc-lp>div+div{padding-top:0}}

/* closing call to action */
.mc-cta{display:grid;gap:1rem;justify-items:start;margin-top:clamp(2.5rem,6vw,4.5rem);padding-top:clamp(1.5rem,4vw,2.5rem);border-top:1px solid var(--mn-line)}
.mc-cta>*{margin:0}
.mc-cta .mn-h2{font-size:clamp(1.5rem,3.2vw,2.1rem);max-width:30ch}
.mc-cta p{max-width:44rem;line-height:1.65;color:var(--mn-text)}
.mc-cta__acts{display:flex;flex-wrap:wrap;gap:.75rem}
.mc-cta--split{grid-template-columns:1fr}
@media(min-width:900px){.mc-cta--split{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1rem 4rem;align-items:start}}

/* form dialogs (dining suggestion, partner application, event submission) on the .dlg system */
.mc-dlg-form .dlg__scroll>:not(.dlg__hero){padding-inline:var(--dlg-pad,1.25rem)}

@media(prefers-reduced-motion:reduce){.mc-cover img{transition:none}.mc-rel:hover .mc-cover img{transform:none}}

/* livewire forms inside .dlg form pop-ups: the shell owns the header and padding */
.mc-dlg-form__body .sticky.top-0:first-child{display:none!important}
.mc-dlg-form__body [class*="h-[100dvh]"]{height:auto!important;max-height:none!important}
.mc-dlg-form__body [class*="overflow-y-auto"]{overflow:visible!important;max-height:none!important}
.mc-dlg-form__body>div>.p-6,.mc-dlg-form__body>div>div>.p-6:first-child{padding:0!important}
.mn-body main article.mc-art h2.mn-h2{font-size:clamp(1.5rem,3.2vw,2.1rem)!important;line-height:1.12;letter-spacing:-.03em}
.mn-body main article.mc-art h3.mn-h3{font-size:var(--mn-t-h3)!important}
.mn-body main article.mc-art:hover :is(h2,h3){color:var(--mn-ink)}
.mn-body main article.mc-tile:hover h3.mc-tile__t,.mn-body main article.mc-tile:hover h2.mc-tile__t{color:var(--mn-brand-ink)}
/* search rows: the field itself is drawn by forms.css; the row only aligns field + button */
.mc-search{border-bottom:0!important;box-shadow:none!important;gap:.5rem}
.mc-search>svg,.mc-search>.mn-i{display:none}
.mc-search .mn-btn{width:auto;flex:none}
.mc-wl__li{display:flex;gap:.7rem;margin-top:.6rem;line-height:1.6}
.mc-wl__li::before{content:"";flex:none;width:.35rem;height:.35rem;margin-top:.6rem;border-radius:50%;background:var(--mn-brand)}
.mc-wl__back{display:inline-flex;align-items:center;min-height:2.75rem;margin-top:2rem;color:var(--mn-mute)!important;text-decoration:none;font-size:.9rem}
.mc-wl__back:hover{color:var(--mn-ink)!important}
.mc-wl form>.mn-btn,.mc-wl form>button{margin-top:1.5rem}
.mc-wl__field{margin-top:.25rem}
.mc-wl input[readonly]{background:var(--mn-soft);color:var(--mn-mute)}
.mc-fbar .mn-bar__tools .mn-btn{width:auto}
/* pages.css hub rule also targets .mn-fs (grid, 12rem column): keep the directory filter on its own layout */
.mn-fs.mc-fs{grid-template-columns:none}
@media(min-width:1024px){.mn-fs.mc-fs{display:block;padding-top:.25rem}.mc-fs .mn-fs__form .mn-field{flex:0 1 14rem}}

/* ================= places list (city pop-up + city page "Must-See Places") =================
   One open row per place: fixed 4:3 thumb (160px) | eyebrow, name, 2-line summary, meta, link.
   Rows separated by hairlines. Whole row clickable through .mc-stretch on the name button. */
.mn-places{display:grid;grid-template-columns:minmax(0,1fr);margin:1.25rem 0 0;padding:0;list-style:none;border-bottom:1px solid var(--mn-line)}
.mn-place{position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:.9rem;margin:0;padding:1.25rem 0;border-top:1px solid var(--mn-line);list-style:none}
.mn-place__img{display:block;width:100%;aspect-ratio:16/10;overflow:hidden;border-radius:14px;background:var(--mn-soft)}
.mn-place__img img{display:block;width:100%!important;height:100%!important;object-fit:cover;transition:transform .5s var(--mn-ease)}
.mn-place:hover .mn-place__img img{transform:scale(1.03)}
.mn-place__body{display:grid;align-content:start;gap:.3rem;min-width:0}
.mn-place__body>*{margin:0}
.mn-place__k{font-size:.72rem;font-weight:600;line-height:1.4;letter-spacing:.1em;text-transform:uppercase;color:var(--mn-brand-ink)}
.mn-body .mn-place__t,.dlg .mn-place__t{margin:0;font-family:var(--mn-font);font-size:1.0625rem;line-height:1.35;font-weight:600;letter-spacing:-.01em;color:var(--mn-ink);text-wrap:balance}
.mn-place__t .mc-stretch{color:inherit;font-weight:inherit;transition:color .15s}
.mn-place:hover .mn-place__t .mc-stretch{color:var(--mn-brand-ink)}
.mn-place__s{font-size:.9375rem;line-height:1.55;color:var(--mn-text);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.mn-place__m{display:flex;flex-wrap:wrap;align-items:center;gap:.2rem 1rem;font-size:.82rem;line-height:1.45;color:var(--mn-mute)}
.mn-place__m:empty{display:none}
.mn-place__star{font-weight:600;color:var(--mn-ink)}
.mn-place__star>span{color:var(--mn-gold)}
.mn-place__more{margin-top:.2rem!important;font-size:.875rem;font-weight:600;color:var(--mn-brand-ink)}
.mn-place.mc-rel:has(.mc-stretch:focus-visible){outline-offset:6px}
@media (min-width:560px){
  .mn-place{grid-template-columns:160px minmax(0,1fr);gap:1.25rem;align-items:start}
  .mn-place__img{aspect-ratio:4/3}
}
@media (min-width:1024px){
  .mn-places--2{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(2rem,4vw,3.5rem)}
}
.dlg .mn-places{border-bottom:0}

/* city page: profile (left, spans 2 rows) | weather + sources stacked (right) — no stretched empty row */
.mn-ct__grid{display:grid;gap:2.5rem;align-items:start}
.mn-ct__aside-h{padding-top:1.25rem;border-top:1px solid var(--mn-line)}
@media (min-width:1024px){
  .mn-ct__grid{grid-template-columns:minmax(0,3fr) minmax(18rem,2fr);grid-template-rows:auto 1fr;column-gap:clamp(2rem,5vw,4rem)}
}

/* ================= dining detail (article.mn-dn) =================
   Neutralises the generic "main article h2/h3" card bridge of pages.css (forced 1.15rem + turquoise on
   article hover) and turns the aside into one hairline-separated stack. */
/* shared by every .mn-pt detail page (dining, partners): section headings keep ink colour and their own scale */
.mn-body main .mn-pt>article.mn-container :is(.mn-h2,.mn-h3,.mn-menu__t){color:var(--mn-ink)}
.mn-body main .mn-pt>article.mn-container .mn-h2{font-size:clamp(1.3rem,2.4vw,1.55rem)!important;line-height:1.25;letter-spacing:-.02em}
.mn-body main .mn-pt>article.mn-container .mn-h3{font-size:1.05rem!important;line-height:1.35}
.mn-body main article.mn-dn .mn-menu__t{font-size:1rem!important}
.mn-body main article.mn-dn .mn-pt__main .mn-sec__bar{align-items:end}
.mn-dn .mn-menu__row .mn-badge{font-size:.72rem}
.mn-dn .mn-menu__row .mn-mute{margin:.25rem 0 0;font-size:.9rem;line-height:1.5}
@media (min-width:1024px){.mn-body main article.mn-dn .mn-pt__side{position:static}}
@media (max-width:1023px){.mn-dn .mn-pt__main{padding-top:2rem;border-top:1px solid var(--mn-line)}}
.mn-dn__side{gap:0!important}
.mn-dn__blk{padding:1.5rem 0;border-top:1px solid var(--mn-line)}
.mn-dn__blk:first-child{padding-top:0;border-top:0}
.mn-dn__blk:last-child{padding-bottom:0}
.mn-body main article.mn-dn .mn-dn__h{margin:0;font-family:var(--mn-font);font-size:1.05rem!important;line-height:1.35;font-weight:600!important;letter-spacing:-.01em;color:var(--mn-ink)!important;text-transform:none}
.mn-dn__hrow{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.35rem .75rem}
.mn-dn__state{display:inline-flex;align-items:center;gap:.4rem;font-size:.8rem;font-weight:600;line-height:1.3;color:var(--mn-mute)}
.mn-dn__state::before{content:"";width:.45rem;height:.45rem;border-radius:50%;background:currentColor;opacity:.7}
.mn-dn__state.is-open{color:var(--mn-ok)}
.mn-dn .mn-dn__dl{margin:.6rem 0 0;border-bottom:0}
.mn-dn .mn-dn__dl>div{padding:.55rem 0;font-size:.92rem}
.mn-dn .mn-dn__dl>div:first-child{border-top:0}
.mn-dn .mn-dn__dl small{font-size:.8rem;font-weight:400;color:var(--mn-mute)}
.mn-dn__hours{display:grid;margin:.6rem 0 0;padding:0;list-style:none}
.mn-dn__hours li{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;margin:0 -.6rem;padding:.3rem .6rem;border-radius:8px;font-size:.9rem;line-height:1.45;color:var(--mn-text)}
.mn-dn__hours b{font-weight:500;color:var(--mn-ink);font-variant-numeric:tabular-nums;text-align:right}
.mn-dn__hours b.is-closed{color:var(--mn-mute);font-weight:400}
.mn-dn__hours li.is-today{background:var(--mn-soft);color:var(--mn-ink);font-weight:600}
.mn-dn__hours li.is-today b{font-weight:600}
.mn-dn__today{margin-left:.5rem;font-size:.7rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--mn-brand-ink)}
.mn-dn__addr{margin:.6rem 0 0;font-style:normal;font-size:.92rem;line-height:1.6;color:var(--mn-text);overflow-wrap:anywhere}
.mn-dn__dir{display:inline-flex;align-items:center;gap:.5rem;min-height:2.75rem;margin-top:.75rem;font-size:.92rem;font-weight:600;color:var(--mn-brand-ink);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px;text-decoration-color:color-mix(in srgb,var(--mn-brand) 40%,transparent)}
.mn-dn__dir:hover{text-decoration-color:currentColor}
.mn-dn__dir svg{width:1.05rem;height:1.05rem;flex:none}
.mn-dn__pills{display:flex;flex-wrap:wrap;gap:.5rem;margin:.75rem 0 0;padding:0;list-style:none}
.mn-dn__pills li{display:inline-flex;align-items:center;min-height:2rem;margin:0;padding:.3rem .85rem;border:1px solid var(--mn-line-2);border-radius:999px;font-size:.84rem;line-height:1.3;color:var(--mn-text)}
.mn-dn__contact{display:grid;margin:.5rem 0 0;padding:0;list-style:none}
.mn-dn__contact li{margin:0;border-top:1px solid var(--mn-line)}
.mn-dn__contact li:first-child{border-top:0}
.mn-dn__contact a{display:flex;align-items:center;gap:.85rem;min-height:3.25rem;padding:.55rem 0;color:var(--mn-ink);text-decoration:none}
.mn-dn__contact a>svg:first-child{width:1.15rem;height:1.15rem;flex:none;color:var(--mn-brand)}
.mn-dn__cv{display:grid;flex:1 1 auto;min-width:0;line-height:1.35}
.mn-dn__cv small{font-size:.76rem;color:var(--mn-mute)}
.mn-dn__cv b{overflow:hidden;font-weight:600;text-overflow:ellipsis;white-space:nowrap}
.mn-dn__contact a:hover .mn-dn__cv b{color:var(--mn-brand-ink)}
.mn-dn__go{flex:none;font-size:.85rem;font-weight:600;color:var(--mn-brand-ink)}
.mn-dn__ext{width:1rem!important;height:1rem!important;flex:none;color:var(--mn-mute)}
.mn-dn__contact a:focus-visible,.mn-dn__dir:focus-visible{outline:2px solid var(--mn-brand);outline-offset:3px;border-radius:6px}
.mn-dn__tag{display:inline-flex;align-items:center;min-height:1.6rem;padding:.1rem .6rem;border:1px solid color-mix(in srgb,var(--mn-ok) 45%,transparent);border-radius:999px;font-size:.74rem;font-weight:600;color:var(--mn-ok)}
.mn-body main article.mn-dn .mn-menu__price{display:flex;align-items:baseline;gap:.3rem}
.mn-body main article.mn-dn .mn-menu__price .mn-price{font-size:1.1rem!important;font-weight:600;line-height:1.3;color:var(--mn-ink)}
.mn-body main article.mn-dn .mn-menu__price small{display:inline;font-size:.78rem}

/* ================= uniform card system (.mn-card-u / .mc-tile) — every directory card: same media 4:3, same rhythm, equal heights ================= */
.mc-tiles{grid-template-columns:repeat(3,minmax(0,1fr));gap:2.5rem 1.75rem;align-items:stretch}
@media(max-width:1023.98px){.mc-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:639.98px){.mc-tiles{grid-template-columns:minmax(0,1fr);gap:2.25rem}}
.mc-tiles>li{display:flex;min-width:0;margin:0}
.mc-tiles>li::before{display:none}
.mc-tiles>:is(.mn-empty,.mc-tiles__all){grid-column:1/-1}
.mc-tile,.mn-card-u{display:flex;flex-direction:column;align-content:normal;gap:0;flex:1 1 auto;width:100%;min-width:0;position:relative}
.mn-card-u .mc-cover,.mc-tile .mc-cover{flex:none;width:100%;aspect-ratio:4/3;border-radius:14px;margin:0 0 .9rem;background:linear-gradient(145deg,color-mix(in srgb,var(--mn-tint,var(--mn-brand)) 22%,var(--mn-soft)),color-mix(in srgb,var(--mn-tint,var(--mn-brand)) 7%,var(--mn-sand)))}
.mn-card-u .mc-cover img:not(.mc-tile__logo),.mc-tile .mc-cover img:not(.mc-tile__logo){position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.mc-tile:hover .mc-cover>img:not(.mc-tile__logo),.mn-card-u:hover .mc-cover>img:not(.mc-tile__logo){transform:scale(1.03)}
.mc-cover__ph{color:color-mix(in srgb,var(--mn-tint,var(--mn-brand)) 55%,var(--mn-ink))}
.mc-cover__ph svg,.mc-cover__ph .mn-i{width:2.6rem;height:2.6rem;stroke-width:1.2;opacity:.75}
/* logo badge: identical size, pinned bottom-left */
.mc-tile__logo,.mn-body main article img.mc-tile__logo{position:absolute;left:.65rem;bottom:.65rem;z-index:1;width:44px!important;height:44px!important;min-width:0;max-width:none;padding:4px;border-radius:12px;background:#fff;object-fit:contain!important;box-shadow:0 1px 3px rgba(20,30,40,.14)}
/* text rhythm */
.mc-tile .mc-meta{flex-wrap:nowrap;gap:0;min-width:0;overflow:hidden;white-space:nowrap;margin:0;line-height:1.4}
.mc-tile .mc-meta>*{min-width:0;overflow:hidden;text-overflow:ellipsis}
.mc-tile .mc-meta>*+*{flex:0 1 auto}
.mc-tile .mc-meta>:first-child{flex:0 1 auto}
.mc-tile .mc-meta--price{margin-top:.55rem}
.mn-body main article.mc-tile h2.mc-tile__t,.mn-body main article.mc-tile h3.mc-tile__t,.mc-tile__t{margin:.4rem 0 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.6em;overflow-wrap:anywhere}
.mc-tile__t a,.mc-tile__t button{text-decoration:none;text-underline-offset:.2em;text-decoration-thickness:1px}
.mc-tile:hover .mc-tile__t :is(a,button){text-decoration:underline}
.mc-tile__p{margin:.4rem 0 0;height:3.1em;flex:none;overflow-wrap:anywhere}
.mn-body main .mc-tile>.mc-tile__p+*{margin-top:auto;padding-top:.7rem}
.mc-tile .mc-cond,.mc-tile .mc-tags,.mc-tile .mc-tile__check{margin-top:.7rem}
/* single-line chip rows */
.mc-tile .mc-tags{flex-wrap:wrap;overflow:hidden;min-width:0;gap:1rem .4rem;margin-bottom:0;height:1.75rem}
/* service chips: only chips that fit whole on the single row are shown (the rest wrap to a hidden row) — never truncated, equal card heights; the first chip alone may ellipsize if wider than the card */
.mc-tile .mc-tags--svc>.mc-tag:first-child{max-width:100%;overflow:hidden;text-overflow:ellipsis}
.mc-tile .mc-tags--svc>.mc-tag:not(.mc-tag--shrink){display:none}
.mc-tile .mc-tags>.mc-tag{flex:0 0 auto;min-width:0;max-width:100%}
.mc-tile .mc-tags>.mc-tag--shrink{flex:0 0 auto;display:block;white-space:nowrap}
.mc-tile .mc-tags>.mc-tag--shrink .mn-i{display:inline-block;vertical-align:-.15em;margin-right:.3rem}
.mc-tile .mc-tags--trust{margin-top:.8rem}
.mc-tile .mc-tags--svc{margin-top:.6rem}
.mc-tile .mc-tags--trust,.mc-tile .mc-tags--svc{flex:none;min-height:1.75rem;height:1.75rem;align-items:center;align-content:flex-start}
/* every chip in a directory card has the same fixed height so a row can never clip or overlap the next one */
.mc-tile .mc-tags>.mc-tag{box-sizing:border-box;height:1.75rem;padding-block:0;line-height:1;align-items:center}
.mc-tile .mc-tags>.mc-tag .mn-i{width:.95rem;height:.95rem;flex:none}
.mc-tile .mc-tile__foot{flex:none;margin-top:.9rem;min-height:1.9rem;height:1.9rem;overflow:hidden}
.mc-tile .mc-tile__foot .mc-meta{margin:0}
/* keyboard focus: ring around the whole card */
.mc-rel:has(.mc-stretch:focus-visible){outline:2px solid var(--mn-brand);outline-offset:6px;border-radius:14px}
@media(prefers-reduced-motion:reduce){.mc-tile:hover .mc-cover>img{transform:none}}
.mc-tile:hover .mc-cover>img.mc-tile__logo,.mn-card-u:hover .mc-cover>img.mc-tile__logo{transform:none!important}

/* marketplace tiles (x-marketplace.tile in x-marketplace.directory): same fixed ratio + clamp rules as .mn-card-u */
.mn-body main .mn-tiles:not(:has(>.mn-lrow)){grid-template-columns:repeat(3,minmax(0,1fr));gap:2.5rem 1.75rem;align-items:stretch}
@media(max-width:1023.98px){.mn-body main .mn-tiles:not(:has(>.mn-lrow)){grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:639.98px){.mn-body main .mn-tiles:not(:has(>.mn-lrow)){grid-template-columns:minmax(0,1fr)}}
.mn-body main .mn-tiles>.mn-tile{display:flex;min-width:0}
.mn-body main .mn-tile .mn-tile__a{display:flex;flex-direction:column;gap:0;width:100%;min-width:0;height:100%}
.mn-body main .mn-tile .mn-tile__img{flex:none;aspect-ratio:4/3;border-radius:14px;margin-bottom:.9rem}
.mn-body main .mn-tile .mn-tile__img img{position:absolute;inset:0;transition:transform .5s var(--mn-ease)}
.mn-body main .mn-tile .mn-tile__a:hover .mn-tile__img img{transform:scale(1.03)}
.mn-body main .mn-tile .mn-tile__k{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.4}
.mn-body main .mn-tile .mn-tile__t{margin:.4rem 0 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.6em;overflow-wrap:anywhere}
.mn-body main .mn-tile .mn-tile__a:hover .mn-tile__t{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.2em}
.mn-body main .mn-tile .mn-tile__p{margin-top:auto;padding-top:.6rem}
.mn-body main .mn-tile .mn-tile__s{margin-top:.25rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}
.mn-body main .mn-tile .mn-tile__a:focus-visible{outline:2px solid var(--mn-brand);outline-offset:6px;border-radius:14px}

/* chip rows: soft fade instead of a hard mid-word cut when a row overflows its card */


/* directory cards: the generic ".mc-tile__p + *" rule pads the first row after the description (.7rem) — chip rows must not inherit it (it clipped the chips inside their fixed-height row) */
.mn-body main .mc-tile>.mc-tags{padding-top:0!important;padding-bottom:0}
.mc-tile .mc-tags>.mc-tag--shrink{display:inline-flex;align-items:center}
.mc-tile .mc-tile__p{margin-bottom:.45rem}
/* Welcome Point outreach pages: closing bar with the discreet Beta tag (same as the site footer bar, 2026-11-04) */
.mc-wl__bar{display:flex;align-items:center;gap:.5rem;max-width:40rem;margin:0 auto;padding:1rem var(--mn-gut) max(1.5rem,env(safe-area-inset-bottom));border-top:1px solid var(--mn-line);color:var(--mn-mute);font-size:.85rem}
.mc-wl__bar .mn-beta{display:inline-flex;align-items:center;padding:.05rem .45rem;border:1px solid var(--mn-line-2);border-radius:999px;font-size:.72rem;font-weight:600;letter-spacing:.04em;color:var(--mn-mute)}

/* mobile search row (guides, articles…): same pill field as the marketplace search — icon inside, compact button beside it.
   Fixes `.sawalife-modular form .mn-btn{width:100%}` (minimal.css) squeezing the field to nothing. Desktop untouched. */
@media(max-width:640px){
  .mn-body main form.mc-search{position:relative;display:flex;align-items:center;gap:.5rem;width:100%;max-width:none}
  .mn-body main form.mc-search>svg,.mn-body main form.mc-search>.mn-i{display:block;position:absolute;left:.95rem;top:50%;transform:translateY(-50%);width:1.1rem;height:1.1rem;color:var(--mn-mute);pointer-events:none;z-index:1}
  .mn-body main form.mc-search input[type=search]{flex:1 1 0;min-width:0;width:auto;min-height:2.9rem;margin:0;padding:.6rem 1rem .6rem 2.75rem!important;border:1px solid var(--mn-line-2)!important;border-radius:var(--mn-r-pill)!important;background:var(--mn-field);color:var(--mn-ink);font:inherit;font-size:1rem;-webkit-appearance:none;appearance:none}
  .mn-body main form.mc-search input[type=search]:focus{outline:none;border-color:var(--mn-brand)!important;box-shadow:var(--mn-focus)!important}
  .mn-body main form.mc-search .mc-search__x{position:relative;z-index:1;flex:none;margin-left:-3.2rem;margin-right:.35rem}
  .mn-body main form.mc-search:has(.mc-search__x) input[type=search]{padding-right:2.9rem!important}
  .mn-body main form.mc-search .mn-btn{flex:none;width:auto;min-height:2.9rem;padding-inline:1.1rem;white-space:nowrap}
}
