/* Mi Casa Mexican Restaurant — site-specific styles. Loaded after base.css. */

@font-face{font-family:"Bricolage Grotesque";font-style:normal;font-weight:400 800;font-stretch:75% 100%;font-display:optional;src:url(https://fonts.gstatic.com/s/bricolagegrotesque/v9/3y996as8bTXq_nANBjzKo3IeZx8z6up5L-iNGQ.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

body{font-size:1.06rem}
h1,h2,.board__title,.bigtype{font-stretch:75%;font-weight:800;letter-spacing:-.01em}
h3{font-weight:700}
a{color:var(--brand)}

/* Buttons */
.btn{border-radius:999px;font-weight:700;min-height:44px}
.btn-light{background:#fff;color:var(--chile-brown)}
.btn-light:hover{background:var(--accent)}
.btn-outline{color:var(--chile-brown);border-color:var(--chile-brown)}
.btn-outline:hover{background:var(--chile-brown);color:#fff}

/* Header */
.site-header{background:var(--chile-brown);border-bottom:0;backdrop-filter:none}
.site-header .container{min-height:76px}
:root{--header-h:76px}
.brand img{height:52px;width:auto}
.nav a{color:#f5e9d8;font-size:var(--fs-md);font-weight:600}
.nav a:hover{color:var(--accent)}
.nav-toggle{color:#fff}
.nav .nav-phone{color:var(--accent)}
@media(max-width:860px){
  .nav{background:var(--chile-brown);border-bottom:0}
  .nav a{border-bottom-color:rgba(255,255,255,.12)}
}

/* Hero: photo-led, text at the bottom over a brown fade */
.hero-plate{position:relative;display:grid;min-height:min(86svh,760px);background:var(--chile-brown);color:#fff;overflow:hidden}
.hero-plate picture{position:absolute;inset:0}
.hero-plate__img{width:100%;height:100%;object-fit:cover;object-position:50% 45%}
.hero-plate::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(43,29,20,.96) 0%,rgba(43,29,20,.82) 34%,rgba(43,29,20,.15) 68%,rgba(43,29,20,0) 100%)}
.hero-plate__text{position:relative;z-index:1;align-self:end;padding-block:var(--s-8) var(--s-7)}
.hero-plate h1{font-size:clamp(2.6rem,1.6rem + 4.6vw,5.4rem);line-height:.95;max-width:14ch;margin-bottom:var(--s-4);color:#fff}
.hero-plate__lede{font-size:var(--fs-lg);max-width:46ch;color:#f5e9d8}
.hero-plate__actions{margin-top:var(--s-5)}
.hero-plate__hours{margin-top:var(--s-4);font-size:var(--fs-sm);color:var(--accent);font-weight:600}
@media(max-width:700px){
  .hero-plate{min-height:min(calc(100svh - var(--header-h) - 48px),700px)}
  .hero-plate__img{object-position:50% 30%}
  .hero-plate__text{padding-block:var(--s-8) var(--s-5)}
  .hero-plate__lede{font-size:var(--fs-md)}
  .hero-plate__actions .btn{flex:1 1 100%}
}

/* Menu board: the memorable element */
.board{background:var(--accent);color:var(--chile-brown);padding-block:var(--section)}
.board a{color:var(--chile-brown);font-weight:700}
.board__head{display:grid;gap:var(--s-4);margin-bottom:var(--s-7);align-items:end}
@media(min-width:900px){.board__head{grid-template-columns:auto 1fr;gap:var(--s-7)}}
.board__title{font-size:clamp(3.4rem,2rem + 7vw,8rem);line-height:.85;margin:0}
.board__head p{max-width:52ch;font-size:var(--fs-md)}
.board__grid{display:grid;gap:var(--s-7);grid-template-columns:minmax(0,1fr)}
@media(min-width:960px){.board__grid{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:var(--s-8)}}
.board__section{font-size:clamp(1.9rem,1.4rem + 2vw,2.8rem);font-stretch:75%;font-weight:800;margin:0;line-height:1}
.board__tacos .board__section{border-bottom:4px solid var(--chile-brown);padding-bottom:var(--s-3);margin-bottom:var(--s-2)}
.menu-list{list-style:none;margin:0;padding:0}
.menu-list>li{padding:var(--s-4) 0;border-bottom:1px solid rgba(43,29,20,.28)}
.menu-list p{margin:.3em 0 0;font-size:var(--fs-sm);max-width:56ch}
.menu-list__row{display:flex;align-items:baseline;gap:var(--s-3)}
.menu-list__row::after{content:none}
.menu-list__name{font-size:var(--fs-lg);font-weight:700}
.menu-list__price{margin-left:auto;font-weight:800;font-size:var(--fs-lg);font-variant-numeric:tabular-nums;white-space:nowrap}
.board__plates{display:grid;gap:var(--s-5);align-content:start}
.plate-panel{background:var(--chile-brown);color:#f5e9d8;border-radius:var(--radius);padding:var(--s-5)}
.plate-panel .board__section{color:#fff;font-size:clamp(1.5rem,1.2rem + 1vw,2rem)}
.plate-panel__price{margin-left:auto;font-weight:800;font-size:var(--fs-xl);color:var(--accent);white-space:nowrap}
.plate-panel__note{font-size:var(--fs-sm);margin:var(--s-2) 0 var(--s-3);color:#e9dccb}
.combo-list{margin:0;padding-left:1.6em;font-size:var(--fs-sm);display:grid;gap:.3em}
.combo-list li::marker{font-weight:800;color:var(--accent)}
.plain-list{list-style:none;margin:var(--s-3) 0 0;padding:0;display:grid;gap:.5em;font-size:var(--fs-sm)}
.plain-list strong{color:#fff}

/* Favorites */
.favorites__grid{display:grid;gap:var(--s-7);grid-template-columns:minmax(0,1fr)}
@media(min-width:960px){.favorites__grid{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);align-items:start}}
.favorites h2{font-size:clamp(2.4rem,1.6rem + 3vw,4rem)}
.dish-rows{margin-top:var(--s-5)}
.dish-rows h3{font-size:var(--fs-lg)}
.dish-rows li>span:last-child{color:var(--brand);font-weight:800;font-size:var(--fs-lg)}
.favorites__photo{margin:0;position:sticky;top:calc(var(--header-h) + 1.5rem)}
.favorites__photo img{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:var(--radius)}
@media(max-width:959px){.favorites__photo{position:static}.favorites__photo img{aspect-ratio:4/3}}
.sweets{display:grid;gap:var(--s-5);grid-template-columns:minmax(0,1fr);align-items:center;margin-top:var(--s-8);padding-top:var(--s-6);border-top:1px solid var(--line)}
@media(min-width:760px){.sweets{grid-template-columns:260px minmax(0,1fr)}}
.sweets img{width:100%;max-width:260px;height:auto}
.sweets h3{margin-bottom:var(--s-2)}
.sweets__list{display:flex;flex-wrap:wrap;gap:.4em 1.4em;max-width:none}
.sweets__list b{color:var(--brand)}

/* Cantina */
.cantina{background:var(--mural);color:var(--chile-brown);padding-block:var(--section)}
.cantina__grid{display:grid;gap:var(--s-7);grid-template-columns:minmax(0,1fr);align-items:center}
@media(min-width:860px){.cantina__grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}}
.cantina img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:var(--radius)}
@media(max-width:859px){.cantina img{aspect-ratio:1/1}}
.cantina h2{font-size:clamp(3rem,2rem + 5vw,6.5rem);line-height:.9}
.cantina__big{font-size:var(--fs-xl);font-weight:600;line-height:1.3;max-width:30ch}

/* Story */
.story__grid{display:grid;gap:var(--s-7);grid-template-columns:minmax(0,1fr)}
@media(min-width:900px){.story__grid{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:center}}
.story h2{font-size:clamp(2.2rem,1.6rem + 2.6vw,3.6rem)}
.story__photos{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:var(--s-3);align-items:end}
.story__photos img{width:100%;object-fit:cover;border-radius:var(--radius)}
.story__photos img:first-child{aspect-ratio:3/4}
.story__photos img:last-child{aspect-ratio:4/3}
.catering{margin-top:var(--s-6);padding:var(--s-5);border-left:5px solid var(--cactus);background:var(--bg-alt)}
.catering h3{font-size:var(--fs-lg);margin-bottom:var(--s-2)}

/* Visit */
.visit{background:var(--bg-alt)}
.visit__grid{display:grid;gap:var(--s-7);grid-template-columns:minmax(0,1fr)}
@media(min-width:900px){.visit__grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}}
.visit h2{font-size:clamp(2.2rem,1.6rem + 2.6vw,3.6rem)}
.visit__hours{font-size:var(--fs-md);gap:.5em var(--s-5);margin:0 0 var(--s-5)}
.visit__hours dd{font-weight:700}
.visit__addr{font-size:var(--fs-lg)}
.visit .cluster{margin-top:var(--s-5)}
.visit__more{margin-top:var(--s-5);font-size:var(--fs-sm)}
.map{aspect-ratio:4/3;border:0}

/* Footer */
.site-footer{background:var(--chile-brown);color:#e9dccb}
.footer-logo{width:180px;height:auto;border-radius:var(--radius)}
.site-footer h4{color:var(--accent)}
