:root{--green:#294d40;--sage:#729f8a;--mint:#c3dfd2;--sand:#ece3cf;--paper:#f7f6ef;--orange:#f95b1e;--ink:#273e34}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:var(--paper);font-family:"Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;font-size:16px;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid var(--orange);outline-offset:6px}.skip{position:fixed;top:-80px;left:15px;padding:15px;background:white;z-index:100}.skip:focus{top:10px}header{height:110px;padding:17px 5%;position:absolute;top:0;left:0;width:100%;display:flex;align-items:center;justify-content:space-between;z-index:10;color:white;border-bottom:1px solid #ffffff40}header .brand{display:block;line-height:0}header img{width:80px;height:72px;object-fit:contain}header nav{display:flex;gap:42px}header nav a,.instagram{font-size:13px;letter-spacing:1.5px;padding:12px 0}.instagram{border-bottom:1px solid #ffffff90}.instagram span{margin-left:20px}header a:hover{opacity:.75}.menu{display:none}.mobile-nav[hidden]{display:none}.hero{height:max(760px,95svh);max-height:1150px;position:relative;color:white;background:var(--green);isolation:isolate}.hero-photo,.hero-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.hero-photo{object-position:57% center}.hero-shade{z-index:-1;background:linear-gradient(90deg,rgba(12,29,23,.46),rgba(12,29,23,.03) 80%),linear-gradient(0deg,rgba(12,22,18,.62),transparent 50%)}.hero-content{position:absolute;left:8%;top:26%}.eyebrow,.small-label{font-size:12px;letter-spacing:3px;font-weight:500}.hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(78px,8.9vw,144px);font-weight:400;letter-spacing:-5px;line-height:.99;margin:28px 0 27px}.hero h1 em{font-weight:400}.hero-jp{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:19px;line-height:1.95;letter-spacing:.2em}.explore{display:inline-flex;gap:40px;align-items:center;font-size:12px;letter-spacing:1.8px;margin-top:18px;padding-bottom:10px;border-bottom:1px solid #ffffff70}.explore span{font-size:23px}.hero-bottom{position:absolute;bottom:26px;left:5%;right:5%;display:flex;justify-content:space-between;align-items:center;font-size:12px;letter-spacing:2px}.image-note{font-size:12px;letter-spacing:.03em;color:#ffffffbf}.strip{display:flex;justify-content:space-around;gap:20px;padding:23px 5%;background:var(--mint);font-size:12px;letter-spacing:2.5px}.section{padding:85px 8% 100px}.section-label{display:flex;justify-content:space-between;font-size:12px;letter-spacing:1.8px;border-bottom:1px solid #294d4038;padding-bottom:23px}.about-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:8%;align-items:center;margin:70px 0 75px}.about h2{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:clamp(34px,3.5vw,55px);line-height:1.6;font-weight:400;letter-spacing:.1em;margin:0}.about h2 span{color:var(--sage)}.about-copy{position:relative;padding-top:15px}.about-copy img{width:84px;height:76px;object-fit:contain;margin-bottom:13px}.about-copy p{line-height:2.1;font-size:16px;letter-spacing:.05em}.experiences{display:grid;grid-template-columns:repeat(3,1fr)}.experiences article{border-top:1px solid #729f8a;padding:24px 25px 0 0}.experiences article+article{padding-left:30px;border-left:1px solid #729f8a50}.number{font-family:Georgia,serif;font-size:13px;color:#547661}.experiences h3{font:400 32px Georgia,serif;margin:17px 0}.experiences p{font-size:14px;line-height:1.9;margin-bottom:0}.restaurant{background:var(--green);color:var(--sand);overflow:hidden}.restaurant-inner{padding:62px 8% 80px}.restaurant .section-label{border-color:#ece3cf45}.restaurant-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:12%;padding-top:76px;align-items:center}.small-label{color:var(--mint);font-size:12px;letter-spacing:2px}.restaurant h2{font:400 clamp(70px,8.7vw,140px)/.95 Georgia,serif;letter-spacing:-4px;margin:34px 0}.restaurant h2 em{color:var(--mint);font-weight:400}.pronunciation{font-size:14px;letter-spacing:.3em}.orange-line{display:block;width:48px;height:3px;background:var(--orange);margin-bottom:29px}.restaurant-copy h3{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:27px;line-height:1.8;font-weight:400;letter-spacing:.1em}.restaurant-copy p{font-size:15px;line-height:2.1;color:#f2eee2}.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:26px;border-bottom:1px solid;padding:12px 0;font-size:14px;line-height:1.6}.restaurant-copy .text-link{margin-top:13px}.text-link:hover{opacity:.7}.restaurant-foot{border-top:1px solid #ece3cf45;padding:26px 20px;text-align:center;font:italic 25px Georgia,serif;letter-spacing:1px}.visit{background:var(--sand)}.visit-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:8%;margin-top:62px}.visit h2{font:400 clamp(45px,5.2vw,82px)/1.13 Georgia,serif;letter-spacing:-2px;margin:0}.visit h2 em{color:#577e68;font-weight:400}.visit-lead{font-family:"Yu Mincho",serif;margin-top:27px;letter-spacing:.12em;line-height:1.8}.visit-details h3{font:400 31px Georgia,serif;margin:0 0 19px}.visit-details p{font-size:15px;line-height:1.9}.visit dl{margin:28px 0}.visit dl div{display:grid;grid-template-columns:115px 1fr;border-top:1px solid #294d4038;padding:18px 0;gap:14px}.visit dt{font-size:12px;letter-spacing:1px;padding-top:4px}.visit dd{margin:0;font-size:14px;line-height:1.9}.visit-links{display:flex;gap:24px;align-items:center;flex-wrap:wrap}.map-link{display:flex;gap:42px;align-items:center;background:var(--green);color:white;padding:18px 22px;font-size:14px}.map-link:hover{background:#41634f}footer{background:var(--green);color:white;display:flex;justify-content:space-between;align-items:center;padding:45px 6%;gap:25px}footer img{object-fit:contain}footer p{font:italic 34px Georgia,serif}footer div{display:flex;flex-direction:column;gap:17px;font-size:12px;letter-spacing:1px}footer small{font-size:12px;opacity:.75}@media(min-width:1600px){.section,.restaurant-inner{padding-left:max(8%,calc((100vw - 1400px)/2));padding-right:max(8%,calc((100vw - 1400px)/2))}}@media(max-width:760px){html{scroll-padding-top:20px}header{height:91px;padding:13px 6%}header img{width:65px;height:59px}header nav,header .instagram{display:none}.menu{display:flex;flex-direction:column;justify-content:center;gap:7px;width:44px;height:44px;background:none;border:0;color:white;padding:7px;cursor:pointer}.menu span{width:28px;height:1px;background:currentColor}.mobile-nav{position:absolute;z-index:9;top:91px;left:0;width:100%;background:var(--green);color:white;padding:24px 7%;display:flex;flex-direction:column;gap:12px}.mobile-nav a{padding:13px 0;font-size:14px;letter-spacing:1px}.hero{height:850px;height:94svh;min-height:690px;max-height:960px}.hero-content{top:25%;left:7%;right:6%}.hero-photo{object-position:54% center}.hero-shade{background:linear-gradient(90deg,#13291f66,#13291f12),linear-gradient(0deg,#0c1612a6,transparent 65%)}.hero h1{font-size:clamp(73px,17vw,110px);letter-spacing:-3px;line-height:1.02;margin-top:28px}.hero-jp{font-size:17px}.eyebrow{font-size:12px;letter-spacing:2px}.explore{font-size:12px;gap:30px}.hero-bottom{left:7%;right:6%;bottom:20px;align-items:start;flex-direction:column;gap:12px;font-size:11px;letter-spacing:1px}.hero-bottom span:first-child{font-size:12px;letter-spacing:.6px}.image-note{font-size:12px}.strip{padding:20px 5%;justify-content:space-between;font-size:12px;letter-spacing:1px}.strip span:last-child{display:none}.section{padding:53px 7% 62px}.section-label{font-size:12px;letter-spacing:.8px;gap:16px}.section-label span:last-child{font-size:12px;text-align:right}.about-grid{grid-template-columns:1fr;gap:30px;margin:43px 0}.about h2{font-size:36px}.about-copy{padding-top:0}.about-copy img{display:none}.about-copy p{font-size:15px}.experiences{grid-template-columns:1fr}.experiences article,.experiences article+article{position:relative;border-left:none;padding:24px 0 23px 40px}.number{position:absolute;left:0;top:31px}.experiences h3{font-size:29px;margin:0 0 13px}.experiences p{font-size:14px}.restaurant-inner{padding:48px 7% 58px}.restaurant-grid{grid-template-columns:1fr;gap:44px;padding-top:47px}.restaurant h2{font-size:100px;margin:25px 0}.restaurant-copy h3{font-size:26px}.restaurant-copy p{font-size:15px}.restaurant-copy .text-link{font-size:13px;gap:16px}.restaurant-foot{font-size:16px;letter-spacing:0;padding:23px 10px}.visit-grid{grid-template-columns:1fr;gap:38px;margin-top:39px}.visit h2{font-size:54px}.visit-details h3{font-size:29px}.visit dl div{grid-template-columns:98px 1fr;gap:10px}.visit dd{font-size:13px}.visit-links{gap:18px}.map-link{gap:29px}footer{padding:37px 7%;flex-wrap:wrap;gap:24px}footer img{width:65px;height:59px}footer p{font-size:26px}footer div{width:100%;border-top:1px solid #ffffff35;padding-top:23px;font-size:12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Photo-only opening and complete brand statement in section 01. */
header{position:relative;background:var(--green);border-bottom:0}
.hero{height:auto;min-height:0;max-height:none;aspect-ratio:1785 / 881}
.hero-photo{object-position:center}
.brand-copy{display:grid;grid-template-columns:1fr 170px;align-items:center;gap:60px;margin:68px 0 78px}
.brand-copy h1{font:400 clamp(46px,6.2vw,96px)/1.15 Georgia,"Times New Roman",serif;letter-spacing:-2px;margin:0 0 40px}
.brand-message{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:clamp(21px,2.2vw,32px);line-height:1.9;letter-spacing:.1em;margin:0 0 30px}
.about .brand-copy h2{font-size:clamp(21px,2.1vw,30px);line-height:1.9;letter-spacing:.07em}
.brand-copy>img{width:100%;height:auto;object-fit:contain}
@media(max-width:760px){.hero{height:auto;min-height:0;max-height:none;aspect-ratio:4/3}.brand-copy{grid-template-columns:1fr;gap:36px;margin:42px 0 50px}.brand-copy h1{font-size:clamp(34px,8.6vw,62px);letter-spacing:-1px;margin-bottom:29px}.brand-message{font-size:20px;letter-spacing:.05em}.about .brand-copy h2{font-size:20px;letter-spacing:.04em}.brand-copy>img{width:105px;height:auto}.about .brand-copy h2 span{display:inline-block}}

/* DJ flyer section: the empty state is replaced with supplied event artwork. */
.events{background:var(--paper)}
.events-layout{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center;margin-top:64px}
.events-intro h2{font:400 clamp(58px,7vw,108px)/1.02 Georgia,"Times New Roman",serif;letter-spacing:-3px;margin:0 0 30px}
.events-intro h2 em{font-weight:400;color:var(--sage)}
.events-intro p{font-size:16px;line-height:2;letter-spacing:.04em}
.events-intro .events-lead{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:21px}
.events-intro .text-link{margin-top:18px}
.flyer-gallery{display:grid;grid-template-columns:minmax(0,1fr);gap:30px;min-width:0}
.flyer-empty{aspect-ratio:4/5;border:1px solid #729f8a75;background:#c3dfd22e;padding:34px 20px;display:flex;flex-direction:column;align-items:center;justify-content:space-between;text-align:center}
.flyer-label{font-size:12px;letter-spacing:1.8px;line-height:1.8}
.flyer-empty>img{width:112px;height:auto;opacity:.85}
.flyer-coming{font:italic 36px/1.2 Georgia,serif;margin:0 0 16px}
.flyer-notice{font-size:14px;line-height:1.8;margin:0}
.flyer-card{margin:0;min-width:0}.flyer-card a{display:block}.flyer-card img{display:block;width:100%;height:auto;object-fit:contain}.flyer-card figcaption{font-size:16px;line-height:1.8;margin-top:16px}
@media(max-width:1050px){header nav{gap:23px}}
@media(max-width:760px){.events-layout{grid-template-columns:1fr;gap:38px;margin-top:43px}.events-intro h2{font-size:67px;letter-spacing:-2px}.events-intro .events-lead{font-size:20px}.events-intro .text-link{font-size:14px;gap:15px}.flyer-empty{width:100%;max-width:420px;margin:0 auto;padding:26px 18px}.flyer-coming{font-size:32px}}

/* Terima Kasih photography and original menu PDF. */
.restaurant-actions{display:flex;flex-direction:column;align-items:flex-start;gap:12px;margin-top:28px}
.menu-pdf-link{display:inline-flex;justify-content:space-between;align-items:center;gap:40px;padding:18px 24px;background:var(--sand);color:var(--green);font-size:16px;line-height:1.5}
.menu-pdf-link span{font-size:13px;letter-spacing:1px}.menu-pdf-link:hover{background:var(--mint)}
.restaurant-actions .text-link{margin-top:0}
.food-gallery{display:grid;grid-template-columns:2fr 1fr 1fr;gap:16px;margin-top:68px;align-items:stretch}
.food-photo{display:block;min-width:0;overflow:hidden;background:#203c32}
.food-photo img{display:block;width:100%;height:100%;aspect-ratio:3/2;object-fit:cover;transition:transform .3s ease}
.food-photo-main{grid-row:span 2}.food-photo-main img{object-position:center}
.food-photo:hover img{transform:scale(1.025)}
@media(max-width:1000px){.food-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.food-photo-main{grid-column:1/-1;grid-row:auto}.food-photo-main img{aspect-ratio:3/2}}
@media(max-width:760px){.food-gallery{gap:10px;margin-top:40px}.menu-pdf-link{width:100%;max-width:340px}.restaurant-actions{gap:12px}}
@media(prefers-reduced-motion:reduce){.food-photo img{transition:none}.food-photo:hover img{transform:none}}

/* Photo-only slideshow; controls sit below the photographs. */
.hero.slideshow{height:auto;min-height:0;max-height:none;aspect-ratio:auto;background:var(--green)}
.slideshow-stage{position:relative;aspect-ratio:16/9;overflow:hidden;touch-action:pan-y}
.hero-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity 1.1s ease,visibility 1.1s;pointer-events:none}
.hero-slide.is-active{opacity:1;visibility:visible;pointer-events:auto}
.hero-slide img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.slideshow-controls{display:flex;justify-content:center;align-items:center;gap:14px;padding:8px 20px;background:var(--green);color:white}
.slideshow-controls[hidden]{display:none}
.slideshow-controls button{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;background:none;color:inherit;border:0;cursor:pointer;font-size:23px;padding:10px}
.slide-dots{display:flex;gap:0}.slide-dots button span{display:block;width:7px;height:7px;border-radius:50%;background:transparent;border:1px solid #fff}
.slide-dots button[aria-pressed="true"] span{background:white}
.slideshow-controls button:hover{background:#ffffff14}
@media(max-width:760px){.slideshow-stage{aspect-ratio:16/9}.slideshow-controls{gap:7px;padding:4px 12px}}
@media(prefers-reduced-motion:reduce){.hero-slide{transition:none}}

.event-archive-label{font-size:13px;color:#547661;letter-spacing:.08em}

/* Opening prices and hours, matching the established green and mint palette. */
.pricing{background:var(--mint)}
.pricing-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:10%;margin-top:56px}
.pricing h2{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:clamp(28px,3vw,42px);font-weight:400;line-height:1.6;margin:0 0 22px}
.opening-label{display:inline-block;background:var(--green);color:white;font-size:14px;letter-spacing:.08em;padding:9px 16px;margin:0 0 28px}
.hours-list{margin:0}.hours-list>div{display:flex;flex-wrap:wrap;gap:12px 28px;padding:10px 0;line-height:1.8}.hours-list dt{min-width:5em}.hours-list dd{margin:0}
.price-list{margin:0}.price-list>div{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:12px 24px;border-bottom:1px solid #294d4040;padding:23px 0}.price-list>div:first-child{padding-top:0}.price-list dt{font-size:16px}.price-list dd{margin:0;font-size:20px;line-height:1.7}.price-list dd span{font-size:16px;display:inline-block;margin-left:5px}.price-list .entry-price dd{font-family:Georgia,serif;font-size:48px;line-height:1.2}.price-note{font-size:14px;line-height:1.9;margin:22px 0 0}
@media(min-width:761px) and (max-width:1100px){header nav{gap:17px}header nav a{letter-spacing:.8px}}
@media(max-width:760px){.pricing-grid{grid-template-columns:1fr;gap:36px;margin-top:36px}.price-list>div{gap:8px 16px}.price-list dd{font-size:18px}.price-list dd span{font-size:14px}.price-list .entry-price dd{font-size:42px}}
