/* Google Fonts are enqueued once by the plugin, see Plugin.php. An @import here
   forced a second serial round-trip behind every stylesheet. */
/* ============================================================
   MAYURI INTERNATIONAL FOODS, shared brand kit (prototype)
   Inline this whole block into each prototype's \3c style>.
   Matches the live redesign system (About / service pages).
   ============================================================ */


.mev-loc{
  /* brand tokens (OKLCH, same as live redesign) */
  --cream: oklch(0.972 0.018 85);
  --forest: oklch(0.32 0.075 148);
  --forest-deep: oklch(0.22 0.06 148);
  --saffron: oklch(0.68 0.19 42);
  --gold: oklch(0.78 0.13 75);

  --bg: var(--cream);
  --fg: oklch(0.18 0.03 148);
  --card: oklch(1 0 0);
  --muted: oklch(0.45 0.03 148);
  --secondary: oklch(0.94 0.02 85);
  --border: oklch(0.88 0.02 85);

  --font-serif: "Fraunces", Georgia, serif;
  --font-sans: "Inter", system-ui, sans-serif;
  --radius: 1rem;
  --maxw: 1200px;
}

.mev-loc *{ box-sizing:border-box; margin:0; padding:0; border-color:var(--border); }
.mev-loc{ scroll-behavior:smooth; }
.mev-loc{
  background:var(--bg); color:var(--fg); font-family:var(--font-sans);
  font-feature-settings:"ss01","cv11"; line-height:1.6; -webkit-font-smoothing:antialiased;
}
.mev-loc h1,.mev-loc h2,.mev-loc h3,.mev-loc h4{ font-family:var(--font-serif); font-weight:500; letter-spacing:-0.02em; line-height:1.05; }
.mev-loc img{ max-width:100%; display:block; }
.mev-loc a{ color:inherit; text-decoration:none; }
.mev-loc .serif{ font-family:var(--font-serif); }
.mev-loc .italic{ font-style:italic; }
.mev-loc .eyebrow{ font-size:.72rem; font-weight:600; text-transform:uppercase; letter-spacing:.28em; color:var(--saffron); }
.mev-loc .wrap{ max-width:var(--maxw); margin:0 auto; padding:0 1.5rem; }

/* buttons */
.mev-loc .btn{ display:inline-flex; align-items:center; gap:.5rem; border-radius:999px; padding:.9rem 1.6rem;
  font-size:.8rem; font-weight:600; text-transform:uppercase; letter-spacing:.14em; cursor:pointer;
  transition:transform .2s ease, background .2s ease, color .2s ease; border:1px solid transparent; }
.mev-loc .btn-primary{ background:var(--forest); color:var(--cream); }
.mev-loc .btn-primary:hover{ transform:translateY(-2px); }
.mev-loc .btn-accent{ background:var(--saffron); color:var(--cream); }
.mev-loc .btn-accent:hover{ transform:scale(1.03); }
.mev-loc .btn-ghost{ border-color:var(--border); color:var(--forest); }
.mev-loc .btn-ghost:hover{ background:var(--secondary); }

/* ---- shared top bar + nav (Mayuri) ---- */
.mev-loc .mk-topbar{ background:var(--forest-deep); color:oklch(0.9 0.02 85); font-size:.74rem; }
.mev-loc .mk-topbar .wrap{ display:flex; justify-content:space-between; align-items:center; padding:.55rem 1.5rem; gap:1rem; flex-wrap:wrap; }
.mev-loc .mk-topbar a{ color:var(--gold); font-weight:600; }
.mev-loc .mk-nav{ position:sticky; top:0; z-index:50; background:oklch(0.972 0.018 85 / .9); backdrop-filter:blur(10px); border-bottom:1px solid var(--border); }
.mev-loc .mk-nav .wrap{ display:flex; align-items:center; justify-content:space-between; padding:.9rem 1.5rem; }
.mev-loc .mk-logo{ display:flex; align-items:baseline; gap:.5rem; }
.mev-loc .mk-logo b{ font-family:var(--font-serif); font-size:1.5rem; font-weight:600; color:var(--forest); letter-spacing:-.02em; }
.mev-loc .mk-logo span{ font-size:.6rem; text-transform:uppercase; letter-spacing:.25em; color:var(--muted); }
.mev-loc .mk-links{ display:flex; gap:2rem; }
.mev-loc .mk-links a{ font-size:.78rem; font-weight:500; text-transform:uppercase; letter-spacing:.12em; color:oklch(0.3 0.03 148 / .8); transition:color .2s; }
.mev-loc .mk-links a:hover{ color:var(--forest); }
@media(max-width:860px){ .mev-loc .mk-links{ display:none; } }

