/* Bulls Head secondary-page design polish, 29 October 2026.
   References the existing warm cream, light oak and woodland green design system. */
:root{--bh-polish-cream:#f7f0e3;--bh-polish-green:#293d2b;--bh-polish-oak:#c9a77d;--bh-polish-ink:#374535;--bh-polish-line:#d3b48d}
.bh-visit-page{background:var(--bh-polish-cream);color:var(--bh-polish-green)}
/* A single full-bleed, image-led introduction matches the Food-page hero. */
.bh-visit-hero{
  isolation:isolate;position:relative;display:grid;place-items:center;
  min-height:clamp(450px,48vw,630px);overflow:hidden;
  border-bottom:9px solid var(--bh-polish-oak);
  background:#263426;
}
.bh-visit-hero__photo{position:absolute;inset:0;z-index:-2;margin:0;width:100%;height:100%}
.bh-visit-hero__photo img{
  display:block;width:100%;height:100%;object-fit:cover;object-position:center bottom;
  border:0;border-radius:0;box-shadow:none;max-width:none;
}
.bh-visit-hero__shade{
  position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:linear-gradient(180deg,rgba(19,30,19,.36) 0%,rgba(20,29,20,.44) 45%,rgba(12,22,13,.64) 100%);
}
.bh-visit-hero__inner{
  width:min(1080px,100%);min-width:0;display:flex;align-items:center;justify-content:center;
  text-align:center;margin-inline:auto;position:relative;
  padding:clamp(155px,15vw,205px) 24px clamp(92px,10vw,140px);
}
.bh-visit-hero__copy{width:100%;min-width:0}
.bh-visit-eyebrow{margin:0 0 17px;color:#59704c;font:700 .73rem/1.55 "Inter",sans-serif;letter-spacing:.19em;text-transform:uppercase}
.bh-visit-hero .bh-visit-eyebrow{color:#f1dcbd;letter-spacing:.26em;margin-bottom:22px}
.bh-visit-hero h1{
  font-size:clamp(2.8rem,5.9vw,5.9rem);line-height:1.08;font-weight:600;letter-spacing:-.025em;
  color:#fff8ed!important;margin:0 auto;max-width:none;
  text-shadow:0 3px 18px rgba(0,0,0,.23);
}
.bh-visit-lower{padding:clamp(52px,6.5vw,78px) clamp(20px,4.5vw,66px) clamp(65px,8vw,105px);background:#ede5d7;border-top:0}
.bh-visit-lower__inner{width:min(1200px,100%);margin-inline:auto;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:center;gap:clamp(34px,5.5vw,88px)}
.bh-visit-map{padding:7px;background:#f8f3e9;border:3px solid var(--bh-polish-oak);border-radius:10px;box-shadow:0 8px 24px rgba(39,55,40,.055);min-width:0;overflow:hidden}
.bh-visit-map iframe{display:block;width:100%;height:clamp(340px,36vw,455px);border:0;border-radius:4px}
.bh-visit-details{text-align:right}
.bh-visit-details > .bh-visit-eyebrow{text-align:right}
.bh-visit-details h2.bh-visit-details__heading{
  text-align:right;
  font-size:clamp(1.05rem,2.4vw,2.2rem);
  font-weight:700;line-height:1.16;letter-spacing:-.025em;
  white-space:nowrap;
  color:var(--bh-polish-green);margin:0 0 29px;
}
.bh-visit-contact-list{border-top:1px solid #cdb996}
.bh-visit-contact{display:grid;grid-template-columns:minmax(96px,1fr) minmax(0,1.5fr);gap:18px;align-items:baseline;padding:20px 0;border-bottom:1px solid #cdb996}
.bh-visit-contact>span{font:600 .8rem/1.5 "Inter",sans-serif;color:#68715f}
.bh-visit-contact a{font:600 clamp(.88rem,1.08vw,1rem)/1.5 "Inter",sans-serif;text-align:right;overflow-wrap:anywhere;text-decoration:none;color:var(--bh-polish-green)}
.bh-visit-contact a:hover{text-decoration:underline;text-underline-offset:4px}
/* Plain, easily readable contact details (including the postal address). */
.bh-visit-contact address{
  color:#354535;
  font:500 clamp(.88rem,1.08vw,1rem)/1.6 "Inter",sans-serif;
  text-align:right;
  overflow-wrap:anywhere;
  font-style:normal;
}
.bh-visit-contact a{word-break:normal;}
/* The postal address uses the same right-aligned value column at every width. */
.bh-visit-page .bh-visit-contact .bh-visit-postal-address{
  display:block;
  width:100%;
  margin:0;
  text-align:right!important;
  font-style:normal!important;
  line-height:1.7;
}
.bh-visit-page .bh-visit-postal-address > span {display:block;}


.bh-visit-map-link{
  display:flex;align-items:center;justify-content:center;
  min-height:44px;padding:12px 18px;
  background:#faf6ec;border-top:2px solid #d9c19d;
  color:#293d2b!important;font:700 .88rem/1.4 "Inter",sans-serif;
  text-decoration:none!important;transition:background .15s ease;
}
.bh-visit-map-link:hover,.bh-visit-map-link:focus-visible{background:#e8dfce;text-decoration:underline!important;text-underline-offset:4px}
.bh-unified-page main .bh-hours-card.hours,
html.bh-warm-preview main .bh-hours-card.hours{
  width:min(760px,100%);max-width:760px;margin:35px auto 15px;
  border:3px solid var(--bh-polish-oak)!important;
  border-top-width:5px!important;background:#f9f5eb!important;
  border-radius:11px;padding:12px clamp(18px,3vw,38px) 17px;
  box-shadow:0 15px 32px rgba(39,55,40,.09);
}
.bh-unified-page main .bh-hours-card .row{padding:17px 0;align-items:center;gap:20px;border-bottom:1px solid #dccdb6;color:#344535}
.bh-unified-page main .bh-hours-card .row:last-child{border-bottom:0}
.bh-unified-page main .bh-hours-card .row strong{font-weight:600}
.bh-unified-page main .bh-hours-card .row span{color:#354d38;font-weight:500;text-align:right}
.bh-unified-page main .bh-food-updates.page{min-height:0;padding-top:clamp(42px,5vw,67px);padding-bottom:clamp(55px,6vw,82px)}
.bh-unified-page main .bh-food-updates__cards{display:none!important}
.bh-unified-page main .bh-food-hero__intro{max-width:620px}
.bh-unified-page main .cards:not(.drinks-three) .card{border:2px solid #d4bb96;border-top:5px solid var(--bh-polish-oak);border-radius:9px;background:#f8f2e7;box-shadow:0 10px 25px rgba(39,55,40,.065)}
.bh-unified-page main .cards:not(.drinks-three) .card a.bh-live-facebook{display:inline-flex;margin:18px auto 0;color:var(--bh-polish-green);font:700 .84rem/1.5 "Inter",sans-serif;text-decoration:underline;text-underline-offset:4px}
@media(max-width:900px){
.bh-visit-hero__inner{gap:35px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.bh-visit-lower__inner{gap:35px}
.bh-visit-contact{grid-template-columns:1fr;gap:4px;padding:16px 0}
.bh-visit-contact a{text-align:left}
}
@media(max-width:760px){
.bh-visit-hero{min-height:clamp(380px,63vh,510px);border-bottom-width:7px}
.bh-visit-hero__inner{display:flex;padding:140px 20px 72px;align-items:center;justify-content:center}
.bh-visit-hero h1{font-size:clamp(2.45rem,9vw,4.2rem);max-width:100%}
.bh-visit-hero__photo img{height:100%;aspect-ratio:auto;object-position:center bottom}
.bh-visit-lower{padding:53px 22px 77px}
.bh-visit-lower__inner{display:flex;flex-direction:column-reverse;align-items:stretch;gap:37px}
.bh-visit-map iframe{height:350px}
.bh-visit-contact{grid-template-columns:minmax(90px,1fr) minmax(0,1.6fr);gap:8px}
.bh-visit-contact a{text-align:right}
.bh-visit-details h2.bh-visit-details__heading{font-size:clamp(1rem,4.4vw,1.45rem)}
}
@media(max-width:420px){
.bh-visit-contact{grid-template-columns:1fr;gap:4px}
.bh-visit-contact a{text-align:left}

}
@media(prefers-reduced-motion:reduce){.bh-visit-map-link{transition:none}}

/* Keep contact values consistently right aligned, including single-column mobile rows. */
.bh-visit-page .bh-visit-contact > a,
.bh-visit-page .bh-visit-contact > .bh-visit-postal-address{
  text-align:right!important;
  justify-self:stretch;
}

/* Keep the homepage hero at its own original height.
   Food and Visit are about two-thirds of their previously shared height.
   Their PHOTOS remain at the former height and anchored at the top, so only
   the bottom of each visible photo is clipped as the section gets shorter. */
:root{
  --bh-full-secondary-hero-height:clamp(640px, calc(100svh - 80px), 840px);
  --bh-short-secondary-hero-height:calc(var(--bh-full-secondary-hero-height) * 0.6667);
}
html.bh-warm-preview .bh-food-hero,
html.bh-warm-preview .bh-visit-hero{
  box-sizing:border-box;
  height:var(--bh-short-secondary-hero-height)!important;
  min-height:var(--bh-short-secondary-hero-height)!important;
  overflow:hidden;
}
/* Retain exactly the old cover scale and crop, then clip from the bottom. */
html.bh-warm-preview .bh-food-hero__image{
  top:0!important;
  bottom:auto!important;
  height:var(--bh-full-secondary-hero-height)!important;
  max-height:none;
}
html.bh-warm-preview .bh-visit-hero__photo{
  inset:0 auto auto 0!important;
  height:var(--bh-full-secondary-hero-height)!important;
}
html.bh-warm-preview .bh-visit-hero__photo img{
  height:100%!important;
}
@media(max-width:767px){
  :root{
    --bh-full-secondary-hero-height:clamp(580px, calc(100svh - 72px), 720px);
  }
}
/* Allow the hero headings and introductions to fit the shorter frame. */
@media(min-width:768px){
  html.bh-warm-preview .bh-food-hero{
    padding-top:clamp(70px,8vh,110px);
    padding-bottom:clamp(36px,5vh,65px);
  }
  html.bh-warm-preview .bh-visit-hero__inner{
    padding-top:clamp(90px,10vh,130px);
    padding-bottom:clamp(45px,6vh,80px);
  }
}
@media(max-width:767px){
  html.bh-warm-preview .bh-food-hero{padding:70px 22px 36px}
  html.bh-warm-preview .bh-visit-hero__inner{padding:88px 20px 40px}
}

/* Match the Food "stay in the loop" panel to the Hours and Reviews gold frame. */
html.bh-warm-preview main .bh-food-updates .bh-food-social{
  border:3px solid #c9a77d!important;
}

/* Visit: align the five contact rows as a two-column directory at every width. */
.bh-visit-page .bh-visit-contact{
  grid-template-columns:minmax(84px, .85fr) minmax(0, 1.65fr);
  gap:clamp(9px, 2vw, 18px);
  align-items:start;
}
.bh-visit-page .bh-visit-contact > span{
  text-align:left;
}
.bh-visit-page .bh-visit-contact > a,
.bh-visit-page .bh-visit-contact > .bh-visit-postal-address{
  text-align:right!important;
  justify-self:stretch;
  min-width:0;
}
/* Visit: straighten the exterior photo, leaving the banner and text level. */
html.bh-warm-preview .bh-visit-hero__photo img{
  transform:rotate(-2deg) scale(1.10);
  transform-origin:center center;
}

/* Fit the Visit contact heading across the available details column. */
.bh-visit-details{container-type:inline-size}
.bh-visit-details h2.bh-visit-details__heading{
  font-size:clamp(1.15rem,8.47cqw,5.8rem);
  letter-spacing:-.035em;
  white-space:nowrap;
  text-align:right;
}

/* Mobile homepage: show the photo slideshow before its accompanying feature text. */
@media (max-width: 767px){
  .bh-home-features__grid > .bh-home-features__photo{order:1}
  .bh-home-features__grid > .bh-home-features__body{order:2}
}
