/* Pascone's Ristorante' — static rebuild, 2026-07-10 */
:root{
  --maroon:#5a1414;--maroon-dk:#3f0d0d;--cream:#f8f3ea;--paper:#fffdf8;
  --ink:#2b2320;--muted:#7a6f66;--gold:#c9a227;--line:#e5dccd;
  --serif:Georgia,'Times New Roman',serif;--sans:'Helvetica Neue',Helvetica,Arial,sans-serif;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font-family:var(--serif);color:var(--ink);background:var(--paper);line-height:1.65}
img{max-width:100%}
a{color:var(--maroon)}
h1,h2,h3,h4{font-family:var(--serif);color:var(--maroon);line-height:1.2;margin:1.4em 0 .5em}
h2{font-size:1.9rem}h3{font-size:1.25rem}
.main{max-width:1060px;margin:0 auto;padding:2.5rem 1.4rem 4rem}

/* header */
.hdr{position:sticky;top:0;z-index:50;background:var(--maroon-dk);box-shadow:0 2px 10px rgba(0,0,0,.35)}
.hdr-in{max-width:1240px;margin:0 auto;display:flex;align-items:center;gap:1rem;padding:.5rem 1.2rem}
.brand{flex:none}
.brand img{height:58px;width:auto;display:block}
.brand-txt{color:var(--cream);font-size:1.3rem;font-style:italic}
.nav{margin-left:auto;display:flex;align-items:center;gap:.15rem;font-family:var(--sans);font-size:.83rem;letter-spacing:.04em}
.nav>a,.nav .ddt{color:#efe4d2;text-decoration:none;padding:.9rem .6rem;text-transform:uppercase;white-space:nowrap;display:block}
.nav>a:hover,.nav .ddt:hover,.nav>a.on{color:var(--gold)}
.dd{position:relative}
.ddm{display:none;position:absolute;left:0;top:100%;background:var(--maroon-dk);min-width:220px;padding:.4rem 0;box-shadow:0 8px 18px rgba(0,0,0,.35)}
.dd:hover .ddm,.dd:focus-within .ddm{display:block}
.ddm a{display:block;color:#efe4d2;text-decoration:none;padding:.5rem 1rem}
.ddm a:hover{background:var(--maroon);color:var(--gold)}
.hdr-cta{display:flex;align-items:center;flex:none}
.btn{display:inline-block;font-family:var(--sans);font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;padding:.65rem 1.15rem;border-radius:2px;margin-left:.4rem;white-space:nowrap}
.btn-ghost{color:var(--gold);border:1px solid var(--gold)}
.btn-ghost:hover{background:var(--gold);color:var(--maroon-dk)}
.btn-solid{background:var(--gold);color:var(--maroon-dk);border:1px solid var(--gold);font-weight:700}
.btn-solid:hover{background:#dfb93a}
#navtoggle,.burger{display:none}
/* Reserve/Order live in the sticky header on every page and every size,
   so the hero copies of the same two links are hidden (no duplicate CTAs). */
.hero .ctas a[href*="exploretock.com"],.hero .ctas a[href*="orders.cake.net"]{display:none}

/* hero */
.hero{background:var(--maroon-dk) center/cover no-repeat;color:var(--cream);text-align:center;padding:7.5rem 1.4rem}
.hero-sm{padding:4.2rem 1.4rem}
.hero h1{color:#fff;font-size:3rem;margin:.2em 0;text-shadow:0 2px 14px rgba(0,0,0,.5)}
.hero .kicker{font-family:var(--sans);letter-spacing:.35em;text-transform:uppercase;font-size:.8rem;color:var(--gold)}
.hero .sub{font-size:1.15rem;font-style:italic;color:#f0e6d4;max-width:640px;margin:0 auto 1rem}
.hero .ctas{margin-top:1.4rem}
.hero .btn{margin:.25rem}

/* sections */
.kicker2{font-family:var(--sans);letter-spacing:.3em;text-transform:uppercase;font-size:.75rem;color:var(--gold);text-align:center}
.center{text-align:center}
.rule{width:64px;border:none;border-top:2px solid var(--gold);margin:1rem auto 2rem}
.lead{font-size:1.12rem}

/* card grid */
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem;margin:2rem 0}
.card{background:var(--cream);border:1px solid var(--line);display:flex;flex-direction:column}
.card img{width:100%;height:190px;object-fit:cover}
.card .card-b{padding:1.1rem 1.2rem 1.3rem;display:flex;flex-direction:column;flex:1}
.card h3{margin:.1em 0 .4em}
.card p{margin:.2em 0 1em;font-size:.95rem;flex:1}
.card .more{font-family:var(--sans);font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;color:var(--maroon);border-bottom:1px solid var(--gold);align-self:flex-start;padding-bottom:2px}
.card .more:hover{color:var(--gold)}

/* gallery strip */
.strip{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem;margin:2rem 0}
.strip img{width:100%;height:240px;object-fit:cover;display:block}

/* menu */
.menu-wrap{max-width:820px;margin:0 auto}
.menu-sec{margin:2.6rem 0}
.menu-sec h2{text-align:center;font-variant:small-caps;letter-spacing:.06em}
.menu-sec h2:after{content:"";display:block;width:56px;border-top:2px solid var(--gold);margin:.5rem auto 0}
.dish{display:flex;gap:1rem;padding:.8rem 0;border-bottom:1px dotted var(--line);align-items:flex-start}
.dish:last-child{border-bottom:none}
.dish-photo{width:86px;height:86px;object-fit:cover;border-radius:50%;flex:none;border:2px solid var(--line)}
.dish-body{flex:1}
.dish-top{display:flex;align-items:baseline;gap:.5rem}
.dish-name{font-weight:700;color:var(--maroon)}
.dots{flex:1;border-bottom:1px dotted #c9b998;transform:translateY(-4px)}
.price{font-family:var(--sans);font-weight:700;color:var(--maroon);white-space:nowrap}
.dish-desc{font-size:.93rem;color:var(--muted);font-style:italic}
.menu-note{background:var(--cream);border:1px solid var(--line);padding:1rem 1.3rem;font-size:.9rem;margin:2.5rem 0 0;text-align:center}

/* wine table */
.wine table{width:100%;border-collapse:collapse;font-size:.95rem;margin:.6rem 0 1.6rem}
.wine th,.wine td{text-align:left;padding:.45rem .6rem;border-bottom:1px dotted var(--line)}
.wine th{font-family:var(--sans);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.wine td:first-child{color:var(--muted);width:70px}
.wine td:nth-child(3),.wine td:nth-child(4),.wine th:nth-child(3),.wine th:nth-child(4){text-align:right;white-space:nowrap}

/* faq */
.faq details{border:1px solid var(--line);background:var(--cream);margin:.6rem 0;padding:0 1.1rem}
.faq summary{cursor:pointer;font-weight:700;color:var(--maroon);padding:.9rem 0;list-style:none}
.faq summary:before{content:"+";color:var(--gold);font-weight:700;margin-right:.6rem}
.faq details[open] summary:before{content:"–"}
.faq details p{margin-top:0}

/* article/prose */
.prose{max-width:760px;margin:0 auto}
.prose .ph{margin:1.6rem 0}
.prose .ph img{width:100%;border-radius:3px}
.byline{font-family:var(--sans);font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);text-align:center;margin-bottom:2rem}

/* split rows */
.split{display:grid;grid-template-columns:1fr 1fr;gap:2.2rem;align-items:center;margin:2.4rem 0}
.split img{width:100%;height:320px;object-fit:cover}

/* callout band */
.band{background:var(--maroon);color:var(--cream);text-align:center;padding:2.6rem 1.4rem;margin:3rem -1.4rem}
.band h2{color:#fff;margin-top:0}
.band a.btn{margin:.3rem}

/* blog cards */
.posts{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem;margin:2rem 0}
.post{background:var(--cream);border:1px solid var(--line);padding:1.2rem 1.3rem}
.post .date{font-family:var(--sans);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
.post h3{margin:.3em 0 .4em;font-size:1.1rem}
.post p{font-size:.92rem;margin:.2em 0 .8em}
.post img{width:100%;height:150px;object-fit:cover;margin-bottom:.8rem}

/* footer */
.ftr{background:var(--maroon-dk);color:#d9c9b4;margin-top:4rem;font-size:.93rem}
.ftr-in{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:repeat(5,1fr);gap:2rem;padding:3rem 1.4rem 2rem}
.ftr h4{color:var(--gold);font-family:var(--sans);font-size:.78rem;letter-spacing:.2em;text-transform:uppercase;margin:0 0 .7rem}
.ftr a{color:#efe4d2}
.ftr-base{border-top:1px solid rgba(255,255,255,.12);text-align:center;padding:1.1rem;font-size:.8rem;color:#a89682}

/* video */
.videowrap{max-width:840px;margin:2rem auto}
.videowrap video{width:100%;border-radius:4px;background:#000}

@media(max-width:900px){
  .grid,.posts{grid-template-columns:1fr 1fr}
  .split{grid-template-columns:1fr}
  .ftr-in{grid-template-columns:1fr 1fr}
  .hero h1{font-size:2.2rem}
}
@media(max-width:560px){.grid,.posts,.strip{grid-template-columns:1fr}.strip img{height:200px}}

/* Tablet & touch: iPads (portrait and landscape) and any touch screen.
   Bar = logo | Order Online + Reserve Now | menu button. The nav opens as a
   tap-friendly panel with every section already expanded (no hover needed). */
@media (max-width:1199px),(hover:none){
  .hdr-in{padding:.4rem 1rem;gap:.6rem}
  .hdr-cta{margin-left:auto}
  .hdr-cta .btn{font-size:.85rem;padding:.75rem 1.1rem;min-height:46px;display:inline-flex;align-items:center}
  #navtoggle{display:block;position:absolute;width:1px;height:1px;opacity:0;margin:0;pointer-events:none}
  .burger{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;cursor:pointer;min-width:52px;height:48px;padding:0 8px;border:1px solid rgba(239,228,210,.45);border-radius:3px;flex:none;color:var(--cream)}
  .burger .bars{display:flex;flex-direction:column;gap:4px;width:22px}
  .burger .bars span{display:block;width:100%;height:2px;background:var(--cream);transition:transform .2s,opacity .2s}
  .burger-txt{font-family:var(--sans);font-size:.62rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;line-height:1}
  #navtoggle:checked+.burger .bars span:nth-child(1){transform:translateY(6px) rotate(45deg)}
  #navtoggle:checked+.burger .bars span:nth-child(2){opacity:0}
  #navtoggle:checked+.burger .bars span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
  #navtoggle:focus-visible+.burger{outline:3px solid var(--gold);outline-offset:2px}
  .burger{order:3}
  .nav{display:none;position:absolute;top:100%;left:0;right:0;margin:0;background:var(--maroon-dk);box-shadow:0 10px 20px rgba(0,0,0,.4);
       max-height:calc(100vh - 70px);max-height:calc(100dvh - 70px);overflow-y:auto;-webkit-overflow-scrolling:touch;
       padding:1rem 1.6rem 1.4rem;font-size:1rem;letter-spacing:.03em;
       grid-template-columns:repeat(3,1fr);column-gap:2rem;align-items:start}
  #navtoggle:checked~.nav{display:grid}
  .nav>a{grid-column:1;padding:.7rem 0;min-height:46px;border-bottom:1px solid rgba(255,255,255,.08)}
  .nav{grid-template-columns:repeat(4,minmax(0,1fr))!important;column-gap:1.4rem!important}
  .nav>.n-home,.nav>.n-lounge,.nav>.n-contact,.nav>.n-private{grid-column:1}
  .nav>.n-specials{grid-column:2;grid-row:1 / span 12}
  .nav>.n-menu{grid-column:3;grid-row:1 / span 12}
  .nav>.n-about{grid-column:4;grid-row:1 / span 12}
  .nav .ddt{color:var(--gold);padding:.7rem 0;min-height:46px;border-bottom:1px solid var(--gold)}
  .nav .caret{display:none}
  .ddm{display:block;position:static;box-shadow:none;padding:.2rem 0;min-width:0;background:none}
  .ddm a{padding:.7rem 0;min-height:46px;text-transform:none;border-bottom:1px solid rgba(255,255,255,.08)}
  .ddm a:hover{background:none}
}
/* Phone: single-column panel, compact header buttons */
@media (max-width:599px){
  .hdr-in{padding:.4rem .75rem;gap:.4rem}
  .brand img{height:48px}
  .hdr-cta .btn{font-size:.7rem;letter-spacing:.04em;padding:.5rem .55rem;min-height:44px;margin-left:.3rem}
  .burger{min-width:50px;height:44px;padding:0 6px}
  .nav{grid-template-columns:1fr;padding:.6rem 1.2rem 1.2rem;max-height:calc(100vh - 60px);max-height:calc(100dvh - 60px)}
  .nav{grid-template-columns:1fr!important}
  .nav>a,.nav>.dd{grid-column:1!important;grid-row:auto!important}
  .nav>.n-home{order:1}.nav>.n-specials{order:2}.nav>.n-menu{order:3}.nav>.n-private{order:4}
  .nav>.n-lounge{order:5}.nav>.n-contact{order:6}.nav>.n-about{order:7}
  .ddm a{padding-left:1rem}
}

/* phone: keep the hero kicker on one or two clean lines */
@media (max-width:600px){.kicker{letter-spacing:.14em;font-size:.72rem;line-height:1.6}}

/* ===== 2026-10-04 content sync: richer home + specials ===== */
.hero-home{padding:9rem 1.4rem}
.happen{margin-top:-.5rem}
.hgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin:1.6rem 0 2.4rem}
.hcard{display:flex;flex-direction:column;background:var(--cream);border:1px solid var(--line);text-decoration:none;color:var(--ink);overflow:hidden}
.hcard img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:top;display:block;transition:transform .3s}
.hcard:hover img{transform:scale(1.03)}
.hk{font-family:var(--sans);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);padding:.8rem 1rem 0}
.hcard b,.dcard b{font-size:1.08rem;color:var(--maroon);padding:.2rem 1rem;line-height:1.3}
.hs{font-family:var(--sans);font-size:.82rem;color:#5e544c;padding:.1rem 1rem 1rem}
.feature{display:grid;grid-template-columns:1.1fr 1fr;gap:2.2rem;align-items:center;margin:3rem 0}
.feature.rev>img{order:2}
.feature img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block}
.feature h2{margin-top:.2em}
.kicker2.left{text-align:left}
.more{font-family:var(--sans);font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;color:var(--maroon);border-bottom:1px solid var(--gold);padding-bottom:2px}
.kitchen{display:grid;grid-template-columns:1.4fr 1fr;gap:.8rem;margin:2.5rem 0}
.kitchen video{width:100%;height:100%;min-height:280px;object-fit:cover;display:block;background:#000}
.gal{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}
.gal img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}
.duo{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem;margin:2.5rem 0}
.dcard{display:grid;grid-template-columns:42% 1fr;background:var(--cream);border:1px solid var(--line);text-decoration:none;color:var(--ink)}
.dcard img{width:100%;height:100%;min-height:200px;object-fit:cover;display:block}
.dcard>div{display:flex;flex-direction:column;padding:.4rem 0 .8rem}
.dcard p{font-size:.92rem;margin:.3rem 1rem 0}
.quotes{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin:1.6rem 0 0}
.quotes figure{margin:0;background:var(--cream);border:1px solid var(--line);padding:1.1rem 1.2rem}
.stars{color:var(--gold);letter-spacing:.15em}
.quotes blockquote{margin:.5rem 0;font-style:italic;font-size:.95rem}
.quotes figcaption{font-family:var(--sans);font-size:.8rem;color:#5e544c}
.flyer{margin:1.6rem auto;max-width:640px}
.flyer img{width:100%;display:block;border:1px solid var(--line);box-shadow:0 6px 20px rgba(0,0,0,.12)}
.facts{display:grid;gap:.6rem;background:var(--cream);border:1px solid var(--line);padding:1.1rem 1.3rem;margin:1rem 0 1.4rem}
.facts b{display:block;font-family:var(--sans);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}
.pmenu{display:grid;grid-template-columns:1fr 1fr;gap:.4rem 2.4rem;margin:1.4rem 0}
.pmenu h3{border-bottom:1px solid var(--gold);padding-bottom:.3rem}
.pmenu ul{list-style:none;padding:0;margin:0}.pmenu li{padding:.25rem 0}
.pmenu.wide{max-width:960px;margin:1.4rem auto}
.mi{margin:.6rem 0 .9rem}.mi-h{display:flex;justify-content:space-between;gap:1rem;font-weight:700;color:var(--maroon)}
.mi .pr{white-space:nowrap;font-family:var(--sans);font-size:.9rem}.mi .pr s{color:var(--muted);font-weight:400}
.mi p{margin:.15rem 0;font-size:.92rem;font-style:italic}
.price{font-size:1.3rem;color:var(--maroon);margin:1.2rem 0 .2rem}
.muted{color:var(--muted)}
.cta-row{margin:1.4rem 0}.cta-row .btn{margin:.25rem}
.btn-ghost.dark{color:var(--maroon);border-color:var(--maroon)}.btn-ghost.dark:hover{background:var(--maroon);color:#fff}
.ticks{padding-left:1.2rem}.ticks li{margin:.35rem 0}
.reddot{color:#c0281c}
@media (max-width:1000px){.hgrid{grid-template-columns:repeat(2,1fr)}.quotes{grid-template-columns:repeat(2,1fr)}}
@media (max-width:760px){
  .hero-home{padding:6rem 1.2rem}
  .feature,.feature.rev{grid-template-columns:1fr;gap:1rem}.feature.rev>img{order:0}
  .kitchen{grid-template-columns:1fr}.kitchen video{min-height:0;aspect-ratio:16/9}
  .duo{grid-template-columns:1fr}
  .pmenu{grid-template-columns:1fr}
}
@media (max-width:520px){
  .hgrid{gap:.6rem}.hk{padding:.6rem .7rem 0;font-size:.62rem}.hcard b{font-size:.95rem;padding:.15rem .7rem}.hs{padding:.1rem .7rem .8rem;font-size:.75rem}
  .quotes{grid-template-columns:1fr}
  .dcard{grid-template-columns:1fr}.dcard img{min-height:0;aspect-ratio:16/9}
}
@media (prefers-reduced-motion:reduce){.hcard img{transition:none}}
.hero .kicker,.hero .sub{text-shadow:0 1px 8px rgba(0,0,0,.7)}
.hero-home .kicker{color:#f2cf5b}

/* ---- 2026-10-04 navigation, readability and reviews pass ---- */
:root{--gold-text:#7d6210}
img{height:auto}
.brand img{width:auto}
/* you-are-here: current page and its section */
.nav .ddt.cur{color:var(--gold)}
.ddm a.on{color:var(--gold);font-weight:700}
.nav>a.on,.nav .ddt.cur{box-shadow:inset 0 -2px 0 var(--gold)}
@media (max-width:1199px),(hover:none){.nav>a.on,.nav .ddt.cur{box-shadow:none}.ddm a.on:before{content:"› "}}
.nav{font-size:.83rem}
/* the gold label at the top of inner pages is a back link */
a.kicker{display:inline-block;text-decoration:none;padding:.35rem 0}
a.kicker:hover,a.kicker:focus-visible{text-decoration:underline;text-underline-offset:4px}
/* small gold text on light backgrounds: darker so it can be read */
.kicker2,.post .date,.facts b,.hk,.byline{color:var(--gold-text)}
.stars{color:#a8800f}
@media (max-width:520px){.hk{font-size:.72rem}}
/* bigger footer links to tap on phones */
@media (max-width:760px){.ftr a{display:inline-block;padding:.5rem 0}}
/* More from Pascone's (end of every inner page) */
.more-from{max-width:1060px;margin:3.5rem auto 0;padding-top:2rem;border-top:1px solid var(--line)}
.more-from h2{margin-top:0}
.more-links{text-align:center;font-family:var(--sans);font-size:.95rem;margin-top:1.4rem;line-height:2.4}
.more-links a{white-space:nowrap}
/* Google rating */
.grate{display:inline-flex;align-items:center;gap:.5rem;margin-top:1.1rem;padding:.55rem 1rem;border-radius:999px;background:rgba(0,0,0,.45);color:#fff;text-decoration:none;font-family:var(--sans);font-size:.95rem}
.grate b{color:#f2cf5b;letter-spacing:.08em}
.grate:hover{background:rgba(0,0,0,.6)}
.rev-head{text-align:center;font-family:var(--sans);margin:-.6rem 0 1.4rem}
.rev-head .big{font-family:var(--serif);font-size:2.4rem;color:var(--maroon);line-height:1}
.rev-actions{text-align:center;margin-top:1.6rem;display:flex;gap:.7rem;justify-content:center;flex-wrap:wrap}
.btn.btn-ghost.dark{color:var(--maroon);border-color:var(--maroon)}
.btn.btn-ghost.dark:hover{background:var(--maroon);color:#fff}
/* offer line in a page banner */
.hero .hook{font-family:var(--sans);font-size:1.15rem;color:#fff;margin:.6rem 0 0}
.hero .hook b{color:#f2cf5b}
/* menu: jump links */
.jump{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin:0 auto 2rem;max-width:900px}
.jump a{font-family:var(--sans);font-size:.85rem;padding:.55rem .9rem;border:1px solid var(--line);border-radius:999px;text-decoration:none;background:#fff}
.jump a:hover{border-color:var(--gold)}
.menu-sec{scroll-margin-top:90px}
/* private dining facts */
.pd-facts{display:grid;grid-template-columns:1.1fr 1fr;gap:1.6rem;align-items:center;margin-bottom:2rem}
.pd-facts img{width:100%;border-radius:4px}
.pd-facts ul{padding-left:1.1rem}
@media (max-width:760px){.pd-facts{grid-template-columns:1fr}}
.upcoming{display:grid;gap:1rem;margin:0 0 2rem}
.upcoming a.ev{display:grid;grid-template-columns:110px 1fr;gap:1rem;align-items:center;padding:.8rem;border:1px solid var(--line);border-radius:4px;text-decoration:none;color:var(--ink);background:#fff}
.upcoming a.ev:hover{border-color:var(--gold)}
.upcoming a.ev img{width:110px;height:110px;object-fit:cover;object-position:top;border-radius:3px}
.upcoming .when{font-family:var(--sans);font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;color:var(--gold-text)}
.upcoming b{display:block;font-size:1.15rem;color:var(--maroon)}

/* Specials All Week: right under the home banner */
.specials-top{background:var(--maroon-dk);padding:2rem 1.2rem 2.6rem}
.specials-top h2{color:#fff;text-align:center;margin:0 0 1.2rem;font-size:2rem}
.sp-grid{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.sp{display:flex;flex-direction:column;background:var(--cream);border-radius:4px;overflow:hidden;text-decoration:none;color:var(--ink);box-shadow:0 6px 18px rgba(0,0,0,.35);transition:transform .15s}
.sp:hover,.sp:focus-visible{transform:translateY(-3px)}
.sp img{width:100%;aspect-ratio:3/2;object-fit:cover;display:block}
.sp-k{font-family:var(--sans);font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-text);padding:.9rem 1rem 0}
.sp-big{font-family:var(--serif);font-size:2.3rem;line-height:1.05;color:var(--maroon);padding:.15rem 1rem 0;font-weight:700}
.sp-t{font-size:1.05rem;padding:.2rem 1rem 0;flex:1}
.sp-go{font-family:var(--sans);font-size:.85rem;font-weight:700;color:var(--maroon);padding:.7rem 1rem 1rem}
@media (max-width:600px){.sp-grid{grid-template-columns:repeat(2,1fr)}}
@media (min-width:601px) and (max-width:1000px){.sp-big{font-size:1.8rem}.sp-t{font-size:.95rem}.sp-k{font-size:.7rem}}
@media (max-width:520px){.specials-top{padding:1.4rem .8rem 1.8rem}.specials-top h2{font-size:1.6rem;margin-bottom:.9rem}.sp-grid{gap:.7rem}
 .sp-k{font-size:.68rem;padding:.6rem .7rem 0}.sp-big{font-size:1.7rem;padding:.1rem .7rem 0}.sp-t{font-size:.92rem;padding:.15rem .7rem 0}.sp-go{font-size:.78rem;padding:.5rem .7rem .7rem}
 .hero-home{padding:3.6rem 1.2rem}}
.hgrid.two{grid-template-columns:repeat(2,minmax(0,1fr));max-width:720px;margin:0 auto}
@media (prefers-reduced-motion:reduce){.sp{transition:none}}
@media (max-width:520px){.hero-home{padding:2.4rem 1.2rem 2rem}.hero-home .sub{display:none}.hero-home .grate{margin-top:.8rem;font-size:.85rem}.sp img{aspect-ratio:16/9}}
@media (min-width:521px){.hero-home{padding:4.5rem 1.4rem 3.5rem}}
.welcome{padding-bottom:2.2rem}
.welcome .kicker2{margin-top:0}
@media (max-width:520px){.welcome{padding-top:1.6rem;padding-bottom:1.4rem}}

/* section links under the banner */
.subnav{background:#f4ece0;border-bottom:1px solid var(--line)}
.subnav-in{max-width:1180px;margin:0 auto;display:flex;align-items:center;gap:.45rem;flex-wrap:wrap;justify-content:center;padding:.75rem 1rem;font-family:var(--sans)}
.subnav-t{font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-text);margin-right:.4rem}
.subnav a{font-size:.9rem;text-decoration:none;color:var(--maroon);padding:.5rem .85rem;border:1px solid var(--line);border-radius:999px;background:#fff;white-space:nowrap;min-height:40px;display:inline-flex;align-items:center}
.subnav a:hover{border-color:var(--gold)}
.subnav a.on{background:var(--maroon);border-color:var(--maroon);color:#fff;font-weight:700}
@media (max-width:760px){
 .subnav-in{flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:.6rem .8rem}
 .subnav-in::-webkit-scrollbar{display:none}
 .subnav-t{display:none}
}
@media (min-width:1200px) and (max-width:1340px) and (hover:hover){.nav>a,.nav .ddt{padding-left:.4rem;padding-right:.4rem}.nav{letter-spacing:.02em}.hdr-in{gap:.7rem}}
/* specials buttons at the bottom of every banner */
.hero{display:flex;flex-direction:column}
.quick{margin:2.2rem auto 0;width:100%;max-width:980px;text-align:center}
.quick-t{display:block;font-family:var(--sans);font-size:.78rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#f2cf5b;margin-bottom:.7rem;text-shadow:0 1px 6px rgba(0,0,0,.7)}
.quick-b{display:flex;flex-wrap:wrap;justify-content:center;gap:.6rem}
.quick .btn{min-height:46px;display:inline-flex;align-items:center;justify-content:center}
.quick .btn-ghost{background:rgba(26,10,10,.55);color:#f2cf5b;border-color:#c9a227}
.quick .btn-ghost:hover{background:var(--gold);color:var(--maroon-dk)}
@media (max-width:600px){.quick{margin-top:1.4rem}.quick-b{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.quick .btn{font-size:.72rem;letter-spacing:.04em;padding:.55rem .4rem;white-space:normal;line-height:1.2}}
.flyer img{width:auto;max-width:100%}
.flyer img{margin-left:auto;margin-right:auto}
/* Oct 15: Specials and Events split */
@media (min-width:1200px) and (hover:hover){.nav>.n-home{display:none}}
@media (max-width:1199px),(hover:none){
  #navtoggle:checked~.nav{display:block}
  .nav{column-count:3;column-gap:2rem}
  .nav>a,.nav>.dd{break-inside:avoid;display:block}
}
@media (max-width:599px){
  #navtoggle:checked~.nav{display:flex;flex-direction:column}
  .nav{column-count:1}
  .nav>.n-home{order:1}.nav>.n-specials{order:2}.nav>.n-events{order:3}.nav>.n-menu{order:4}
  .nav>.n-private{order:5}.nav>.n-lounge{order:6}.nav>.n-contact{order:7}.nav>.n-about{order:8}
}
.mark-cal{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.2rem;margin:2rem auto 1rem;padding:1.3rem 1rem;background:var(--maroon);border:3px solid var(--gold);border-radius:6px;box-shadow:0 8px 22px rgba(0,0,0,.25);color:#fff;max-width:720px}
.mark-cal .mc-k{font-family:var(--sans);font-weight:700;font-size:1rem;letter-spacing:.24em;text-transform:uppercase;color:#f2cf5b}
.mark-cal .mc-d{font-family:var(--serif);font-weight:700;font-size:clamp(1.8rem,5vw,2.6rem);line-height:1.15;color:#fff}
.mark-cal .mc-t{font-family:var(--sans);font-size:.98rem;color:#f3e6cf}
.mc-card{position:relative}
.mc-ribbon{position:absolute;top:12px;left:12px;z-index:2;background:var(--maroon);border:2px solid #f2cf5b;color:#f2cf5b;font-family:var(--sans);font-weight:700;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;padding:.45rem .7rem;border-radius:4px;box-shadow:0 4px 12px rgba(0,0,0,.4);line-height:1.35}
.mc-ribbon b{display:block;font-family:var(--serif);font-size:1.15rem;letter-spacing:0;text-transform:none;color:#fff}
.hk.mc-hk{color:var(--maroon);font-weight:700}
/* event videos */
.vgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem;max-width:1060px;margin:0 auto}
@media (max-width:900px){.vgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.vgrid{grid-template-columns:minmax(0,1fr)}}
.vid{display:flex;flex-direction:column;text-align:left;background:#fff;border:1px solid var(--line);border-radius:4px;padding:0;cursor:pointer;font:inherit;color:var(--ink);overflow:hidden}
.vid:hover,.vid:focus-visible{border-color:var(--gold);outline:none;box-shadow:0 4px 14px rgba(0,0,0,.12)}
.vid-img{position:relative;display:block;aspect-ratio:16/9;background:#000;overflow:hidden}
.vid-img img,.vid-img iframe{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border:0}
.vid-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:64px;height:64px;border-radius:50%;background:rgba(63,13,13,.85);color:#f2cf5b;display:grid;place-items:center;font-size:1.6rem;padding-left:4px}
.vid-t{font-family:var(--serif);font-size:1.15rem;color:var(--maroon);padding:.8rem 1rem 0;font-weight:700}
.vid-s{font-family:var(--sans);font-size:.85rem;color:var(--muted);padding:.2rem 1rem 1rem}
@media (max-width:599px){.nav>a,.nav>.dd{width:100%}}
.mc-ribbon{text-align:center}
@media (max-width:520px){.mc-ribbon{top:8px;left:8px;font-size:.6rem;padding:.35rem .5rem}.mc-ribbon b{font-size:.95rem}}

.mark-cal .mc-p{font-family:var(--serif);font-style:italic;font-size:clamp(1.15rem,3.5vw,1.45rem);color:#f2cf5b}

/* home: one "Mark your calendars" banner across both event cards */
.cal-banner{max-width:720px;margin:0 auto .8rem;padding:.75rem 1rem;background:var(--maroon);border:2px solid #f2cf5b;border-radius:6px;box-shadow:0 6px 18px rgba(0,0,0,.18);text-align:center}
.cal-banner .cb-k{font-family:var(--serif);font-weight:700;font-size:clamp(1.35rem,4.2vw,1.9rem);letter-spacing:.04em;color:#f2cf5b}
.cal-banner .cb-k::before,.cal-banner .cb-k::after{content:"\25C6";font-size:.55em;vertical-align:middle;margin:0 .7em;color:#f2cf5b}
.cal-strip{display:block;background:var(--maroon);color:#fff;font-family:var(--serif);font-weight:700;font-size:1.15rem;text-align:center;padding:.5rem .6rem;border-top:2px solid #f2cf5b}
.cal-strip i{display:block;font-family:var(--sans);font-style:normal;font-weight:700;font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:#f2cf5b;margin-top:.1rem}
@media (max-width:520px){.cal-strip{font-size:.98rem;padding:.4rem .4rem}.cal-strip i{font-size:.58rem;letter-spacing:.12em}}

/* home banner: short zoom into the dining room, then it stops on the last frame */
.hero-home{position:relative;overflow:hidden}
.hero-home .hero-vid{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;pointer-events:none}
.hero-home::before{content:"";position:absolute;inset:0;z-index:1;background:radial-gradient(ellipse at center,rgba(26,10,10,.5),rgba(26,10,10,.28) 70%),linear-gradient(rgba(26,10,10,.12),rgba(26,10,10,.26));pointer-events:none}
.hero-home>*:not(.hero-vid){position:relative;z-index:2}
@media (prefers-reduced-motion:reduce){.hero-home .hero-vid{display:none}}

/* home: Piano Nights with Alan Souza */
.piano{background:var(--maroon);color:#f3e6cf;position:relative;overflow:hidden;margin:2.5rem calc(50% - 50vw) 0;}
.piano-in{max-width:1060px;margin:0 auto;padding:3rem 1.4rem 3.6rem;display:grid;grid-template-columns:1.3fr 1fr;gap:2.4rem;align-items:center}
.piano h2{color:#fff;margin:.3rem 0 .2rem}
.piano .kicker2{color:#f2cf5b}
.piano-when{font-family:var(--serif);font-style:italic;font-size:1.3rem;color:#f2cf5b;margin:.2rem 0 1rem}
.piano-ctas{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.4rem;align-items:center}
.piano .btn-ghost.dark{color:#f2cf5b;border-color:#f2cf5b}
.piano-pic img{width:100%;height:420px;object-fit:cover;border:2px solid #f2cf5b;border-radius:4px;display:block;object-position:62% 35%}
@media (max-width:760px){.piano-in{grid-template-columns:1fr;gap:1.4rem;padding:2.4rem 1.2rem 3rem}.piano-pic{order:-1}.piano-pic img{height:220px}}
.hero-home .ctas .btn-ghost{background:rgba(26,10,10,.45)}