/* ---- shared footer ---- */
.mev-loc .mk-footer{ background:var(--forest-deep); color:oklch(0.9 0.02 85 / .75); padding:3rem 0 2rem; font-size:.85rem; }
.mev-loc .mk-footer .cols{ display:grid; grid-template-columns:repeat(4,1fr); gap:2rem; }
.mev-loc .mk-footer h4{ color:var(--gold); font-family:var(--font-sans); font-size:.72rem; text-transform:uppercase; letter-spacing:.18em; margin-bottom:1rem; }
.mev-loc .mk-footer a{ display:block; padding:.2rem 0; }
.mev-loc .mk-footer a:hover{ color:var(--cream); }
.mev-loc .mk-footer .base{ border-top:1px solid oklch(1 0 0 / .12); margin-top:2rem; padding-top:1.5rem; text-align:center; font-size:.7rem; text-transform:uppercase; letter-spacing:.18em; }
@media(max-width:720px){ .mev-loc .mk-footer .cols{ grid-template-columns:repeat(2,1fr); } }

/* ---- motion (entrance reveal + marquee) ---- */
.mev-loc .reveal{ opacity:0; transform:translateY(26px); transition:opacity .9s cubic-bezier(.16,1,.3,1), transform .9s cubic-bezier(.16,1,.3,1); }
.mev-loc .reveal.in{ opacity:1; transform:none; }
.mev-loc .reveal.d1{ transition-delay:.08s;} .mev-loc .reveal.d2{ transition-delay:.16s;} .mev-loc .reveal.d3{ transition-delay:.24s;} .mev-loc .reveal.d4{ transition-delay:.32s;}
@keyframes mk-marquee{ from{transform:translateX(0)} to{transform:translateX(-50%)} }
.mev-loc .mk-marquee{ overflow:hidden; background:var(--forest); color:var(--cream); border-top:1px solid oklch(1 0 0 /.15); border-bottom:1px solid oklch(1 0 0 /.15); }
.mev-loc .mk-marquee .track{ display:flex; width:max-content; gap:3rem; padding:1rem 0; white-space:nowrap; animation:mk-marquee 32s linear infinite; }
.mev-loc .mk-marquee .track span{ font-family:var(--font-serif); font-style:italic; font-size:1.4rem; display:inline-flex; gap:3rem; align-items:center; }
.mev-loc .mk-marquee .track i{ color:var(--gold); font-style:normal; }
@media(prefers-reduced-motion:reduce){ .mev-loc .reveal{opacity:1;transform:none;} .mev-loc .mk-marquee .track{animation:none;} }

/* small helpers */
.mev-loc .badge{ display:inline-block; background:var(--secondary); color:var(--forest); border:1px solid oklch(0.32 0.075 148 /.2);
  border-radius:999px; padding:.5rem 1rem; font-size:.8rem; font-family:var(--font-serif); }
.mev-loc .card{ background:var(--card); border:1px solid var(--border); border-radius:var(--radius); }

/* ============================================================
   DESIGN 2, "IMMERSIVE FULL-BLEED HERO" (cinematic, bold)
   ============================================================ */
.mev-loc{ overflow-x:hidden; }

/* --- sticky open-now sub-bar under nav --- */
.mev-loc .open-bar{
  position:sticky; top:63px; z-index:45;
  background:var(--forest); color:var(--cream);
  border-bottom:1px solid oklch(1 0 0 /.14);
}
.mev-loc .open-bar .wrap{ display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:.55rem 1.5rem; flex-wrap:wrap; }
.mev-loc .open-bar .status{ display:inline-flex; align-items:center; gap:.6rem; font-size:.78rem; font-weight:600; letter-spacing:.06em; text-transform:uppercase; }
.mev-loc .open-bar .dot{ width:8px; height:8px; border-radius:50%; background:var(--gold); box-shadow:0 0 0 0 oklch(0.78 0.13 75 /.7); animation:pulse 2.4s infinite; }
@keyframes pulse{ 0%{ box-shadow:0 0 0 0 oklch(0.78 0.13 75 /.6);} 70%{ box-shadow:0 0 0 10px oklch(0.78 0.13 75 /0);} 100%{ box-shadow:0 0 0 0 oklch(0.78 0.13 75 /0);} }
.mev-loc .open-bar .info{ display:inline-flex; align-items:center; gap:1.5rem; font-size:.78rem; }
.mev-loc .open-bar .info a{ color:var(--gold); font-weight:600; }
.mev-loc .open-bar .info span.sep{ opacity:.4; }
@media(prefers-reduced-motion:reduce){ .mev-loc .open-bar .dot{ animation:none; } }

