body.dnw-site{ --ink:#242521; --muted:#666861; --line:#dfe1db; --paper:#fff; --content:1120px; --link-arrow-size:20px; --link-arrow-drawing-size:16px; --link-gap:20px; --link-height:44px; --link-margin-top:12px; --category-line-height:32px; --category-padding-y:18px; }
body.dnw-site *{ box-sizing:border-box; }
html{ scroll-behavior:smooth; }
body.dnw-site{ margin:0; color:var(--ink); background:var(--paper); font-family:"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif; -webkit-font-smoothing:antialiased; }
body.dnw-site a{ color:inherit; text-decoration:none; }
body.dnw-site button,body.dnw-site input{ font:inherit; }
body.dnw-site button{ color:inherit; }
body.dnw-site img{ display:block; width:100%; height:auto; }
body.dnw-site svg{ display:block; }
body.dnw-site h1,body.dnw-site h2,body.dnw-site h3,body.dnw-site p{ margin:0; }
body.dnw-site a:focus-visible,body.dnw-site button:focus-visible,body.dnw-site input:focus-visible{ outline:2px solid var(--ink); outline-offset:5px; }
body.dnw-site .skip-link{ position:absolute; top:8px; left:8px; transform:translateY(-150%); padding:12px; background:white; z-index:5; }
body.dnw-site .skip-link:focus{ transform:translateY(0); }
body.dnw-site .wrap{ width:calc(100% - 96px); max-width:var(--content); margin-inline:auto; }
body.dnw-site .site-header{ height:72px; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid var(--line); }
body.dnw-site .mini-logo{ font-family:"Times New Roman",Times,serif; font-size:23px; line-height:1; letter-spacing:-.7px; padding-block:10px; }
body.dnw-site .primary-nav{ display:flex; align-items:center; gap:32px; font-family:Arial,sans-serif; font-size:13px; }
body.dnw-site .primary-nav>a{ display:flex; align-items:center; min-height:44px; }
body.dnw-site .primary-nav a:hover,body.dnw-site .footer-links a:hover{ text-decoration:underline; text-underline-offset:5px; }
body.dnw-site .search-button{ display:grid; place-items:center; width:44px; height:44px; border:0; padding:0; background:transparent; cursor:pointer; }
body.dnw-site .search-button svg{ width:18px; height:18px; }
body.dnw-site .search-panel{ padding:24px 0; border-bottom:1px solid var(--line); }
body.dnw-site .search-panel[hidden]{ display:none; }
body.dnw-site .search-panel form{ display:flex; gap:12px; max-width:620px; }
body.dnw-site .search-panel label{ display:block; margin-bottom:10px; font-size:14px; }
body.dnw-site .search-panel input{ min-width:0; flex:1; padding:12px 14px; border:1px solid #94988e; border-radius:0; background:white; }
body.dnw-site .search-panel button{ border:1px solid var(--ink); padding:12px 20px; background:var(--ink); color:white; cursor:pointer; }
body.dnw-site .intro{ padding:48px 0 40px; border-bottom:1px solid var(--line); }
body.dnw-site .masthead{ font-family:"Times New Roman",Times,serif; font-weight:400; font-size:68px; line-height:1.18; letter-spacing:0; }
body.dnw-site .masthead span{ display:inline; }
body.dnw-site .intro-copy{ max-width:680px; padding-top:24px; }
body.dnw-site .intro-copy p{ font-size:16px; line-height:1.9; letter-spacing:.02em; }
body.dnw-site .latest{ padding-top:32px; }
body.dnw-site .section-heading{ display:flex; align-items:baseline; justify-content:space-between; gap:16px; margin-bottom:24px; }
body.dnw-site .section-heading h2{ font-size:20px; line-height:1.5; font-weight:500; letter-spacing:.03em; }
body.dnw-site .section-heading span{ color:var(--muted); font-family:Arial,sans-serif; font-size:10px; letter-spacing:.14em; }
body.dnw-site .featured{ display:grid; grid-template-columns:3fr 2fr; gap:48px; align-items:center; }
body.dnw-site .post-image{ overflow:hidden; }
body.dnw-site .post-image img{ transition:opacity .2s; }
body.dnw-site .post-image:hover img{ opacity:.88; }
body.dnw-site .post-info{ min-width:0; }
body.dnw-site .post-meta{ display:flex; align-items:center; gap:14px; font-family:Arial,sans-serif; font-size:12px; line-height:1.5; color:var(--muted); letter-spacing:.04em; }
body.dnw-site .post-meta .category{ color:var(--ink); }
body.dnw-site .post-meta .dot{ width:2px; height:2px; background:#94988e; border-radius:50%; }
body.dnw-site .post-title{ font-size:18px; line-height:1.65; font-weight:500; letter-spacing:.01em; word-break:normal; overflow-wrap:break-word; line-break:strict; }
body.dnw-site .post-title a:hover{ text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:5px; }
body.dnw-site .featured .post-title{ font-size:26px; line-height:1.6; margin-top:12px; }
body.dnw-site .featured .excerpt{ color:var(--muted); font-size:14px; line-height:1.9; margin-top:18px; }
body.dnw-site .read-link{ display:inline-flex; align-items:center; gap:var(--link-gap); min-height:var(--link-height); padding:0; margin:var(--link-margin-top) 0 0; font-size:13px; line-height:1.5; }
body.dnw-site .read-link:hover{ text-decoration:underline; text-underline-offset:5px; }
body.dnw-site .link-label{ display:block; }
body.dnw-site .link-arrow{ display:inline-flex; align-items:center; justify-content:center; flex:none; width:var(--link-arrow-size); height:var(--category-line-height); padding:0; margin:0; }
body.dnw-site .link-arrow svg{ width:var(--link-arrow-drawing-size); height:var(--link-arrow-drawing-size); }
body.dnw-site .post-list{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:48px; margin-top:40px; }
body.dnw-site .post-row{ display:grid; grid-template-columns:136px minmax(0,1fr); gap:24px; align-items:start; padding:24px 0; border-top:1px solid var(--line); }
body.dnw-site .post-row .post-title{ margin-top:10px; }
body.dnw-site .site-guide{ display:grid; grid-template-columns:1fr 1.2fr; column-gap:88px; margin-top:48px; padding-top:36px; border-top:1px solid var(--line); }
body.dnw-site .site-guide h2{ font-size:18px; line-height:1.5; font-weight:500; letter-spacing:.03em; }
body.dnw-site .about-summary p{ font-size:14px; line-height:1.9; color:var(--muted); margin-top:20px; max-width:400px; }
body.dnw-site .category-list{ margin-top:14px; }
body.dnw-site .category-entry{ display:grid; grid-template-columns:80px minmax(0,1fr) var(--link-arrow-size); gap:20px; align-items:start; padding:var(--category-padding-y) 0; border-bottom:1px solid var(--line); }
body.dnw-site .category-entry:hover{ background:#fafbf8; }
body.dnw-site .category-entry h3{ font-family:"Times New Roman",Times,serif; font-size:24px; line-height:var(--category-line-height); font-weight:400; letter-spacing:-.4px; }
body.dnw-site .category-entry p{ font-size:13px; line-height:1.8; padding-top:calc((var(--category-line-height) - 1.8em)/2); color:var(--muted); }
body.dnw-site .site-footer{ margin-top:64px; padding:26px 0 30px; border-top:1px solid var(--line); display:flex; align-items:center; justify-content:space-between; gap:24px; }
body.dnw-site .footer-brand{ font-family:"Times New Roman",Times,serif; font-size:20px; letter-spacing:-.4px; }
body.dnw-site .footer-links{ display:flex; flex-wrap:wrap; justify-content:flex-end; gap:24px; font-size:12px; line-height:1.6; color:var(--muted); }
body.dnw-site .copyright{ font-family:Arial,sans-serif; font-size:10px; letter-spacing:.03em; color:var(--muted); margin-top:10px; }
@media (min-width:761px) and (max-width:1100px){body.dnw-site .masthead{ font-size:64px; }
body.dnw-site .featured{ gap:32px; }
body.dnw-site .featured .post-title{ font-size:23px; }
body.dnw-site .post-list{ column-gap:32px; }
body.dnw-site .post-row{ grid-template-columns:120px minmax(0,1fr); gap:18px; }
body.dnw-site .post-title{ font-size:16px; }
body.dnw-site .site-guide{ column-gap:48px; }
body.dnw-site .category-entry{ grid-template-columns:65px minmax(0,1fr) var(--link-arrow-size); gap:14px; }

}
@media (max-width:760px){body.dnw-site .wrap{ width:calc(100% - 48px); }
body.dnw-site .site-header{ height:64px; }
body.dnw-site .mini-logo{ font-size:21px; }
body.dnw-site .primary-nav{ gap:14px; font-size:12px; }
body.dnw-site .search-button{ width:32px; }
body.dnw-site .search-button svg{ width:17px; height:17px; }
body.dnw-site .intro{ padding:28px 0; }
body.dnw-site .masthead{ font-size:clamp(28px,9.2vw,38px); line-height:1.25; letter-spacing:0; white-space:nowrap; }
body.dnw-site .masthead span{ display:inline; }
body.dnw-site .intro-copy{ padding-top:20px; }
body.dnw-site .intro-copy p{ font-size:15px; line-height:1.85; letter-spacing:.02em; }
body.dnw-site .latest{ padding-top:24px; }
body.dnw-site .section-heading{ margin-bottom:18px; }
body.dnw-site .section-heading h2{ font-size:18px; line-height:1.5; }
body.dnw-site .section-heading span{ font-size:9px; letter-spacing:.12em; }
body.dnw-site .featured{ display:block; }
body.dnw-site .featured .post-info{ padding-top:16px; }
body.dnw-site .post-meta{ font-size:11px; gap:12px; }
body.dnw-site .featured .post-title{ font-size:20px; line-height:1.6; margin-top:10px; }
body.dnw-site .featured .excerpt{ display:none; }
body.dnw-site .read-link{ font-size:12px; }
body.dnw-site .post-list{ display:block; margin-top:28px; }
body.dnw-site .post-row{ grid-template-columns:104px minmax(0,1fr); gap:16px; padding:24px 0; }
body.dnw-site .post-row .post-title{ font-size:15px; line-height:1.65; margin-top:8px; }
body.dnw-site .site-guide{ display:flex; flex-direction:column; gap:36px; margin-top:28px; padding-top:28px; }
body.dnw-site .site-guide h2{ font-size:17px; }
body.dnw-site .about-summary p{ font-size:13px; line-height:1.9; margin-top:14px; }
body.dnw-site .category-list{ margin-top:12px; }
body.dnw-site .category-entry{ grid-template-columns:64px minmax(0,1fr) var(--link-arrow-size); gap:12px; }
body.dnw-site .category-entry h3{ font-size:23px; }
body.dnw-site .category-entry p{ font-size:12px; line-height:1.8; }
body.dnw-site .site-footer{ display:block; margin-top:40px; padding:24px 0 26px; }
body.dnw-site .footer-brand{ font-size:18px; }
body.dnw-site .footer-links{ justify-content:flex-start; gap:12px 18px; margin-top:16px; font-size:11px; }
body.dnw-site .copyright{ margin-top:16px; }

}
@media (max-width:375px){body.dnw-site .wrap{ width:calc(100% - 40px); }
body.dnw-site .primary-nav{ gap:12px; }
body.dnw-site .post-row{ grid-template-columns:96px minmax(0,1fr); gap:15px; }

}
@media (prefers-reduced-motion:reduce){html{ scroll-behavior:auto; }
body.dnw-site *{ transition:none!important; }
 }
@media print{body.dnw-site .search-panel,body.dnw-site .skip-link,body.dnw-site .search-button{ display:none!important; }
body.dnw-site .post-row,body.dnw-site .featured,body.dnw-site .site-guide{ break-inside:avoid; }
 }
body.dnw-site .mini-logo.brand-home{ display:flex; align-items:center; justify-content:center; width:56px; min-height:44px; padding:0; }
body.dnw-site .brand-home img{ width:100%; height:auto; }
body.dnw-site .intro.intro--mark{ display:grid; grid-template-columns:minmax(0,1fr) 104px; gap:48px; align-items:center; }
body.dnw-site .intro-content{ min-width:0; }
body.dnw-site .intro-mark{ width:104px; height:auto; }
@media (min-width:761px) and (max-width:1100px){body.dnw-site .intro.intro--mark{ grid-template-columns:minmax(0,1fr) 64px; gap:24px; }
body.dnw-site .intro-mark{ width:64px; }

}
@media (max-width:760px){body.dnw-site .mini-logo.brand-home{ width:48px; }
body.dnw-site .intro.intro--mark{ display:flex; flex-direction:column; align-items:stretch; gap:14px; }
body.dnw-site .intro-mark{ order:-1; align-self:flex-start; width:56px; }

}
html{ scroll-padding-top:88px; }
body.dnw-site .header-shell{ position:sticky; top:0; z-index:10; background:#fff; }
body.dnw-site .skip-link{ z-index:20; }
body.dnw-site .header-shell .wrap{ position:relative; }
body.dnw-site .site-header{ height:72px; }
body.dnw-site .primary-nav{ margin-left:auto; }
body.dnw-site .mini-logo.brand-home{ width:112px; min-height:44px; justify-content:flex-start; opacity:0; visibility:hidden; pointer-events:none; transition:opacity .18s ease; }
body.dnw-site.is-compact .mini-logo.brand-home{ opacity:1; visibility:visible; pointer-events:auto; }
body.dnw-site .intro{ padding:36px 0 38px; }
body.dnw-site .masthead{ font-size:inherit; line-height:1; }
body.dnw-site .masthead-home{ display:block; width:min(830px,100%); }
body.dnw-site .masthead-logo{ display:block; width:100%; height:auto; }
body.dnw-site .intro-copy{ max-width:704px; padding-top:18px; }
body.dnw-site .intro-copy p{ line-height:1.9; }
body.dnw-site .intro-sentence{ display:block; }
body.dnw-site .post-title{ font-weight:600; }
body.dnw-site .featured .post-title{ font-weight:600; }
body.dnw-site .footer-brand{ display:block; width:254px; min-height:30px; }
body.dnw-site .footer-brand img{ width:100%; }
@media (min-width:761px) and (max-width:1100px){body.dnw-site .masthead{ font-size:inherit; }
body.dnw-site .masthead-home{ width:min(750px,100%); }

}
@media (max-width:760px){html{ scroll-padding-top:76px; }
body.dnw-site .site-header{ height:64px; }
body.dnw-site .mini-logo.brand-home{ width:88px; min-height:44px; }
body.dnw-site .primary-nav{ gap:14px; }
body.dnw-site .intro{ padding:22px 0 28px; }
body.dnw-site .masthead{ font-size:inherit; line-height:1; white-space:normal; }
body.dnw-site .masthead-home{ width:100%; }
body.dnw-site .intro-copy{ padding-top:18px; }
body.dnw-site .intro-copy p{ line-height:1.85; }
body.dnw-site .intro-sentence{ display:inline; }
body.dnw-site .footer-brand{ width:236px; }

}
@media (max-width:375px){body.dnw-site .mini-logo.brand-home{ width:76px; }
body.dnw-site .primary-nav{ gap:9px; font-size:11px; }

}
@media print{body.dnw-site .header-shell{ position:static; }
body.dnw-site .mini-logo.brand-home{ display:none; }

}
body.dnw-site .masthead-shell{ padding:40px 0 12px; }
body.dnw-site .site-header{ position:relative; justify-content:flex-start; }
body.dnw-site .mini-logo.brand-home{ position:absolute; left:0; padding-block:0; }
body.dnw-site .primary-nav{ margin-left:0; }
body.dnw-site.is-compact .primary-nav{ margin-left:auto; }
body.dnw-site .intro{ padding:24px 0 38px; }
body.dnw-site .intro-copy{ padding-top:0; }
@media (max-width:760px){body.dnw-site .masthead-shell{ padding:26px 0 8px; }
body.dnw-site .intro{ padding:16px 0 28px; }
body.dnw-site .intro-copy{ padding-top:0; }

}
body.dnw-site.page--inner .masthead-shell{ padding:32px 0 8px; }
body.dnw-site.page--inner .masthead-home{ width:min(480px,100%); }
body.dnw-site .primary-nav a[aria-current]{ text-decoration:underline; text-underline-offset:7px; text-decoration-thickness:1px; }
body.dnw-site .page-breadcrumb{ display:flex; flex-wrap:wrap; gap:10px; margin:28px 0 0; color:var(--muted); font-size:11px; line-height:1.8; }
body.dnw-site .page-breadcrumb a{ min-height:24px; }
body.dnw-site .page-breadcrumb a:hover{ text-decoration:underline; text-underline-offset:4px; }
body.dnw-site .article-heading{ max-width:896px; margin:30px auto 0; }
body.dnw-site .article-heading .post-meta{ margin-bottom:16px; }
body.dnw-site .article-title{ max-width:800px; font-size:34px; line-height:1.7; font-weight:600; letter-spacing:.015em; word-break:normal; overflow-wrap:break-word; line-break:strict; }
body.dnw-site .article-cover{ margin:28px 0 0; }
body.dnw-site .article-cover img{ width:100%; height:auto; }
body.dnw-site .article-cover figcaption{ margin-top:10px; color:var(--muted); font-size:12px; line-height:1.8; }
body.dnw-site .reading-column{ width:100%; max-width:704px; margin-inline:auto; }
body.dnw-site .article-toc{ margin:36px 0 32px; padding:0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); font-size:13px; }
body.dnw-site .article-toc summary{ display:flex; align-items:center; gap:16px; min-height:56px; cursor:pointer; list-style:none; }
body.dnw-site .article-toc summary::-webkit-details-marker{ display:none; }
body.dnw-site .article-toc summary .toc-count{ color:var(--muted); font-size:11px; }
body.dnw-site .article-toc summary .link-arrow{ margin-left:auto; }
body.dnw-site .article-toc[open] summary .link-arrow svg{ transform:rotate(90deg); }
body.dnw-site .article-toc ol{ margin:0; padding:0 0 22px 24px; }
body.dnw-site .article-toc li{ padding-left:6px; line-height:1.8; }
body.dnw-site .article-toc li::marker{ color:var(--muted); font-family:Arial,sans-serif; font-size:11px; }
body.dnw-site .article-toc a{ display:block; padding:9px 0; }
body.dnw-site .article-toc a:hover{ text-decoration:underline; text-underline-offset:4px; }
body.dnw-site .article-prose{ font-size:16px; line-height:2.05; letter-spacing:.02em; overflow-wrap:break-word; line-break:strict; }
body.dnw-site .article-prose p{ margin:0 0 1.35em; }
body.dnw-site .article-prose h2{ margin:56px 0 20px; padding-top:0; border-top:0; font-size:23px; line-height:1.7; letter-spacing:.02em; font-weight:600; scroll-margin-top:96px; }
body.dnw-site .article-prose h3{ margin:40px 0 18px; font-size:19px; line-height:1.7; font-weight:600; scroll-margin-top:0; }
body.dnw-site .article-prose h4{ margin:28px 0 16px; font-size:17px; line-height:1.7; font-weight:600; scroll-margin-top:0; }
body.dnw-site .article-prose a{ text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:4px; overflow-wrap:anywhere; }
body.dnw-site .article-prose a:hover{ color:#61675c; }
body.dnw-site .article-prose strong{ font-weight:600; }
body.dnw-site .article-prose ul,body.dnw-site .article-prose ol{ margin:22px 0 28px; padding-left:1.6em; }
body.dnw-site .article-prose li{ padding-left:.25em; margin-bottom:.5em; }
body.dnw-site .article-prose li::marker{ color:#72756b; }
body.dnw-site .article-prose figure{ margin:32px 0; }
body.dnw-site .article-prose figure img{ max-width:100%; height:auto; }
body.dnw-site .article-prose figcaption{ margin:12px 0 0; color:var(--muted); font-size:12px; line-height:1.85; letter-spacing:0; }
body.dnw-site .article-prose blockquote{ margin:32px 0; padding:4px 0 4px 24px; border-left:2px solid #b8bcb1; }
body.dnw-site .article-prose blockquote p:last-child{ margin-bottom:0; }
body.dnw-site .article-prose hr{ border:0; border-top:1px solid var(--line); margin:36px 0; }
body.dnw-site .article-prose table{ width:100%; border-collapse:collapse; margin:28px 0; font-size:14px; line-height:1.8; }
body.dnw-site .article-prose th,body.dnw-site .article-prose td{ padding:14px; border:1px solid var(--line); text-align:left; vertical-align:top; }
body.dnw-site .article-prose th{ background:#f5f6f2; font-weight:600; }
body.dnw-site .article-prose pre{ margin:28px 0; padding:20px; background:#f5f6f2; overflow:auto; font-size:13px; line-height:1.8; }
body.dnw-site .article-prose iframe{ width:100%; max-width:100%; border:0; }
body.dnw-site .article-ending{ margin-top:48px; padding-top:24px; border-top:1px solid var(--line); }
body.dnw-site .article-ending-top{ display:flex; flex-wrap:wrap; gap:20px; justify-content:space-between; align-items:center; }
body.dnw-site .article-ending .read-link{ margin-top:0; }
body.dnw-site .copy-link{ min-height:44px; padding:0; border:0; background:none; font-size:12px; cursor:pointer; text-decoration:underline; text-underline-offset:4px; }
body.dnw-site .copy-status{ color:var(--muted); font-size:12px; line-height:1.8; margin-top:10px; }
body.dnw-site .post-tags{ display:flex; flex-wrap:wrap; gap:10px 18px; margin-top:18px; font-size:11px; line-height:1.8; color:var(--muted); }
body.dnw-site .post-tags a:hover{ text-decoration:underline; text-underline-offset:4px; }
body.dnw-site .article-related{ margin-top:80px; padding-top:32px; border-top:1px solid var(--line); }
body.dnw-site .article-related .section-heading{ margin-bottom:28px; }
body.dnw-site .archive-heading{ display:grid; grid-template-columns:1fr minmax(0,640px); gap:48px; margin-top:32px; align-items:start; }
body.dnw-site .archive-title,body.dnw-site .about-title{ font-family:"Times New Roman",Times,serif; font-size:64px; line-height:1.12; font-weight:400; letter-spacing:-.8px; }
body.dnw-site .archive-title--japanese{ font-family:inherit; font-size:34px; line-height:1.6; font-weight:500; letter-spacing:.02em; }
body.dnw-site .archive-count{ margin-top:14px; color:var(--muted); font-size:12px; line-height:1.8; }
body.dnw-site .archive-intro{ padding-top:5px; font-size:15px; line-height:1.9; letter-spacing:.02em; }
body.dnw-site .archive-intro p{ margin:0; }
body.dnw-site .archive-description{ margin-top:14px; color:var(--muted); font-size:13px; line-height:1.9; }
body.dnw-site .archive-description summary{ display:inline-flex; align-items:center; gap:12px; min-height:36px; cursor:pointer; list-style:none; text-decoration:underline; text-underline-offset:4px; }
body.dnw-site .archive-description summary::-webkit-details-marker{ display:none; }
body.dnw-site .archive-description[open] summary .link-arrow svg{ transform:rotate(90deg); }
body.dnw-site .archive-description p{ margin-top:16px; }
body.dnw-site .archive-tabs{ display:flex; flex-wrap:wrap; gap:28px; margin:36px 0 32px; border-bottom:1px solid var(--line); font-family:Arial,sans-serif; font-size:13px; line-height:1.8; }
body.dnw-site .archive-tabs a{ position:relative; display:flex; align-items:center; min-height:48px; }
body.dnw-site .archive-tabs a[aria-current]::after{ content:""; position:absolute; left:0; right:0; bottom:-1px; height:2px; background:var(--ink); }
body.dnw-site .archive-tabs a:hover{ text-decoration:underline; text-underline-offset:4px; }
body.dnw-site .archive-grid{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:48px 32px; }
body.dnw-site .archive-card{ min-width:0; }
body.dnw-site .archive-image{ display:block; overflow:hidden; background:#f5f6f2; }
body.dnw-site .archive-image img{ aspect-ratio:16/9; width:100%; height:auto; object-fit:contain; transition:opacity .2s; }
body.dnw-site .archive-image:hover img{ opacity:.88; }
body.dnw-site .archive-card-info{ padding-top:14px; }
body.dnw-site .archive-card .post-title{ margin-top:9px; font-size:18px; line-height:1.7; }
body.dnw-site .archive-card .post-meta{ font-size:11px; gap:12px; }
body.dnw-site .article-related .archive-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); gap:48px; }
body.dnw-site .article-related .archive-card{ display:grid; grid-template-columns:160px minmax(0,1fr); gap:24px; align-items:start; }
body.dnw-site .article-related .archive-card-info{ padding-top:0; }
body.dnw-site .article-related .archive-card .post-title{ font-size:17px; }
body.dnw-site .about-heading{ max-width:704px; margin:36px auto 40px; padding-bottom:30px; border-bottom:1px solid var(--line); }
body.dnw-site .about-label{ margin-top:18px; font-size:13px; line-height:1.8; color:var(--muted); }
body.dnw-site .about-prose h2:first-child{ margin-top:0; border-top:0; padding-top:0; }
body.dnw-site .about-bottom{ display:flex; flex-wrap:wrap; gap:20px 36px; margin-top:48px; padding-top:24px; border-top:1px solid var(--line); }
body.dnw-site .about-bottom .read-link{ margin-top:0; }
body.dnw-site .search-heading{ margin:32px 0 28px; }
body.dnw-site .search-heading h1{ font-size:32px; line-height:1.6; font-weight:500; }
body.dnw-site .search-main-form{ display:flex; gap:12px; max-width:704px; margin-bottom:24px; }
body.dnw-site .search-main-form label{ position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
body.dnw-site .search-main-form input{ min-width:0; flex:1; padding:14px 16px; border:1px solid #94988e; background:#fff; border-radius:0; }
body.dnw-site .search-main-form button{ padding:14px 24px; border:1px solid var(--ink); background:var(--ink); color:white; border-radius:0; cursor:pointer; }
body.dnw-site .search-count{ min-height:24px; margin-bottom:32px; color:var(--muted); font-size:13px; line-height:1.8; }
body.dnw-site .search-results [hidden]{ display:none!important; }
body.dnw-site .search-empty{ font-size:15px; line-height:1.9; }
body.dnw-site.page--inner .site-footer{ margin-top:80px; }
@media (min-width:761px) and (max-width:1100px){body.dnw-site .archive-heading{ grid-template-columns:1fr 1.6fr; gap:32px; }
body.dnw-site .archive-grid,body.dnw-site .article-related .archive-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); gap:36px 28px; }
body.dnw-site .archive-card .post-title{ font-size:17px; }
body.dnw-site .article-title{ font-size:30px; }

}
@media (max-width:760px){body.dnw-site.page--inner .masthead-shell{ padding:26px 0 8px; }
body.dnw-site.page--inner .masthead-home{ width:100%; max-width:430px; }
body.dnw-site .page-breadcrumb{ margin-top:20px; font-size:10px; gap:8px; }
body.dnw-site .article-heading{ margin-top:22px; }
body.dnw-site .article-heading .post-meta{ margin-bottom:12px; }
body.dnw-site .article-title{ font-size:23px; line-height:1.7; letter-spacing:.01em; }
body.dnw-site .article-cover{ margin-top:24px; }
body.dnw-site .article-cover figcaption{ font-size:11px; margin-top:8px; }
body.dnw-site .article-toc{ margin:28px 0; font-size:12px; }
body.dnw-site .article-toc summary{ min-height:52px; }
body.dnw-site .article-toc li{ line-height:1.9; }
body.dnw-site .article-toc a{ padding:10px 0; }
body.dnw-site .article-prose{ font-size:15.5px; line-height:2; letter-spacing:.02em; }
body.dnw-site .article-prose h2{ margin:40px 0 16px; padding-top:0; font-size:20px; line-height:1.7; scroll-margin-top:96px; }
body.dnw-site .article-prose h3{ margin:32px 0 16px; font-size:17px; scroll-margin-top:0; }
body.dnw-site .article-prose h4{ font-size:16px; scroll-margin-top:0; }
body.dnw-site .article-prose figure{ margin:28px 0; }
body.dnw-site .article-prose figcaption{ margin-top:10px; font-size:11px; }
body.dnw-site .article-prose blockquote{ margin:28px 0; padding-left:18px; }
body.dnw-site .article-prose th,body.dnw-site .article-prose td{ padding:10px; }
body.dnw-site .article-ending{ margin-top:36px; padding-top:20px; }
body.dnw-site .article-ending-top{ gap:8px 20px; }
body.dnw-site .article-related{ margin-top:48px; padding-top:24px; }
body.dnw-site .article-related .section-heading{ margin-bottom:4px; }
body.dnw-site .archive-heading{ display:block; margin-top:24px; }
body.dnw-site .archive-title,body.dnw-site .about-title{ font-size:48px; letter-spacing:-.4px; }
body.dnw-site .archive-title--japanese{ font-size:28px; letter-spacing:.02em; }
body.dnw-site .archive-count{ margin-top:10px; font-size:11px; }
body.dnw-site .archive-intro{ margin-top:22px; padding-top:0; font-size:14px; line-height:1.9; }
body.dnw-site .archive-description{ margin-top:10px; font-size:12px; }
body.dnw-site .archive-tabs{ gap:26px; margin:24px 0 0; font-size:12px; }
body.dnw-site .archive-grid,body.dnw-site .article-related .archive-grid{ display:block; }
body.dnw-site .archive-card,body.dnw-site .article-related .archive-card{ display:grid; grid-template-columns:104px minmax(0,1fr); gap:16px; padding:24px 0; border-bottom:1px solid var(--line); align-items:start; }
body.dnw-site .archive-card-info{ padding-top:0; }
body.dnw-site .archive-card .post-title,body.dnw-site .article-related .archive-card .post-title{ margin-top:8px; font-size:15px; line-height:1.75; }
body.dnw-site .archive-card .post-meta{ font-size:10px; gap:10px; }
body.dnw-site .about-heading{ margin:26px 0 30px; padding-bottom:24px; }
body.dnw-site .about-label{ margin-top:14px; font-size:12px; }
body.dnw-site .about-bottom{ margin-top:36px; gap:8px 28px; }
body.dnw-site .search-heading{ margin-top:24px; margin-bottom:22px; }
body.dnw-site .search-heading h1{ font-size:26px; }
body.dnw-site .search-main-form{ gap:8px; }
body.dnw-site .search-main-form input{ padding:12px; }
body.dnw-site .search-main-form button{ padding:12px 16px; }
body.dnw-site .search-count{ margin-bottom:0; font-size:12px; }
body.dnw-site .search-empty{ margin-top:24px; font-size:14px; }
body.dnw-site.page--inner .site-footer{ margin-top:48px; }

}
@media (max-width:375px){body.dnw-site .article-title{ font-size:22px; }
body.dnw-site .archive-card,body.dnw-site .article-related .archive-card{ grid-template-columns:96px minmax(0,1fr); gap:15px; }
body.dnw-site .archive-card .post-title,body.dnw-site .article-related .archive-card .post-title{ font-size:14px; }
body.dnw-site .archive-tabs{ gap:24px; }

}
@media print{body.dnw-site .article-toc,body.dnw-site .copy-link,body.dnw-site .copy-status,body.dnw-site .archive-tabs{ display:none; }
body.dnw-site.page--inner .header-shell{ position:sticky; }
body.dnw-site .article-prose figure,body.dnw-site .archive-card{ break-inside:avoid; }

}


body.dnw-site {padding-bottom:64px;}
body.dnw-site .article-prose blockquote {background:transparent;}
body.dnw-site .dnw-category-entry-cover img {display:block;width:100%;height:auto;}
body.dnw-site .dnw-cover-empty {display:block;aspect-ratio:16/9;background:#f5f6f2;}
body.dnw-site .dnw-pagination {display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin:48px 0;}
body.dnw-site .dnw-pagination a,body.dnw-site .dnw-pagination span {display:inline-flex;min-width:44px;min-height:44px;align-items:center;justify-content:center;padding:0 10px;}
body.dnw-site .dnw-pagination .current {border-bottom:1px solid var(--ink);}
body.dnw-site .dnw-all-posts {margin-top:28px;}
body.dnw-site .archive-title {overflow-wrap:anywhere;}
body.dnw-site.admin-bar .header-shell {top:32px;}
@media(max-width:782px){body.dnw-site.admin-bar .header-shell {top:46px;}}
@media(max-width:600px){body.dnw-site.admin-bar .header-shell {top:0;}}

/* Adopted masthead and lead alignment, 2026-10-12. */
body.dnw-site .masthead-shell .masthead-home {margin-inline:auto;}
body.dnw-site .header-shell .site-header {justify-content:center;}
body.dnw-site .header-shell .primary-nav {margin-inline:auto;}
body.dnw-site.is-compact .header-shell .site-header {justify-content:space-between;}
body.dnw-site.is-compact .header-shell .primary-nav {margin-left:auto;margin-right:0;}
body.dnw-site .intro {padding:32px 0;}
body.dnw-site .intro .intro-copy {margin-inline:auto;padding-top:0;text-align:center;}
body.dnw-site .intro .intro-copy p {text-align:center;text-wrap:balance;line-break:strict;}
@media(max-width:760px) {
 body.dnw-site .intro {padding:24px 0;}
 body.dnw-site .intro .intro-sentence {display:inline;}
}
@media print {
 html body.dnw-site .header-shell,html body.dnw-site.page--inner .header-shell {position:static;}
}
