/* Shojin Sakaba reference: warm paper, ink, deep vermilion and dark timber.
   Original restaurant photography, branding, copy and interactions are retained. */
:root{
  --ink:#231d18;--ink2:#382820;--paper:#f3eddf;--ivory:#fff9ed;
  --copper:#8c3227;--gold:#b58b53;--muted:#716353;--line:#c5b69e;
  --serif:ShopDisplay,"Yu Mincho","Hiragino Mincho ProN",serif;
  --display:var(--serif);--washi:url('washi.svg');
}
body.design-b{background:var(--paper);color:var(--ink);border-inline:5px solid #493025}
.design-b h1,.design-b h2,.design-b h3,.design-b h4{font-family:var(--display);font-weight:800;letter-spacing:.035em}
.design-b .official-logo{mix-blend-mode:multiply}
.design-b .site-header{background-color:#f6f0e4;background-image:var(--washi);border-bottom:1px solid #c5b69e}
.design-b .header-reserve,.design-b .button.copper{background:var(--copper);color:#fff9ed}
.design-b .header-reserve:hover,.design-b .button.copper:hover{background:#70251e;color:#fff9ed}
.design-b a:focus-visible,.design-b button:focus-visible,.design-b summary:focus-visible{outline-color:#b26738}
.design-b .desktop-nav a:hover,.design-b .text-link:hover{color:var(--copper)}
.design-b .eyebrow,.design-b .paper .eyebrow{color:#81392b;font-weight:500;letter-spacing:.1em}
.design-b .hero-b{background-color:#efe5d1;background-image:var(--washi),radial-gradient(ellipse at 10% 0,#faf6eb,transparent 70%);gap:23px;padding-top:34px}
.design-b .hero-b::before{content:"";position:absolute;pointer-events:none;left:-45px;bottom:-50px;width:260px;aspect-ratio:1;background:url('../assets/sakazukiya-mark.png') center/contain no-repeat;opacity:.045;filter:grayscale(1);mix-blend-mode:multiply;transform:rotate(-12deg)}
.hero-b>*{position:relative;z-index:1}
.hero-b .hero-brand h1{font-family:var(--display);font-weight:800;font-size:22px;letter-spacing:.09em}
.hero-b .hero-kicker{color:#6e5140}
.hero-b .hero-copy p{font-family:var(--display);font-weight:800}
.hero-b .hero-copy p>span{font-family:var(--display);font-size:19px;font-weight:800;letter-spacing:.05em}
.hero-b .hero-copy p>strong{font-family:var(--display);font-size:clamp(26px,7.6vw,38px);font-weight:800;color:#8c3227;letter-spacing:.025em}
.hero-b .hero-copy>span{color:#493d30}
.b-menu-link{border-color:#8c3227;color:#8c3227;font-size:12px;letter-spacing:.04em}
.hero-gallery{border:5px solid #faf5e9;box-shadow:0 3px 9px #48301d20;aspect-ratio:1.25}
.hero-b .hero-slideshow-controls{background:#281c13bf;color:#fff9ed}
.hero-b .hero-hashigo{color:#503426}
.hero-b .hero-hashigo strong{font-family:var(--display);font-weight:800;font-size:13px}
.hero-b .hero-hashigo b{color:var(--copper)}
.design-b .welcome-bar{background:#8c3227 var(--washi);color:#fff8e8;border-top:1px solid #ab6656;border-bottom:3px double #652b23;font-weight:500}
.design-b .welcome-bar .tiny-dot{background:#ead7af}
.design-b .about-sakazukiya,.design-b .menu-section,.design-b .access{background-color:#f5efe3;background-image:var(--washi)}
.design-b .paper::before,.design-b .section-dark::before{opacity:.02}
.design-b .about-heading h2{font-weight:800;letter-spacing:.025em;line-height:1.8}
.design-b .about-lead{color:#705b46}
.design-b .about-body{color:#3e3328}
.design-b .about-main-photo{padding:6px;background:#fcf8ef;box-shadow:0 2px 8px #48301d14}
.design-b .about-main-photo figcaption{padding:10px 6px 6px;color:#6d5944}
.design-b .about-scenes figcaption{color:#725943}
.design-b .about-body .text-link{border-color:#8c3227;color:#8c3227}
.design-b .fish-features.section-dark.brand-surface{background-color:#e9dec9;background-image:var(--washi),linear-gradient(120deg,#efe5d4,#f3eddf 55%,#e6d9bf);color:var(--ink)}
.design-b .fish-features.brand-surface::after,.design-b .space.brand-surface::after{opacity:.045;filter:sepia(1);mix-blend-mode:multiply}
.design-b .fish-feature-intro h2{font-weight:800}
.design-b .fish-feature{border-color:#bba98b}
.design-b .fish-feature-kind,.design-b .fish-feature-intro .eyebrow,.design-b .fish-jump a small,.design-b .fish-feature-kind small{color:#8c3227}
.design-b .fish-feature h3{font-weight:800;letter-spacing:.02em}
.design-b .fish-jump a{border-color:#9b7861;font-family:var(--display);font-weight:800;color:#463023}
.design-b .fish-photo-word{background:#8c3227 var(--washi);color:#fff8e8;font-weight:800;padding:13px 9px}
.design-b .fish-feature-photo img{border:5px solid #f7f0e1;box-shadow:0 2px 8px #49311d18}
.design-b .fish-feature-photo figcaption,.design-b .fish-feature-note p{color:#665540}
.design-b .fish-feature-note{border-color:#ad6848}
.design-b .fish-feature-body .text-link.light{color:#8c3227;border-color:#9b6752}
.design-b .grill-finish{border-color:#bfad91}
.design-b .grill-finish>p{color:#583b2b}
.design-b .section-title h2{font-weight:800;color:#39291e;letter-spacing:.07em}
.design-b .title-rule{background:#8c3227;height:2px;width:42px;border-radius:0}
.design-b .menu-title-mark{border:3px double #8c3227;outline:0;color:#8c3227;font-family:var(--display);font-weight:800;background:#f7eddb}
.design-b .menu-tabs{border-top:3px double #a98a6a;border-bottom:3px double #a98a6a}
.design-b .menu-tabs button{font-family:var(--display);font-weight:800;letter-spacing:.03em}
.design-b .menu-tabs button[aria-selected=true],.design-b .menu-tabs button[aria-selected=true]:hover{background:#8c3227;color:#fff8e8}
.design-b .menu-tabs button[aria-selected=true]>span{color:#ead5ba}
.design-b .menu-tabs button>span{color:#746048}
.design-b .menu-tabs button:hover{background:#e9dcc5}
.design-b .menu-tabs button+button::before{background:#c4b193}
.design-b .small-plates-feature,.design-b .tongue-feature,.design-b .menu-category{border-color:#c4b193}
.design-b .small-plates-heading h3,.design-b .tongue-copy h3{font-weight:800}
.design-b .small-plates-heading>p,.design-b .plate-description{color:#695640}
.design-b .plate-main strong,.design-b .plate-pair strong{font-family:var(--display);font-weight:800;color:#513a29}
.design-b .plate-main small{color:#8c3227}
.design-b .menu-category>summary{color:#492e22;font-family:var(--display);font-weight:800}
.design-b .category-heading>small{color:#98583c}
.design-b .category-name em{font-family:var(--sans);font-weight:400}
.design-b .item-note,.design-b .category-note,.design-b .menu-notice{color:#6d5e4e}
.design-b .drink-character{color:#9a4a2f;opacity:.55}
.design-b .drink-intro h3{font-weight:800}
.design-b .course-card{border-color:#c3ad8e;background:#faf5ea;box-shadow:none}
.design-b .course-price{color:#8c3227}
.design-b .hashigo.hashigo-v3{background-color:#eadeca;background-image:var(--washi),linear-gradient(110deg,#eee3d0,#f5efe2);border-color:#c6b493}
.design-b .hashigo-v3 .hashigo-topline{border-color:#b49775;color:#674532}
.design-b .hashigo-v3 .hashigo-ticket{background:#8c3227;color:#fff4df;font-family:var(--display);font-weight:800}
.design-b .hashigo-v3 .hashigo-lead{color:#8c3227;border-color:#a7684e;background:transparent;font-family:var(--display);font-weight:800}
.design-b .hashigo-v3 h2{font-weight:800;letter-spacing:.03em}
.design-b .hashigo-v3 h2>strong{font-family:var(--display);font-weight:800;color:#8c3227;letter-spacing:.025em}
.design-b .hashigo-v3 .tuktuk-cutout::before{background:radial-gradient(ellipse,#d9b57640,transparent 70%)}
.design-b .hashigo-v3 .tuktuk-cutout figcaption{color:#6b442d}
.design-b .hashigo-description>p>strong{color:#8c3227}
.design-b .hashigo-steps b{color:#8c3227;background:#f7efdf;border:1px solid #b98e67}
.design-b .hashigo-steps li+li::before{color:#a47b55}
.design-b .hashigo-description .text-link{background:#8c3227;color:#fff8e8;border:3px double #c38d74;padding:11px 15px}
.design-b .hashigo-description .text-link:hover{background:#70251e}
.design-b .hashigo-v3 .hashigo-destinations{border-top:3px double #b49775}
.design-b .hashigo-v3 .hashigo-destinations h3{color:#4c3022;font-weight:800;letter-spacing:.04em;font-size:clamp(22px,6.4vw,27px)}
.design-b .destination-card{background:#f9f3e7;border-bottom:1px solid #b99a77}
.design-b .destination-area{background:#f9f1df;color:#8c3227}
.design-b .destination-info strong{color:#472e23}
.design-b .hashigo-booking,.design-b .hashigo-v3 .ride-controls{border-color:#bda17f;color:#513e2c}
.design-b .hashigo-v3 .road-stop{color:#8c3227}
.design-b .hashigo-v3 .road-stop>span{border-color:#ac7f59;color:#68503a}
.design-b .hashigo-ride .townline{stroke:#967954}
.design-b .hashigo-v3 .road-dash{background:repeating-linear-gradient(90deg,#876343 0 18px,transparent 18px 31px)}
.design-b .hashigo-v3 .ride-bubble,.design-b .hashigo-v3 .ride-controls button{background:#faf3e4;border-color:#987251;color:#513526}
.design-b .space.section-dark.brand-surface{background-color:#e9dfcb;background-image:var(--washi),linear-gradient(120deg,#eee4d2,#f5ede0 65%,#e8dcc4);color:var(--ink)}
.design-b .space h2{font-weight:800;letter-spacing:.025em}
.design-b .space h2 span,.design-b .space figcaption span{color:#8c3227}
.design-b .space-main img{border:6px solid #f8f1e3}
.design-b .space-grid img{border:4px solid #faf3e6}
.design-b .space-foot{border-color:#bda98c}
.design-b .map-link{background:#8c3227;color:#fff8e8;border-color:#8c3227}
.design-b .map-link:hover{background:#70251e}
.design-b .shop-details>dl>div,.design-b .shop-more{border-color:#c4b296}
.design-b .shop-details dt,.design-b .shop-more>div{color:#715d46}
.design-b .reservation.section-dark.brand-surface{background-color:#422b20;background-image:var(--washi),repeating-linear-gradient(3deg,#38251d18 0 1px,transparent 2px 10px);color:#fff5e4;border-top:4px double #8f7051}
.design-b .reservation h2{color:#fff5e4;font-weight:800;letter-spacing:.03em}
.design-b .reservation .eyebrow,.design-b .reservation>p,.design-b .reservation-note{color:#e0ccb1}
.design-b .reservation .button.copper{background:#f6ebd8;color:#713227;border:3px double #bd9873}
.design-b .reservation .button.copper:hover{background:#fff8e9;color:#713227}
.design-b .reservation .button small{color:#705c46}
.design-b .reservation-phone{color:#fff4df}
.design-b .footer{background:#f1e8d7 var(--washi);color:#473225;border-color:#c3ad8d}
.design-b .footer p,.design-b .footer>span{color:#6b5742}
.design-b .back-top{border-color:#a6805c;color:#8c3227}
.design-b .mobile-booking{background:#f5eddf;color:#492f22;border-color:#9b7053}
.design-b .mobile-booking a:last-child{background:#8c3227;color:#fff9ed}
.design-b .nav-dialog{background:#f4ecdc var(--washi);color:#2c2118}
.design-b .nav-dialog nav a{font-family:var(--display);font-weight:800;border-color:#c6b293}
.design-b .nav-dialog nav small{color:#9a5137}
.design-b .nav-hours{color:#75604a}
@media(min-width:900px){
 body.design-b{border-inline-width:12px}
 .design-b .hero-b{padding-top:53px;grid-template-columns:42% 55%;column-gap:3%;min-height:610px}
 .hero-b .hero-brand h1{font-size:28px}
 .hero-b .hero-copy p>span{font-size:24px;letter-spacing:.06em}
 .hero-b .hero-copy p>strong{font-size:clamp(32px,3.7vw,52px);line-height:1.6}
 .hero-gallery{border-width:8px;aspect-ratio:1.24}
 .hero-b .hero-hashigo strong{font-size:15px}
 .design-b .hero-b::before{width:350px;left:-25px;bottom:-80px}
 .design-b .hashigo-v3 .hashigo-destinations h3{font-size:36px}
}
@media(max-width:359px){
 .hero-b .hero-brand h1{font-size:19px}
 .hero-b .hero-kicker{font-size:9px}
 .hero-b .hero-copy p>span{font-size:17px}
 .hero-b .hero-copy p>strong{font-size:25px;letter-spacing:0}
 .hero-b .hero-hashigo strong{font-size:11px}
 .design-b .about-heading h2{font-size:21px}
 .design-b .hashigo-v3 .tuktuk-cutout{width:130%;margin-left:-22%;transform:none}
}
