/* =========================================================
   THE JOLLY ROGER PUB - MAIN STYLESHEET
   Structured and organised for maintainability
========================================================= */



/* =========================
   ROOT / GLOBAL
========================= */

:root{--bg:#1f5a50;--dark:#12362f;--darker:#0c2a25;--cream:#f8f1e5;--soft:#e8dfd2;--muted:#cfc6bb;--line:rgba(248,241,229,.18);--accent:#d6b98c;--maroon:#7b3946}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--cream);font-family:'Segoe UI',Tahoma,Geneva,Verdana,sans-serif;line-height:1.6}img{max-width:100%;display:block}a{color:var(--cream)}.container{max-width:1100px;margin:0 auto;padding:0 20px}


/* =========================
   HEADER / NAVIGATION
========================= */

.header{background:rgba(20,35,48,.96);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:100}.header-inner{display:flex;align-items:center;gap:18px;justify-content:space-between;padding:12px 0}.brand img{max-width:190px}.menu-btn{background:transparent;border:1px solid rgba(248,241,229,.45);color:var(--cream);padding:8px 12px;border-radius:6px}.nav{display:none}.nav.open{display:block;position:absolute;top:66px;left:0;right:0;background:var(--darker);padding:16px 20px}.nav a{display:block;padding:8px 0;text-decoration:none;font-weight:600}.lang-switch{white-space:nowrap}.lang-switch a{text-decoration:none;opacity:.8}.lang-switch .active{font-weight:700}@media(min-width:940px){.menu-btn{display:none}.nav{display:block;position:static}.nav a{display:inline-block;margin-left:18px;padding:0}}


/* =========================
   HERO / BASE PAGES
========================= */

.home-hero{min-height:82vh;background-size:cover;background-position:center}.home-hero-overlay{min-height:82vh;background:linear-gradient(rgba(20,35,48,.72),rgba(20,35,48,.84));display:flex;align-items:center}.home-hero-content{max-width:850px;text-align:center;padding-top:60px;padding-bottom:60px}.home-hero h1,.page-hero h1{font-size:clamp(2.2rem,6vw,4.4rem);line-height:1.05;margin:0 0 20px}.hero-lead,.page-hero p{font-size:clamp(1.05rem,2.2vw,1.35rem);color:var(--soft);max-width:780px;margin:0 auto 14px}.hero-note,.note{color:var(--muted)}.btn-row{margin-top:20px}.btn{display:inline-block;padding:10px 16px;border:1px solid rgba(248,241,229,.65);border-radius:6px;margin:0 8px 8px 0;text-decoration:none;font-weight:700}.btn.primary{background:var(--cream);color:var(--darker)}


/* =========================
   GENERAL SECTIONS / CARDS
========================= */

.section,.homepage-section{padding:52px 0}.card{background:rgba(28,43,54,.86);border:1px solid var(--line);border-radius:10px;padding:28px}.centred-content{max-width:760px;margin:0 auto;text-align:center}.home-split,.food-grid,.events-grid,.review-grid{display:grid;gap:28px;align-items:center}@media(min-width:860px){.home-split,.food-grid,.events-grid,.review-grid{grid-template-columns:1fr 1fr}.home-split.reverse .home-copy{order:2}.home-split.reverse .home-image{order:1}}.home-image img,.food-card img,.review-card,.food-image-small,.food-graphic{border-radius:10px;box-shadow:0 12px 30px rgba(0,0,0,.22)}.feature-list li{margin-bottom:10px}


/* =========================
   BEER BANNERS / PAGE HERO
========================= */

.beer-banner,.page-hero{min-height:380px;background-size:cover;background-position:center}.beer-banner-overlay,.page-hero-overlay{min-height:380px;background:rgba(0,0,0,.52);display:flex;align-items:center;justify-content:center;text-align:center;padding:30px 20px}.beer-banner h2{font-size:clamp(2rem,5vw,3.8rem);margin:0}.food-graphic{width:100%;max-width:720px;margin:0 auto}.closing-section{text-align:center;padding-top:22px}.closing-section p{max-width:760px;margin:0 auto;font-family:Georgia,serif;font-size:clamp(1.2rem,2.4vw,1.7rem)}


/* =========================
   BEER / FOOD / REVIEW GRIDS
========================= */

.beer-grid{display:grid;grid-template-columns:1fr;gap:20px;margin-top:22px}@media(min-width:768px){.beer-grid{grid-template-columns:1fr 1fr}}.beer-card{background:var(--dark);padding:20px;border-radius:8px;border:1px solid var(--line)}.beer-card h3{margin:0 0 6px}.beer-meta{color:var(--muted);font-size:.92rem}.beer-price{font-weight:800;font-size:1.15rem}.food-card{background:var(--dark);padding:20px;border-radius:10px;text-align:center;border:1px solid var(--line)}.food-card img{width:100%;margin-bottom:15px}.review-card{background:var(--dark);padding:24px;border:1px solid var(--line)}


/* =========================
   MOBILE RESPONSIVE
========================= */

@media(max-width:700px){.home-hero,.home-hero-overlay{min-height:74vh}.section,.homepage-section{padding:36px 0}.beer-banner,.beer-banner-overlay,.page-hero,.page-hero-overlay{min-height:280px}.brand img{max-width:150px}}


/* =========================
   LEGACY FOOTER COMPATIBILITY
========================= */

/* Backwards compatibility: use site-footer styling even if an older partial still says class="footer" */
.footer{
background:#0c2a25;
padding:50px 0 20px;
margin-top:80px;
border-top:1px solid rgba(255,255,255,.08);
}



/* =========================
   FOOTER SOCIAL UPDATE
========================= */

/* FOOTER SOCIAL UPDATE */

.site-footer{
background:#0c2a25;
padding:50px 0 20px;
margin-top:80px;
border-top:1px solid rgba(255,255,255,.08);
}

.footer-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
gap:40px;
}

