:root{color-scheme:only light;--brand:#990000;--brand-deep:#650000;--brand-soft:#f6eaea;--on-brand:#fff;--ink:#352828;--muted:#716261;--line:#dfd3cd;--paper:#f7f3ee}
html,body{background-color:var(--paper)}
.p-footer{background:var(--brand)}
.local-heading{font-size:14px;font-weight:500;color:var(--brand);margin-top:24px;letter-spacing:.05em}
.hero-lead{max-width:390px}.image-note{font-size:11px;color:var(--muted);margin-top:15px}.hero-copy h1{font-size:clamp(48px,5.7vw,98px)}
.raimu-menu{padding:var(--section-space) 0;background:var(--paper)}.menu-layout{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}.raimu-menu .section-title,.raimu-gallery .section-title{margin-top:20px}.menu-copy{padding-top:10px;color:var(--muted);line-height:2.2}.menu-heading{font:500 26px/1.8 var(--serif);color:var(--brand);margin-bottom:24px}.menu-copy p+p{margin-top:16px}.text-link{display:inline-block;color:var(--brand);border-bottom:1px solid var(--brand);margin-top:28px;padding-bottom:6px;font-size:14px}
.price-heading{max-width:760px}.price-heading>.section-title{margin:18px 0 22px}.price-heading>p:last-child{color:var(--muted)}
.system-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:55px;background:var(--line);border:1px solid var(--line)}.system-summary>div{background:#fff;padding:30px}.system-summary span{display:block;margin-bottom:11px;color:var(--brand);font-size:10px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.system-summary strong{display:block;font:500 19px/1.65 var(--serif);color:var(--ink)}.system-summary p{margin-top:12px;color:var(--muted);font-size:13px;line-height:1.9}
.price-category{display:grid;grid-template-columns:minmax(220px,.62fr) minmax(0,1.38fr);gap:clamp(40px,7vw,105px);padding:clamp(58px,7vw,90px) 0;border-top:1px solid var(--line)}.system-summary+.price-category{margin-top:clamp(70px,8vw,110px)}.price-category>header{position:relative}.price-category h3{font:500 clamp(25px,3vw,38px)/1.5 var(--serif);color:var(--brand)}.price-category>header>p:last-child{margin-top:13px;color:var(--muted);font-size:13px}.price-number{position:absolute;right:0;top:-25px;font:400 clamp(55px,7vw,95px)/1 var(--serif);color:color-mix(in srgb,var(--brand) 7%,transparent)}
.price-features>span{display:block}
.price-table{width:100%;border-collapse:collapse}.price-table th,.price-table td{padding:18px 0;border-bottom:1px solid var(--line);vertical-align:middle}.price-table tr:first-child th,.price-table tr:first-child td{padding-top:0}.price-table th{text-align:left;font:500 16px/1.7 var(--serif)}.price-table td{text-align:right;white-space:nowrap}.price-table td strong{font:500 20px/1.4 var(--serif);color:var(--ink)}.price-table td small{display:block;margin-top:3px;color:var(--muted);font-size:11px}.time-plan+.time-plan{margin-top:40px}.time-plan h4{display:grid;grid-template-columns:1fr auto;align-items:end;gap:5px 22px;margin:0 0 25px;padding:0 0 15px;border-bottom:2px solid var(--brand);font:500 20px/1.5 var(--serif)}.time-plan h4 strong{font-size:25px;color:var(--brand)}.time-plan h4 small{grid-column:1/-1;color:var(--muted);font:400 11px/1.5 var(--sans);letter-spacing:.08em}.price-options{padding-bottom:0}
.drink-menu{margin-top:clamp(80px,10vw,150px);padding:clamp(65px,8vw,110px) clamp(28px,5vw,80px);background:var(--brand);color:#fff}.drink-menu>header{max-width:700px;margin-bottom:55px}.drink-menu .kicker{color:#e1bd83}.drink-menu>header h3{margin:14px 0 15px;font:500 clamp(34px,4vw,56px)/1.4 var(--serif)}.drink-menu>header>p:last-child{color:#ffffffb3;font-size:14px}.drink-columns{display:grid;grid-template-columns:1fr 1fr;gap:clamp(35px,6vw,85px)}.drink-category h4{margin:0;padding:0 0 18px;border-bottom:1px solid #ffffff5c;font:500 27px/1.5 var(--serif)}.drink-category h4 small{margin-left:12px;color:#e1bd83;font:500 10px/1 var(--sans);letter-spacing:.18em;text-transform:uppercase}.drink-category dl{margin:0}.drink-category dl>div{display:flex;justify-content:space-between;align-items:flex-start;gap:22px;padding:16px 0;border-bottom:1px solid #ffffff20}.drink-category dt{font-size:14px;line-height:1.7}.drink-category dd{text-align:right;white-space:nowrap}.drink-category dd strong{display:block;font:500 16px/1.5 var(--serif)}.drink-category dd small{display:block;color:#ffffff9e;font-size:10px}.drink-other{margin-top:55px}.drink-other dl>div:last-child dt{max-width:710px}.price-note{margin-top:24px;color:#ffffff82;font-size:11px}
.raimu-gallery{padding:0 0 var(--section-space);background:var(--paper)}.raimu-gallery-heading{margin-bottom:38px}.raimu-gallery-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:28px}.raimu-gallery-grid figure{grid-column:span 4}.raimu-gallery-grid figure:first-child,.raimu-gallery-grid figure:last-child{grid-column:span 7}.raimu-gallery-grid figure:nth-child(2),.raimu-gallery-grid figure:nth-child(5){grid-column:span 5}.raimu-gallery-frame{aspect-ratio:4/3;overflow:hidden;background:var(--brand-soft)}.raimu-gallery-grid figure:first-child .raimu-gallery-frame,.raimu-gallery-grid figure:last-child .raimu-gallery-frame{aspect-ratio:16/9}.raimu-gallery-frame img{transition:transform .45s}.raimu-gallery-frame:hover img{transform:scale(1.035)}.map{position:relative;padding-bottom:48px}.map iframe{width:100%;border:0}.map-link{display:block;padding:12px 0;font-size:13px;text-decoration:underline;color:inherit}.nav-section{font-size:13px;white-space:nowrap}.detail-row dd{overflow-wrap:anywhere}.address-lines>span{display:block}.hours-list{padding-left:0;list-style:none}.p-info a:focus-visible{outline-color:#fff}
@media(max-width:1100px){.hero-copy h1{font-size:clamp(46px,6.2vw,70px)}.price-category{grid-template-columns:1fr;gap:35px}.price-category>header{max-width:530px}.price-number{right:auto;left:calc(100% + 20px)}.drink-columns{gap:38px}}
@media(max-width:760px){.nav-section{display:none}.hero-copy h1{font-size:clamp(39px,10.5vw,72px)}.menu-layout{grid-template-columns:1fr;gap:28px}.menu-heading{font-size:23px}.menu-copy{font-size:15px}.local-heading{font-size:13px}.hero-lead{max-width:none}.system-summary{grid-template-columns:1fr;margin-top:38px}.system-summary>div{padding:24px}.price-category{padding:56px 0}.price-number{display:none}.price-table th{font-size:14px}.price-table td strong{font-size:17px}.time-plan h4{grid-template-columns:1fr auto;font-size:17px}.time-plan h4 strong{font-size:21px}.drink-menu{margin-inline:calc(var(--gutter)*-1);padding-inline:var(--gutter)}.drink-columns{grid-template-columns:1fr;gap:52px}.drink-category h4{font-size:24px}.drink-category dl>div{gap:12px}.drink-category dt{font-size:13px}.drink-category dd strong{font-size:14px}.drink-other dl>div{display:block}.drink-other dd{text-align:left;margin-top:10px}.raimu-gallery-heading{margin-bottom:30px}.raimu-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.raimu-gallery-grid figure{grid-column:span 1}.raimu-gallery-grid figure:first-child,.raimu-gallery-grid figure:last-child{grid-column:1/-1}.raimu-gallery-grid .raimu-gallery-frame{aspect-ratio:1/1}.raimu-gallery-grid figure:first-child .raimu-gallery-frame,.raimu-gallery-grid figure:last-child .raimu-gallery-frame{aspect-ratio:16/9}.p-cta .cta-copy h2{white-space:normal}.p-info .detail-row{grid-template-columns:72px minmax(0,1fr)}.p-nav{gap:10px}.section-title{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){.raimu-gallery-frame img{transition:none}}