/* --- immersive hero --- */
.mev-loc .hero{
  position:relative; min-height:92vh; display:flex; align-items:flex-end;
  overflow:hidden; isolation:isolate;
}
.mev-loc .hero .bg{
  position:absolute; inset:0; z-index:-2;
  background:url('/wp-content/uploads/2026/07/IMG-20241030-WA0092.jpg') center 40%/cover no-repeat;
  transform:scale(1.08); animation:heroZoom 18s ease-out forwards;
}
@keyframes heroZoom{ to{ transform:scale(1); } }
.mev-loc .hero .grad{
  position:absolute; inset:0; z-index:-1;
  background:linear-gradient(to bottom,
    oklch(0.22 0.06 148 /.35) 0%,
    oklch(0.22 0.06 148 /.15) 30%,
    oklch(0.22 0.06 148 /.65) 72%,
    oklch(0.22 0.06 148 /.96) 100%);
}
.mev-loc .hero .wrap{ width:100%; padding-top:4rem; padding-bottom:3.5rem; }
.mev-loc .hero .h-inner{ max-width:820px; }
.mev-loc .hero .eyebrow{ color:var(--gold); }
.mev-loc .hero h1{
  color:var(--cream); font-size:clamp(2.6rem,6.4vw,5.4rem); font-weight:500;
  margin:1rem 0 1.1rem; text-shadow:0 2px 30px oklch(0.22 0.06 148 /.5);
}
.mev-loc .hero h1 em{ font-style:italic; color:var(--saffron); }
.mev-loc .hero .sub{ color:oklch(0.95 0.02 85 /.9); font-size:clamp(1rem,2vw,1.25rem); max-width:560px; }

/* floating frosted glass info card */
.mev-loc .glass{
  margin-top:2.4rem; display:inline-flex; flex-direction:column; gap:1.1rem;
  background:oklch(0.972 0.018 85 /.12); backdrop-filter:blur(18px) saturate(1.2);
  -webkit-backdrop-filter:blur(18px) saturate(1.2);
  border:1px solid oklch(1 0 0 /.22); border-radius:1.3rem;
  padding:1.6rem 1.8rem; max-width:520px; width:100%;
  box-shadow:0 30px 70px oklch(0.15 0.05 148 /.45);
}
.mev-loc .glass .g-row{ display:flex; align-items:flex-start; gap:.9rem; color:var(--cream); }
.mev-loc .glass .g-row .ic{ color:var(--gold); font-size:1.1rem; line-height:1.5; flex-shrink:0; }
.mev-loc .glass .g-row .g-label{ font-size:.68rem; text-transform:uppercase; letter-spacing:.18em; color:oklch(0.85 0.05 85 /.85); }
.mev-loc .glass .g-row .g-val{ font-size:.98rem; font-weight:500; }
.mev-loc .glass .g-row .g-val b{ color:var(--gold); font-weight:600; }
.mev-loc .glass .g-cta{ display:flex; gap:.7rem; flex-wrap:wrap; margin-top:.2rem; }
.mev-loc .glass .g-cta .btn{ padding:.8rem 1.4rem; }
.mev-loc .glass .btn-glass{ background:oklch(1 0 0 /.1); color:var(--cream); border:1px solid oklch(1 0 0 /.3); }
.mev-loc .glass .btn-glass:hover{ background:oklch(1 0 0 /.2); transform:translateY(-2px); }
.mev-loc .glass .g-divide{ height:1px; background:oklch(1 0 0 /.16); }