.footer-column h3{
margin-bottom:14px;
font-size:1.1rem;
}

.footer-column p,
.footer-column a{
color:#d9d2c8;
line-height:1.7;
text-decoration:none;
}

.social-links{
display:flex;
flex-direction:column;
gap:10px;
}

.social-links a{
transition:.2s ease;
}

.social-links a:hover{
opacity:.7;
}

.footer-bottom{
margin-top:40px;
padding-top:20px;
border-top:1px solid rgba(255,255,255,.06);
text-align:center;
font-size:.9rem;
color:#b7aea3;
}

@media (max-width:768px){

.footer-grid{
text-align:center;
}

.social-links{
align-items:center;
}

}

/* DRINKS LANDING PAGE */

.drinks-grid{
display:grid;
grid-template-columns:1fr 1fr;
gap:32px;
max-width:1100px;
margin:auto;
}

.drinks-box{
display:block;
background:#12362f;
border-radius:12px;
overflow:hidden;
text-decoration:none;
border:1px solid rgba(255,255,255,.08);
transition:.25s ease;
}

.drinks-box:hover{
transform:translateY(-4px);
border-color:rgba(214,185,140,.35);
}

.drinks-box img{
width:100%;
height:320px;
object-fit:cover;
display:block;
}

.drinks-box-content{
padding:26px;
}

.drinks-box-content h2{
margin:0 0 12px;
font-size:1.7rem;
}

.drinks-box-content p{
margin:0;
color:#cfc6bb;
line-height:1.8;
}

/* MOBILE */

@media(max-width:760px){

.drinks-grid{
grid-template-columns:1fr;
}

.drinks-box img{
height:240px;
}

}
/* HOMEPAGE REDESIGN */

.home-hero-modern{
min-height:82vh;
background-size:cover;
background-position:center;
position:relative;
display:flex;
align-items:center;
}

.hero-overlay{
background:linear-gradient(
180deg,
rgba(10,15,20,.45),
rgba(10,15,20,.72)
);
width:100%;
padding:120px 0;
}

.hero-inner{
max-width:760px;
}

.hero-kicker{
font-size:1rem;
letter-spacing:.12em;
text-transform:uppercase;
margin-bottom:20px;
color:#d6b98c;
font-weight:700;
}

.home-hero-modern h1{
font-size:clamp(3rem,7vw,5.6rem);
line-height:1.02;
margin-bottom:24px;
}

.hero-sub{
font-size:1.2rem;
max-width:620px;
color:#d9d2c8;
line-height:1.8;
margin-bottom:34px;
}

.hero-buttons{
display:flex;
gap:18px;
flex-wrap:wrap;
}

.homepage-card-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
gap:30px;
}

.homepage-nav-card{
display:block;
background:#143c35;
border-radius:14px;
overflow:hidden;
text-decoration:none;
transition:.25s ease;
border:1px solid rgba(255,255,255,.08);
}

.homepage-nav-card:hover{
transform:translateY(-4px);
border-color:rgba(214,185,140,.3);
}

.homepage-nav-card img{
width:100%;
height:240px;
object-fit:cover;
display:block;
}

.homepage-nav-content{
padding:24px;
}

.homepage-nav-content h2{
margin:0 0 12px;
font-size:1.5rem;
}

.homepage-nav-content p{
margin:0;
line-height:1.7;
color:#cfc6bb;
}

.brand-story-section{
padding:90px 0;
text-align:center;
}

.narrow-content{
max-width:820px;
margin:auto;
}

.brand-story-section h2{
margin-bottom:24px;
font-size:2.4rem;
}

.brand-story-section p{
font-size:1.12rem;
line-height:1.9;
color:#d9d2c8;
}

.brand-points{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
gap:16px;
margin-top:42px;
}

.brand-points div{
background:#143c35;
padding:18px;
border-radius:10px;
border:1px solid rgba(255,255,255,.06);
}

.beer-feature-strip{
background-size:cover;
background-position:center;
margin:90px 0;
}

.beer-feature-overlay{
background:rgba(8,12,16,.72);
padding:110px 0;
text-align:center;
}

.beer-feature-overlay h2{
font-size:clamp(2.6rem,6vw,4.8rem);
margin-bottom:24px;
}

.beer-feature-overlay p{
max-width:760px;
margin:0 auto 30px;
font-size:1.12rem;
line-height:1.8;
color:#d9d2c8;
}

.food-feature-section{
padding:90px 0;
}

.food-feature-grid{
display:grid;
grid-template-columns:1.1fr 1fr;
gap:60px;
align-items:center;
}

.food-feature-image img{
width:100%;
border-radius:14px;
display:block;
}

.food-feature-copy h2{
font-size:2.8rem;
margin-bottom:20px;
}

