/* Final Saltlick visual refinements — keep these rules last in the cascade. */

/* Sticky header: a slightly slimmer bar with the navigation centred inside it. */
.site-header{
  height:76px;
}
.site-header .main-nav{
  height:76px;
  align-self:center;
  align-items:center;
}
.site-header .main-nav>a,
.site-header .menu-nav-item{
  align-self:center;
}
.site-header .main-nav>a{
  line-height:1;
}
.site-header .menu-nav-item{
  height:76px;
  display:flex;
  align-items:center;
}
.site-header .menu-trigger{
  line-height:1;
}
.site-header .outline-button{
  align-self:center;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  line-height:1;
}
.site-header.is-scrolled .main-nav,
.site-header.is-scrolled .main-nav>a,
.site-header.is-scrolled .menu-nav-item,
.site-header.is-scrolled .outline-button{
  transform:none;
  top:auto;
  bottom:auto;
}
.mega-menu{
  top:76px;
}

/* Hero headline: slightly smaller overall, with more authority on SOUTHERN SMOKE. */
.hero h1{
  font-size:clamp(54px,7.35vw,116px);
  line-height:.86;
}
.hero h1>span{
  font-weight:900;
}
.hero h1>em{
  font-weight:600;
}

/* Use the current Southern Smokehouse mark as a deliberately oversized watermark. */
.story:before,
.food:before{
  background-image:url('/gallery/saltlick-logo-2026.webp');
  width:min(78vw,1050px);
}
.story:before{
  left:-17%;
  bottom:-38%;
  opacity:.038;
}
.food:before{
  right:-18%;
  top:-16%;
  opacity:.03;
}

/* Exceptional Catering is the footer — all restaurant details, brand and socials live on this image. */
.site-footer{
  background:#0e0c0a;
}
.site-footer .catering{
  min-height:0;
  border-bottom:0;
}
.site-footer .catering>img{
  object-position:center 48%;
}
.site-footer .catering-shade{
  background:
    linear-gradient(90deg,rgba(15,8,5,.94) 0%,rgba(18,9,6,.74) 50%,rgba(15,8,5,.55) 100%),
    linear-gradient(0deg,rgba(7,5,4,.96) 0%,transparent 46%);
}
.catering-layout{
  min-height:720px;
  padding-top:100px;
  padding-bottom:78px;
}
.catering-details{
  background:rgba(15,10,8,.72);
  border:1px solid rgba(255,255,255,.22);
  box-shadow:0 22px 55px rgba(0,0,0,.2);
}
.catering-details-head{
  padding:18px 0 20px;
  border-bottom:1px solid rgba(255,255,255,.17);
}
.catering-details-head span{
  display:block;
  color:#ef8d68;
  font-size:10px;
  font-weight:900;
  letter-spacing:.19em;
  text-transform:uppercase;
  margin-bottom:8px;
}
.catering-details-head h3{
  margin:0;
  font:700 clamp(28px,3vw,42px)/1.02 Georgia,serif;
  letter-spacing:-.025em;
}

.footer-base{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:auto 1fr auto;
  grid-template-areas:
    "brand tagline socials"
    "credits credits credits";
  align-items:center;
  gap:24px 34px;
  text-align:left;
  padding:34px clamp(24px,7vw,120px) 28px;
  margin:0;
  background:rgba(8,6,5,.48);
  border-top:1px solid rgba(255,255,255,.16);
  backdrop-filter:blur(7px);
}
.footer-base>img{
  grid-area:brand;
  width:92px;
  height:92px;
  object-fit:contain;
  margin:0;
  filter:drop-shadow(0 5px 14px rgba(0,0,0,.45));
}
.footer-base>p{
  grid-area:tagline;
  margin:0;
  font:italic clamp(18px,2vw,25px)/1.25 Georgia,serif;
  color:#ddd2c8;
}
.footer-base .socials{
  grid-area:socials;
  justify-content:flex-end;
  margin:0;
}
.footer-base .socials a{
  width:auto;
  height:auto;
  min-height:42px;
  padding:0 16px;
  font-size:10px;
  letter-spacing:.14em;
  text-transform:uppercase;
  border-color:rgba(255,255,255,.3);
}
.footer-base .credits{
  grid-area:credits;
  margin-top:8px;
  padding-top:22px;
  border-top:1px solid rgba(255,255,255,.14);
  color:#a89b91;
}