/* --- intro on cream --- */
.mev-loc .intro{ background:var(--cream); padding:6rem 0; }
.mev-loc .intro .grid{ display:grid; grid-template-columns:1.1fr 1fr; gap:4rem; align-items:center; }
.mev-loc .intro h2{ font-size:clamp(1.9rem,3.6vw,3rem); color:var(--forest); margin:1rem 0 1.4rem; }
.mev-loc .intro p.lead{ font-size:1.15rem; color:var(--fg); }
.mev-loc .intro .why{ list-style:none; margin-top:1.8rem; display:grid; gap:1rem; }
.mev-loc .intro .why li{ display:flex; gap:.8rem; align-items:flex-start; font-size:.98rem; color:var(--muted); }
.mev-loc .intro .why li b{ color:var(--forest); }
.mev-loc .intro .why .tick{ color:var(--saffron); font-weight:700; flex-shrink:0; }
.mev-loc .intro .photo{ position:relative; }
.mev-loc .intro .photo img{ border-radius:1.3rem; height:100%; min-height:420px; object-fit:cover; box-shadow:0 30px 60px oklch(0.2 0.05 148 /.18); }
.mev-loc .intro .photo .tag{
  position:absolute; bottom:-1.2rem; left:-1.2rem; background:var(--saffron); color:var(--cream);
  font-family:var(--font-serif); font-style:italic; font-size:1.05rem; padding:.9rem 1.4rem;
  border-radius:1rem; box-shadow:0 16px 30px oklch(0.2 0.05 148 /.25);
}

/* --- departments hover-zoom tiles (dark) --- */
.mev-loc .depts{ background:var(--forest-deep); padding:6rem 0; }
.mev-loc .depts .head{ text-align:center; max-width:640px; margin:0 auto 3.2rem; }
.mev-loc .depts .eyebrow{ color:var(--gold); }
.mev-loc .depts h2{ color:var(--cream); font-size:clamp(1.9rem,3.6vw,3rem); margin-top:1rem; }
.mev-loc .depts .head p{ color:oklch(0.9 0.02 85 /.7); margin-top:1rem; }
.mev-loc .dept-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:1rem; }
.mev-loc .dept{
  position:relative; border-radius:1.1rem; overflow:hidden; aspect-ratio:3/4;
  display:flex; align-items:flex-end; isolation:isolate;
  border:1px solid oklch(1 0 0 /.08);
}
.mev-loc .dept img{
  position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:-2;
  transition:transform .7s cubic-bezier(.16,1,.3,1);
}
.mev-loc .dept::after{
  content:""; position:absolute; inset:0; z-index:-1;
  background:linear-gradient(to top, oklch(0.18 0.05 148 /.9) 0%, oklch(0.18 0.05 148 /.25) 55%, oklch(0.18 0.05 148 /.05) 100%);
  transition:background .4s ease;
}
.mev-loc .dept:hover img{ transform:scale(1.12); }
.mev-loc .dept:hover::after{ background:linear-gradient(to top, oklch(0.15 0.05 148 /.92) 0%, oklch(0.32 0.075 148 /.4) 60%, oklch(0.32 0.075 148 /.1) 100%); }
.mev-loc .dept .lbl{ padding:1.2rem; }
.mev-loc .dept .lbl .n{ font-size:.64rem; color:var(--gold); letter-spacing:.2em; text-transform:uppercase; }
.mev-loc .dept .lbl h3{ color:var(--cream); font-size:1.15rem; margin-top:.35rem; }

/* --- stats strip (forest) --- */
.mev-loc .stats{ background:var(--forest); padding:4.5rem 0; position:relative; overflow:hidden; }
.mev-loc .stats::before{
  content:""; position:absolute; inset:0; opacity:.12;
  background:url('/wp-content/uploads/2026/07/Indian-store-bothell-.jpg') center/cover;
}
.mev-loc .stats .wrap{ position:relative; }
.mev-loc .stat-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:2rem; text-align:center; }
.mev-loc .stat .num{ font-family:var(--font-serif); font-size:clamp(2.6rem,5vw,3.8rem); color:var(--gold); font-weight:600; line-height:1; }
.mev-loc .stat .lbl{ color:oklch(0.9 0.02 85 /.8); text-transform:uppercase; letter-spacing:.16em; font-size:.72rem; margin-top:.7rem; }
.mev-loc .stat + .stat{ border-left:1px solid oklch(1 0 0 /.14); }
@media(max-width:720px){ .mev-loc .stat + .stat{ border-left:none; } }

