:root{--bg:#14201b;--bg2:#1b2a24;--panel:#22342c;--gold:#e8c547;--brass:#b8925a;--red:#b8352b;--paper:#efe6d2;--paper2:#e4d7bb;--ink:#1f1a14;--txt:#d9d2c0;--muted:#97907f;--fd:'IM Fell English',Georgia,serif;--fsc:'IM Fell English SC',Georgia,serif;--fm:'Space Mono',ui-monospace,monospace;--fb:'Inter',system-ui,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--txt);font-family:var(--fb);line-height:1.6;padding-bottom:76px}
@media(min-width:900px){body{padding-bottom:0}}
img{max-width:100%;display:block;height:auto}a{color:var(--gold)}
svg{width:1.1em;height:1.1em;vertical-align:-.15em}
.skip{position:absolute;left:-999px}.skip:focus{left:1rem;top:1rem;z-index:99;background:#fff;color:#000;padding:.5rem}
.wrap{width:min(1100px,100% - 2.4rem);margin-inline:auto}
h1,h2,h3{font-family:var(--fd);font-weight:400;line-height:1.02;margin:0 0 .6rem;color:var(--paper)}
h2{font-size:clamp(2.3rem,9vw,3.4rem)}
.label{font-family:var(--fm);font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);margin:0 0 .5rem}
.tbc{color:var(--muted);font-size:.8rem;font-style:italic;line-height:1.45;margin:.4rem 0 1rem}
figure{margin:0;position:relative}
figcaption,.stock{position:absolute;left:8px;bottom:8px;background:rgba(0,0,0,.65);color:#fff;font-family:var(--fm);font-size:.62rem;padding:.15rem .45rem;margin:0;letter-spacing:.04em}
.btn{white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.85rem 1.3rem;font-weight:600;text-decoration:none;font-size:.98rem;border:1.5px solid var(--gold)}
.btn-gold{background:var(--gold);color:var(--ink)}.btn-gold:hover{background:#f3d769}
.btn-line{background:rgba(0,0,0,.25);color:var(--gold)}.btn-line.dark{background:transparent;color:var(--ink);border-color:var(--ink)}
.btn-sm{padding:.45rem .85rem;font-size:.88rem}
.top{position:sticky;top:0;z-index:40;background:rgba(20,32,27,.94);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:1px solid rgba(232,197,71,.25)}
.top-in{display:flex;align-items:center;gap:1rem;min-height:58px}
.logo{display:flex;align-items:center;gap:.6rem;text-decoration:none;color:var(--paper);font-family:var(--fsc);font-size:1.35rem;margin:0}
.frame{display:grid;place-items:center;width:36px;height:36px;border:3px solid var(--gold);font-family:var(--fd);font-size:.95rem;color:var(--gold)}
.top nav{display:none;margin-left:auto;gap:1.3rem}.top nav a{color:var(--txt);text-decoration:none;font-family:var(--fm);font-size:.8rem;text-transform:uppercase;letter-spacing:.1em}
.top-call{display:none}
@media(min-width:900px){.top nav{display:flex}.top-call{display:inline-flex}}
.hero{position:relative;min-height:min(86vh,740px);display:flex;align-items:flex-end;overflow:hidden}
.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.85) contrast(1.05)}
.hero-glow{position:absolute;inset:0;background:radial-gradient(80% 60% at 70% 20%,rgba(184,53,43,.28),transparent 60%),linear-gradient(180deg,rgba(20,32,27,.25),rgba(20,32,27,.7) 45%,var(--bg) 96%)}
.hero-in{position:relative;padding:5rem 0 2.6rem}
.specimen{display:inline-block;font-family:var(--fm);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;background:var(--paper);color:var(--ink);padding:.3rem .6rem;margin:0 0 1rem;box-shadow:3px 3px 0 var(--brass)}
.hero h1{font-size:clamp(3.8rem,19vw,8rem);line-height:.88;color:var(--paper);margin:0}
.hero h1 em{color:var(--gold)}
.sub{font-size:1.1rem;max-width:34rem;color:#e8e1cf;margin:1rem 0 1.3rem}
.cta{display:flex;flex-wrap:wrap;gap:.7rem}.cta .btn{flex:1 1 150px}
@media(min-width:620px){.cta .btn{flex:0 0 auto}}
.walkin{font-family:var(--fm);font-size:.78rem;color:#cfc7b3;margin:1.2rem 0 0}.walkin strong{color:var(--gold)}
.hero .stock{left:auto;right:10px;top:70px;bottom:auto}
section{padding:3.6rem 0}
.intro{font-size:1.05rem;max-width:44rem}
.cases{display:grid;gap:1rem;margin:1.6rem 0}
@media(min-width:700px){.cases{grid-template-columns:1fr 1fr}}@media(min-width:1040px){.cases{grid-template-columns:repeat(4,1fr)}}
.case{background:var(--paper);color:var(--ink);padding:1.3rem 1.2rem 1.1rem;position:relative;border:1px solid var(--paper2);box-shadow:0 0 0 6px var(--panel),0 0 0 7px rgba(232,197,71,.35)}
.case h3{color:var(--ink);font-size:1.5rem;margin:.3rem 0 .4rem}.case p{margin:0;font-size:.9rem;color:#4a4033}
.tagno{font-family:var(--fm);font-size:.7rem;color:var(--red);letter-spacing:.1em}
.gallery{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;margin-top:1.4rem}
.gallery img{aspect-ratio:1;object-fit:cover;width:100%;border:3px solid var(--gold)}
.src{font-size:.8rem;color:var(--muted);margin-top:1rem}.src .tbc{display:inline}
.bar{background:var(--bg2);border-block:1px solid rgba(232,197,71,.18)}
.bar-grid{display:grid;gap:2rem;align-items:center}@media(min-width:900px){.bar-grid{grid-template-columns:1.2fr 1fr;gap:3rem}}
.specs{margin:1.2rem 0 0}
.specs div{display:grid;grid-template-columns:1fr;gap:.2rem;padding:.8rem 0;border-top:1px dashed rgba(232,197,71,.3)}
@media(min-width:560px){.specs div{grid-template-columns:130px 1fr;gap:1rem}}
.specs dt{font-family:var(--fm);font-size:.76rem;text-transform:uppercase;letter-spacing:.12em;color:var(--gold)}
.specs dd{margin:0;font-size:.95rem}
.bar-pics{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}
.bar-pics figure:nth-child(2){transform:translateY(2rem)}
.bar-pics img{aspect-ratio:3/4;object-fit:cover;width:100%;border-radius:999px 999px 0 0;border:3px solid var(--brass)}
.press{margin:1.2rem 0 1.6rem;font-family:var(--fd);font-style:italic;font-size:clamp(1.5rem,5vw,2.1rem);line-height:1.25;color:var(--paper);border-left:4px solid var(--red);padding-left:1rem}
.press cite{display:block;font-family:var(--fm);font-style:normal;font-size:.75rem;color:var(--gold);margin-top:.6rem;letter-spacing:.08em}
.notes{list-style:none;padding:0;margin:0;display:grid;gap:1rem}
@media(min-width:760px){.notes{grid-template-columns:1fr 1fr}}
.notes li{background:var(--paper);color:var(--ink);padding:1.2rem 1.3rem;background-image:repeating-linear-gradient(transparent 0 27px,rgba(0,0,0,.07) 27px 28px);transform:rotate(-.4deg)}
.notes li:nth-child(even){transform:rotate(.5deg)}
.notes blockquote{margin:0 0 .6rem;font-family:var(--fd);font-size:1.22rem;line-height:1.35}
.notes cite{font-family:var(--fm);font-style:normal;font-size:.72rem;color:#6d604c}
.visit{background:var(--bg2)}
.vgrid{display:grid;gap:2rem}@media(min-width:900px){.vgrid{grid-template-columns:1fr 1.1fr;align-items:stretch}}
.ticket{background:var(--paper);color:var(--ink);padding:1.8rem 1.5rem;position:relative;border:2px dashed var(--brass)}
.ticket h2,.ticket h3{color:var(--ink)}.ticket .label{color:var(--red)}
.ticket h3{font-size:1.5rem;margin:1rem 0 .2rem}
address{font-style:normal;font-size:1.15rem;font-weight:600}
.hours{margin:0;font-size:1.05rem}.ticket .tbc{color:#7a6f5d}
.facts{padding-left:1.1rem;margin:.6rem 0}
.map{border:3px solid var(--gold);min-height:340px;background:var(--panel)}
.map iframe{width:100%;height:100%;min-height:380px;border:0;display:block;filter:sepia(.25) saturate(.9)}
.foot{background:#0e1713;color:#b9b19e;padding:2.4rem 0 2rem;font-size:.9rem}.foot a{color:var(--gold)}
.foot .logo{margin-bottom:.8rem}.sample{color:#fff;margin-top:1.2rem}.credits{font-size:.78rem;color:#857e6e}
.mbar{position:fixed;left:0;right:0;bottom:0;z-index:60;display:grid;grid-template-columns:1fr 1fr;gap:.6rem;padding:.6rem .8rem calc(.6rem + env(safe-area-inset-bottom));background:rgba(14,23,19,.97);border-top:1px solid rgba(232,197,71,.4)}
.mbar a{display:flex;align-items:center;justify-content:center;gap:.45rem;padding:.8rem;font-weight:600;text-decoration:none}
.mb-dir{background:var(--gold);color:var(--ink)}.mb-ig{background:transparent;color:var(--gold);border:1.5px solid var(--gold)}
@media(min-width:900px){.mbar{display:none}}
/* real-photo additions */
.credit{position:absolute;left:8px;bottom:8px;margin:0;background:rgba(0,0,0,.66);font-family:var(--fm);font-size:.6rem;padding:.15rem .45rem;line-height:1.35;max-width:calc(100% - 16px)}
.credit a{color:#fff;text-decoration:none}.credit a:hover{text-decoration:underline}
.hero .hero-credit{left:auto;right:10px;top:70px;bottom:auto}
.hero-bg{object-position:50% 30%}
.pic-name{position:absolute;top:10px;left:50%;transform:translateX(-50%);margin:0;background:var(--paper);color:var(--ink);font-family:var(--fsc);font-size:1rem;padding:.15rem .7rem;white-space:nowrap;box-shadow:2px 2px 0 var(--brass)}
.bar-pics .pic-name{top:auto;bottom:34px}
.wine{margin:1.4rem 0 0;max-width:340px}.wine img{width:100%;aspect-ratio:1;object-fit:cover;border:3px solid var(--gold)}
.vside{display:grid;gap:1rem}
.patio{margin:0}.patio img{width:100%;aspect-ratio:4/5;object-fit:cover;border:3px solid var(--gold)}
@media(min-width:600px) and (max-width:899px){.vside{grid-template-columns:1fr 1fr}}
.src-note{font-size:.78rem;color:#7a6f5d;margin:.1rem 0 .4rem}
.room{margin:1.4rem 0 0;border:3px solid var(--gold)}.room img{width:100%;aspect-ratio:4/5;object-fit:cover}
@media(min-width:700px){.room img{aspect-ratio:16/9;object-position:50% 35%}}
