/* Homepage: photographic opening, editorial spacing, restrained details. */
.home-page .site-header{position:absolute;top:0;left:0;right:0;z-index:3;color:#fff8ee;border-color:#fff8ee30;max-width:none;padding-inline:6%;min-height:120px}
.home-page .brand-period{color:inherit}.home-page .site-header nav a[aria-current=page]:after{background:#fff8ee}.home-page .site-header nav a:hover{color:#e6c7b5}
.home-page .home-hero{display:flex;flex-direction:column;align-items:stretch;justify-content:center;isolation:isolate;position:relative;max-width:none;margin:0;min-height:820px;min-height:max(760px,100svh);padding:190px 8% 115px;background:#302922;color:#fff8ee;overflow:hidden}
.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 55%;z-index:-2}
.home-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(27,20,15,.73) 0%,rgba(27,20,15,.43) 45%,rgba(27,20,15,.06) 100%),linear-gradient(180deg,rgba(27,20,15,.3),transparent 25%,transparent 75%,rgba(27,20,15,.45));z-index:-1}
.home-page .hero-copy{padding:0;max-width:750px}.home-page .home-hero .eyebrow{color:#f5e7d6;letter-spacing:.26em;font-size:10px;margin-bottom:32px}.home-page .home-hero h1{font-size:clamp(64px,7.7vw,116px);font-weight:400;line-height:1.07;letter-spacing:-.05em;margin-bottom:34px}.home-page .home-hero h1 em{color:inherit}.home-page .hero-japanese{color:#fff8ee;font-size:20px;letter-spacing:.13em;margin-bottom:16px}.home-page .home-hero .lead{color:#f3eade;font-size:15px;line-height:2.2;margin-bottom:22px}
.home-page .hero-button{background:#f8f5ef;border-color:#f8f5ef;color:#302922;min-height:58px;margin-top:10px;gap:54px}.home-page .hero-button:hover{background:#e5d3c4;border-color:#e5d3c4}.hero-bottom{position:absolute;bottom:34px;left:8%;right:8%;display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid #fff8ee40;padding-top:22px}.hero-bottom p{font:15px Georgia,serif;letter-spacing:.08em;color:#fff8ee;margin:0}.hero-bottom p span{font:11px 'Yu Gothic',sans-serif;letter-spacing:.06em;margin-left:20px}.hero-bottom>a{font:9px Arial,sans-serif;letter-spacing:.2em;display:flex;gap:25px;align-items:center;min-height:30px}.hero-bottom>a span{font-size:18px}
.home-page .intro{position:relative;padding-block:130px;scroll-margin-top:30px}.home-page .intro:before{content:"";display:block;width:1px;height:48px;background:var(--accent);margin:0 auto 35px}.home-page .intro h2{margin-bottom:25px}.home-page .intro .section-japanese{font-size:19px}.home-page .intro p:not(.eyebrow):not(.section-japanese){font-size:15px;line-height:2.6}.home-page .menu-preview{padding-top:95px;padding-bottom:105px}.home-page .item-card{border-bottom:1px solid var(--line);padding-bottom:20px}.home-page .food-art{height:auto;aspect-ratio:1.15}.home-page .item-card p{margin-bottom:0}.price-note{text-align:right;font-size:11px;margin:24px 0 0}.home-page .visit-banner{padding-block:90px}.home-page .visit-banner .button{min-height:58px}
@media(min-width:1800px){.home-page .home-hero{padding-left:max(8%,calc((100vw - 1440px)/2))}}
@media(max-width:1000px){.home-page .home-hero h1{font-size:clamp(62px,8.5vw,86px)}.home-page .home-hero{padding-inline:6%}.hero-bottom{left:6%;right:6%}}
@media(max-width:760px){.home-page .site-header{min-height:104px;padding:22px 6%;gap:18px}.home-page .nav-toggle:not([hidden]){color:#fff8ee;border-color:#fff8ee65;background:#30292250}.home-page .site-header:has(nav.is-open){background:#302922}.home-page .site-header nav{border-color:#fff8ee40}.home-page .home-hero{min-height:790px;min-height:max(790px,100svh);padding:170px 6% 120px;justify-content:center}.home-page .hero-copy{padding:0}.hero-image{object-position:62% center}.home-hero:before{background:linear-gradient(90deg,rgba(27,20,15,.8),rgba(27,20,15,.48)),linear-gradient(0deg,rgba(27,20,15,.45),transparent 40%)}.home-page .home-hero h1{font-size:clamp(49px,10.5vw,78px);margin-bottom:28px}.home-page .home-hero .eyebrow{font-size:9px;letter-spacing:.2em;margin-bottom:28px}.home-page .hero-japanese{font-size:16px;letter-spacing:.08em}.home-page .home-hero .lead{font-size:14px}.hero-bottom{bottom:25px;align-items:flex-end}.hero-bottom p{font-size:13px}.hero-bottom p span{display:block;margin:10px 0 0;font-size:10px}.hero-bottom>a{font-size:8px;letter-spacing:.1em;gap:12px}.home-page .intro{padding-block:85px}.home-page .intro .section-japanese{font-size:16px}.home-page .intro p:not(.eyebrow):not(.section-japanese){font-size:14px}.home-page .menu-preview{padding-block:70px}.home-page .food-art{aspect-ratio:1.3}.home-page .visit-banner{padding-block:65px}.home-page .intro h2{font-size:clamp(37px,9.5vw,46px)}}
@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}

/* Supplied photographs retain their complete original composition. */
.home-page .menu-photo,
.home-page .story-photo {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  object-fit: contain;
}
.home-page .intro {
  max-width: 1280px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: center;
  gap: clamp(32px, 5vw, 72px);
  text-align: left;
}
.home-page .intro::before { display: none; }
.home-page .intro h2 { font-size: clamp(38px, 4.1vw, 55px); }
.home-page .intro-copy,
.home-page .story-photo-wrap,
.home-page .item-card { min-width: 0; }
@media (max-width: 900px) {
  .home-page .intro { grid-template-columns: minmax(0, 1fr); gap: 38px; }
  .home-page .intro-copy { text-align: center; }
  .home-page .intro h2 { font-size: clamp(37px, 7vw, 55px); }
}