/* --- nearby stores photo cards (cream) --- */
.mev-loc .nearby{ background:var(--cream); padding:6rem 0; }
.mev-loc .nearby .head{ display:flex; justify-content:space-between; align-items:flex-end; gap:1rem; margin-bottom:2.6rem; flex-wrap:wrap; }
.mev-loc .nearby h2{ color:var(--forest); font-size:clamp(1.9rem,3.6vw,3rem); margin-top:.8rem; }
.mev-loc .nearby .head p{ color:var(--muted); max-width:360px; }
.mev-loc .store-row{ display:grid; grid-template-columns:repeat(5,1fr); gap:1rem; }
.mev-loc .store{
  border-radius:1rem; overflow:hidden; background:var(--card); border:1px solid var(--border);
  transition:transform .3s ease, box-shadow .3s ease;
}
.mev-loc .store:hover{ transform:translateY(-6px); box-shadow:0 22px 44px oklch(0.2 0.05 148 /.16); }
.mev-loc .store .ph{ aspect-ratio:4/3; overflow:hidden; }
.mev-loc .store .ph img{ width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
.mev-loc .store:hover .ph img{ transform:scale(1.07); }
.mev-loc .store .body{ padding:1rem 1.1rem 1.2rem; }
.mev-loc .store .body h3{ color:var(--forest); font-size:1.05rem; }
.mev-loc .store .body .m{ color:var(--muted); font-size:.78rem; margin-top:.3rem; }
.mev-loc .store .body .go{ color:var(--saffron); font-size:.72rem; font-weight:600; text-transform:uppercase; letter-spacing:.12em; margin-top:.7rem; display:inline-block; }

/* --- big closing CTA (forest) --- */
.mev-loc .closing{ position:relative; background:var(--forest); color:var(--cream); overflow:hidden; }
.mev-loc .closing .bg{
  position:absolute; inset:0; z-index:0;
  background:url('/wp-content/uploads/2026/07/Redmond-event-catering-1-1024x676-2.jpg') center/cover;
}
.mev-loc .closing .ov{ position:absolute; inset:0; z-index:1; background:linear-gradient(120deg, oklch(0.22 0.06 148 /.94), oklch(0.32 0.075 148 /.82)); }
.mev-loc .closing .wrap{ position:relative; z-index:2; padding:7rem 1.5rem; text-align:center; }
.mev-loc .closing h2{ font-size:clamp(2.2rem,5vw,4rem); max-width:760px; margin:1rem auto 1.4rem; }
.mev-loc .closing h2 em{ font-style:italic; color:var(--gold); }
.mev-loc .closing p{ color:oklch(0.92 0.02 85 /.85); max-width:520px; margin:0 auto 2.4rem; font-size:1.1rem; }
.mev-loc .closing .cta{ display:flex; gap:.9rem; justify-content:center; flex-wrap:wrap; }
.mev-loc .closing .btn-accent:hover{ transform:translateY(-2px); }
.mev-loc .closing .btn-glass{ background:oklch(1 0 0 /.1); color:var(--cream); border:1px solid oklch(1 0 0 /.35); }
.mev-loc .closing .btn-glass:hover{ background:oklch(1 0 0 /.2); transform:translateY(-2px); }

/* --- responsive --- */
@media(max-width:1000px){
  .mev-loc .dept-grid{ grid-template-columns:repeat(2,1fr); }
  .mev-loc .store-row{ grid-template-columns:repeat(3,1fr); }
}
@media(max-width:860px){
  .mev-loc .open-bar{ top:0; }
}
@media(max-width:820px){
  .mev-loc .intro .grid{ grid-template-columns:1fr; gap:2.6rem; }
  .mev-loc .intro .photo{ order:-1; }
  .mev-loc .stat-grid{ grid-template-columns:repeat(2,1fr); gap:2.4rem; }
}
@media(max-width:640px){
  .mev-loc .hero{ min-height:88vh; }
  .mev-loc .glass{ padding:1.3rem 1.3rem; }
  .mev-loc .store-row{ grid-template-columns:repeat(2,1fr); }
  .mev-loc .open-bar .info span.hide-sm{ display:none; }
}
@media(max-width:430px){
  .mev-loc .dept-grid{ grid-template-columns:1fr; }
  .mev-loc .store-row{ grid-template-columns:1fr; }
}

/* ---- template fixes (Redmond review round) ---- */
/* 1) nearby store cards: uniform image height so all cards align */
.mev-loc .store .ph img{ width:100%; height:100%; object-fit:cover; display:block; }
/* 3) localized dark scrim behind the hero text only (readability over bright photos) */
.mev-loc .hero .h-inner{ position:relative; }
.mev-loc .hero .h-inner::before{
  content:''; position:absolute; z-index:-1; pointer-events:none;
  inset:-1.4rem -2.4rem -1.2rem -2.4rem; border-radius:2rem;
  background:radial-gradient(ellipse 78% 100% at 32% 46%,
    oklch(0.14 0.045 148 /.62), oklch(0.14 0.045 148 /.30) 52%, transparent 76%);
}
/* 2) open-now bar flush under the global header (prototype's 63px nav offset removed) */
.mev-loc .open-bar{ top:0 !important; }

/* ---- review round 2: shorter dept cards + text-left / box-right hero ---- */
.mev-loc .dept{ aspect-ratio: 1 / 1; }               /* was 3/4, too tall */
.mev-loc .hero{ min-height: 76vh; }                   /* trim the section */
.mev-loc .hero .h-inner{
  max-width: 1180px; display: grid;
  grid-template-columns: 1.05fr 0.95fr; gap: 3rem; align-items: center;
}
.mev-loc .hero .glass{ margin-top: 0; max-width: none; }
@media (max-width: 900px){
  .mev-loc .hero .h-inner{ grid-template-columns: 1fr; gap: 1.6rem; align-items: start; }
  .mev-loc .hero .glass{ max-width: 520px; }
}

/* ---- review round 3: hero to content-height, equal top/bottom gap (top was too big) ---- */
.mev-loc .hero{ min-height: 0; align-items: stretch; }
.mev-loc .hero .wrap{ padding-top: 4.5rem; padding-bottom: 4.5rem; }

/* ---- review round 4: shrink the closing CTA band (was oversized) ---- */
.mev-loc .closing .wrap{ padding: 3.4rem 1.5rem; }
.mev-loc .closing h2{ font-size: clamp(1.7rem, 3.2vw, 2.6rem); margin: .7rem auto 1rem; max-width: 640px; }
.mev-loc .closing p{ font-size: 1rem; margin: 0 auto 1.6rem; }

/* ---- review round 5: editable/darker hero overlay + bottom depth ---- */
.mev-loc .hero .grad{ position:absolute; inset:0; z-index:-1; }
.mev-loc .hero .grad::after{ content:''; position:absolute; inset:0; background:linear-gradient(to bottom, transparent 42%, oklch(0.12 0.05 148 /.45)); }

/* ===== lively motion pass (hover + smoother entrance) ===== */
.mev-loc .reveal{transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1)}
.mev-loc a[class*="btn"],.mev-loc .btn{transition:transform .28s cubic-bezier(.34,1.4,.5,1),box-shadow .28s ease,background-color .28s ease,color .28s ease!important}
.mev-loc a[class*="btn"]:hover,.mev-loc .btn:hover{transform:translateY(-3px);box-shadow:0 12px 26px -12px rgba(0,0,0,.3)}
.mev-loc article,.mev-loc [class*="card"],.mev-loc .dept,.mev-loc .store,.mev-loc .cui,.mev-loc .catcard,.mev-loc .tile,.mev-loc .mcard,.mev-loc .g{transition:transform .35s cubic-bezier(.16,1,.3,1),box-shadow .35s ease}
.mev-loc article:hover,.mev-loc [class*="card"]:hover,.mev-loc .dept:hover,.mev-loc .store:hover,.mev-loc .cui:hover,.mev-loc .catcard:hover,.mev-loc .tile:hover,.mev-loc .mcard:hover{transform:translateY(-5px)}
.mev-loc .dept img,.mev-loc .store .ph img,.mev-loc .cui img,.mev-loc .catcard img,.mev-loc .tile img,.mev-loc .mcard img,.mev-loc .photo img,.mev-loc .k1himg img{transition:transform .7s cubic-bezier(.16,1,.3,1)}
.mev-loc .dept:hover img,.mev-loc .store:hover .ph img,.mev-loc .cui:hover img,.mev-loc .catcard:hover img,.mev-loc .tile:hover img,.mev-loc .mcard:hover img{transform:scale(1.07)}

/* ---- review round 6: editable text-scrim box (color + opacity) ---- */
.mev-loc .hero .h-inner::before{ background:var(--scrim-c, oklch(0.14 0.045 148))!important; opacity:var(--scrim-o, 0.55); }

/* Live open / closed status: dot + text color reflect the real store status (JS-driven) */
.mev-loc .open-bar.is-open .dot{ background:oklch(0.72 0.17 145); box-shadow:0 0 0 0 oklch(0.72 0.17 145 /.7); }
.mev-loc .open-bar.is-closed .dot{ background:oklch(0.68 0.19 28); box-shadow:none; animation:none; }
.mev-loc .open-bar.is-closed .status{ opacity:.9; }