@media(max-width:900px){
  .site-header{height:72px}
  .site-header .main-nav{height:72px}
  .site-header .menu-nav-item{height:72px}
  .mega-menu{top:72px}
  .hero h1{font-size:clamp(48px,11.2vw,76px)}
  .story:before,.food:before{width:110vw}
  .catering-layout{min-height:0;padding:84px 40px 62px}
  .footer-base{
    grid-template-columns:92px 1fr;
    grid-template-areas:
      "brand tagline"
      "socials socials"
      "credits credits";
  }
  .footer-base .socials{justify-content:flex-start}
}

@media(max-width:620px){
  .hero h1{font-size:clamp(45px,12vw,64px)}
  .story:before,.food:before{width:135vw}
  .story:before{left:-36%;bottom:-24%}
  .food:before{right:-44%;top:1%}
  .catering-layout{padding:72px 20px 50px}
  .catering-details-head{padding:16px 0 18px}
  .footer-base{
    grid-template-columns:72px 1fr;
    gap:18px 20px;
    padding:28px 20px 24px;
  }
  .footer-base>img{width:72px;height:72px}
  .footer-base .socials{gap:8px}
  .footer-base .socials a{padding:0 12px}
  .footer-base .credits{display:grid;gap:12px}
}


/* Exact header control centring: every control is centred against the bar, never the hanging logo. */
@media(min-width:901px){
  .site-header,
  .site-header .main-nav{height:76px}
  .site-header .main-nav{position:static;align-self:stretch;align-items:stretch;margin-top:0;margin-bottom:0;padding-top:0;padding-bottom:0;transform:none}
  .site-header .main-nav>a:not(.outline-button),
  .site-header .menu-nav-item,
  .site-header .menu-trigger{height:76px;min-height:76px;margin-top:0;margin-bottom:0;padding-top:0;padding-bottom:0;display:flex;align-items:center;line-height:1}
  .site-header .outline-button{height:auto;min-height:0;margin-top:auto;margin-bottom:auto;padding:13px 18px;align-self:center}
}

