.reading-progress{position:fixed;top:72px;right:0;left:0;z-index:49;height:2px;pointer-events:none}.reading-progress span{display:block;height:100%;background:var(--red);transform:scaleX(0);transform-origin:left}.layout-switcher{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;padding-top:10px;padding-bottom:10px;border-bottom:1px solid var(--line);font-family:var(--sans);font-size:11px;color:var(--gray)}.layout-label{margin-right:4px}.layout-switcher button{padding:2px 0;background:none;border:0;border-bottom:1px solid #fff0;font-family:var(--sans);font-size:11px;color:var(--gray);cursor:pointer}.layout-switcher button:hover{color:var(--ink)}.layout-switcher button.is-active{color:var(--ink);border-color:var(--red)}.layout-variant{display:none}body[data-style="a"] .layout-a,body[data-style="b"] .layout-b,body[data-style="c"] .layout-c{display:block}.article-shell{max-width:1240px;margin-inline:auto;padding-inline:var(--gutter)}.story-hero{margin:0}.story-hero--full img{width:100%;height:clamp(380px, 58vh, 640px);object-fit:cover;object-position:50% 45%;filter:grayscale(1) contrast(1.04)}.story-hero-caption{margin-top:10px}.story-head{max-width:840px;padding:clamp(32px, 5vh, 56px) 0 clamp(28px, 4vh, 44px)}.story-head h1{margin:0 0 22px;font-family:var(--serif);font-size:clamp(2.6rem, 4.8vw, 4.4rem);font-weight:400;line-height:1.02;letter-spacing:-.035em;text-wrap:balance}.story-head .article-dek{max-width:52ch;margin:0 0 28px}.story-head .article-byline{margin:0}.story-share{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;margin-top:14px;font-family:var(--sans);font-size:12px;color:var(--gray)}.story-share .share-label{letter-spacing:.01em}.story-share a,.story-share button{padding:0 0 2px;background:none;border:0;border-bottom:1px solid var(--line);font-family:var(--sans);font-size:12px;color:var(--ink);cursor:pointer}.story-share a:hover,.story-share button:hover{color:var(--red);border-color:var(--red)}.story-main{display:grid;grid-template-columns:minmax(0,700px) 300px;gap:clamp(48px, 6vw, 80px);align-items:start;padding-bottom:clamp(56px, 8vh, 96px)}.story-content{min-width:0}.story-share--end{margin-top:30px;padding:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.story-tags{margin-top:28px;padding-top:0;border-top:0}.story-tags .label{margin-bottom:10px}.story-tags a{display:inline-block;margin:0 14px 8px 0;font-family:var(--sans);font-size:12px;color:var(--gray);border-bottom:1px solid #fff0}.story-tags a:hover{color:var(--red);border-color:var(--red)}.story-author{display:grid;grid-template-columns:56px minmax(0,1fr);gap:18px;margin-top:36px;padding-top:24px;border-top:1px solid var(--line)}.author-avatar{display:grid;place-items:center;width:56px;height:56px;background:var(--red);color:var(--paper);font-family:var(--serif);font-size:20px;font-weight:600;line-height:1}.story-author .author-role{margin:0 0 2px;font-family:var(--sans);font-size:11px;color:var(--gray)}.story-author h2{margin:0 0 8px;font-family:var(--serif);font-size:1.35rem;font-weight:500;line-height:1.1}.story-author p{margin:0 0 10px;font-family:var(--sans);font-size:14px;line-height:1.55;color:var(--ink-soft)}.story-author a{font-family:var(--sans);font-size:12px;border-bottom:1px solid var(--ink)}.story-author a:hover{color:var(--red);border-color:var(--red)}.story-sidebar{position:sticky;top:100px;align-self:start;display:flex;flex-direction:column;gap:28px;font-family:var(--sans)}.sidebar-block{position:relative;padding-top:15px;border-top:1px solid var(--line)}.sidebar-block::before{content:"";position:absolute;top:-1px;left:0;width:24px;height:2px;background:var(--red)}.sidebar-block h2{margin:0 0 12px;font-family:var(--sans);font-size:11px;font-weight:500;letter-spacing:.01em;color:var(--gray)}.sidebar-toc a{display:block;padding:5px 0;font-family:var(--serif);font-size:1rem;line-height:1.25}.sidebar-toc a:hover{color:var(--red)}.sidebar-ad{padding:12px;background:var(--paper-2);border:1px solid var(--line)}.ad-label{margin:0 0 8px;font-size:10px;color:var(--gray)}.ad-slot{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;height:210px;background:rgb(26 26 24 / .025)}.ad-slot img{width:38px;height:auto;opacity:.35}.ad-slot span{font-size:10px;color:var(--gray-light)}.sidebar-story{display:grid;grid-template-columns:64px minmax(0,1fr);gap:10px;align-items:start;padding:10px 0;border-bottom:1px solid var(--line)}.sidebar-story:last-child{padding-bottom:0;border-bottom:0}.sidebar-story img{width:64px;aspect-ratio:4 / 3;object-fit:cover;filter:grayscale(1) contrast(1.04)}.sidebar-story .wallge-category{font-size:10px}.sidebar-story h3{margin:3px 0 0;font-family:var(--serif);font-size:.95rem;font-weight:400;line-height:1.2;letter-spacing:-.01em}.sidebar-story time{display:block;margin-top:3px;font-size:10px;color:var(--gray)}.sidebar-story h3 a:hover{text-decoration:underline;text-decoration-color:var(--red);text-underline-offset:3px}.sidebar-related a{display:block;margin-bottom:12px;font-family:var(--serif);font-size:.98rem;line-height:1.25;letter-spacing:-.01em}.sidebar-related a:hover{text-decoration:underline;text-decoration-color:var(--red);text-underline-offset:3px}.sidebar-related time{display:block;margin-top:3px;font-family:var(--sans);font-size:10px;color:var(--gray)}.story-head--split{display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:clamp(36px, 5vw, 72px);align-items:start;max-width:none}.story-head-copy{max-width:700px;padding-top:clamp(0px, 2vh, 18px)}.story-hero--split{margin:0}.story-hero--split img{width:100%;aspect-ratio:4 / 5;object-fit:cover;object-position:52% 28%;filter:grayscale(1) contrast(1.05)}.story-hero--contained{margin:0 0 clamp(32px, 4vh, 48px)}.story-hero--contained img{width:100%;height:clamp(360px, 58vh, 640px);object-fit:cover;object-position:50% 45%;filter:grayscale(1) contrast(1.04)}@media (max-width:1100px){.story-main{grid-template-columns:1fr;gap:48px}.story-sidebar{position:static}.story-head--split{grid-template-columns:1fr;gap:24px}.story-head-copy{order:2;max-width:none}.story-hero--split{order:1}}@media (max-width:700px){.story-head{padding-top:24px}.story-head h1{font-size:clamp(2.2rem, 9vw, 3rem)}.story-hero--split img{aspect-ratio:3 / 2}.story-hero--full img{height:clamp(300px, 52vh, 480px)}.story-author{grid-template-columns:48px minmax(0,1fr);gap:14px}.author-avatar{width:48px;height:48px;font-size:17px}.sidebar-story{grid-template-columns:56px minmax(0,1fr)}.sidebar-story img{width:56px}}@media (max-width:620px){.reading-progress{top:64px}.story-share{gap:8px 14px}.ad-slot{height:180px}}