.sake-guide {
  --ink: #253b45;
  --muted: #556b73;
  --line: #d7e0df;
  --accent: #235d69;
  margin: 0;
  background: #fcfbf7;
  color: var(--ink);
  font: 18px/1.85 Georgia, 'Times New Roman', serif;
  overflow-wrap: break-word;
}
.sake-guide:lang(zh-Hans) { font-family: 'Songti SC', 'Noto Serif CJK SC', 'SimSun', serif; }
.sake-guide *, .sake-guide *::before, .sake-guide *::after { box-sizing: border-box; }
.sake-guide a { color: var(--accent); text-underline-offset: .2em; }
.sake-guide a:hover { text-decoration-thickness: 2px; }
.sake-guide a:focus-visible, .sake-guide summary:focus-visible { outline: 3px solid #b67826; outline-offset: 4px; }
.sake-guide img { display: block; max-width: 100%; height: auto; }
.sake-guide h1, .sake-guide h2, .sake-guide h3 { line-height: 1.35; font-weight: 500; }
.sake-guide h1 { margin: 12px 0 20px; font-size: clamp(34px, 4.3vw, 62px); letter-spacing: -.035em; }
.sake-guide h2 { margin: 0 0 24px; font-size: clamp(27px, 3vw, 36px); letter-spacing: -.02em; }
.sake-guide h3 { font-size: 23px; margin: 30px 0 14px; }
.sake-guide p { margin: 0 0 22px; }
.sake-guide [id] { scroll-margin-top: 24px; }
.sake-guide .skip-link { position: absolute; left: 16px; top: -120px; padding: 10px 20px; background: white; z-index: 10; }
.sake-guide .skip-link:focus { top: 12px; }
.sake-guide .lp-header { border-bottom: 1px solid var(--line); background: #fff; }
.sake-guide .lp-header .container { max-width: 1200px; margin: auto; padding: 20px 32px 12px; display: flex; gap: 18px 38px; flex-wrap: wrap; align-items: center; }
.sake-guide .header-logo { width: 160px; max-height: 72px; object-fit: contain; }
.sake-guide .header-nav, .sake-guide .header-icons { display: flex; flex-wrap: wrap; gap: 10px 24px; font: 13px/1.6 system-ui, sans-serif; }
.sake-guide .header-nav { flex: 1; }
.sake-guide .header-icons { width: 100%; justify-content: flex-end; padding-top: 10px; border-top: 1px solid #edf0ee; }
.sake-guide .header-nav a, .sake-guide .header-icons a { text-decoration: none; }
.sake-guide .site-language-note { width: 100%; margin: 0; text-align: right; color: var(--muted); font: 12px/1.5 system-ui, sans-serif; }
.sake-language-nav { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 8px 18px; margin: 0 auto 24px; max-width: 1120px; padding: 14px 0; font: 14px/1.5 system-ui, sans-serif; }
.sake-language-nav a { color: #235d69; padding: 6px 2px; text-underline-offset: 4px; }
.sake-language-nav [aria-current='page'] { color: #253b45; font-weight: 700; text-decoration-thickness: 2px; }
.sake-guide .page-wrap { max-width: 1184px; padding: 0 32px; margin: auto; }
.sake-guide .breadcrumb { color: var(--muted); font: 13px/1.65 system-ui, sans-serif; margin-bottom: 32px; }
.sake-guide .hero { display: grid; grid-template-columns: 1.1fr 1fr; gap: 40px; align-items: center; padding: 24px 0 54px; }
.sake-guide .eyebrow { margin: 0 0 12px; font: 12px/1.5 system-ui, sans-serif; letter-spacing: .14em; color: var(--accent); }
.sake-guide .hero-deck { max-width: 52ch; font-size: 19px; line-height: 1.7; }
.sake-guide .byline { font: 13px/1.7 system-ui, sans-serif; color: var(--muted); }
.sake-guide figure { margin: 0; }
.sake-guide .hero img { width: 100%; border-radius: 3px; }
.sake-guide figcaption { margin-top: 12px; color: var(--muted); font: 13px/1.7 system-ui, sans-serif; }
.sake-guide .button { display: inline-flex; align-items: center; min-height: 48px; background: var(--accent); color: #fff; text-decoration: none; padding: 10px 20px; font: 15px/1.5 system-ui, sans-serif; }
.sake-guide .intro { border-block: 1px solid var(--line); padding: 30px 0; margin-bottom: 42px; }
.sake-guide .intro p { max-width: 76ch; margin: auto; font-size: 21px; }
.sake-guide .article-body { max-width: 760px; margin: 0 auto; }
.sake-guide .toc { padding: 24px 30px; border: 1px solid var(--line); background: #f2f6f3; margin-bottom: 52px; }
.sake-guide .toc h2 { font: 600 16px/1.5 system-ui, sans-serif; margin-bottom: 16px; }
.sake-guide .toc ol { columns: 2; column-gap: 40px; margin: 0; padding-left: 24px; font: 15px/1.7 system-ui, sans-serif; }
.sake-guide .toc li { margin-bottom: 10px; break-inside: avoid; padding-left: 3px; }
.sake-guide .article-body > section { padding: 18px 0 44px; }
.sake-guide .article-body > section + section { padding-top: 44px; border-top: 1px solid var(--line); }
.sake-guide .reading-note { border-left: 3px solid #8daca5; padding: 20px 24px; margin: 30px 0; background: #f2f5f0; }
.sake-guide .reading-note p:last-child { margin-bottom: 0; }
.sake-guide .table-scroll { width: 100%; overflow-x: auto; margin: 28px 0; }
.sake-guide table { width: 100%; border-collapse: collapse; font: 15px/1.75 system-ui, sans-serif; }
.sake-guide caption { text-align: left; font-weight: 600; margin-bottom: 12px; }
.sake-guide th, .sake-guide td { vertical-align: top; text-align: left; padding: 15px 14px; border-bottom: 1px solid var(--line); }
.sake-guide th { font-weight: 600; background: #edf3ee; }
.sake-guide tbody th { width: 27%; background: transparent; }
.sake-guide .jp-label { display: block; font: 16px/1.65 'Hiragino Kaku Gothic ProN', 'Yu Gothic', sans-serif; color: var(--ink); }
.sake-guide .pronunciation { display: block; margin-top: 4px; color: var(--muted); font-size: 13px; font-weight: 400; }
.sake-guide .section-image { margin: 30px 0; }
.sake-guide .sake-example { display: grid; grid-template-columns: 180px minmax(0, 1fr); gap: 28px; margin: 32px 0; padding: 28px 0; border-top: 1px solid var(--line); }
.sake-guide .sake-example h3 { margin: 0 0 14px; }
.sake-guide .sake-example img { width: 180px; height: 180px; object-fit: contain; background: white; }
.sake-guide .product-facts { color: var(--muted); font: 14px/1.8 system-ui, sans-serif; }
.sake-guide .shop-language { display: block; font: 13px/1.6 system-ui, sans-serif; color: var(--muted); margin-top: 8px; }
.sake-guide .numbered-steps { padding-left: 25px; }
.sake-guide .numbered-steps li { padding-left: 8px; margin-bottom: 18px; }
.sake-guide details { padding: 20px 0; border-bottom: 1px solid var(--line); }
.sake-guide summary { cursor: pointer; font-weight: 600; }
.sake-guide details p { margin: 16px 0 0; }
.sake-guide .article-related { margin: 42px 0; padding: 28px; background: #edf3ee; }
.sake-guide .article-related h2 { font-size: 25px; }
.sake-guide .social-links { display: flex; flex-wrap: wrap; gap: 12px 26px; font: 15px/1.6 system-ui, sans-serif; }
.sake-guide .sources { color: var(--muted); font: 14px/1.8 system-ui, sans-serif; }
.sake-guide .sources ul { padding-left: 20px; }
.sake-guide .age-warning { margin: 0; padding: 22px 24px; text-align: center; background: #e8eeeb; font: 14px/1.7 system-ui, sans-serif; }
.sake-guide #footer { background: #243c44; color: white; padding: 42px 32px; font: 14px/1.9 system-ui, sans-serif; }
.sake-guide #footer_wrap { max-width: 1056px; margin: auto; display: grid; grid-template-columns: 1fr 1fr; gap: 30px; }
.sake-guide #footer a { color: white; }
.sake-guide #footer h2 { font: 600 17px/1.5 system-ui, sans-serif; }
.sake-guide .footer-links { display: flex; flex-wrap: wrap; gap: 12px 22px; }
.sake-guide .copyright { margin-top: 25px; font-size: 12px; opacity: .85; }
@supports (text-wrap: balance) { .sake-guide h1, .sake-guide h2 { text-wrap: balance; } }
@media (max-width: 760px) {
  .sake-guide { font-size: 17px; }
  .sake-guide .lp-header .container { padding: 16px 20px 12px; gap: 14px; }
  .sake-guide .header-logo { width: 142px; max-height: 60px; }
  .sake-guide .header-nav { flex-basis: 100%; gap: 9px 20px; }
  .sake-guide .header-icons { justify-content: flex-start; gap: 8px 18px; }
  .sake-guide .site-language-note { text-align: left; }
  .sake-guide .page-wrap { padding: 0 22px; }
  .sake-guide .hero { grid-template-columns: minmax(0, 1fr); gap: 28px; padding-top: 8px; }
  .sake-guide .hero-deck { font-size: 18px; }
  .sake-guide .intro p { font-size: 19px; }
  .sake-guide .toc { padding: 22px; }
  .sake-guide .toc ol { columns: 1; }
  .sake-guide .sake-example { grid-template-columns: 110px minmax(0, 1fr); gap: 18px; }
  .sake-guide .sake-example img { width: 110px; height: 140px; }
  .sake-guide .sake-example h3 { font-size: 22px; }
  .sake-guide th, .sake-guide td { padding: 12px 9px; }
  .sake-guide table { font-size: 14px; }
  .sake-guide #footer_wrap { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 390px) {
  .sake-guide .sake-example { grid-template-columns: minmax(0, 1fr); }
  .sake-guide .sake-example img { width: 150px; height: 150px; margin: auto; }
}
@media (prefers-reduced-motion: reduce) { .sake-guide { scroll-behavior: auto; } }
@media print {
  .sake-guide .lp-header, .sake-language-nav, .sake-guide .skip-link { display: none; }
  .sake-guide .page-wrap, .sake-guide .article-body { max-width: none; }
  .sake-guide { font-size: 12pt; background: white; }
}