/* Reviews — smokehouse character with recognizable Google colour cues. */
.reviews-section{background:#fbf5e9;position:relative;overflow:hidden}
.reviews-section:before{content:"“";position:absolute;right:4vw;top:-.18em;font:700 min(40vw,520px)/1 Georgia,serif;color:rgba(216,75,37,.055);pointer-events:none}
.reviews-heading{position:relative;display:flex;justify-content:space-between;align-items:flex-end;gap:50px;margin-bottom:55px}
.reviews-heading h2{font-size:clamp(50px,6.3vw,94px);line-height:.9;letter-spacing:-.055em;margin:42px 0 0;text-transform:uppercase}
.reviews-heading h2 em{color:var(--ember);text-transform:none}
.google-rating{flex:0 0 auto;background:#fff;border:1px solid rgba(25,21,18,.12);box-shadow:0 18px 45px rgba(61,44,31,.1);padding:24px 28px;min-width:245px}
.google-wordmark{display:flex;font:700 27px/1 Arial,sans-serif;letter-spacing:-2px;margin-bottom:7px}
.google-wordmark i{font-style:normal}.google-wordmark i:nth-child(1),.google-wordmark i:nth-child(4){color:#4285f4}.google-wordmark i:nth-child(2),.google-wordmark i:nth-child(6){color:#ea4335}.google-wordmark i:nth-child(3){color:#fbbc05}.google-wordmark i:nth-child(5){color:#34a853}
.google-rating>strong{display:block;color:#70675f;font-size:10px;letter-spacing:.18em;text-transform:uppercase;margin-bottom:16px}.google-rating>div{display:flex;align-items:center;gap:12px}.google-rating>div b{font:700 28px/1 Georgia,serif}.google-rating>div span,.review-stars{color:#fbbc04;letter-spacing:2px}
.review-sources{position:relative;display:grid;grid-template-columns:180px 1fr 1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:75px}
.review-sources>span{display:flex;align-items:center;font-size:10px;font-weight:900;letter-spacing:.16em;text-transform:uppercase;color:#786d64}
.review-sources>a{position:relative;display:grid;grid-template-columns:1fr auto;gap:5px 20px;padding:22px 52px 22px 25px;border-left:1px solid var(--line);transition:background .2s}
.review-sources>a:hover{background:#fff}.review-sources a b{font:700 20px/1.2 Georgia,serif}.review-sources a strong{font-size:13px}.review-sources a small{color:#786d64}.review-sources a i{position:absolute;right:22px;top:50%;transform:translateY(-50%);font-style:normal;color:var(--ember)}
.google-reviews-head{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-bottom:28px}.google-reviews-head h3{font:700 clamp(28px,3vw,42px)/1 Georgia,serif;margin:0}.google-reviews-head>div{display:flex;align-items:center;gap:20px}.review-photo-link{font-size:11px;font-weight:900;letter-spacing:.13em;text-transform:uppercase;border-bottom:1px solid;padding-bottom:6px}
.review-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.review-card{position:relative;background:#fff;border:1px solid rgba(25,21,18,.1);padding:34px;min-height:300px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:0 16px 40px rgba(61,44,31,.07)}
.review-card blockquote{font:700 clamp(24px,2.7vw,38px)/1.2 Georgia,serif;letter-spacing:-.025em;margin:28px 0 40px}.review-card>a{display:flex;align-items:center;gap:13px;align-self:flex-start}.review-card>a>span{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--ink);color:#fff;font-size:11px;font-weight:900}.review-card>a strong,.review-card>a small{display:block}.review-card>a strong{font-size:13px}.review-card>a small{color:#786d64;font-size:10px;margin-top:3px}
@media(max-width:900px){.reviews-heading{align-items:flex-start}.review-sources{grid-template-columns:1fr 1fr}.review-sources>span{grid-column:1/-1;padding:15px 0}.review-sources>a:first-of-type{border-left:0}.review-grid{grid-template-columns:1fr}}
@media(max-width:620px){.reviews-heading{display:block}.google-rating{margin-top:35px}.review-sources{grid-template-columns:1fr}.review-sources>span,.review-sources>a{grid-column:1;border-left:0}.review-sources>a{border-top:1px solid var(--line)}.google-reviews-head{display:block}.google-reviews-head>div{margin-top:22px;flex-wrap:wrap}.review-card{padding:26px;min-height:280px}}


/* Header hover line and logo-safe mega-menu balance. */
@media(min-width:901px){
  .site-header .main-nav>a:not(.outline-button):after,
  .site-header .menu-trigger:after{
    bottom:18px;
  }
  .mega-links>a:nth-child(1){grid-column:2;grid-row:1}
  .mega-links>a:nth-child(2){grid-column:1;grid-row:2}
  .mega-links>a:nth-child(3){grid-column:2;grid-row:2}
  .mega-links>a:nth-child(4){grid-column:1;grid-row:3}
  .mega-links>a:nth-child(5){grid-column:2;grid-row:3}
  .mega-links .mega-all{grid-column:1 / -1;grid-row:4}
}


/* One continuous image footer: brand and credits live inside the catering scene. Deployment revision 4. */
.site-footer .footer-base{
  background:transparent;
  border-top:0;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
  padding-top:18px;
}
.site-footer .footer-base .credits{
  border-top-color:rgba(255,255,255,.18);
}
