@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600&family=Noto+Serif+JP:wght@400;500;600&display=swap');
:root{--ink:#171915;--paper:#e9e5dc;--gold:#c4ae80;--muted:#adafa4;--line:rgba(196,174,128,.24);--serif:'Noto Serif JP','Yu Mincho',serif;--latin:'Cormorant Garamond',Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--ink);color:var(--paper);font-family:var(--serif);font-weight:400;line-height:2;font-size:14px}body:after{content:'';position:fixed;inset:0;pointer-events:none;z-index:30;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.7' filter='url(%23n)'/%3E%3C/svg%3E")}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--gold);outline-offset:6px}button{border-radius:0}img{display:block;width:100%;height:100%;object-fit:cover}::selection{background:var(--gold);color:var(--ink)}[hidden]{display:none!important}.skip{position:fixed;top:-100px;left:16px;z-index:100;background:var(--paper);color:var(--ink);padding:10px}.skip:focus{top:10px}.progress{position:fixed;left:0;top:0;height:2px;width:100%;transform:scaleX(0);transform-origin:left;background:var(--gold);z-index:60}.header{position:fixed;top:0;left:0;width:100%;padding:27px 5%;display:flex;justify-content:space-between;align-items:center;z-index:40;transition:background .5s,padding .5s,border-color .5s;border-bottom:1px solid transparent}.header.scrolled{background:rgba(23,25,21,.95);padding-top:15px;padding-bottom:15px;border-color:var(--line);backdrop-filter:blur(15px)}.logo{font-family:var(--latin);font-size:42px;letter-spacing:.16em;line-height:1;display:inline-flex;flex-direction:column;align-items:center}.logo span{font-family:Arial,sans-serif;font-size:8px;letter-spacing:.28em;margin-top:9px}.header nav{display:flex;gap:40px;align-items:center;font-size:11px;letter-spacing:.13em}.header nav a{position:relative}.header nav a:after{content:'';position:absolute;bottom:-5px;left:0;width:100%;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .4s}.header nav a:hover:after{transform:scaleX(1)}.nav-invite{padding-left:30px;border-left:1px solid var(--line);color:var(--gold)}.nav-invite span{margin-left:25px}.menu-toggle{display:none;background:none;border:0;padding:12px}.menu-toggle span{display:block;width:25px;height:1px;background:var(--paper);margin:7px 0;transition:transform .3s}.mobile-nav{position:fixed;inset:78px 0 0;background:var(--ink);z-index:39;padding:12vh 10%;display:flex;flex-direction:column;gap:30px;font-size:22px}.hero{height:max(760px,100svh);max-height:1200px;position:relative;overflow:hidden}.hero-image{position:absolute;inset:-3%;background:url('assets/original/p4-09.jpg') center 58%/cover;animation:slow-in 18s ease-out both;will-change:transform}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,12,9,.81),rgba(8,12,9,.3) 65%,rgba(8,12,9,.08)),linear-gradient(0deg,rgba(12,16,12,.9),transparent 25%,transparent 80%,rgba(10,14,10,.6))}.hero-topline{position:absolute;top:154px;left:5%;right:5%;display:flex;justify-content:space-between;font-family:Arial,sans-serif;font-size:9px;letter-spacing:.25em;color:var(--gold)}.hero-copy{position:absolute;top:29%;left:12%;max-width:700px}.eyebrow{color:var(--gold);font-size:11px;letter-spacing:.18em;margin:0 0 25px}.hero h1{font-size:clamp(38px,4.1vw,70px);font-weight:400;line-height:1.65;letter-spacing:.13em;margin:0 0 25px}.hero h1>span{display:block;animation:enter 1.4s ease both}.hero h1>span:nth-child(2){animation-delay:.2s}.gold{color:var(--gold)}.intro{animation:enter 1.3s ease both}.hero-description{font-size:13px;line-height:2.5;letter-spacing:.12em;animation:enter 1.4s .4s both}.text-link{display:inline-flex;gap:65px;padding:12px 0;border-bottom:1px solid var(--gold);margin-top:23px;font-size:12px;letter-spacing:.16em;animation:enter 1.4s .6s both}.text-link span{transition:transform .3s}.text-link:hover span{transform:translateY(5px)}.hero-bottom{position:absolute;left:5%;right:5%;bottom:35px;display:flex;justify-content:space-between;align-items:center;font-family:Arial,sans-serif;font-size:8px;letter-spacing:.22em;color:#d0cabc}.scroll-cue{display:flex;align-items:center;gap:15px}.scroll-cue i{height:45px;width:1px;background:#ffffff35;overflow:hidden}.scroll-cue i:after{content:'';display:block;width:1px;height:22px;background:var(--gold);animation:scroll-line 2.5s infinite}.hero-number{font-family:var(--latin);font-size:15px}.section-pad{padding:115px max(7%,calc((100vw - 1300px)/2))}.section-label{display:flex;align-items:center;gap:20px;font:10px Arial,sans-serif;letter-spacing:.23em;color:var(--gold);margin-bottom:65px}.section-label span{font-family:var(--latin);font-size:21px;letter-spacing:0}.section-label:after{content:'';width:75px;height:1px;background:var(--line)}h2{font-weight:400;letter-spacing:.12em;font-size:clamp(28px,3.1vw,44px);line-height:1.8;margin:0 0 30px}.concept-grid{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center}.concept p:not(.eyebrow){color:#b9bdb2;line-height:2.8;font-size:13px;letter-spacing:.06em;margin-bottom:27px}.tiny-rule{width:35px;height:1px;background:var(--gold);margin:35px 0}.signature{display:block;font-family:var(--latin);font-size:28px;font-style:italic;color:var(--gold);margin-top:37px;letter-spacing:.03em}.concept-photo{height:580px;position:relative;margin:0 22px 0 0}.concept-photo img{object-position:67%;filter:brightness(.85)}.concept-photo:before{content:'';position:absolute;inset:18px -18px -18px 18px;border:1px solid var(--line);z-index:-1}.concept-photo figcaption{position:absolute;left:25px;bottom:23px;font:8px Arial,sans-serif;letter-spacing:.22em;color:#e5ddcd}.photo-seal{position:absolute;right:-24px;top:-28px;display:grid;place-content:center;border:1px solid var(--gold);outline:5px solid var(--ink);font-size:17px;letter-spacing:.2em;line-height:1.7;width:68px;height:82px;color:var(--gold);background:var(--ink)}.interlude{position:relative;text-align:center;padding:125px 20px;background:linear-gradient(#111810df,#111810df),url('assets/original/p0-01.jpg') center 55%/cover;background-attachment:fixed;border-block:1px solid var(--line)}.interlude p{font-size:30px;letter-spacing:.25em;line-height:2.3;margin:0 0 30px}.interlude>span{font:8px Arial,sans-serif;letter-spacing:.35em;color:var(--gold)}.menu-section{background:#20231d}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:45px}.section-heading h2{margin-bottom:0}.section-heading>p,.moments-heading p{color:var(--muted);font-size:12px;letter-spacing:.09em;line-height:2.5}.menu-layout{display:grid;grid-template-columns:.8fr 1.2fr;min-height:510px}.menu-visual{position:relative;overflow:hidden}.menu-visual img{object-position:65% 60%;filter:brightness(.7);transition:transform 1.4s}.menu-layout:hover .menu-visual img{transform:scale(1.035)}.menu-visual>div{position:absolute;bottom:25px;left:30px;right:25px}.menu-visual span{font:8px Arial,sans-serif;letter-spacing:.24em;color:var(--gold)}.menu-visual p{font-size:17px;letter-spacing:.1em}.menu-paper{background:var(--paper);color:var(--ink);padding:32px 45px;position:relative}.menu-tabs{display:flex;gap:30px;border-bottom:1px solid #181a1725;margin-bottom:20px}.menu-tabs button{background:none;border:0;border-bottom:1px solid transparent;padding:10px 0;position:relative;bottom:-1px;font-size:13px;letter-spacing:.13em;color:#6b6d65}.menu-tabs [aria-selected=true]{border-bottom-color:#78623a;color:#5e4825}.dish{padding:17px 0;border-bottom:1px solid #181a171a;display:flex;align-items:baseline;gap:20px;animation:enter .5s both}.dish>span{color:#937b52;font-size:13px}.dish h3{margin:0 0 4px;font-size:16px;font-weight:500;letter-spacing:.1em}.dish p{margin:0;color:#66685e;font-size:11px;line-height:1.8}.dish small{margin-left:auto;font:8px Arial,sans-serif;letter-spacing:.07em;color:#77796c}.sample-note{font-size:10px;line-height:1.9;color:#75786b;margin-top:22px}.moments-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:45px}.moments-heading h2{margin-bottom:0}.gallery{display:grid;grid-template-columns:1.4fr 1fr;gap:40px;align-items:start}.gallery-item{position:relative;border:0;padding:0;background:none;text-align:left;height:450px;overflow:hidden}.gallery-item img{filter:brightness(.72);transition:transform 1.1s,filter 1.1s}.gallery-item:hover img{transform:scale(1.055);filter:brightness(.95)}.gallery-detail{height:350px;margin-top:100px}.gallery-detail img{object-position:90%;transform:scale(1.65)}.gallery-detail:hover img{transform:scale(1.75)}.gallery-item>span{position:absolute;bottom:0;left:0;right:0;padding:40px 25px 22px;background:linear-gradient(transparent,#0a100be8);color:var(--gold);font:12px var(--latin);display:flex;gap:25px;align-items:center}.gallery-item b{font:13px var(--serif);color:var(--paper);letter-spacing:.15em}.gallery-item i{font:22px var(--latin);margin-left:auto}.invitation{background:#20231d;padding-top:65px;padding-bottom:65px}.invitation-border{border:1px solid var(--line);padding:65px 20px;text-align:center;position:relative}.invitation-border:before,.invitation-border:after{content:'✦';position:absolute;color:var(--gold);font-size:18px;top:-19px;left:50%;padding:0 20px;background:#20231d}.invitation-border:after{top:auto;bottom:-19px}.invitation h2{font-size:42px}.invitation p:not(.eyebrow){color:var(--muted);font-size:12px;line-height:2.7;letter-spacing:.1em}.invite-button{border:1px solid #b19b70;background:transparent;color:var(--gold);padding:17px 28px;min-width:265px;display:inline-flex;justify-content:space-between;gap:40px;font-size:12px;letter-spacing:.12em;margin-top:22px;transition:background .4s,color .4s}.invite-button:hover{background:var(--gold);color:var(--ink)}.invitation-footnote{display:block;margin-top:20px;color:#8e9487;font-size:10px}footer{padding:65px 7% 25px;display:flex;align-items:center;gap:65px;flex-wrap:wrap}footer>p{font-size:11px;letter-spacing:.1em;color:var(--muted)}.back-top{margin-left:auto;font:9px Arial,sans-serif;letter-spacing:.16em;color:var(--gold)}.footer-bottom{display:flex;justify-content:space-between;gap:20px;width:100%;border-top:1px solid var(--line);padding-top:24px;margin-top:30px;color:#909587;font-size:9px}.footer-bottom span:first-child{font-family:Arial,sans-serif;letter-spacing:.15em}dialog{background:var(--paper);color:var(--ink);border:1px solid var(--gold);padding:55px;max-width:560px;width:calc(100% - 40px);max-height:85svh;overflow-y:auto}dialog::backdrop{background:#071009ce;backdrop-filter:blur(7px)}dialog[open]{animation:enter .4s ease both}dialog .eyebrow{color:#80683d;font-size:9px}dialog h2{font-size:25px}dialog p{font-size:13px}.dialog-close{position:absolute;top:8px;right:16px;border:0;background:none;font-size:30px;font-family:Arial,sans-serif;line-height:1.5;padding:5px 8px}.dialog-done{display:block;background:var(--ink);color:var(--paper);border:0;padding:12px 35px;margin-top:25px;font-size:12px}dl{margin:30px 0}dl>div{padding:15px 0;border-bottom:1px solid #17191522}dt{font-size:10px;color:#80683d}dd{font-size:12px;margin:5px 0 0}#photo-dialog{background:var(--ink);color:var(--paper);width:min(1100px,94%);max-width:1100px;padding:48px 20px 12px}#photo-dialog img{max-height:65svh;object-fit:contain}#photo-dialog p{text-align:center;font-size:12px;color:var(--gold)}.js .reveal{opacity:0;transform:translateY(30px);transition:opacity 1.1s ease,transform 1.1s cubic-bezier(.2,.6,.2,1)}.js .reveal.visible{opacity:1;transform:none}.js .concept-photo.reveal,.js .gallery-detail.reveal{transition-delay:.15s}@keyframes enter{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}@keyframes slow-in{from{transform:scale(1.1)}to{transform:scale(1)}}@keyframes scroll-line{from{transform:translateY(-24px)}to{transform:translateY(48px)}}
@media(min-width:1600px){.hero-copy{left:max(12%,calc((100vw - 1220px)/2))}}@media(max-width:900px){.header nav{gap:20px}.section-pad{padding:80px 6%}.concept-grid{gap:8%}.concept-photo{height:480px}.menu-paper{padding:25px}.dish{gap:12px}.dish small{display:none}.gallery{gap:22px}.hero-copy{left:8%}.hero-topline{top:130px}.concept p:not(.eyebrow){font-size:12px}}@media(max-width:640px){.header{padding:20px 6%}.header .logo{font-size:34px}.header nav{display:none}.menu-toggle{display:block}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}.hero{height:92svh;min-height:690px;max-height:950px}.hero-image{background-position:61% center}.hero-shade{background:linear-gradient(90deg,#080c09a8,#080c0940),linear-gradient(0deg,#0c100c,transparent 45%,#0c100c60)}.hero-topline{top:125px;left:7%;font-size:7px}.hero-topline span{display:none}.hero-copy{left:8%;top:29%}.hero h1{font-size:36px;letter-spacing:.09em}.hero-description{font-size:11px;line-height:2.7}.hero .eyebrow{font-size:10px}.hero-bottom{left:8%;right:8%;bottom:25px}.hero-bottom>span:first-child{display:none}.hero-bottom .scroll-cue{font-size:7px}.section-pad{padding:65px 7%}.section-label{margin-bottom:35px;font-size:8px}.section-label span{font-size:18px}.concept-grid{grid-template-columns:1fr;gap:45px}.concept .eyebrow{font-size:9px}.concept h2{font-size:28px}.concept-photo{height:420px;margin:0 16px 0 0}.signature{font-size:26px}.interlude{padding:80px 20px;background-attachment:scroll}.interlude p{font-size:24px}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:20px;font-size:11px}.menu-layout{grid-template-columns:1fr}.menu-visual{height:260px}.menu-visual img{object-position:center 62%}.menu-paper{padding:22px}.dish{padding:18px 0}.dish h3{font-size:15px}.dish p{font-size:10px}.dish small{display:block;font-size:7px}.menu-tabs{gap:30px}.sample-note{font-size:9px}.moments-heading{display:block;margin-bottom:30px}.moments-heading p{margin-top:15px;font-size:11px}.gallery{grid-template-columns:1fr;gap:25px}.gallery-item{height:300px}.gallery-detail{height:270px;margin-top:0;width:82%;margin-left:auto}.invitation{padding:40px 5%}.invitation-border{padding:45px 15px}.invitation h2{font-size:34px}.invitation .eyebrow{font-size:9px}.invite-button{min-width:230px}footer{padding:45px 7% 25px;gap:25px}footer .logo{font-size:34px}footer>p{font-size:9px}.back-top{width:100%;margin-left:0;margin-top:10px}.footer-bottom{flex-direction:column;font-size:8px;gap:12px;margin-top:10px}dialog{padding:48px 25px 30px}dialog h2{font-size:24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js .reveal{opacity:1;transform:none}.hero-image{will-change:auto}.interlude{background-attachment:scroll}}
