*{box-sizing:border-box} :root{--ink:#12100e;--cream:#f4efe5;--paper:#faf8f3;--gold:#b58a45;--red:#8e1f1c;--line:rgba(18,16,14,.16);--serif:"Playfair Display",Georgia,serif;--sans:"DM Sans",Arial,sans-serif}
html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);overflow-x:hidden}body.lock{overflow:hidden}a{text-decoration:none;color:inherit}
.nav{height:76px;position:fixed;z-index:20;left:0;right:0;top:0;padding:0 4.5vw;display:flex;align-items:center;justify-content:space-between;background:rgba(250,248,243,.9);backdrop-filter:blur(15px);border-bottom:1px solid rgba(18,16,14,.09)}
.logo{font-size:15px;font-weight:700;letter-spacing:.18em}.logo span{font-weight:400}.logo b{font-size:20px;color:var(--gold);margin-left:5px}
.nav nav{display:flex;gap:40px;margin-left:auto;margin-right:45px}.nav nav a{font-size:12px}.nav nav a:hover{color:var(--red)}
.reserve{font-size:12px;font-weight:700}.hamb{display:none;background:var(--ink);border:0;width:42px;height:42px;margin-left:20px;flex-direction:column;gap:6px;align-items:center;justify-content:center}.hamb i{display:block;width:17px;height:1px;background:#fff;transition:.3s}.hamb.open i:first-child{transform:translateY(3.5px) rotate(45deg)}.hamb.open i:last-child{transform:translateY(-3.5px) rotate(-45deg)}
.drawer{position:fixed;z-index:19;inset:76px 0 0;background:var(--red);color:#fff;transform:translateY(-105%);transition:.55s cubic-bezier(.77,0,.18,1);padding:10vh 8vw;display:flex;flex-direction:column;gap:12px}.drawer.open{transform:none}.drawer a{font-family:var(--serif);font-size:clamp(44px,10vw,92px);line-height:1.02}
.hero{height:100svh;min-height:700px;position:relative;color:#fff;display:flex;align-items:flex-end;padding:7vh 6vw;overflow:hidden;background:#27150c}.hero-bg{position:absolute;inset:0;background:url("hero.jpg") center/cover;animation:zoom 16s ease-out forwards}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(19,9,5,.78),rgba(35,13,5,.2) 65%),linear-gradient(0deg,rgba(10,5,2,.65),transparent 60%)}
.hero-content{position:relative;z-index:2;width:min(1150px,100%)}.kicker{font-size:10px;letter-spacing:.21em;font-weight:700;margin:0 0 23px}.hero h1{font-size:clamp(65px,10vw,155px);line-height:.83;letter-spacing:-.07em;margin:0;font-weight:500}.hero h1 em,.intro h2 em,.panel-copy h3 em,.birthday h2 em,.contact h2 em{font-family:var(--serif);font-weight:500;letter-spacing:-.055em}
.hero-row{display:flex;align-items:flex-end;justify-content:space-between;max-width:900px;margin-top:55px}.hero-row p{font-size:15px;line-height:1.65;max-width:410px;margin:0;color:#f3eee8}.round{height:108px;width:108px;border:1px solid rgba(255,255,255,.7);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column;font-size:11px;text-transform:uppercase;letter-spacing:.1em;transition:.35s}.round strong{font-size:19px;font-weight:400;margin-top:7px}.round:hover{background:#fff;color:var(--ink);transform:rotate(-8deg)}.vertical{position:absolute;right:4vw;top:115px;writing-mode:vertical-rl;font-size:9px;letter-spacing:.2em;z-index:2}
.intro{padding:15vh 9vw;display:grid;grid-template-columns:1fr 2fr 1.1fr;gap:4vw;align-items:end;background:#fff}.num{font-size:10px;letter-spacing:.15em;opacity:.55}.kicker.dark{color:var(--red)}.intro h2,.birthday h2,.contact h2{font-size:clamp(52px,7vw,105px);line-height:.88;letter-spacing:-.06em;margin:0}.intro>p{font-size:15px;line-height:1.8;max-width:390px;margin:0}
.panels{display:grid;grid-template-columns:repeat(3,1fr);background:var(--ink);color:#fff}.panels article{min-height:720px;position:relative;overflow:hidden;border-right:1px solid rgba(255,255,255,.13)}.panel-img{position:absolute;inset:0;background-size:cover;background-position:center;filter:brightness(.68);transition:transform .8s}.panels article:hover .panel-img{transform:scale(1.06)}.sushi{background-image:url("hero.jpg");background-position:35% center}.wok{background-image:url("hero.jpg");background-position:50% center}.teppan{background-image:url("hero.jpg");background-position:72% center}.panel-copy{position:absolute;inset:auto 0 0;padding:48px 42px;background:linear-gradient(transparent,rgba(0,0,0,.82));min-height:340px}.panel-copy small{font-size:10px;letter-spacing:.2em;opacity:.7}.panel-copy h3{font-size:clamp(35px,4vw,60px);line-height:.9;letter-spacing:-.05em;margin:30px 0 25px}.panel-copy p{font-size:13px;line-height:1.7;max-width:380px;color:#eee}
.formula{padding:13vh 7vw;background:var(--cream)}.formula-head{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:17px;margin-bottom:65px}.formula-head span{font-family:var(--serif);font-size:14px;letter-spacing:.1em}.price-grid{display:grid;grid-template-columns:1fr 1fr;gap:2px}.price-card{background:#fff;padding:55px 50px;min-height:520px}.price-card.featured{background:var(--red);color:#fff}.price-card>p:first-child{font-size:11px;letter-spacing:.18em;font-weight:700}.price-card h3{font-size:clamp(75px,9vw,130px);letter-spacing:-.08em;line-height:.8;margin:55px 0 15px;font-weight:500}.price-card>span{font-size:12px;opacity:.72}.rule{height:1px;background:currentColor;opacity:.2;margin:38px 0 24px}.alt{font-size:13px;margin:12px 0}.alt b{font-size:15px}.price-card small{display:block;margin-top:45px;font-size:10px;line-height:1.6;opacity:.65}.price-note{font-size:10px;opacity:.6;margin:22px 0 0}
.birthday{min-height:650px;background:var(--ink);color:#fff;display:flex;align-items:center;padding:9vw;background-image:radial-gradient(circle at 80% 20%,rgba(181,138,69,.22),transparent 34%)}.birthday-inner{max-width:900px}.birthday h2{margin:0 0 35px}.birthday-inner>p:not(.kicker){max-width:620px;line-height:1.8;color:#ded8d0}.birthday-inner>a{display:inline-block;margin-top:30px;border-bottom:1px solid #fff;padding-bottom:8px;font-size:11px;letter-spacing:.1em;text-transform:uppercase}
.contact{display:grid;grid-template-columns:1fr 1fr;background:#fff;min-height:700px}.contact-info{padding:11vw 9vw;display:flex;flex-direction:column;justify-content:center}.contact h2{margin-bottom:45px}.contact-info>p:not(.kicker){font-size:15px;line-height:1.8}.phone{font-size:clamp(31px,4vw,57px);color:var(--red);font-weight:600;letter-spacing:-.04em;margin:25px 0}.hours{font-size:12px!important;line-height:2!important}.actions{display:flex;gap:10px;margin-top:28px}.actions a{padding:15px 22px;border:1px solid var(--line);font-size:10px;text-transform:uppercase;letter-spacing:.1em}.actions a:first-child{background:var(--ink);color:#fff;border-color:var(--ink)}.map iframe{width:100%;height:100%;min-height:600px;border:0;filter:grayscale(.25) sepia(.12)}
footer{background:#0d0b09;color:#fff;padding:35px 5vw;display:flex;justify-content:space-between;align-items:center;font-size:10px}footer p{opacity:.55}
section,article{opacity:0;transform:translateY(28px);transition:.8s ease}section.in,article.in{opacity:1;transform:none}
@keyframes zoom{from{transform:scale(1.03)}to{transform:scale(1.11)}}
@media(max-width:850px){.nav{height:68px;padding:0 5vw}.nav nav,.reserve{display:none}.hamb{display:flex}.drawer{inset:68px 0 0}.hero{min-height:92svh;padding:7vh 7vw}.hero h1{font-size:clamp(55px,15vw,90px)}.hero-row{margin-top:42px;gap:20px}.hero-row p{font-size:13px}.round{width:88px;height:88px;flex:0 0 auto}.intro{grid-template-columns:1fr;padding:90px 7vw;gap:35px}.panels{grid-template-columns:1fr}.panels article{min-height:560px;border-right:0;border-bottom:1px solid rgba(255,255,255,.13)}.panel-copy{padding:35px 28px}.price-grid{grid-template-columns:1fr}.price-card{min-height:auto;padding:42px 30px}.price-card h3{margin-top:42px}.birthday{padding:80px 7vw;min-height:600px}.contact{grid-template-columns:1fr}.contact-info{padding:85px 7vw}.map iframe{min-height:430px}.map{min-height:430px}footer{flex-wrap:wrap;gap:18px;padding:28px 7vw}.vertical{display:none}}
