.blog-page{background:#fff;color:var(--ink)}
html.static:has(.blog-page){scroll-behavior:auto}
.blog-main{padding-bottom:96px}
.article-header,.blog-index-header{padding-top:64px;padding-bottom:48px}
.blog-back{display:inline-flex;min-height:44px;align-items:center;margin-bottom:28px}
.article-header h1,.blog-index-header h1{max-width:900px;font-size:clamp(38px,5vw,68px);line-height:1.09;letter-spacing:-.03em;margin:0 0 28px;font-weight:600;text-wrap:balance}
.article-intro{font-size:clamp(19px,2vw,24px);line-height:1.55;max-width:740px;margin:0;color:var(--graphite)}
.article-byline{display:flex;flex-wrap:wrap;gap:8px 24px;align-items:baseline;margin-top:32px;font-size:14px;line-height:1.6;color:var(--graphite);max-width:960px}
.article-byline a{color:var(--petrol);text-underline-offset:4px}
.article-byline a[rel=author]{font-weight:600}
.article-translation{font-size:13px}
.article-photo{max-width:960px;margin:0 auto 72px;padding:0 24px}
.article-photo img{display:block;width:100%;height:auto;border-radius:var(--r-media)}
.article-photo figcaption{font-size:13px;line-height:1.5;color:var(--graphite);margin-top:12px}
.article-layout{display:grid;grid-template-columns:minmax(170px,240px) minmax(0,720px);gap:64px;align-items:start;justify-content:center}
.article-contents{position:sticky;top:128px;display:flex;flex-direction:column;gap:6px;font-size:14px;line-height:1.5}
.article-contents p{font-weight:600;margin:0 0 10px}
.article-contents a{padding:9px 0;color:var(--graphite);text-decoration:underline;text-underline-offset:4px}
.article-body section{scroll-margin-top:160px;margin:0 0 52px;padding:0}
.article-body h2{font-size:clamp(26px,3vw,34px);line-height:1.2;letter-spacing:-.025em;font-weight:600;margin:0 0 24px;text-wrap:balance}
.article-body p{font-size:19px;line-height:1.8;margin:0 0 24px;max-width:68ch}
.article-body .article-invitation{scroll-margin-top:140px;border-top:1px solid var(--line);padding-top:48px;margin:64px 0 0}
.article-invitation h2{font-size:clamp(28px,3.5vw,42px);line-height:1.2;letter-spacing:-.03em;margin:0 0 16px}
.article-invitation p{font-size:18px;line-height:1.6;max-width:620px;margin-bottom:24px}
.blog-entry{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;border-top:1px solid var(--line);padding:40px 0}
.blog-entry-image img{width:100%;height:auto;display:block;border-radius:var(--r-media)}
.blog-entry-copy h2{font-size:clamp(28px,3vw,42px);line-height:1.15;letter-spacing:-.03em;margin:0 0 24px}
.blog-entry-copy h2 a{color:inherit;text-decoration:none}
.blog-entry-copy>p{font-size:18px;line-height:1.65;margin-bottom:24px;max-width:55ch}
.blog-entry-copy>.control-link{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:5px}
.blog-page a:focus-visible{outline:2px solid var(--petrol);outline-offset:5px}
@media(max-width:900px){.article-layout{display:block}.article-contents{position:static;margin-bottom:40px;max-width:720px}.article-body{max-width:720px;margin:auto}.article-photo{margin-bottom:40px}.blog-entry{gap:28px}}
@media(max-width:640px){.article-header,.blog-index-header{padding-top:32px;padding-bottom:32px}.article-header h1,.blog-index-header h1{font-size:38px}.article-byline{display:flex;flex-direction:column;gap:4px;margin-top:24px}.article-body p{font-size:18px;line-height:1.75}.article-photo{padding:0 20px}.article-layout{padding-inline:20px}.blog-entry{grid-template-columns:1fr;gap:24px;padding:28px 0}.article-body .article-invitation{padding-top:32px;margin-top:48px}.blog-main{padding-bottom:56px}}

/* Plain author/date metadata and sharing stay within the article reading group. */
.blog-entry-copy .article-byline{margin:0 0 24px;font-size:14px}
.article-share{margin-top:20px;max-width:740px}
.article-share-actions{display:flex;flex-wrap:wrap;gap:8px}
.article-share-icon.control-link{display:inline-flex;width:44px;height:44px;min-width:44px;padding:0;align-items:center;justify-content:center;border:1px solid var(--glass-edge,var(--border));background:var(--glass-surface,#F5F7F8);color:var(--petrol);border-radius:999px}
.article-share-icon.control-link svg{width:20px;height:20px}
@media(prefers-contrast:more){.article-share-icon.control-link{border-color:var(--ink)}}
@media(forced-colors:active){.article-share-icon.control-link{border-color:ButtonText;color:ButtonText}}
.article-share-actions button{font-family:inherit;cursor:pointer}
.article-share-actions button:disabled{opacity:.6;cursor:wait}
.article-share-status{font-size:13px;line-height:20px;color:var(--graphite);min-height:20px;margin:4px 0 0}
.article-share-url{width:100%;padding:12px;border:1px solid var(--border);border-radius:var(--r-field);font:14px/22px Inter,sans-serif;color:var(--ink);background:#fff;margin-top:12px}
.article-share [hidden]{display:none!important}
