
.hc-hero{position:relative;min-height:88vh;display:flex;align-items:flex-end;color:#fff;overflow:hidden;background:#0e0c0a}
.hc-hero-media,.hc-hero-media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hc-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.25),rgba(0,0,0,.75))}
.hc-hero-copy{position:relative;z-index:2;padding-bottom:clamp(48px,9vh,110px)}
.hc-hero h1{font-family:var(--serif);font-size:clamp(2.3rem,5.4vw,4.4rem);line-height:1.05;max-width:15em;margin:14px 0}
.hc-hero h1 em{color:var(--gold-2)}.hc-hero .eyebrow{color:var(--gold-2)}
.hc-sub{max-width:36em;font-size:1.1rem;line-height:1.55;opacity:.92;margin-bottom:22px}
.hc-steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin:26px 0}
.hc-steps b{color:var(--gold);font-family:var(--serif);font-size:1.4rem}.hc-steps h3{margin:6px 0;font-family:var(--serif)}
.hc-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.hc-gallery img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:14px}
.hc-menus{background:#0e0c0a;color:#f6efe4}.hc-menus .lead{color:rgba(246,239,228,.8)}
.mn-grid{display:grid;gap:26px;margin-top:26px}
.mn-card{display:grid;grid-template-columns:minmax(0,.9fr) 1.1fr;gap:0;background:#1a1612;border-radius:18px;overflow:hidden}
.mn-card:nth-child(even) figure{order:2}
.mn-card figure{margin:0}.mn-card img{width:100%;height:100%;min-height:320px;object-fit:cover;display:block}
.mn-body{padding:clamp(22px,3vw,40px)}.mn-body h3{font-family:var(--serif);font-size:clamp(1.5rem,2.4vw,2rem);margin:8px 0 10px;color:#fff}
.mn-body>p{line-height:1.55;color:rgba(246,239,228,.85)}
.mn-sec{margin:8px 0;font-size:.95rem;color:rgba(246,239,228,.85)}.mn-sec b{display:block;font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-2)}
.mn-body .btn{margin-top:14px}
.hc-setting-row{display:grid;grid-template-columns:1fr 1.4fr;gap:28px;align-items:center}
.hc-setting-photos{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.hc-setting-photos img{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:12px}
.hc-notes{padding:22px 0;background:rgba(0,0,0,.03);font-size:.93rem}.hc-notes p{margin:6px 0}.hc-notes a{text-decoration:underline}
@media(max-width:860px){.hc-steps{grid-template-columns:1fr 1fr}.hc-gallery{grid-template-columns:1fr 1fr}.mn-card{grid-template-columns:1fr}.mn-card:nth-child(even) figure{order:0}.mn-card img{min-height:220px;aspect-ratio:3/2}.hc-setting-row{grid-template-columns:1fr}.cu-grid{grid-template-columns:1fr}}
.hc-exp .cu-grid{grid-template-columns:repeat(4,1fr)}.mn-card img{max-height:440px}
@media(max-width:860px){.hc-exp .cu-grid{grid-template-columns:1fr}}
.hc-hero-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hc-slot{aspect-ratio:4/5;border:2px dashed var(--gold);border-radius:14px;display:flex;align-items:center;justify-content:center;text-align:center;font-weight:700;color:#8a6a2f;background:rgba(185,143,72,.08);padding:12px}
.mn-card:not(:has(figure)){grid-template-columns:1fr}.hc-review{max-width:46em;margin:0 auto 34px;text-align:center}.hc-review blockquote p{font-family:var(--serif);font-size:1.15rem;line-height:1.5}.hc-review .h2-vision-stars{color:var(--gold)}.hc-review figcaption{font-weight:700;margin-top:6px}.cu-who{font-size:.9rem;color:#6b5a40}
.hc-band{margin:0;line-height:0}.hc-band img{width:100%;height:clamp(320px,62vw,760px);object-fit:cover;display:block}.hc-setting-photos.one{grid-template-columns:1fr}.hc-setting-photos.one img{aspect-ratio:3/2}
/* v5 */
.hc-steps{gap:18px}
.hc-steps li{background:#fff;border:1px solid rgba(185,143,72,.35);border-radius:16px;padding:22px 20px;box-shadow:0 6px 20px rgba(0,0,0,.05)}
.hc-ico{display:inline-flex;width:52px;height:52px;border-radius:50%;background:#0e0c0a;align-items:center;justify-content:center;margin-bottom:10px}
.hc-ico svg{width:28px;height:28px;fill:none;stroke:var(--gold-2,#d9b36a);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.hc-steps h3{font-size:1.25rem;color:#1a1612;margin:4px 0 8px}
.hc-steps p{font-size:1rem;line-height:1.55;color:#3a3026;margin:0}
.hc-gallery{grid-template-columns:2fr 1fr 1fr;grid-template-rows:auto auto;gap:14px;align-items:stretch}
.hc-gallery figure{margin:0;border-radius:14px;overflow:hidden;background:#f3ede4}
.hc-gallery img{width:100%;height:100%;aspect-ratio:auto;display:block;border-radius:0}
.hc-gallery .g-big{grid-row:1/3}.hc-gallery .g-big img{object-fit:cover}
.hc-gallery .g-tall img{aspect-ratio:1080/1350;height:auto;object-fit:contain}
.hc-gallery .g-tall:nth-of-type(3) img{aspect-ratio:1080/1288}
.hc-gallery .g-wide{grid-column:2/4}.hc-gallery .g-wide img{aspect-ratio:3/2;height:auto;object-fit:cover}
.xp-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin-top:26px}
.xp-card{background:#fff;border:1px solid rgba(185,143,72,.35);border-top:4px solid var(--gold,#b98f48);border-radius:14px;padding:20px 18px}
.xp-card h3{font-family:var(--serif);font-size:1.18rem;margin:0 0 8px;color:#1a1612}
.xp-card p{font-size:.95rem;line-height:1.5;color:#3a3026;margin:0}
.xp-cta{margin-top:26px;justify-content:center}
.hc-addons{background:#f6efe4}
.ad-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:26px}
.ad-card{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 6px 20px rgba(0,0,0,.06)}
.ad-card img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}
.ad-card>div{padding:18px}.ad-card h3{font-family:var(--serif);font-size:1.25rem;margin:0 0 6px;color:#1a1612}.ad-card p{margin:0;font-size:.95rem;line-height:1.5;color:#3a3026}
@media(max-width:1100px){.xp-grid{grid-template-columns:repeat(3,1fr)}.ad-grid{grid-template-columns:1fr 1fr}}
@media(max-width:860px){.hc-gallery{grid-template-columns:1fr 1fr}.hc-gallery .g-big{grid-row:auto;grid-column:1/3}.hc-gallery .g-big img{aspect-ratio:3/4;height:auto}.hc-gallery .g-wide{grid-column:1/3}.xp-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.hc-steps{grid-template-columns:1fr}.xp-grid{grid-template-columns:1fr}.ad-grid{grid-template-columns:1fr}}
.hc-gallery .g-big{position:relative;min-height:100%}.hc-gallery .g-big img{position:absolute;inset:0}
.hc-gallery .g-tall,.hc-gallery .g-wide{align-self:start}
@media(max-width:860px){.hc-gallery .g-big{position:static}.hc-gallery .g-big img{position:static}}
/* v7: big Henrie House title + no headline clipping */
.hc-hero-copy{max-width:100%;box-sizing:border-box}
.hc-place{margin:0 0 10px}
.hc-place-name{display:block;font-family:var(--serif);font-weight:700;font-size:clamp(3rem,8vw,6.4rem);line-height:.95;letter-spacing:.01em;color:#fff;text-shadow:0 2px 18px rgba(0,0,0,.45)}
.hc-place-sub{display:block;margin-top:12px;font-size:.78rem;font-weight:700;letter-spacing:.24em;text-transform:uppercase;color:var(--gold-2)}
.hc-hero h1{font-size:clamp(1.8rem,3.6vw,3.1rem);max-width:min(24em,100%);overflow-wrap:break-word;margin:10px 0 14px}
.hc-hero .btn-row .btn{max-width:100%;white-space:normal;text-align:center}@media(max-width:560px){.hc-hero .btn-row .btn{width:100%;justify-content:center;padding-left:18px;padding-right:18px}}
/* v8 hero: one title, one line */
.hc-hero h1.hc-title{font-size:clamp(2.2rem,5.2vw,4.6rem);line-height:1.05;max-width:100%;margin:0 0 12px;overflow-wrap:break-word;text-shadow:0 2px 18px rgba(0,0,0,.4)}
.hc-hero h1.hc-title em{display:block;color:var(--gold-2)}
.hc-tag{font-family:var(--serif);font-size:clamp(1.15rem,2vw,1.5rem);line-height:1.3;margin:0 0 12px;color:#fff;max-width:100%}
.hc-evening{padding-bottom:clamp(36px,5vw,64px)}.hc-food{padding-top:clamp(28px,4vw,48px)}

/* v10: menus heading (Joe) */
.hc-menu-head{text-align:center;max-width:52rem;margin:0 auto 56px;padding:8px 0 34px;border-bottom:1px solid rgba(226,194,133,.35)}
.hc-mh-rule{display:block;width:72px;height:3px;margin:0 auto 22px;background:linear-gradient(90deg,var(--gold-deep),var(--gold-2),var(--gold-deep));border-radius:2px}
.hc-menus h2.hc-mh-title{font-family:var(--serif);font-size:clamp(2.2rem,5vw,3.8rem);line-height:1.08;font-weight:700;color:#fff;margin:0;letter-spacing:-.01em}
.hc-menus h2.hc-mh-title em{display:block;color:var(--gold-2);font-weight:600;font-style:italic}
.hc-mh-line{margin:20px auto 0;font-size:clamp(1.05rem,1.6vw,1.25rem);font-weight:600;color:var(--gold-2);max-width:34em}
@media(max-width:640px){.hc-menu-head{margin-bottom:36px;padding-bottom:26px}}