.food-feature-copy p{
line-height:1.9;
margin-bottom:28px;
color:#d9d2c8;
}

.reviews-section{
padding:90px 0;
background:#12362f;
}

.reviews-header{
text-align:center;
margin-bottom:40px;
}

.reviews-rating{
color:#d6b98c;
letter-spacing:.08em;
font-weight:700;
margin-bottom:10px;
}

.reviews-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
gap:24px;
}

.review-card-modern{
background:#143c35;
padding:30px;
border-radius:12px;
border:1px solid rgba(255,255,255,.08);
}

.review-card-modern p{
line-height:1.9;
margin:0;
color:#f3eee7;
}

.reviews-button{
text-align:center;
margin-top:36px;
}

@media(max-width:900px){

.food-feature-grid{
grid-template-columns:1fr;
}

.home-hero-modern{
min-height:70vh;
}

.hero-overlay{
padding:90px 0;
}

}

/* FOOTER GUIDE LINKS */

.footer-subheading{
margin-top:26px;
}

.craft-footer-column a{
color:#f8f1e5;
text-decoration:none;
}

.craft-footer-column a:hover{
opacity:.75;
}

/* =========================
   TEAL BRAND REFRESH
   Restores the older Jolly Roger craft-pub feel:
   dark teal, cream, warm amber and subtle maroon accents.
========================= */

