:root{--wine:#551d2b;--paper:#fffaf0;--ink:#382c2c;--line:#d9cfc1}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,'Hiragino Kaku Gothic ProN',Meiryo,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}header{height:100px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;border-bottom:1px solid var(--line)}.brand{color:var(--wine);font:bold 47px Georgia;letter-spacing:-4px;line-height:.8}.brand span{display:block;font:11px Arial;letter-spacing:5px;text-align:center;margin-top:10px;padding-left:7px}nav{display:flex;gap:44px;font-size:14px}nav a:hover,footer>a:last-child:hover{text-decoration:underline;text-underline-offset:6px}.language{display:flex;gap:10px;align-items:center;font-size:14px}.language button{border:0;background:none;color:#88766f;padding:10px 3px}.language .active{color:var(--wine);font-weight:bold}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:680px}.hero-copy{padding:70px 10% 25px;color:var(--wine);display:flex;flex-direction:column;align-items:flex-start}.eyebrow{font-size:12px;letter-spacing:2px;font-weight:600;margin:0 0 32px}h1{font-family:Georgia,'Yu Mincho',serif;font-size:clamp(54px,6.3vw,96px);line-height:1.28;font-weight:400;letter-spacing:-3px;margin:0 0 27px}.intro{font-size:15px;line-height:2.1;white-space:pre-line}.button{display:inline-block;background:var(--wine);color:var(--paper);font-size:14px;padding:18px 32px;margin-top:23px}.button:hover{background:#792c41}.hero-bottom{width:100%;display:flex;justify-content:space-between;font-size:10px;letter-spacing:1.3px;margin-top:auto;padding-top:50px}.hero-photo{position:relative;min-height:600px;overflow:hidden;background:#30251e}.hero-photo img{width:100%;height:100%;position:absolute;object-fit:cover}.hero-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 65%,#0007)}.photo-caption{position:absolute;z-index:1;bottom:46px;left:40px;color:#fffaf0;font:italic 42px Georgia}.image-note{position:absolute;z-index:1;right:20px;bottom:20px;font-size:12px;color:white}.ribbon{background:var(--wine);color:var(--paper);display:flex;align-items:center;justify-content:space-around;padding:23px 4%;gap:18px;font-size:12px;letter-spacing:2px}.ribbon i{font-size:25px;font-style:normal}.section{padding:100px 7%}.about{display:grid;grid-template-columns:1fr 2fr .7fr;gap:20px;align-items:start;border-bottom:1px solid var(--line)}h2{font:400 40px/1.6 Georgia,'Yu Mincho',serif;color:var(--wine);margin:0 0 22px;white-space:pre-line}.about p:not(.eyebrow){font-size:15px;line-height:2.2;white-space:pre-line}.wordmark{font:italic 160px Georgia;color:var(--wine);text-align:right}.section-heading{display:flex;justify-content:space-between;gap:30px;align-items:end}.section-heading h2{font-size:56px;line-height:1.2;margin:0}.section-heading h2 span{display:block;font:14px Arial;margin-top:18px}.filters{display:flex;gap:8px;flex-wrap:wrap}.filters button{border:1px solid var(--line);border-radius:30px;padding:12px 20px;background:transparent;color:var(--wine);font-size:14px}.filters .selected{background:var(--wine);color:var(--paper);border-color:var(--wine)}.menu-list{display:grid;grid-template-columns:1fr 1fr;gap:0 70px;margin-top:45px}.menu-item{border-bottom:1px solid var(--line);padding:24px 0;display:flex;justify-content:space-between;gap:20px}.menu-item h3{font:24px Georgia;margin:0 0 8px;color:var(--wine)}.menu-item p{font-size:14px;margin:0;color:#76675e}.menu-item>span{font-size:12px;letter-spacing:1px;align-self:center;white-space:nowrap}.menu-note{font-size:12px;color:#76675e;margin-top:28px;line-height:1.8}.pause{background:var(--wine);color:var(--paper);text-align:center;padding:85px 20px}.pause>.eyebrow{margin-bottom:23px}.pause>p:not(.eyebrow){font:48px Georgia,'Yu Mincho',serif;margin:0 0 25px}.pause>span{font:italic 18px Georgia}.visit{display:grid;grid-template-columns:1fr 1fr;gap:65px}dl{margin:0}dl>div{display:grid;grid-template-columns:120px 1fr;gap:20px;padding:23px 0;border-bottom:1px solid var(--line);font-size:14px;line-height:1.8}dt{color:var(--wine)}dd{margin:0;color:#76675e}footer{border-top:1px solid var(--line);margin:0 7%;padding:45px 0;display:flex;align-items:end;justify-content:space-between;gap:25px;font-size:12px}.footer-logo{font:42px Georgia;color:var(--wine)}.footer-logo span{display:block;font:12px Arial;margin-top:12px}button:focus-visible,a:focus-visible{outline:3px solid #c78a42;outline-offset:5px}@media(min-width:1600px){body{max-width:1800px;margin:auto}}@media(max-width:800px){header{height:82px;padding:0 6%}nav{gap:20px}.brand{font-size:36px}.brand span{font-size:9px}.hero{grid-template-columns:1fr}.hero-copy{padding:48px 7% 25px}.hero h1{font-size:64px}.hero-bottom{padding-top:35px}.hero-photo{min-height:440px;max-height:550px;aspect-ratio:1.2}.ribbon{font-size:10px;letter-spacing:1px;padding:18px 4%;gap:8px}.ribbon span:last-child,.ribbon i:last-of-type{display:none}.section{padding:65px 7%}.about{grid-template-columns:1fr}.wordmark{display:none}.about>.eyebrow{margin-bottom:10px}h2{font-size:32px}.section-heading{align-items:start;flex-direction:column}.section-heading h2{font-size:46px}.filters button{padding:11px 17px}.menu-list{grid-template-columns:1fr;margin-top:20px}.menu-item h3{font-size:23px}.pause>p:not(.eyebrow){font-size:35px}.visit{grid-template-columns:1fr;gap:10px}dl>div{grid-template-columns:95px 1fr}footer{flex-wrap:wrap}.footer-logo{width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.hero h1.company-title{font-size:clamp(34px,4vw,64px);letter-spacing:0;line-height:1.5;margin:25px 0 14px;overflow-wrap:anywhere}.business-name{font:36px Georgia;margin:0 0 16px}.business-jp{font-size:14px;line-height:1.8;margin:0 0 10px}.business-label{color:var(--wine);margin-top:0}.brand span{letter-spacing:2px;font-size:10px;padding-left:0}@media(max-width:800px){.hero h1.company-title{font-size:clamp(30px,8vw,52px)}.business-name{font-size:30px}.brand span{font-size:9px}}

.instagram-link{text-decoration:underline;text-underline-offset:5px;overflow-wrap:anywhere}.instagram-link:hover{color:var(--wine)}

.menu-item{align-items:start}.menu-item h3{font-size:22px;line-height:1.5;overflow-wrap:anywhere}.menu-item .item-note{white-space:pre-line;font-size:14px;line-height:1.8;margin-top:14px}.menu-item .temperature{font-size:12px;letter-spacing:1px;margin-top:10px}.menu-item .menu-price{font-size:19px;align-self:start;margin-top:4px;letter-spacing:0;flex-shrink:0;max-width:125px;white-space:normal;text-align:right}.menu-price small{display:block;font-size:12px;margin-top:5px}.section-heading{flex-wrap:wrap}@media(max-width:450px){.menu-item h3{font-size:19px}.menu-item .menu-price{font-size:17px;max-width:95px}.filters{gap:6px}.filters button{padding:11px 13px}}

.shop-subtitle{font-family:Georgia,"Yu Mincho",serif;font-size:clamp(23px,2.5vw,34px);line-height:1.7;margin:6px 0 24px;letter-spacing:.06em}

.parent-bar{background:var(--wine);color:var(--paper);display:flex;justify-content:space-between;gap:20px;padding:12px 5%;font-size:12px}.parent-bar a:hover{text-decoration:underline}.hero h1.cafe-title{font-size:clamp(30px,3.4vw,52px)}

/* Clear brand hierarchy and language-specific copy. */
.parent-bar{background:#f4eee4;color:#66584f;border-bottom:1px solid var(--line)}
.hero-copy{justify-content:center;padding:70px 10%}
.hero h1.cafe-title{font-family:Georgia,'Yu Mincho',serif;font-size:clamp(32px,3.7vw,54px);font-weight:400;line-height:1.5;letter-spacing:0;margin:0 0 20px}
.hero .shop-subtitle{font-size:clamp(21px,2vw,28px);line-height:1.8;letter-spacing:.08em;margin:0 0 38px;color:#796052}
.hero .intro{font-size:16px;line-height:2.1;color:var(--ink);margin:0 0 12px}
.about{grid-template-columns:1fr 2.5fr;gap:50px}
.section-heading h2{font-size:40px;line-height:1.6}
.menu-subtitle{font-size:16px;line-height:1.8;margin:8px 0 0;color:#76675e}
.pause{background:#f3ede2;color:var(--wine);padding:48px 7%;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.pause>p:not(.eyebrow){font-size:34px;line-height:1.7;margin:0 0 12px}
.pause>span{font:16px/2 Arial,'Hiragino Kaku Gothic ProN',Meiryo,sans-serif;color:#76675e}
.footer-logo .footer-brand-name{font:30px/1.5 Georgia,'Yu Mincho',serif;margin:0 0 12px}
.brand span{letter-spacing:1px}.language{gap:8px;font-size:14px}nav{gap:26px}
@media(max-width:1000px){.hero{grid-template-columns:1fr}.hero-copy{padding:58px 7%}.hero-photo{min-height:440px;max-height:540px;aspect-ratio:1.3}.hero-photo img{object-position:center 60%}.about,.visit{grid-template-columns:1fr;gap:25px}}
@media(max-width:600px){header{height:auto;min-height:110px;flex-wrap:wrap;gap:20px;padding:24px 6%}nav{order:3;width:100%;justify-content:space-between;gap:14px}nav a{font-size:14px}.hero h1.cafe-title{font-size:clamp(29px,7.5vw,42px)}.hero .shop-subtitle{font-size:22px;margin-bottom:26px}.hero-copy{padding:44px 7%}.section-heading h2{font-size:32px}.pause>p:not(.eyebrow){font-size:28px}.footer-logo .footer-brand-name{font-size:26px}}

.map-link{display:inline-block;margin-top:12px;color:var(--wine);text-decoration:underline;text-underline-offset:5px}.visit dd{overflow-wrap:anywhere}

/* Rounded left silhouette for the latte photograph. */
.hero-photo{border-radius:50% 0 0 50% / 50% 0 0 50%;isolation:isolate;overflow:hidden}
.hero-photo img{object-position:60% center}
@media(max-width:1000px){.hero-photo img{object-position:60% 60%}}

.bar-section{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:8%;align-items:center;background:#f5f0e8}
.bar-picture{border-radius:28px;overflow:hidden;aspect-ratio:4/5;box-shadow:0 12px 30px #382c2c15}
.bar-picture img{display:block;width:100%;height:100%;object-fit:cover}
.bar-copy .eyebrow{color:#76675e;margin-bottom:16px}
.bar-hours{display:inline-block;margin:0 0 24px;padding:9px 16px;border:1px solid #d9cfc1;border-radius:30px;font-size:14px;color:var(--wine)}
.bar-copy h2{font-size:clamp(28px,3vw,40px);line-height:1.6}
.bar-copy>p:not(.eyebrow):not(.bar-hours){font-size:16px;line-height:2.1;margin:18px 0 0}
.bar-service-note{font-size:14px}
@media(max-width:800px){.bar-section{grid-template-columns:1fr;gap:35px}.bar-picture{aspect-ratio:4/3;max-height:460px}.bar-picture img{object-position:center 55%}header{height:auto;min-height:100px;flex-wrap:wrap;padding-top:22px;padding-bottom:22px;gap:18px}nav{order:3;width:100%;justify-content:space-between;gap:10px}}

.night-menu{grid-column:1/-1;margin-top:45px;width:100%;min-width:0}.night-menu>h3{font:30px/1.6 Georgia,'Yu Mincho',serif;color:var(--wine);margin:0 0 12px}.night-menu-note{font-size:14px;line-height:1.9;color:#76675e}.bar-menu-group{margin-top:12px;background:#fffaf0;border:1px solid #ddd2c5;border-radius:16px;overflow:hidden}.bar-menu-group summary{padding:19px 24px;cursor:pointer;color:var(--wine);font-size:18px;line-height:1.5}.bar-menu-group summary:focus-visible{outline:3px solid #c78a42;outline-offset:-4px}.bar-menu-items{padding:0 24px 18px;display:grid;grid-template-columns:1fr 1fr;gap:0 35px}.bar-menu-item{display:flex;gap:18px;justify-content:space-between;padding:19px 0;border-top:1px solid var(--line);min-width:0}.bar-menu-item h4{font-size:16px;font-weight:400;line-height:1.8;margin:0;color:var(--wine);overflow-wrap:anywhere}.bar-menu-item p{font-size:14px;line-height:1.8;margin:8px 0 0;color:#76675e}.bar-menu-item>span{font-size:16px;white-space:nowrap;line-height:1.8}html[lang="en"] .ja-description{display:none}@media(max-width:700px){.bar-menu-items{grid-template-columns:1fr;padding:0 18px 12px}.bar-menu-group summary{padding:18px}.night-menu>h3{font-size:26px}}

/* An evening palette is activated by the bar navigation. */
body,header,.parent-bar,.bar-section,.pause,.bar-menu-group,.button,.filters button{transition:background-color .85s ease,color .85s ease,border-color .85s ease,box-shadow .85s ease}
.bar-picture{transition:box-shadow 1s ease,transform 1s ease}
.day-return{display:none;font-size:14px;text-decoration:underline;text-underline-offset:5px;margin-bottom:30px}
body.night-mode{--paper:#17181c;--ink:#eae1d5;--wine:#e8bd87;--line:#414048;background:#17181c;color:var(--ink);color-scheme:dark}
.night-mode header{background:#1b1c21;border-color:#38383e}
.night-mode .parent-bar{background:#121317;color:#cbc3b9;border-color:#38383e}
.night-mode .language button{color:#b9aca1}.night-mode .language .active{color:#f5d4a8}
.night-mode .hero .intro{color:#eae1d5}.night-mode .hero .shop-subtitle{color:#c4b19d}
.night-mode .button,.night-mode .filters .selected{background:#e8bd87;color:#221b17}
.night-mode .button:hover{background:#f4cea0}
.night-mode .bar-section{background-color:#1b1c22;background-image:radial-gradient(ellipse at 15% 25%,rgba(201,150,76,.09),transparent 60%)}
.night-mode .bar-picture{box-shadow:0 0 65px rgba(211,163,84,.16),0 20px 50px rgba(0,0,0,.45);transform:translateY(-3px)}
.night-mode .bar-copy .eyebrow,.night-mode .night-menu-note,.night-mode .bar-menu-item p,.night-mode .menu-item p,.night-mode .menu-note,.night-mode .menu-subtitle,.night-mode dd,.night-mode .pause>span{color:#c4b6a5}
.night-mode .bar-hours{border-color:#786148;background:rgba(221,175,109,.08);color:#f0c995}
.night-mode .bar-menu-group{background:#23242a;border-color:#414047;box-shadow:0 5px 18px #0002}
.night-mode .bar-menu-group[open]{background:#29282c;border-color:#786148}
.night-mode .pause{background:#202126;border-color:#414048}
.night-mode .day-return{display:inline-block;color:#e8bd87}
.night-mode nav a[aria-current="location"]{color:#f4cf9e;text-decoration:underline;text-underline-offset:7px}
@media(prefers-reduced-motion:reduce){body,header,.parent-bar,.bar-section,.pause,.bar-menu-group,.button,.filters button,.bar-picture{transition:none}.night-mode .bar-picture{transform:none}}
