/* Ma Lupe’s — brand layer (v1.0.0). Cozy family seafood: the sign’s coral red + Mexican green on warm cream,
   tricolor stripes, ocean waves, rising bubbles, bobbing shrimp mascot. Loaded last. */
body{background:var(--cream)}
.section-title,.hero-ml h1,.rush-band h2,.chips-band h2{font-family:var(--font-display);font-weight:400;letter-spacing:.01em}
.section-title{color:var(--clay)}
.section-kicker,.hero .script{font-family:"Yellowtail",cursive;color:var(--green);font-size:1.6rem}
header.site{background:#fff;border-bottom:0;box-shadow:0 4px 14px rgba(59,42,36,.08)}
header.site::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:6px;background:linear-gradient(180deg,var(--green) 0 50%,var(--clay) 50% 100%)}
.brand-logo-ml{height:54px;width:auto;display:block}
header.site.scrolled .brand-logo-ml{height:44px}
.brand-text,.brand-logo,.brand-logo-wide,.brand-logo-round{display:none}

/* hero */
.hero-ml{position:relative;overflow:hidden;text-align:left;padding:70px 0 120px;border-bottom:0;
  background:radial-gradient(ellipse 70% 80% at 78% 40%,#ffffff 0,#fff3e3 45%,#ffe6cf 100%)}
.hero-ml .wrap{position:relative;z-index:2}
.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:24px;align-items:center}
.hero-ml h1{font-size:clamp(2.2rem,5.4vw,4rem);line-height:1.06;color:var(--ink);margin:0 0 14px}
.hero-ml h1 .clay-word{color:var(--clay)}
.hero-ml .sub{margin:0 0 22px;max-width:520px}
.hero-ml .hero-ctas{justify-content:flex-start}
.tricolor{display:flex;flex-direction:column;gap:5px;width:160px;margin:0 0 18px}
.tricolor span{height:8px;border-radius:4px;background:var(--green)}
.tricolor span+span{background:var(--clay)}
.hero-art{position:relative;max-width:440px;width:100%;justify-self:center;aspect-ratio:1/1.05}
.ml-mascot{position:absolute;left:18%;top:0;width:58%;transform-origin:50% 90%;filter:drop-shadow(0 14px 18px rgba(59,42,36,.22))}
.ml-word{position:absolute;left:0;bottom:2%;width:100%;filter:drop-shadow(0 6px 10px rgba(59,42,36,.18))}
.ml-motion2 .ml-mascot{animation:ml-swim 4.5s ease-in-out infinite}
.ml-motion2 .ml-word{animation:ml-word 6s ease-in-out infinite}
@keyframes ml-swim{0%,100%{transform:translateY(0) rotate(-4deg)}50%{transform:translateY(-16px) rotate(5deg)}}
@keyframes ml-word{0%,100%{transform:rotate(-1.5deg)}50%{transform:rotate(1deg) scale(1.02)}}

/* waves + bubbles */
.waves{position:absolute;left:0;right:0;bottom:0;height:90px;z-index:1;pointer-events:none}
.waves svg{position:absolute;left:0;bottom:0;width:200%;height:100%}
.waves .w1 path{fill:rgba(63,157,92,.35)}
.waves .w2 path{fill:var(--clay)}
.ml-motion2 .waves .w1{animation:ml-wave 14s linear infinite}
.ml-motion2 .waves .w2{animation:ml-wave 9s linear infinite reverse}
@keyframes ml-wave{to{transform:translateX(-50%)}}
.bubbles{position:absolute;inset:0;z-index:1;pointer-events:none}
.bubbles i{position:absolute;bottom:-20px;left:calc(var(--i) * 7.1%);width:14px;height:14px;border-radius:50%;opacity:0;
  border:2px solid rgba(63,157,92,.45);background:radial-gradient(circle at 30% 30%,rgba(255,255,255,.9),rgba(255,255,255,0) 60%)}
.bubbles i:nth-child(3n){width:9px;height:9px}.bubbles i:nth-child(4n){width:20px;height:20px;border-color:rgba(214,69,69,.35)}
.ml-motion2 .bubbles i{animation:ml-bubble 9s ease-in infinite;animation-delay:calc(var(--i) * -.7s)}
@keyframes ml-bubble{0%{opacity:0;transform:translate(0,0)}15%{opacity:1}50%{transform:translate(14px,-40vh)}100%{opacity:0;transform:translate(-10px,-80vh)}}

/* neon ABIERTO / CERRADO */
.neon{display:inline-block;margin:0 0 10px;padding:4px 14px;border:3px solid #ff5d5d;border-radius:10px;font:400 1rem/1.2 var(--font-display);letter-spacing:.16em;color:#fff;background:#3b2a24;
  box-shadow:0 0 8px #ff5d5d,inset 0 0 8px #ff5d5d;text-shadow:0 0 6px #ff8f8f,0 0 14px #ff3b3b}
.ml-motion2 .neon{animation:ml-neon 4s steps(1,end) infinite}
@keyframes ml-neon{0%,19%,23%,60%,100%{opacity:1}20%,22%,61%{opacity:.35}}
.neon.off{border-color:#8c7b74;box-shadow:none;color:#e5dad5;text-shadow:none;animation:none!important;background:#4b3a33}

/* buttons, cards */
.btn-clay,.cart-btn,.full-btn,.foot-btn{background:var(--clay)!important;color:#fff!important}
.btn-clay:hover,.cart-btn:hover,.full-btn:hover,.foot-btn:hover{background:var(--green)!important}
.btn-ghost{color:var(--green-deep);border-color:var(--green)}
.cart-count{background:var(--green);color:#fff}
.lang-toggle button.active{background:var(--green)}
.loc-card,.item-card,.feat-card,.step-card{border-top:5px solid var(--green)!important;border-radius:var(--radius)}
.step-num{background:var(--green)!important;color:#fff!important}
.price{background:var(--clay)!important;color:#fff!important}
.price.ask{background:#fff3e3!important;color:var(--clay-deep)!important;border:1px dashed var(--clay);font-size:.82rem}
.add-btn.call,.mini-btn.call{display:inline-block;text-decoration:none;border:2px solid var(--green)!important;color:var(--green-deep)!important;background:#fff!important}
.add-btn.call:hover,.mini-btn.call:hover{background:var(--green)!important;color:#fff!important}
.tab.active{background:var(--clay)!important;border-color:var(--clay)!important;color:#fff!important}
.section-peach{background:linear-gradient(180deg,#fff3e3 0%,#ffe9d6 100%)!important}
.clay-board{background:#fff!important}
.marquee{background:var(--green)!important;color:#fff!important;border-top:6px solid #fff!important;border-bottom:6px solid var(--clay)!important;transform:rotate(-1deg) scale(1.03)}
.marquee-track{font-family:var(--font-display);font-style:normal;font-weight:400}
.marquee-track i{font-style:normal}
.stat-n{color:var(--clay)}
.stat-box{border-bottom:4px solid var(--green);background:#fff}
.loc-grid.one{grid-template-columns:minmax(0,520px)!important;justify-content:center}

/* chips & salsa band */
.chips-band{background:linear-gradient(160deg,var(--green-deep),#2c7a4b)!important;color:#fff;position:relative;overflow:hidden}
.chips-band cite{display:block;margin-top:12px;opacity:.8}
.chips-bowl{position:relative;width:120px;height:64px;margin:0 auto 14px}
.chips-bowl .salsa{position:absolute;left:30px;bottom:0;width:60px;height:30px;border-radius:0 0 30px 30px;background:#c0392b;box-shadow:inset 0 6px 0 #e05a4a}
.chip{position:absolute;bottom:22px;width:34px;height:34px;background:var(--gold);clip-path:polygon(50% 0,100% 100%,0 100%);transform-origin:50% 100%}
.chip.c1{left:14px;transform:rotate(-22deg)}.chip.c2{left:43px;bottom:28px}.chip.c3{left:72px;transform:rotate(20deg)}
.ml-motion2 .chip.c2{animation:ml-dip 3s ease-in-out infinite}
@keyframes ml-dip{0%,100%{transform:translateY(0)}40%{transform:translateY(14px) rotate(8deg)}60%{transform:translateY(14px) rotate(8deg)}}

/* catering, pickup, footer */
.cater-band-in{background:repeating-linear-gradient(135deg,rgba(63,157,92,.10) 0 14px,transparent 14px 28px),#fff;border:2px dashed rgba(214,69,69,.45)}
.pickup-strip{background:var(--clay)!important}
.pickup-strip .btn{background:#fff!important;color:var(--clay)!important}
.site-footer{background:var(--green-deep)!important}
.foot-logo-link{display:inline-block;background:var(--cream);border-radius:20px;padding:10px 18px;box-shadow:0 6px 18px rgba(0,0,0,.3)}
.foot-logo{height:110px;width:auto}
.foot-thanks{font-family:"Yellowtail",cursive;color:var(--gold)}
.foot-store .foot-tel,.maloremi-credit a{color:var(--gold)}
.foot-btn.ghost{border-color:var(--gold)!important;color:var(--gold)!important;background:transparent!important}
.foot-stores{grid-template-columns:minmax(0,420px)!important;justify-content:center}
.about-badge img{width:min(320px,80%);height:auto}
.claim-icon{width:30px;height:auto;flex:none;margin-right:6px}
.fs-progress,.ml-progress{background:linear-gradient(90deg,var(--green),#fff,var(--clay))}

/* phones */
@media(max-width:860px){
  .hero-ml{text-align:center;padding:26px 0 110px}
  .hero-grid{grid-template-columns:1fr;gap:4px}
  .hero-art{order:-1;max-width:260px}
  .hero-ml .hero-ctas{justify-content:center}
  .hero-ml .sub{margin:0 auto 20px}
  .tricolor{margin:0 auto 16px}
}
@media(max-width:420px){.brand-logo-ml{height:44px}.hero-art{max-width:220px}.hero-ml h1{font-size:2.05rem}}
@media (prefers-reduced-motion: reduce){.ml-mascot,.ml-word,.waves svg,.bubbles i,.neon,.chip{animation:none!important}.bubbles{display:none}}

/* ===== v1.0.1: no peach. Deep "mar" green hero with underwater light, white sections, coral red accents.
   More motion: rotating light rays, swimming fish, swinging hanging sign, waves, bubbles. ===== */
body{background:#fff}
.hero-ml{background:radial-gradient(ellipse 90% 90% at 70% 20%,#1f8a5b 0,#126b4c 40%,#0b3f33 100%)!important;color:#fff}
.hero-ml h1{color:#fff!important}
.hero-ml h1 .clay-word{color:var(--gold)!important}
.hero-ml .sub{color:#e6f6ee}
.hero-ml .hero .script,.hero-ml .script{color:#ffd9d9!important}
.hero-ml .tricolor span{background:#fff}.hero-ml .tricolor span+span{background:var(--clay)}
.hero-ml .btn-ghost{color:#fff!important;border-color:#fff!important}
.hero-ml .btn-ghost:hover{background:#fff!important;color:var(--green-deep)!important}
.hero-ml .hours-badge{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.4);color:#fff}
.hero-ml .hours-badge.closed-now{background:rgba(200,16,46,.2);border-color:rgba(255,160,160,.6);color:#fff}
.waves .w1 path{fill:rgba(255,255,255,.35)}
.waves .w2 path{fill:#fff}
.bubbles i{border-color:rgba(255,255,255,.55)}
.bubbles i:nth-child(4n){border-color:rgba(255,209,102,.6)}

/* underwater light rays */
.rays{position:absolute;left:50%;top:-60%;width:180%;aspect-ratio:1;margin-left:-90%;z-index:0;pointer-events:none;opacity:.35;
  background:repeating-conic-gradient(from 0deg,rgba(255,255,255,.28) 0 5deg,transparent 5deg 16deg);
  -webkit-mask:radial-gradient(circle,#000 0 30%,transparent 60%);mask:radial-gradient(circle,#000 0 30%,transparent 60%)}
.ml-motion2 .rays{animation:ml-spin 70s linear infinite}
@keyframes ml-spin{to{transform:rotate(360deg)}}

/* swimming fish */
.fish{position:absolute;inset:0;z-index:1;pointer-events:none}
.fish i{position:absolute;width:46px;height:20px;background:rgba(255,255,255,.22);border-radius:50% 60% 60% 50%/50%;left:-60px}
.fish i::after{content:"";position:absolute;right:-14px;top:3px;border-left:16px solid rgba(255,255,255,.22);border-top:7px solid transparent;border-bottom:7px solid transparent}
.fish i{transform:scaleX(-1)}
.fish .f1{top:24%}.fish .f2{top:58%;width:30px;height:13px}.fish .f3{top:40%;width:60px;height:24px;opacity:.7}
.ml-motion2 .fish .f1{animation:ml-fish 18s linear infinite}
.ml-motion2 .fish .f2{animation:ml-fish 13s linear infinite -6s}
.ml-motion2 .fish .f3{animation:ml-fish 24s linear infinite -14s}
@keyframes ml-fish{0%{left:-80px;transform:scaleX(-1) translateY(0)}25%{transform:scaleX(-1) translateY(-14px)}50%{transform:scaleX(-1) translateY(6px)}75%{transform:scaleX(-1) translateY(-10px)}100%{left:110%;transform:scaleX(-1) translateY(0)}}

/* hanging sign like their A-frame */
.hero-art{aspect-ratio:auto;max-width:420px}
.sign-card{position:relative;background:#fff;border-radius:22px;padding:22px 22px 18px;box-shadow:0 24px 50px rgba(0,0,0,.35);transform-origin:50% -40px;margin-top:40px}
.sign-chain{position:absolute;top:-44px;width:3px;height:46px;background:repeating-linear-gradient(180deg,#d9e7e0 0 6px,#9fb5ab 6px 10px)}
.sign-chain.l{left:22%}.sign-chain.r{right:22%}
.sign-card .ml-mascot{position:relative;left:auto;top:auto;display:block;width:58%;margin:0 auto -6px}
.sign-card .ml-word{position:relative;left:auto;bottom:auto;display:block;width:100%}
.sign-stripes{display:flex;flex-direction:column;gap:4px;width:44%;margin:8px auto 6px}
.sign-stripes span{height:7px;border-radius:4px;background:var(--green)}.sign-stripes span+span{background:var(--clay)}
.sign-tag{text-align:center;font:400 .95rem/1.2 var(--font-display);color:var(--clay);letter-spacing:.04em}
.ml-motion2 .sign-card{animation:ml-swing 5s ease-in-out infinite}
@keyframes ml-swing{0%,100%{transform:rotate(-2.5deg)}50%{transform:rotate(2.5deg)}}

/* sections: white and mint, no peach */
.section-peach{background:linear-gradient(180deg,#f2fbf6 0%,#e3f6ec 100%)!important}
.clay-board{background:#fff!important}
.marquee{background:var(--clay)!important;color:#fff!important;border-top:6px solid #fff!important;border-bottom:6px solid var(--green)!important}
.stat-box{background:#fff;border-bottom-color:var(--clay)}
.stat-n{color:var(--green)}
.cater-band{background:#fff}
.cater-band-in{background:repeating-linear-gradient(135deg,rgba(31,138,91,.08) 0 14px,transparent 14px 28px),#f2fbf6}
.price.ask{background:#fff!important}
.foot-logo-link{background:#fff}
@media(max-width:860px){.hero-art{max-width:280px}.sign-card{padding:16px 16px 12px}}
@media(max-width:420px){.hero-art{max-width:240px}}
@media (prefers-reduced-motion: reduce){.rays,.fish i,.sign-card{animation:none!important}.fish{display:none}}
.hero-ml h1 .clay-word{background:linear-gradient(100deg,#ffd166 0%,#ffd166 40%,#fff3c4 50%,#ffd166 60%,#ffd166 100%)!important;background-size:250% 100%!important;-webkit-background-clip:text!important;background-clip:text!important;-webkit-text-fill-color:transparent!important}