body{
background:
radial-gradient(circle at top left, rgba(214,185,140,.06), transparent 28%),
linear-gradient(180deg,#1f5a50 0%,#19483f 52%,#12362f 100%);
color:var(--cream);
}

.header{
background:rgba(15,36,43,.96);
border-bottom:1px solid rgba(248,241,229,.16);
}

.nav.open{
background:#0c2a25;
}

.card,
.food-card,
.review-card,
.beer-card,
.drinks-box,
.homepage-nav-card,
.brand-points div,
.review-card-modern,
.beer-card-premium{
background:rgba(20,45,53,.92);
border-color:rgba(248,241,229,.14);
}

.btn.primary{
background:#f8f1e5;
color:#12362f;
}

.btn,
.footer-text-link{
border-color:rgba(214,185,140,.45);
}

.btn:hover,
.footer-text-link:hover{
opacity:.85;
}

.page-hero-overlay,
.beer-banner-overlay,
.beer-feature-overlay{
background:linear-gradient(180deg,rgba(15,36,43,.58),rgba(15,36,43,.82));
}

.hero-overlay{
background:linear-gradient(180deg,rgba(15,36,43,.48),rgba(15,36,43,.82));
}

.hero-kicker,
.reviews-rating,
.craft-footer-column h3,
.footer-social-row h3{
color:#d6b98c;
}

.reviews-section{
background:#16483f;
}

.beer-feature-strip{
border-top:1px solid rgba(214,185,140,.18);
border-bottom:1px solid rgba(214,185,140,.18);
}

.drinks-box:hover,
.homepage-nav-card:hover,
.beer-card-premium:hover{
border-color:rgba(214,185,140,.38);
}

.drinks-box img,
.homepage-nav-card img,
.beer-card-premium img,
.beer-card img{
background:#f5f2eb;
}

.craft-footer{
margin-top:90px;
background:
radial-gradient(circle at top left, rgba(214,185,140,.10), transparent 34%),
linear-gradient(180deg,#16483f 0%,#0e332d 56%,#08241f 100%);
border-top:3px solid rgba(214,185,140,.32);
}

.site-footer,
.footer{
background:#0e332d;
border-top:3px solid rgba(214,185,140,.28);
}

.footer-socials a{
border-color:rgba(214,185,140,.32);
background:rgba(248,241,229,.04);
}

.footer-socials a:hover{
background:rgba(214,185,140,.12);
}

.footer-bottom-inner p,
.craft-footer-bottom p,
.footer-bottom{
color:#b9aea1;
}

.lang-switch .active{
color:#d6b98c;
}

/* =========================
   FINAL GREEN-TEAL + LAYOUT FIX
   Keeps the newer footer/header layout while restoring the older green-teal Jolly Roger feel.
========================= */

:root{
--bg:#1f5a50;
--dark:#12362f;
--darker:#0c2a25;
--cream:#f8f1e5;
--soft:#e8dfd2;
--muted:#cfc6bb;
--line:rgba(248,241,229,.18);
--accent:#d6b98c;
--maroon:#7b3946;
}

body{
background:
radial-gradient(circle at top left, rgba(214,185,140,.07), transparent 30%),
linear-gradient(180deg,#1f5a50 0%,#19483f 55%,#12362f 100%) !important;
}

.header{
background:#0c2a25 !important;
border-bottom:1px solid rgba(248,241,229,.16) !important;
}

.nav.open{
background:#0c2a25 !important;
}

/* Keep homepage cards as clean 2x2 */
.homepage-card-grid{
display:grid !important;
grid-template-columns:1fr 1fr !important;
gap:32px !important;
max-width:1200px !important;
margin:auto !important;
}

.homepage-nav-card img{
height:320px !important;
}

/* Green-teal cards */
.card,
.food-card,
.review-card,
.beer-card,
.drinks-box,
.homepage-nav-card,
.brand-points div,
.review-card-modern,
.beer-card-premium{
background:#12362f !important;
border-color:rgba(248,241,229,.16) !important;
}

/* Craft footer redesigned layout */
.craft-footer{
margin-top:40px !important;
background:
radial-gradient(circle at top left, rgba(214,185,140,.10), transparent 35%),
linear-gradient(180deg,#16483f 0%,#0e332d 55%,#08241f 100%) !important;
border-top:3px solid rgba(214,185,140,.32) !important;
}

.craft-footer-top{
padding:68px 0 44px !important;
}

.craft-footer-grid{
display:grid !important;
grid-template-columns:1.25fr 1fr 1fr 1fr !important;
gap:44px !important;
align-items:start !important;
}

.craft-footer-brand,
.craft-footer-column{
min-width:0;
}

.footer-logo{
max-width:180px !important;
margin-bottom:18px !important;
}

.footer-tag{
color:#d9d2c8 !important;
line-height:1.8 !important;
max-width:280px !important;
}

.craft-footer-column h3,
.footer-social-row h3{
font-size:.95rem !important;
letter-spacing:.09em !important;
text-transform:uppercase !important;
color:#d6b98c !important;
margin:0 0 16px !important;
}

.craft-footer-column p{
color:#cfc6bb !important;
line-height:1.8 !important;
margin:0 0 14px !important;
}

.footer-link-list{
display:flex !important;
flex-direction:column !important;
gap:10px !important;
}

.footer-link-list a,
.footer-text-link,
.craft-footer-column a{
color:#f8f1e5 !important;
text-decoration:none !important;
}

.footer-text-link{
font-weight:700 !important;
border-bottom:1px solid rgba(214,185,140,.35) !important;
}

.footer-social-row{
margin-top:44px !important;
padding-top:30px !important;
border-top:1px solid rgba(255,255,255,.08) !important;
display:flex !important;
align-items:center !important;
justify-content:space-between !important;
gap:30px !important;
}

.footer-socials{
display:flex !important;
flex-wrap:wrap !important;
gap:12px !important;
}

.footer-socials a{
display:inline-block !important;
padding:10px 15px !important;
border:1px solid rgba(214,185,140,.28) !important;
background:rgba(255,255,255,.035) !important;
border-radius:999px !important;
text-decoration:none !important;
color:#f8f1e5 !important;
font-weight:700 !important;
font-size:.92rem !important;
transition:.2s ease !important;
}

.footer-socials a:hover{
background:rgba(214,185,140,.12) !important;
transform:translateY(-1px);
}

.craft-footer-bottom{
border-top:1px solid rgba(255,255,255,.06) !important;
padding:20px 0 !important;
}

.footer-bottom-inner{
display:flex !important;
align-items:center !important;
justify-content:space-between !important;
gap:20px !important;
}

.footer-bottom-inner p{
margin:0 !important;
font-size:.9rem !important;
color:#b9aea1 !important;
}

@media(max-width:980px){
.craft-footer-grid{
grid-template-columns:1fr 1fr !important;
}
.footer-social-row{
align-items:flex-start !important;
flex-direction:column !important;
}
}

@media(max-width:760px){
.homepage-card-grid{
grid-template-columns:1fr !important;
}
.homepage-nav-card img{
height:240px !important;
}
}

@media(max-width:640px){
.craft-footer-top{
padding:52px 0 36px !important;
}
.craft-footer-grid{
grid-template-columns:1fr !important;
text-align:center !important;
gap:34px !important;
}
.footer-logo{
margin:0 auto 18px !important;
}
.footer-tag{
margin-left:auto !important;
margin-right:auto !important;
}
.footer-link-list{
align-items:center !important;
}
.footer-social-row{
text-align:center !important;
align-items:center !important;
}
.footer-socials{
justify-content:center !important;
}
.footer-bottom-inner{
flex-direction:column !important;
text-align:center !important;
gap:8px !important;
}
}

/* FINAL HEADER GREEN OVERRIDE */

.header,
.header-inner,
.nav.open{
  background:#0b3f35 !important;
}

.header{
  border-bottom:1px solid rgba(214,185,140,.32) !important;
}

.nav a,
.lang-switch,
.lang-switch a,
.lang-switch span{
  color:#f8f1e5 !important;
}

/* HOMEPAGE SPACING TIGHTEN */

.brand-story-section,
.food-feature-section,
.reviews-section{
padding:56px 0 !important;
}

.beer-feature-strip{
margin:56px 0 !important;
}

.beer-feature-overlay{
padding:72px 0 !important;
}

.food-feature-grid{
gap:36px !important;
}

.homepage-section{
padding:46px 0 !important;
}

/* COMPACT DRAUGHT BEER PAGE */

.compact-page-intro{
padding:72px 0 42px;
background:
radial-gradient(circle at top left, rgba(214,185,140,.08), transparent 28%),
linear-gradient(180deg,#16483f 0%,#12362f 100%);
border-bottom:1px solid rgba(214,185,140,.18);
text-align:center;
}

.compact-intro-inner{
max-width:820px;
}

.compact-kicker{
margin:0 0 10px;
letter-spacing:.14em;
text-transform:uppercase;
font-weight:700;
color:#d6b98c;
font-size:.9rem;
}

.compact-page-intro h1{
font-size:clamp(2.4rem,5vw,4rem);
line-height:1.05;
margin:0 0 16px;
}

.compact-page-intro p{
max-width:720px;
margin-left:auto;
margin-right:auto;
color:#e8dfd2;
font-size:1.08rem;
line-height:1.8;
}

.compact-beer-section{
padding-top:44px;
}

.compact-beer-grid{
display:grid;
grid-template-columns:repeat(2, minmax(0, 1fr));
gap:24px;
}

.compact-beer-card{
background:#12362f;
border:1px solid rgba(248,241,229,.16);
border-radius:14px;
padding:22px;
display:grid;
grid-template-columns:150px 1fr;
gap:22px;
align-items:center;
text-align:center;
box-shadow:0 10px 24px rgba(0,0,0,.12);
}

.compact-beer-image{
background:#f5f2eb;
border-radius:12px;
padding:14px;
display:flex;
align-items:center;
justify-content:center;
min-height:150px;
}

.compact-beer-image img{
width:100%;
height:120px;
object-fit:contain;
display:block;
}

.compact-beer-content{
display:flex;
flex-direction:column;
align-items:center;
justify-content:center;
}

.compact-beer-content h2{
margin:0 0 6px;
font-size:1.35rem;
line-height:1.15;
}

.compact-beer-meta{
margin:0 0 8px;
color:#d6b98c;
font-weight:700;
font-size:.95rem;
}

.compact-beer-content p{
margin:0 0 8px;
color:#d9d2c8;
line-height:1.65;
}

.compact-beer-price{
margin-top:4px !important;
color:#f8f1e5 !important;
font-weight:800;
font-size:1.08rem;
}

@media(max-width:900px){
.compact-beer-grid{
grid-template-columns:1fr;
}
}

@media(max-width:560px){
.compact-page-intro{
padding:54px 0 34px;
}

.compact-beer-card{
grid-template-columns:1fr;
gap:16px;
padding:20px;
}

.compact-beer-image{
max-width:190px;
width:100%;
margin:0 auto;
}

.compact-beer-image img{
height:130px;
}
}

/* HEADER BALANCE SPACING */

.header-inner{
padding-left:24px !important;
padding-right:24px !important;
}

.brand{
margin-left:6px;
}

.lang-switch{
margin-right:6px;
}

/* =========================
   BRUNCH PAGE
   Brunch layout: narrow text cards, wider image/menu/card sections, no image squashing.
========================= */

img {
  height: auto;
}

.brunch-narrow {
  max-width: 760px;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}

.brunch-wide {
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}

.brunch-centred {
  text-align: center;
}

.brunch-hero-image,
.brunch-menu-image {
  width: 100%;
  height: auto;
  border-radius: 10px;
  box-shadow: 0 12px 30px rgba(0,0,0,.22);
  margin-left: auto;
  margin-right: auto;
}

.brunch-hero-image {
  max-width: 900px;
}

.brunch-menu-wrap {
  max-width: 1100px;
  margin: 24px auto 0;
}

.brunch-menu-image {
  max-width: 1100px;
}

.brunch-card-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 20px;
  margin-top: 24px;
}

.brunch-card {
  background: #12362f;
  border: 1px solid rgba(248,241,229,.16);
  border-radius: 10px;
  padding: 22px;
  text-align: center;
}

.brunch-card h3 {
  margin-top: 0;
  color: #d6b98c;
}

.brunch-card p {
  margin-bottom: 0;
  color: #e8dfd2;
}

@media(max-width:700px){
  .brunch-narrow,
  .brunch-wide {
    max-width: 100%;
  }
}


/* =========================
   HOMEPAGE VISUAL HIERARCHY REFRESH
   Purpose: break up the all-green homepage, reduce dead space, and make each section clearer.
========================= */

/* General homepage spacing */
.homepage-nav-section,
.homepage-intro-section,
.homepage-food-section,
.homepage-reviews-section{
  padding:64px 0 !important;
  margin:0 !important;
}

@media(max-width:700px){
  .homepage-nav-section,
  .homepage-intro-section,
  .homepage-food-section,
  .homepage-reviews-section{
    padding:48px 0 !important;
  }
}

/* Reduce oversized mobile hero feeling slightly */
.home-hero-modern{
  min-height:76vh !important;
}

.hero-overlay{
  padding:96px 0 !important;
}

@media(max-width:700px){
  .home-hero-modern{
    min-height:68vh !important;
  }

  .hero-overlay{
    padding:72px 0 !important;
  }

  .home-hero-modern h1{
    font-size:clamp(2.55rem,12vw,4rem) !important;
  }
}

/* Section background rhythm */
.homepage-nav-section{
  background:#0d2f2a !important;
  border-top:1px solid rgba(214,185,140,.26);
  border-bottom:1px solid rgba(214,185,140,.20);
}

.homepage-intro-section{
  background:
    radial-gradient(circle at top left, rgba(214,185,140,.06), transparent 28%),
    linear-gradient(180deg,#1f5a50 0%,#16483f 100%) !important;
  border-bottom:1px solid rgba(214,185,140,.20);
}

.beer-feature-strip{
  margin:0 !important;
  border-top:1px solid rgba(214,185,140,.26) !important;
  border-bottom:1px solid rgba(214,185,140,.26) !important;
}

.beer-feature-overlay{
  padding:84px 0 !important;
}

.homepage-food-section{
  background:#f5f1e8 !important;
  color:#12362f !important;
  border-bottom:1px solid rgba(18,54,47,.14);
}

.homepage-reviews-section{
  background:#16483f !important;
  border-top:1px solid rgba(214,185,140,.20);
  border-bottom:1px solid rgba(214,185,140,.20);
}

/* Homepage nav cards: cleaner, less repetitive */
.homepage-nav-card{
  background:#12362f !important;
  border:1px solid rgba(214,185,140,.18) !important;
  box-shadow:0 10px 26px rgba(0,0,0,.16);
}

.homepage-nav-content{
  padding:22px !important;
}

.homepage-nav-content h2{
  font-size:1.55rem !important;
}

.homepage-nav-card img{
  height:260px !important;
}

@media(max-width:760px){
  .homepage-nav-card img{
    height:220px !important;
  }
}

/* Intro section: remove the heavy boxed feeling */
.homepage-intro-section h2{
  max-width:760px;
  margin-left:auto;
  margin-right:auto;
  font-size:clamp(2rem,6vw,3.6rem) !important;
}

.homepage-intro-section p{
  max-width:680px;
}

.brand-points{
  margin-top:34px !important;
}

.brand-points div{
  background:rgba(12,42,37,.62) !important;
  border:1px solid rgba(214,185,140,.18) !important;
  border-radius:12px !important;
  padding:16px !important;
}

/* Beer image feature: tighter and clearer */
.beer-feature-overlay h2{
  font-size:clamp(2.2rem,7vw,4.4rem) !important;
}

.beer-feature-overlay p{
  margin-bottom:24px !important;
}

/* Food section: cream contrast block */
.homepage-food-section .food-feature-grid{
  gap:44px !important;
}

.homepage-food-section h2,
.homepage-food-section p{
  color:#12362f !important;
}

.homepage-food-section .food-feature-copy p{
  color:#31534d !important;
}

.homepage-food-section .food-feature-image img{
  box-shadow:0 14px 34px rgba(18,54,47,.22);
  border:1px solid rgba(18,54,47,.10);
}

.homepage-food-section .btn.primary{
  background:#12362f !important;
  color:#f8f1e5 !important;
  border-color:#12362f !important;
}

/* Reviews: cream cards for clear separation */
.homepage-reviews-section .review-card-modern{
  background:#f5f1e8 !important;
  color:#12362f !important;
  border:1px solid rgba(214,185,140,.38) !important;
  box-shadow:0 12px 30px rgba(0,0,0,.18);
}

.homepage-reviews-section .review-card-modern p{
  color:#12362f !important;
  font-size:1.05rem;
}

.homepage-reviews-section .reviews-header h2{
  font-size:clamp(2rem,6vw,3.2rem) !important;
}

.homepage-reviews-section .reviews-rating{
  color:#d6b98c !important;
}

/* Buttons: more consistent site-wide */
.btn{
  border-radius:10px !important;
  border:2px solid rgba(214,185,140,.55) !important;
  padding:11px 18px !important;
}

.btn.primary{
  background:#f8f1e5 !important;
  color:#12362f !important;
  border-color:#d6b98c !important;
}

.btn:hover{
  background:#d6b98c !important;
  color:#12362f !important;
  opacity:1 !important;
}

/* Footer: reduce height and visual weight */
.craft-footer,
.site-footer,
.footer{
  margin-top:0 !important;
}

.craft-footer-top{
  padding:48px 0 34px !important;
}

.footer-social-row{
  margin-top:30px !important;
  padding-top:24px !important;
}

.craft-footer-bottom{
  padding:16px 0 !important;
}

/* Stop giant blank green slabs on narrow screens */
@media(max-width:700px){
  .brand-story-section p,
  .food-feature-copy p,
  .beer-feature-overlay p{
    font-size:1rem !important;
    line-height:1.7 !important;
  }

  .food-feature-copy h2{
    font-size:clamp(2rem,10vw,3rem) !important;
  }

  .reviews-grid{
    gap:18px !important;
  }
}


/* =========================
   COMPACT DARK FOOTER REFRESH
   Cleaner end-of-page footer: shorter, darker, clearer.
========================= */

.craft-footer,
.site-footer,
.footer{
  margin-top:0 !important;
  background:#071714 !important;
  border-top:3px solid rgba(214,185,140,.34) !important;
}

.craft-footer{
  background:
    radial-gradient(circle at top left, rgba(214,185,140,.07), transparent 28%),
    linear-gradient(180deg,#0b241f 0%,#071714 70%,#04100d 100%) !important;
}

.craft-footer-top,
.site-footer{
  padding:38px 0 22px !important;
}

.craft-footer-grid,
.footer-grid{
  grid-template-columns:1.15fr 1fr 1fr 1fr !important;
  gap:28px !important;
  align-items:start !important;
}

.footer-logo{
  max-width:150px !important;
  margin-bottom:12px !important;
}

.footer-tag,
.craft-footer-column p,
.footer-column p{
  font-size:.92rem !important;
  line-height:1.55 !important;
  color:#cfc6bb !important;
  margin-bottom:10px !important;
}

.craft-footer-column h3,
.footer-column h3,
.footer-social-row h3{
  font-size:.82rem !important;
  letter-spacing:.12em !important;
  text-transform:uppercase !important;
  color:#d6b98c !important;
  margin:0 0 10px !important;
}

.footer-link-list,
.social-links{
  gap:7px !important;
}

.footer-link-list a,
.footer-text-link,
.craft-footer-column a,
.footer-column a{
  font-size:.94rem !important;
  line-height:1.45 !important;
  color:#f8f1e5 !important;
  text-decoration:none !important;
}

.footer-text-link{
  font-weight:700 !important;
  border-bottom:1px solid rgba(214,185,140,.35) !important;
}

.footer-social-row{
  margin-top:22px !important;
  padding-top:18px !important;
  border-top:1px solid rgba(248,241,229,.10) !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:20px !important;
}

.footer-socials{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px !important;
}

.footer-socials a{
  padding:7px 11px !important;
  border-radius:999px !important;
  border:1px solid rgba(214,185,140,.30) !important;
  background:rgba(248,241,229,.035) !important;
  color:#f8f1e5 !important;
  font-size:.84rem !important;
  font-weight:700 !important;
  text-decoration:none !important;
}

.footer-socials a:hover{
  background:#d6b98c !important;
  color:#071714 !important;
  opacity:1 !important;
}

.craft-footer-bottom,
.footer-bottom{
  background:#04100d !important;
  border-top:1px solid rgba(248,241,229,.08) !important;
  padding:12px 0 !important;
  margin-top:0 !important;
}

.footer-bottom-inner{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:16px !important;
}

.footer-bottom-inner p,
.craft-footer-bottom p,
.footer-bottom{
  font-size:.82rem !important;
  line-height:1.35 !important;
  color:#aaa096 !important;
  margin:0 !important;
}

@media(max-width:980px){
  .craft-footer-grid,
  .footer-grid{
    grid-template-columns:1fr 1fr !important;
    gap:24px !important;
  }

  .footer-social-row{
    align-items:flex-start !important;
    flex-direction:column !important;
  }
}

@media(max-width:640px){
  .craft-footer-top,
  .site-footer{
    padding:30px 0 18px !important;
  }

  .craft-footer-grid,
  .footer-grid{
    grid-template-columns:1fr !important;
    gap:22px !important;
    text-align:center !important;
  }

  .footer-logo{
    max-width:132px !important;
    margin:0 auto 10px !important;
  }

  .footer-tag{
    margin-left:auto !important;
    margin-right:auto !important;
    max-width:250px !important;
  }

  .footer-link-list,
  .social-links{
    align-items:center !important;
  }

  .footer-social-row{
    margin-top:18px !important;
    padding-top:16px !important;
    text-align:center !important;
    align-items:center !important;
  }

  .footer-socials{
    justify-content:center !important;
  }

  .footer-bottom-inner{
    flex-direction:column !important;
    text-align:center !important;
    gap:6px !important;
  }
}

/* =========================
   COMPACT FOOTER FINAL
   Shorter, darker footer with cleaner navigation.
========================= */

.compact-footer,
.craft-footer.compact-footer{
  margin-top:0 !important;
  background:#071714 !important;
  border-top:3px solid rgba(214,185,140,.32) !important;
}

.compact-footer .craft-footer-top{
  padding:38px 0 26px !important;
}

.compact-footer .craft-footer-grid{
  display:grid !important;
  grid-template-columns:1fr 1fr 1fr !important;
  gap:28px !important;
  align-items:start !important;
}

.compact-footer .craft-footer-column h3{
  font-size:.88rem !important;
  letter-spacing:.12em !important;
  text-transform:uppercase !important;
  color:#d6b98c !important;
  margin:0 0 12px !important;
}

.compact-footer .craft-footer-column p{
  margin:0 0 12px !important;
  color:#cfc6bb !important;
  line-height:1.65 !important;
}

.compact-footer .footer-link-list{
  display:flex !important;
  flex-direction:column !important;
  gap:8px !important;
}

.compact-footer .footer-link-list a,
.compact-footer .footer-text-link,
.compact-footer .craft-footer-column a{
  color:#f8f1e5 !important;
  text-decoration:none !important;
  font-size:.95rem !important;
  line-height:1.4 !important;
}

.compact-footer .footer-text-link{
  display:inline-block !important;
  font-weight:700 !important;
  border-bottom:1px solid rgba(214,185,140,.35) !important;
  padding-bottom:2px !important;
}

.compact-footer .footer-socials,
.compact-footer .compact-socials{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:9px !important;
  justify-content:flex-start !important;
}

.compact-footer .footer-socials a,
.compact-footer .compact-socials a{
  display:inline-block !important;
  padding:7px 12px !important;
  border:1px solid rgba(214,185,140,.28) !important;
  background:rgba(248,241,229,.035) !important;
  border-radius:999px !important;
  color:#f8f1e5 !important;
  text-decoration:none !important;
  font-size:.88rem !important;
  font-weight:700 !important;
  line-height:1.2 !important;
}

.compact-footer .footer-socials a:hover,
.compact-footer .compact-socials a:hover,
.compact-footer .footer-link-list a:hover,
.compact-footer .footer-text-link:hover{
  opacity:.78 !important;
}

.compact-footer .craft-footer-bottom{
  background:#04100d !important;
  border-top:1px solid rgba(255,255,255,.07) !important;
  padding:14px 0 !important;
}

.compact-footer .footer-bottom-inner{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:18px !important;
}

.compact-footer .footer-bottom-inner p{
  margin:0 !important;
  color:#b9aea1 !important;
  font-size:.86rem !important;
}

@media(max-width:760px){
  .compact-footer .craft-footer-top{
    padding:34px 0 24px !important;
  }

  .compact-footer .craft-footer-grid{
    grid-template-columns:1fr !important;
    gap:28px !important;
    text-align:center !important;
  }

  .compact-footer .footer-link-list{
    align-items:center !important;
  }

  .compact-footer .footer-socials,
  .compact-footer .compact-socials{
    justify-content:center !important;
  }

  .compact-footer .footer-bottom-inner{
    flex-direction:column !important;
    text-align:center !important;
    gap:6px !important;
  }
}


/* =========================
   FINAL SITE-WIDE FOOTER + HOMEPAGE PATCH 2026-05-29
========================= */

/* Force clear homepage contrast now the homepage section classes are live. */
.homepage-nav-section{
  background:#0d2f2a !important;
  border-top:1px solid rgba(214,185,140,.26) !important;
  border-bottom:1px solid rgba(214,185,140,.20) !important;
}

.homepage-intro-section{
  background:linear-gradient(180deg,#1f5a50 0%,#16483f 100%) !important;
  border-bottom:1px solid rgba(214,185,140,.20) !important;
}

.homepage-food-section{
  background:#f5f1e8 !important;
  color:#12362f !important;
  border-bottom:1px solid rgba(18,54,47,.14) !important;
}

.homepage-food-section h2,
.homepage-food-section p{
  color:#12362f !important;
}

.homepage-food-section .food-feature-copy p{
  color:#31534d !important;
}

.homepage-food-section .btn.primary{
  background:#12362f !important;
  color:#f8f1e5 !important;
  border-color:#12362f !important;
}

.homepage-reviews-section{
  background:#16483f !important;
  border-top:1px solid rgba(214,185,140,.20) !important;
  border-bottom:1px solid rgba(214,185,140,.20) !important;
}

.homepage-reviews-section .review-card-modern{
  background:#f5f1e8 !important;
  color:#12362f !important;
  border:1px solid rgba(214,185,140,.38) !important;
  box-shadow:0 12px 30px rgba(0,0,0,.18) !important;
}

.homepage-reviews-section .review-card-modern p{
  color:#12362f !important;
}

/* Compact footer with useful opening hours restored. */
.compact-footer,
.craft-footer.compact-footer{
  margin-top:0 !important;
  background:#071714 !important;
  border-top:3px solid rgba(214,185,140,.32) !important;
}

.compact-footer .craft-footer-top{
  padding:36px 0 24px !important;
}

.compact-footer .craft-footer-grid{
  display:grid !important;
  grid-template-columns:1fr 1fr 1fr 1fr !important;
  gap:28px !important;
  align-items:start !important;
}

.compact-footer .craft-footer-column h3{
  font-size:.84rem !important;
  letter-spacing:.12em !important;
  text-transform:uppercase !important;
  color:#d6b98c !important;
  margin:0 0 10px !important;
}

.compact-footer .craft-footer-column p{
  margin:0 0 10px !important;
  color:#cfc6bb !important;
  line-height:1.55 !important;
  font-size:.92rem !important;
}

.compact-footer .footer-link-list{
  display:flex !important;
  flex-direction:column !important;
  gap:7px !important;
}

.compact-footer .footer-link-list a,
.compact-footer .footer-text-link,
.compact-footer .craft-footer-column a{
  color:#f8f1e5 !important;
  text-decoration:none !important;
  font-size:.92rem !important;
  line-height:1.35 !important;
}

.compact-footer .footer-socials,
.compact-footer .compact-socials{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px !important;
  justify-content:flex-start !important;
}

.compact-footer .footer-socials a,
.compact-footer .compact-socials a{
  display:inline-block !important;
  padding:7px 11px !important;
  border:1px solid rgba(214,185,140,.28) !important;
  background:rgba(248,241,229,.035) !important;
  border-radius:999px !important;
  color:#f8f1e5 !important;
  text-decoration:none !important;
  font-size:.84rem !important;
  font-weight:700 !important;
  line-height:1.2 !important;
}

.compact-footer .craft-footer-bottom{
  background:#04100d !important;
  border-top:1px solid rgba(255,255,255,.07) !important;
  padding:12px 0 !important;
}

.compact-footer .footer-bottom-inner{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:16px !important;
}

.compact-footer .footer-bottom-inner p{
  margin:0 !important;
  color:#b9aea1 !important;
  font-size:.82rem !important;
}

@media(max-width:900px){
  .compact-footer .craft-footer-grid{
    grid-template-columns:1fr 1fr !important;
    gap:24px !important;
  }
}

@media(max-width:640px){
  .compact-footer .craft-footer-top{
    padding:30px 0 20px !important;
  }

  .compact-footer .craft-footer-grid{
    grid-template-columns:1fr !important;
    gap:22px !important;
    text-align:center !important;
  }

  .compact-footer .footer-link-list{
    align-items:center !important;
  }

  .compact-footer .footer-socials,
  .compact-footer .compact-socials{
    justify-content:center !important;
  }

  .compact-footer .footer-bottom-inner{
    flex-direction:column !important;
    text-align:center !important;
    gap:5px !important;
  }
}
