/* BashBar — site-specific styles. Loaded after base.css.
   The room is the palette: bottle green floor/ceiling, ochre walls, mahogany bar, the logo's red. */

/* latin, variable weight 400–800, width 100–125% */
@font-face{font-family:'Archivo';font-style:normal;font-weight:400 800;font-stretch:100% 125%;font-display:swap;src:url(https://fonts.gstatic.com/s/archivo/v25/k3kQo8UDI-1M0wlSfdnoLg.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}

:root{--header-h:72px}
h1,h2,h3{color:var(--mahogany);font-stretch:112%;letter-spacing:-.01em}
h2{font-weight:800}
.btn{border-radius:var(--radius);font-weight:650}
.btn-light{background:var(--bone);color:var(--green)}
.btn-light:hover{background:#fff}
.btn-line{background:transparent;color:var(--bone);border-color:color-mix(in srgb,var(--bone) 70%,transparent)}
.btn-line:hover{border-color:var(--bone)}

/* ---- Header ---- */
.site-header{background:var(--green);border-bottom:0;backdrop-filter:none}
.site-header .brand img{height:44px;width:auto}
.site-header .nav a{color:color-mix(in srgb,var(--bone) 86%,transparent);font-size:var(--fs-md)}
.site-header .nav a:hover,.site-header .nav a[aria-current="page"]{color:#fff}
.site-header .nav a.btn-primary{color:#fff}
.site-header .nav-toggle{color:var(--bone)}
@media(max-width:860px){
  .site-header .nav{background:var(--green);border-bottom:0}
  .site-header .nav a{border-bottom-color:rgba(255,255,255,.14)}
}

/* ---- Hero: the bar on the left, the facts on the right ---- */
.hero-bar{display:grid;grid-template-columns:minmax(0,1fr);background:var(--green);color:var(--bone)}
.hero-bar__photo{margin:0;height:min(24vh,190px);overflow:hidden}
.hero-bar__photo img{width:100%;height:100%;object-fit:cover;object-position:50% 70%}
.hero-bar__panel{padding:var(--s-5) var(--gutter) var(--s-6)}
.hero-bar h1{color:#fff;font-size:clamp(2rem,1.4rem + 2.6vw,3.4rem);font-weight:800;line-height:1.04;margin-bottom:var(--s-4);max-width:15ch}
.hero-bar .lede{color:color-mix(in srgb,var(--bone) 88%,transparent);font-size:var(--fs-lg);margin-bottom:var(--s-5)}
.facts{list-style:none;margin:0 0 var(--s-5);padding:0;display:flex;flex-wrap:wrap;gap:.35rem 1.4rem;font-weight:600;color:#fff}
.facts li{display:flex;align-items:center;gap:.45em}
.facts li::before{content:"";width:7px;height:7px;background:var(--accent);flex:none}
.hero-bar .cluster .btn{min-height:48px}
@media(max-width:899px){
  .hero-bar .lede{font-size:var(--fs-md);margin-bottom:var(--s-4)}
  .facts{margin-bottom:var(--s-4)}
  .hero-bar .cluster{gap:.6rem}
  .hero-bar .cluster .btn{font-size:var(--fs-md);padding:.8em 1.05em}
}
@media(min-width:900px){
  .hero-bar{grid-template-columns:58fr 42fr;min-height:min(86vh,780px)}
  .hero-bar__photo{height:auto}
  .hero-bar__panel{display:flex;flex-direction:column;justify-content:center;padding:var(--s-8) clamp(2rem,4vw,4rem)}
}

/* ---- The drink list on the ochre wall ---- */
.drinks{background:var(--accent);color:var(--ink);padding-block:var(--section)}
.drinks h2,.drinks h3{color:var(--ink)}
.drinks__head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:var(--s-4);margin-bottom:var(--s-6)}
.drinks__head h2{margin:0;font-size:clamp(2.2rem,1.6rem + 3vw,4rem)}
.drinks__head p{margin:0;max-width:38ch;font-weight:500}
.menu-card{background:var(--bone);color:var(--ink);padding:clamp(1.25rem,3vw,2.5rem);display:grid;gap:var(--s-6) clamp(2rem,4vw,3.5rem);grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));box-shadow:0 18px 40px -24px rgba(40,22,10,.55)}
.menu-card h3{font-size:var(--fs-xl);color:var(--mahogany);padding-bottom:var(--s-2);border-bottom:2px solid var(--mahogany);margin-bottom:var(--s-2)}
.menu-card ul{list-style:none;margin:0;padding:0}
.menu-card li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.2rem 1rem;padding:.7rem 0;border-bottom:1px solid var(--line)}
.menu-card li:last-child{border-bottom:0}
.menu-card b{font-weight:650}
.menu-card .price{font-weight:700;color:var(--mahogany);font-variant-numeric:tabular-nums;text-align:right}
.menu-card .what{grid-column:1/-1;color:var(--ink-2);font-size:var(--fs-sm);margin:0}
@media(min-width:900px){.menu-card{grid-template-columns:1fr 1fr}}
.drinks__note{margin:var(--s-5) 0 0;font-size:var(--fs-sm);font-weight:500}

/* ---- The room ---- */
.room__grid{display:grid;gap:var(--s-3);grid-template-columns:minmax(0,1fr)}
.room__grid figure{margin:0}
.room__grid img{width:100%;height:100%;object-fit:cover;aspect-ratio:4/3}
.room__text{display:grid;gap:var(--s-5);grid-template-columns:minmax(0,1fr);margin-bottom:var(--s-6);align-items:end}
.room__text h2{margin:0;max-width:16ch}
.room__text p{margin:0}
@media(min-width:900px){
  .room__text{grid-template-columns:1fr 1fr}
  .room__grid{grid-template-columns:2fr 1fr 1fr;grid-template-rows:auto auto}
  .room__grid .big{grid-row:span 2}
  .room__grid .big img{aspect-ratio:auto;height:100%}
}

/* ---- Family line ---- */
.family{background:var(--bg-alt)}
.family .bigline{font-family:var(--font-display);font-stretch:112%;font-weight:800;color:var(--mahogany);font-size:clamp(1.8rem,1.2rem + 2.6vw,3.2rem);line-height:1.08;max-width:20ch;margin:0 0 var(--s-5)}
.family__cols{display:grid;gap:var(--s-6);grid-template-columns:minmax(0,1fr)}
@media(min-width:900px){.family__cols{grid-template-columns:1.1fr 1fr}}
.venues{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.venues li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--s-4);padding:.75rem 0;border-bottom:1px solid var(--line);align-items:baseline}
.venues a{font-weight:650;color:var(--mahogany);text-decoration:none}
.venues a:hover{text-decoration:underline}
.venues span{color:var(--ink-2);font-size:var(--fs-sm);text-align:right}

/* ---- Visit ---- */
.visit__cols{display:grid;gap:var(--s-7);grid-template-columns:minmax(0,1fr)}
@media(min-width:900px){.visit__cols{grid-template-columns:1fr 1.15fr;align-items:start}}
.visit dl{display:grid;grid-template-columns:minmax(7.5rem,auto) minmax(0,1fr);gap:.7rem var(--s-5);margin:0 0 var(--s-6)}
.visit dt{font-weight:650;color:var(--mahogany)}
.visit dd{margin:0}
.visit .good{list-style:none;padding:0;margin:0 0 var(--s-6);display:grid;gap:.4rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr))}
.visit .good li{padding:.65rem .9rem;background:var(--surface);border-left:4px solid var(--accent)}
.visit__media{display:grid;gap:var(--s-3);grid-template-columns:minmax(0,1fr)}
.visit .map{aspect-ratio:4/3;border-radius:0}
.sign{display:grid;grid-template-columns:120px minmax(0,1fr);gap:var(--s-4);align-items:center;margin:0}
.sign img{width:120px;height:160px;object-fit:cover}
.sign figcaption{font-size:var(--fs-sm);color:var(--ink-2)}
.sign figcaption b{display:block;color:var(--mahogany);font-size:var(--fs-lg);font-stretch:112%}

/* ---- Footer ---- */
.site-footer{background:var(--green);color:color-mix(in srgb,var(--bone) 86%,transparent)}
.site-footer h4{color:#fff}
.site-footer .brand img{height:48px;width:auto}
.footer-bottom{border-top-color:rgba(255,255,255,.16);color:color-mix(in srgb,var(--bone) 72%,transparent)}
