/* Lokal Folk's menu palette: forest green, warm paper and beige. */
:root{--green-deep:#173c2d;--green-dark:#103023;--green-mid:#3c5f49;--green-light:#d4ddc8;--cream:#f2ebdc;--gold:#e8cfaa;--gold-light:#f2dfc4;--visit-paper:#f2ebdc;--visit-ink:#173c2d;--visit-muted:#4a5c4f;--visit-line:#c5c9b8}
body{background:var(--green-deep)}
#navbar,#mobile-menu{background:var(--green-dark)}
.nav-links .nav-cta,.visit-dock .whatsapp-float{background:var(--gold);color:var(--green-dark)}
.hero-photo img{filter:none}
.hero-photo::after{background:linear-gradient(180deg,#0c2b207a,#0c2b208a 60%,#173c2d)}
.visit-strip{background:var(--green-dark);border-color:#8a9b80;border-radius:0}
.btn-primary,.btn-outline,.info-whatsapp{border-radius:0}
#story,#info,#faq{background:var(--green-deep)}
#events-home{background:var(--green-dark)}
#pilihan.journey-intro{padding:84px 6vw 36px;background:var(--cream);color:var(--green-deep)}
.journey-intro>div{max-width:1280px;margin:auto;display:grid;grid-template-columns:1.1fr 1fr;gap:8vw;align-items:end}
.journey-intro h2{font-size:clamp(44px,6vw,84px);line-height:1.06;letter-spacing:-.025em}
.journey-intro h2 em{font-style:normal;color:#4d6d51}
.journey-intro p{font-size:17px;line-height:1.8;max-width:48ch}
.journey-nav{max-width:1280px;margin:40px auto 0;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #afbaa8}
.journey-nav a{min-height:64px;padding:16px 20px;display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:1px solid #afbaa8;font-size:16px}
.journey-nav a:hover{background:#e5e3d3}
.journey-nav a{justify-content:flex-start;font-weight:500}.journey-nav a+a{border-left:1px solid #afbaa8}
#menu.menu-journey{padding:0;border:0;background:var(--cream)}
.journey-scene{padding:72px 6vw 86px;background:var(--cream);color:var(--green-deep)}
.journey-inner{max-width:1280px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:center}
.journey-copy{min-width:0}
.journey-copy h2{font-size:clamp(44px,4.9vw,72px);line-height:1.1;letter-spacing:-.02em;font-weight:500}
.journey-copy h2 em{font-style:normal;color:#4d6d51}
.journey-copy>p{font-size:16px;line-height:1.85;margin-top:24px;max-width:49ch}
.journey-media{min-width:0;margin:0}
.journey-media .coffee-frame{aspect-ratio:4/5;overflow:hidden;background:var(--green-dark)}
.journey-media img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 74%}
.journey-media figcaption{font-size:14px;line-height:1.65;margin-top:14px;max-width:50ch}
.journey-makanan .journey-media{grid-column:1;grid-row:1}
.journey-makanan .journey-copy{grid-column:2;grid-row:1}
.journey-makanan .coffee-frame{aspect-ratio:1/1;background:#e5dfcd}
.journey-makanan .coffee-frame img{object-fit:contain;object-position:center;padding:32px}
.journey-kopi,.journey-minuman{background:var(--green-deep);color:var(--cream)}
.journey-kopi h2 em,.journey-minuman h2 em{color:var(--gold)}
.journey-picks{list-style:none;padding:0;margin:30px 0 0}
.journey-picks li{border-top:1px solid #7d947366}
.journey-picks li:last-child{border-bottom:1px solid #7d947366}
.journey-picks a{display:flex;justify-content:space-between;gap:20px;padding:17px 0;min-height:56px;font-size:15px;line-height:1.6}
.journey-picks a>span:last-child{white-space:nowrap;font-variant-numeric:tabular-nums}
.journey-picks i{font-style:normal;margin-left:10px}
.journey-picks a:hover{text-decoration:underline;text-underline-offset:4px}
.journey-copy .journey-tax,.journey-intro .journey-tax{font-size:14px;margin-top:12px}
.journey-copy .text-link{margin-top:18px;color:inherit;font-size:15px}
.journey-mocktail{background:#dce1cf}
.journey-mocktail .journey-media{grid-column:1;grid-row:1}
.journey-mocktail .journey-copy{grid-column:2;grid-row:1}
.journey-mocktail .coffee-frame img{object-position:center bottom}
.journey-minuman .coffee-frame img{object-position:center bottom}
.journey-book{display:flex;align-items:center;justify-content:space-between;gap:28px;background:var(--gold);color:var(--green-deep);padding:44px 6vw}
.journey-book p{font-size:18px;line-height:1.6}.journey-book strong{font-size:28px}
.journey-book .btn-primary{background:var(--green-deep);color:var(--cream);min-height:54px;font-size:15px}
/* Full readable menu. Anchor navigation works with JavaScript disabled. */
#menu.menu-catalog{background:var(--cream);color:var(--green-deep);padding:0 0 52px}
.catalog-lead{max-width:1280px;margin:auto;padding:48px 6vw 32px}
.catalog-lead h2{font-size:clamp(34px,4vw,52px)}
.catalog-lead p{max-width:65ch;font-size:16px;line-height:1.8;margin-top:20px}
.catalog-lead .catalog-date{font-size:14px;margin-top:12px}
.catalog-nav{position:sticky;top:calc(80px + var(--wp-admin-offset));z-index:55;display:grid;grid-template-columns:repeat(4,1fr);padding:0 6vw;background:var(--green-dark);color:var(--cream);border-block:1px solid #79917b}
.catalog-nav a{display:flex;justify-content:space-between;align-items:center;min-height:62px;padding:16px 20px;font-size:16px;gap:10px}
.catalog-nav a:hover,.catalog-nav a:focus-visible{background:#325542}
.catalog-body{max-width:1280px;margin:auto;padding:0 6vw}
.catalog-category{padding-top:64px;scroll-margin-top:calc(170px + var(--wp-admin-offset))}
.catalog-category>header{max-width:780px;margin-bottom:32px}
.catalog-category h2{font-size:clamp(36px,4vw,54px);line-height:1.14}
.catalog-category>header p{font-size:16px;line-height:1.8;margin-top:22px}
.catalog-group{margin-top:40px}
.catalog-group h3{font-family:var(--ff-body);font-size:19px;font-weight:600;line-height:1.4;margin-bottom:12px}
.catalog-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:42px}
.catalog-item{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 18px;text-align:left;background:transparent;border:0;border-bottom:1px solid #bdc7b4;border-radius:0;padding:23px 10px;color:var(--green-deep);scroll-margin-top:calc(170px + var(--wp-admin-offset))}
.catalog-item:hover{background:#e2e5d7}
.catalog-item-copy{display:contents}
.catalog-item-name{display:block;grid-column:1;grid-row:1;font-size:20px;font-weight:600;line-height:1.35}
.catalog-item-name>span{font-size:15px}
.catalog-item-description{display:block;grid-column:1/-1;grid-row:2;font-size:14px;line-height:1.7;margin-top:0;color:#405443}
.catalog-prices{grid-column:2;grid-row:1;display:flex;flex-direction:row;gap:12px;flex-shrink:0;align-items:end;font-size:15px;font-variant-numeric:tabular-nums}
.catalog-prices>span{display:block;text-align:right;white-space:nowrap}
.catalog-prices small{display:block;font-size:12px;color:#50634f;line-height:1.6}
.menu-questions{background:var(--green-dark)}
.menu-questions details{padding:22px 0;border-top:1px solid #79917b}
.menu-questions summary{font-size:18px;line-height:1.6;cursor:pointer}
.menu-questions details p{padding-top:16px;margin:0}
.mont-context{background:var(--cream);color:var(--green-deep);padding:52px 6vw}
.mont-context h2{font-size:clamp(34px,4vw,52px)}
.mont-context p{max-width:66ch;line-height:1.8;margin-top:22px}
.mont-context .page-links a{color:var(--green-deep)}
@media(max-width:800px){
 #pilihan.journey-intro{padding:52px 6vw 24px}
 .journey-intro>div,.journey-inner{grid-template-columns:1fr;gap:28px}
 .journey-intro p{font-size:16px}
 .journey-nav{grid-template-columns:1fr 1fr;margin-top:28px}
 .journey-nav a{font-size:15px;padding:16px 12px}
 .journey-nav a:nth-child(odd){border-left:0}
 .journey-scene{padding:40px 6vw 54px}
 .journey-copy h2{font-size:clamp(40px,9.7vw,62px)}
 .journey-makanan .journey-media,.journey-makanan .journey-copy,.journey-mocktail .journey-media,.journey-mocktail .journey-copy{grid-column:auto;grid-row:auto}
 .journey-media .coffee-frame{aspect-ratio:4/5}
 .journey-makanan .coffee-frame{aspect-ratio:4/3}
 .journey-picks a{font-size:14px;gap:12px}
 .journey-picks i{margin-left:4px}
 .journey-book{align-items:flex-start;flex-direction:column;padding:34px 6vw}
 .journey-book .btn-primary{width:100%;justify-content:space-between}
 .catalog-nav{top:calc(76px + var(--wp-admin-offset));padding:0 4vw}
 .catalog-nav a{font-size:13px;padding:14px 8px;min-height:56px}
 .catalog-nav a>span{display:none}
 .catalog-grid{grid-template-columns:1fr}
 .catalog-category{padding-top:46px;scroll-margin-top:150px}
 .catalog-item{scroll-margin-top:150px;padding-inline:8px}
 .catalog-item-name{font-size:19px}
 .catalog-item-description{font-size:14px}
 .catalog-prices{font-size:14px}
}
@media(max-width:360px){.journey-picks a{flex-wrap:wrap;gap:4px}.catalog-item{gap:12px}.catalog-prices{font-size:13px}}
.music-poster{background:#244c39;border-color:#6c876e}
.music-poster.saturday{background:var(--gold);border-color:var(--gold)}
.music-poster.saturday .poster-top,.music-poster.saturday .poster-copy p,.music-poster.saturday .poster-copy h3,.music-poster.saturday .poster-copy>span{color:var(--green-dark);border-color:#61745b}
.music-poster.sunday{background:#355c48;border-color:#7e9576}
.visit-dock .whatsapp-float{border-color:var(--gold);border-radius:0;box-shadow:none}

.visit-dock .whatsapp-float{gap:10px}
.whatsapp-icon{display:block;flex:0 0 22px;width:22px;height:22px}
/* Reading guide: descriptive links and a comfortable text measure. */
.catalog-guide a{color:inherit;text-decoration:underline;text-underline-offset:4px}
.article-page{background:var(--cream);color:var(--green-deep)}
.article-intro{max-width:1280px}
.article-intro nav,.article-intro>p{color:var(--green-deep)}
.article-intro h1{font-size:clamp(38px,5vw,68px);text-transform:none;max-width:1000px}
.article-intro .article-meta{font-size:14px;margin-bottom:0;color:#4a5c4f}
.article-cover{max-width:1128px;margin:0 auto;padding:0 6vw}
.article-cover img{display:block;width:100%;height:clamp(240px,34vw,420px);object-fit:cover;object-position:center bottom}
.article-cover figcaption{font-size:14px;line-height:1.6;margin-top:14px}
.article-layout{max-width:1280px;margin:0 auto;padding:56px 6vw 80px;display:grid;grid-template-columns:220px minmax(0,1fr);gap:52px;align-items:start}
.article-toc{position:sticky;top:110px;display:flex;flex-direction:column;border-top:1px solid #b4bdac;padding-top:20px;font-size:14px;line-height:1.6}
.article-toc strong{font-weight:600;margin-bottom:12px}
.article-toc a{padding:12px 0;text-decoration:underline;text-underline-offset:4px;min-height:44px}
.article-body{font-size:17px;line-height:1.85;min-width:0;max-width:70ch}
.article-body p{margin-bottom:24px}
.article-body section{padding-top:28px;scroll-margin-top:110px}
.article-body h2{font-size:clamp(30px,3.3vw,44px);line-height:1.2;margin:0 0 24px;text-transform:none;letter-spacing:0}
.article-body h3{font-family:var(--ff-body);font-size:21px;line-height:1.5;margin:32px 0 20px;letter-spacing:0}
.article-body a:not(.btn-primary){color:inherit;text-decoration:underline;text-underline-offset:4px}
.article-budget{width:100%;border-collapse:collapse;font-size:14px;line-height:1.6;margin:12px 0 24px}
.article-budget caption{text-align:left;font-weight:600;margin-bottom:16px}
.article-budget th,.article-budget td{padding:16px 12px;text-align:left;border-bottom:1px solid #b4bdac;vertical-align:top}
.article-budget thead{background:#dce1cf}.article-budget th{font-weight:600}
.article-budget td{white-space:nowrap;font-variant-numeric:tabular-nums}
.article-source{border-top:1px solid #b4bdac;margin-top:40px;padding-top:24px;font-size:14px;color:#4a5c4f}
@media(max-width:800px){.article-layout{grid-template-columns:1fr;gap:32px;padding-top:32px}.article-toc{position:static}.article-body{font-size:16px}.article-cover{padding:0 6vw}.article-budget{font-size:12px}.article-budget th,.article-budget td{padding:14px 8px}.article-body .btn-primary{font-size:14px;max-width:100%}}
/* Phosphor icons inlined by lokalfolk_icon(); they replace decorative arrows */
.lf-icon{width:1.15em;height:1.15em;flex-shrink:0}
.btn-primary>span[aria-hidden] .lf-icon,.hero-btns .btn-outline>span .lf-icon,.strip-book>span .lf-icon{width:17px;height:17px}
.text-link{gap:10px}.text-link .lf-icon,.info-link .lf-icon,.dock-location .lf-icon{width:18px;height:18px}
.info-link{gap:8px}
.visit-strip strong{display:flex;align-items:center;gap:8px}.visit-strip strong .lf-icon{width:18px;height:18px;color:var(--gold)}
.journey-nav a{flex-direction:column;align-items:flex-start;justify-content:center;gap:10px;min-height:104px}
.journey-nav .lf-icon{width:30px;height:30px;color:#4d6d51}
.catalog-nav a{justify-content:flex-start;gap:12px}.catalog-nav .lf-icon{width:22px;height:22px}
.catalog-guide a{display:inline-flex;align-items:center;gap:8px}
@media(max-width:800px){.journey-nav a{min-height:92px}.journey-nav .lf-icon{width:26px;height:26px}.catalog-nav a{flex-direction:column;align-items:flex-start;gap:6px}}
/* Menu page lead: one quiet utility row instead of a second intro */
.catalog-lead{display:flex;align-items:center;justify-content:space-between;gap:12px 32px;flex-wrap:wrap;padding-block:22px}
.catalog-lead p,.catalog-lead .catalog-date{margin:0;max-width:none}
.catalog-lead .catalog-guide{font-size:15px}
.catalog-lead .catalog-date{font-size:12px;color:#4a5c4f}
.hero-sub strong{font-weight:600;color:var(--gold)}
.journey-fineprint{display:block;margin-top:10px;font-size:12px;line-height:1.5;font-weight:400}
