/* TATSUMI #1729 — standalone editorial demo */
:root{--nori:#111311;--ecru:#f5f0e8;--red:#f14e36;--red-ink:#a72c1b;--sand:#c7bba8;--muted:#65675f;--line:#d9d2c6;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:124px}body{margin:0;background:var(--ecru);color:var(--nori);font-family:var(--sans);-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button:disabled{cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--red);outline-offset:5px}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link{position:fixed;left:16px;top:-100px;z-index:100;background:var(--ecru);padding:16px}.skip-link:focus{top:44px}.demo-ribbon{height:30px;position:relative;z-index:10;display:flex;gap:10px;align-items:center;justify-content:center;background:var(--nori);color:var(--ecru);font-size:9px;letter-spacing:1.7px}.status-dot{height:5px;width:5px;background:var(--red);border-radius:50%}.ribbon-detail{letter-spacing:.7px;opacity:.75}.site-header{position:absolute;z-index:20;top:54px;left:5%;right:5%;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:19px 28px;border:1px solid #f5f0e838;background:#11131164;color:var(--ecru);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);border-radius:3px}.brand{display:grid;position:relative;text-align:center;flex-shrink:0;min-width:180px}.wordmark-fallback{font-family:var(--serif);font-size:25px;letter-spacing:6px}.wordmark{width:168px;height:62px;object-fit:contain;display:block;justify-self:center}.brand.logo-loaded .wordmark{display:block}.brand.logo-loaded .wordmark-fallback{display:none}.brand-subtitle{font-size:8px;letter-spacing:3px;margin-top:5px}.site-header nav{display:flex;align-items:center;gap:32px;font-size:12px}.site-header nav>a:not(.nav-book){padding:13px 0}.site-header nav>a:hover{color:#ffd6bf}.nav-book{border:1px solid #f5f0e860;padding:13px 18px;display:flex;gap:25px;align-items:center}.nav-toggle{display:none}.hero{min-height:780px;height:calc(100svh - 30px);max-height:1050px;position:relative;color:var(--ecru);background:#302821}.hero-photo,.hero-shade{position:absolute;inset:0}.media-frame{overflow:hidden;background:#3b3028}.media-frame img{position:relative;z-index:1;width:100%;height:100%;object-fit:cover;opacity:1}.media-frame.is-loaded img{opacity:1}.asset-placeholder{position:absolute;inset:0;display:grid;place-items:center;padding:24px;text-align:center;font-size:11px;letter-spacing:1.8px;color:#efe6d1b3}.media-frame.is-loaded .asset-placeholder{display:none}.hero-photo img{object-position:center 58%}.hero-photo>.asset-placeholder{align-items:end;justify-items:end;padding:30px 5%;padding-bottom:190px}.hero-shade{background:linear-gradient(90deg,#111311c9 0%,#11131165 52%,#11131118),linear-gradient(0deg,#111311b8,transparent 60%)}.hero-content{position:relative;z-index:1;padding:205px 7% 190px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:500;line-height:1.6;margin:0 0 25px;color:var(--red-ink)}.eyebrow.light{color:#e3d7c5}.hero h1{font-family:var(--serif);font-size:clamp(70px,7.8vw,124px);line-height:.98;letter-spacing:-5px;font-weight:400;margin:0 0 27px}em{font-weight:400;color:var(--red);font-style:italic}.hero-description{font-size:14px;line-height:1.9;color:#e7ded0;margin:0 0 27px}.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:42px;border-bottom:1px solid var(--nori);padding:10px 0;font-size:12px}.text-link.light{border-color:#e7ded080;color:var(--ecru)}.text-link span{font-size:19px}.hero-bottom{position:absolute;bottom:35px;left:7%;right:7%;display:flex;justify-content:space-between;align-items:end;gap:20px}.hero-location{display:grid;gap:7px}.hero-location .eyebrow{margin:0;font-size:8px}.hero-location>span:last-child{font-family:var(--serif);font-size:18px}.scroll-link{display:flex;align-items:center;gap:22px;font-size:8px;letter-spacing:2px}.scroll-link span{font-size:23px}.quick-booking{position:absolute;z-index:2;right:7%;top:46%;width:335px;padding:26px;background:#1f201ad1;border:1px solid #e7ded044;border-radius:3px;backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}.quick-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:23px;gap:10px}.quick-heading .eyebrow{margin:0;font-size:9px;letter-spacing:1.6px}.demo-chip{border:1px solid #f5f0e85c;display:inline-flex;padding:5px 7px;font-size:8px;letter-spacing:1.2px;line-height:1.3;white-space:nowrap}.demo-chip.dark{color:var(--red-ink);border-color:#a72c1b66}.quick-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px 12px}.quick-fields label:first-child{grid-column:1/-1}.quick-fields label{font-size:10px;color:#ded6c8;display:grid;gap:7px}.quick-fields input,.quick-fields select{width:100%;min-width:0;color:var(--ecru);background:transparent;border:0;border-bottom:1px solid #f5f0e849;padding:6px 0 10px;font-size:14px;color-scheme:dark;border-radius:0}.quick-fields select option{color:var(--ecru);background:var(--nori)}.quick-booking .button{width:100%;margin-top:23px}.quick-booking>p{font-size:9px;color:#d5cabb;margin:13px 0 0;text-align:center}.button{min-height:49px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:15px 21px;font-size:12px;border:1px solid transparent;border-radius:0;font-weight:500}.button span{font-size:18px}.button-red{background:var(--red);color:var(--nori)}.button-red:hover{background:#ff6b53}.button-dark{background:var(--nori);color:var(--ecru)}.button:disabled{background:#d5cfc4;color:#66675e}.section-shell{padding:100px 7%}h2{font-family:var(--serif);font-size:clamp(42px,4.5vw,70px);line-height:1.08;letter-spacing:-2px;font-weight:400;margin:0}h2 em{color:var(--red-ink)}.essence{display:grid;grid-template-columns:1fr 2fr;gap:60px;padding-block:clamp(32px,4vw,64px);padding-top:clamp(24px,3vw,48px)}.section-kicker{display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start}.tiny-seal{font-family:var(--serif);font-size:35px;color:var(--red-ink);border:1px solid #a72c1b70;padding:8px 10px;line-height:1}.essence-copy{margin-top:35px;display:grid;grid-template-columns:1fr 1fr;gap:45px;max-width:690px}.essence-copy p{font-size:13px;line-height:1.9;color:var(--muted);margin:0}.menu-section{padding-top:70px;border-top:1px solid var(--line)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:44px}.section-heading .eyebrow{margin-bottom:19px}.section-aside{font-family:var(--serif);font-size:20px;line-height:1.5;color:var(--muted);margin:0 0 4px}.menu-toolbar{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:26px;border-bottom:1px solid var(--line)}.menu-filters{display:flex;gap:24px;flex-wrap:wrap}.menu-filters button{border:0;border-bottom:2px solid transparent;background:transparent;padding:18px 0;min-height:48px;color:var(--muted);font-size:12px}.menu-filters button[aria-pressed=true]{border-color:var(--red);color:var(--nori)}.menu-filters button span{font-size:9px;margin-left:8px;color:var(--muted)}.menu-caption{font-size:8px;letter-spacing:1.8px;color:var(--muted)}.menu-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.dish-photo{position:relative;aspect-ratio:4/5;background:#453b32}.dish-photo img{object-fit:cover;transition:transform .5s}.menu-card:hover img{transform:scale(1.035)}.dish-number{position:absolute;z-index:2;top:14px;left:14px;font-size:9px;color:var(--ecru);padding:5px;border:1px solid #f5f0e860;background:#11131144}.dish-title{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin:19px 0 7px}.dish-title h3{font-size:clamp(19px,2vw,27px);font-family:var(--serif);font-weight:400;margin:0;letter-spacing:-.5px}.dish-title>span{font-size:12px;white-space:nowrap}.menu-card>p{font-size:8px;color:var(--muted);letter-spacing:1.5px}.menu-note{font-size:10px;line-height:1.6;color:var(--muted);margin:30px 0 0}.space-section{display:grid;grid-template-columns:1fr 1fr;background:var(--nori);color:var(--ecru)}.space-photo{position:relative;min-height:670px}.space-photo img{object-position:center}.space-copy{padding:85px 13% 75px}.space-copy h2{font-size:clamp(37px,3.7vw,59px)}.space-copy h2 em{color:var(--red)}.space-copy>p:not(.eyebrow){font-size:13px;line-height:1.9;color:#bcb8ad;margin:28px 0}.space-options{border-top:1px solid #f5f0e824;margin:30px 0}.space-options>div{display:grid;grid-template-columns:25px 1fr;column-gap:18px;padding:17px 0;border-bottom:1px solid #f5f0e824}.space-options span{grid-row:1/3;color:#bd8c75;font-size:9px;padding-top:6px}.space-options h3{font-family:var(--serif);font-size:23px;font-weight:400;margin:0 0 4px}.space-options p{font-size:11px;color:#bcb8ad;margin:0}.booking-section{padding-top:110px}.booking-disclaimer{max-width:270px}.booking-disclaimer>p{font-size:11px;line-height:1.8;color:var(--muted);margin:13px 0 0}.booking-inputs{border:0;border-top:1px solid var(--line);padding:28px 0 35px;margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:25px}.booking-inputs legend{padding:0 20px 0 0;font-size:12px}.booking-inputs label{display:grid;gap:10px;font-size:10px;color:var(--muted)}.booking-inputs input,.booking-inputs select{width:100%;min-width:0;border:0;border-bottom:1px solid #b7afa0;border-radius:0;background:transparent;color:var(--nori);padding:10px 0;min-height:46px;font-size:14px}.booking-workspace{display:grid;grid-template-columns:1.8fr 1fr;gap:30px}.plan-panel{border:1px solid var(--line);padding:28px}.plan-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.plan-heading h3{font-weight:400;font-size:13px;margin:0}.plan-legend{font-size:9px;color:var(--muted);display:flex;align-items:center;gap:7px}.plan-legend i{width:7px;height:7px;background:var(--red);border-radius:50%}#plan-instruction{font-size:11px;line-height:1.6;color:var(--muted);min-height:35px;margin:18px 0}.floor-plan{position:relative;min-height:260px;background:#ede7dc;border:1px solid #d8cebe;padding:25px;display:flex;flex-direction:column;justify-content:center;gap:20px}.plan-caption{font-size:9px;letter-spacing:2px;color:var(--muted);text-align:center;margin:0}.bar-counter{border:1px solid #b4a995;background:#d7cbbb;height:70px;display:grid;place-items:center;font-family:var(--serif);font-size:23px;color:#615e51;border-radius:3px 3px 18px 18px}.seat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.seat-button{min-height:45px;border:1px solid #b7ad9e;background:var(--ecru);color:var(--nori);font-size:11px;border-radius:50px}.seat-button[aria-pressed=true],.table-button[aria-pressed=true],.private-button[aria-pressed=true]{background:var(--red);border-color:var(--red);color:var(--nori);box-shadow:0 0 0 2px var(--ecru),0 0 0 3px var(--red)}.seat-button:disabled{opacity:.45}.table-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.table-button{border:1px solid #afa38d;background:var(--ecru);min-height:80px;color:var(--nori);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;font-family:var(--serif);font-size:19px}.table-button small{font-family:var(--sans);font-size:9px}.table-button:disabled{opacity:.4}.private-button{border:1px solid #afa38d;background:var(--ecru);padding:25px 12px;min-height:130px;color:var(--nori);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;font-family:var(--serif);font-size:27px}.private-button small{font-family:var(--sans);font-size:10px}.plan-note{font-size:9px;line-height:1.6;color:var(--muted);margin:20px 0 0}.booking-summary{background:#e8e1d6;padding:33px}.booking-summary>.eyebrow{font-size:8px;letter-spacing:1.4px;margin-bottom:19px}.booking-summary h3{font-family:var(--serif);font-size:39px;line-height:1.07;font-weight:400;letter-spacing:-1px;margin:0 0 25px}.booking-summary h3 em{color:var(--red-ink)}.booking-summary dl{margin:0 0 20px}.booking-summary dl>div{display:flex;justify-content:space-between;gap:20px;padding:11px 0;border-bottom:1px solid #d1c7b8;font-size:11px}.booking-summary dt{color:var(--muted)}.booking-summary dd{text-align:right;margin:0;overflow-wrap:anywhere;max-width:70%}.booking-summary .button{width:100%}.summary-note{font-size:9px;text-align:center;color:var(--muted);line-height:1.5;margin:13px 0 0}.form-error{font-size:11px;line-height:1.6;color:#9e2518;margin:0 0 14px}.form-error:empty{display:none}.notice{padding:16px;border:1px solid #cbbca6;background:#ede5d9;font-size:12px;line-height:1.8}.visit-section{display:flex;justify-content:space-between;gap:40px;border-top:1px solid var(--line);padding-top:75px;padding-bottom:85px}.visit-address{align-self:end;min-width:265px}.visit-address>p:first-child{font-family:var(--serif);font-size:23px;line-height:1.4;margin:0 0 15px}.contact-note{font-size:10px;line-height:1.6;color:var(--muted);margin:20px 0 0}.site-footer{padding:35px 7%;display:flex;align-items:center;justify-content:space-between;gap:25px;background:var(--nori);color:var(--ecru)}.footer-brand{font-family:var(--serif);font-size:25px;letter-spacing:5px}.site-footer>span{font-size:8px;letter-spacing:2px}.site-footer>p{font-size:9px;color:#bcb8ad}.site-footer>a:last-child{padding:10px 15px;border:1px solid #ffffff40}dialog{background:var(--ecru);color:var(--nori);border:1px solid var(--sand);padding:45px;max-width:520px;width:calc(100% - 32px);max-height:calc(100svh - 32px);overflow:auto}dialog::backdrop{background:#111311ab;backdrop-filter:blur(7px)}dialog h2{font-size:46px;margin:28px 0}dialog .button{width:100%;margin-top:25px}.dialog-close{position:absolute;right:13px;top:10px;border:0;background:transparent;width:42px;height:42px;font-size:25px}#result-details{font-size:14px;line-height:1.8;white-space:pre-line}
@media(min-width:1500px){.section-shell{padding-left:max(7%,calc((100vw - 1300px)/2));padding-right:max(7%,calc((100vw - 1300px)/2))}}
@media(max-width:1100px){.site-header nav{gap:20px}.hero-content{padding-left:6%}.hero h1{font-size:85px}.quick-booking{right:6%;width:300px}.menu-grid{gap:16px}.dish-title{flex-wrap:wrap;gap:5px}.space-copy{padding:65px 10%}.booking-workspace{grid-template-columns:1.4fr 1fr;gap:20px}.booking-summary{padding:25px}.plan-panel{padding:22px}.menu-caption{display:none}}
@media(max-width:800px){html{scroll-padding-top:30px}.site-header{top:46px;left:5%;right:5%;padding:15px 20px;gap:15px}.brand{min-width:155px}.wordmark{width:130px;height:48px}.wordmark-fallback{font-size:22px}.brand-subtitle{font-size:7px;letter-spacing:2.5px}.nav-toggle{display:flex;gap:12px;align-items:center;background:transparent;border:1px solid #f5f0e860;color:var(--ecru);padding:11px 13px;min-height:44px;font-size:11px}.site-header nav{display:none;position:absolute;left:-1px;right:-1px;top:100%;padding:20px;background:#161b17f5;align-items:stretch;border:1px solid #f5f0e838;flex-direction:column;gap:8px}.site-header nav.is-open{display:flex}.site-header nav>a{padding:14px!important}.hero{height:auto;min-height:940px}.hero-content{padding:185px 7% 45px}.hero h1{font-size:clamp(64px,12vw,90px);letter-spacing:-3px}.hero-description{font-size:13px}.quick-booking{position:relative;top:auto;right:auto;margin:0 7% 100px;width:auto;padding:22px}.quick-fields{grid-template-columns:1.3fr 1fr 1fr;gap:16px}.quick-fields label:first-child{grid-column:auto}.quick-booking .button{margin-top:20px}.hero-bottom{bottom:27px}.hero-photo>.asset-placeholder{padding-bottom:105px}.essence{grid-template-columns:1fr;gap:24px}.section-kicker{flex-direction:row;align-items:center}.section-kicker .eyebrow{margin:0}.tiny-seal{font-size:25px;padding:5px 7px}.section-shell{padding-left:7%;padding-right:7%}.essence-copy{gap:25px}.section-heading{gap:25px}.section-aside{font-size:16px}.menu-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 20px}.dish-title{flex-wrap:nowrap}.dish-title h3{font-size:25px}.space-section{grid-template-columns:1fr}.space-photo{min-height:0;height:420px}.space-copy{padding:60px 7%}.space-copy h2{font-size:49px}.space-options{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;border:0}.space-options>div{border-top:1px solid #f5f0e824;display:flex;flex-direction:column;gap:8px;padding:18px 0}.space-options h3{font-size:22px}.booking-section{padding-top:75px;padding-bottom:70px}.booking-section .section-heading{align-items:start;flex-direction:column}.booking-disclaimer{max-width:450px}.booking-inputs{grid-template-columns:1fr 1fr;gap:22px}.booking-workspace{grid-template-columns:1fr}.booking-summary{padding:30px}.booking-summary h3 br{display:none}.booking-summary h3{font-size:34px}.booking-summary dl{display:grid;grid-template-columns:1fr 1fr;column-gap:25px}.visit-section{padding-top:60px;padding-bottom:65px}.visit-address{min-width:0}.site-footer{flex-wrap:wrap}.site-footer>p{order:4;width:100%;margin:0}.plan-panel{padding:25px}}
@media(max-width:480px){.ribbon-detail{font-size:8px;letter-spacing:0}.demo-ribbon{font-size:8px;gap:7px}.site-header{padding:13px 16px}.hero{min-height:920px}.hero-content{padding-top:165px}.hero .eyebrow{font-size:8px;letter-spacing:1.6px}.hero h1{font-size:66px;line-height:1.02}.hero-description br{display:none}.hero-description{max-width:260px}.quick-booking{padding:20px}.quick-fields{grid-template-columns:1fr 1fr;gap:12px}.quick-fields label:first-child{grid-column:1/-1}.hero-bottom{align-items:center}.hero-location .eyebrow{font-size:7px}.hero-location>span:last-child{font-size:16px}.scroll-link{font-size:7px;gap:8px}h2{font-size:42px;letter-spacing:-1.6px}.essence-copy{grid-template-columns:1fr;gap:17px;margin-top:26px}.menu-section{padding-top:55px;padding-bottom:60px}.section-heading{margin-bottom:25px}.section-aside{display:none}.menu-filters{gap:22px}.menu-filters button{font-size:11px}.menu-filters button span{margin-left:4px;font-size:8px}.menu-grid{gap:26px 13px}.dish-title{flex-direction:column;gap:7px;margin-top:13px}.dish-title h3{font-size:23px}.dish-title>span{font-size:11px}.menu-card>p{font-size:7px;letter-spacing:.8px}.dish-number{top:9px;left:9px}.space-photo{height:330px}.space-copy{padding-top:45px;padding-bottom:45px}.space-copy h2{font-size:43px}.space-options{grid-template-columns:1fr;gap:0;border-top:1px solid #f5f0e824}.space-options>div{display:grid;grid-template-columns:25px 1fr;border-top:0;gap:5px 15px}.space-options p{grid-column:2}.space-options span{grid-row:1/3}.booking-section{padding-top:60px}.booking-inputs{gap:20px 15px}.booking-inputs input,.booking-inputs select{font-size:12px}.plan-panel{padding:18px}.plan-heading{align-items:start}.plan-heading h3{font-size:12px}.plan-legend{font-size:8px}.floor-plan{padding:17px;min-height:260px}.seat-grid{gap:10px}.table-grid{gap:18px}.booking-summary{padding:25px}.booking-summary dl{display:block}.visit-section{flex-direction:column;gap:35px}.visit-address{align-self:start}.site-footer{gap:20px}.site-footer>span{max-width:100px;line-height:1.8}.footer-brand{font-size:21px;letter-spacing:4px}.site-footer>a:last-child{margin-left:auto}dialog{padding:35px 24px}dialog h2{font-size:39px}.asset-placeholder{font-size:9px;letter-spacing:1px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

.editor-link{font-size:10px;text-decoration:underline;text-underline-offset:4px;white-space:nowrap}

.media-frame.is-missing img{opacity:0}.footer-brand img{object-fit:contain}
