/* Editorial styles are scoped: the approved homepage, case and author keep their visuals. */
body.blog-page{--paper:#101016;--surface:#191821;--ink:#f5f3fa;--muted:#b9b5c5;--line:#35323e;--accent:#ba91ff;background:var(--paper)}
html[data-theme=light] body.blog-page{--paper:#fff;--surface:#f6f4f9;--ink:#1c1a24;--muted:#605b6b;--line:#e7e3ed;--accent:#7024d8}
body.blog-page:before{display:none}
.blog-page .shell{width:min(1200px,calc(100% - 64px))}
.blog-page svg{width:20px;height:20px;flex-shrink:0;vertical-align:middle}
.blog-page .breadcrumbs{margin:26px 0 32px;font-size:.76rem}
.blog-page .editorial-header{background:var(--paper)}
.blog-page .preview-note{background:var(--surface)}
.blog-masthead{padding-bottom:34px}
.blog-masthead-row{display:flex;align-items:flex-end;justify-content:space-between;gap:50px}
.blog-masthead h1{font-size:clamp(2.2rem,3.9vw,3.5rem);line-height:1.13;font-weight:800;letter-spacing:-.045em}
.blog-masthead-row>div:first-child{max-width:720px}
.blog-masthead-row>div:first-child>p{max-width:610px;margin-top:20px;font-size:1rem;line-height:1.7}
.blog-search-panel{width:340px;max-width:100%;flex-shrink:0}
.blog-search label{display:block;color:var(--ink);font-size:.76rem;font-weight:650;margin-bottom:10px}
.blog-search>div{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:8px;padding:2px 4px 2px 14px;background:var(--paper);min-height:50px}
.blog-search>div:focus-within{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 18%,transparent)}
.blog-search>div>svg{width:18px;color:var(--muted)}
.blog-search input{min-width:0;width:100%;border:0;background:none;font:inherit;font-size:.78rem;color:var(--ink);height:44px;outline:0}
.blog-search input::placeholder{color:var(--muted);opacity:1}
.blog-search button{width:44px;height:44px;border:0;border-radius:6px;color:var(--ink);background:var(--surface);cursor:pointer;flex-shrink:0}
.blog-topic-nav{display:flex;flex-wrap:wrap;gap:8px 12px;margin-top:30px;padding-block:16px;border-block:1px solid var(--line)}
.blog-topic-filter{display:inline-flex;align-items:center;min-height:44px;padding:9px 14px;font-size:.78rem;font-weight:600;text-decoration:none;border-radius:6px;color:var(--muted)}
.blog-topic-filter:hover{background:var(--surface);color:var(--ink)}
.blog-topic-filter[aria-current]{background:var(--ink);color:var(--paper)}
.blog-topic{font-size:.71rem;font-weight:700;color:var(--accent);text-decoration:none;display:inline-flex;align-items:center;min-height:30px;letter-spacing:.01em}
.blog-topic:hover{text-decoration:underline}
.blog-cover-link{display:block;overflow:hidden;border-radius:12px;text-decoration:none;background:var(--surface)}
.blog-cover{display:block;width:100%;height:auto;aspect-ratio:1672/940;object-fit:cover;transition:transform .35s ease}
.blog-cover-link:hover .blog-cover{transform:scale(1.025)}
.blog-highlights{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(0,1fr);gap:42px;align-items:start;padding:8px 0 56px}
.blog-lead-copy{padding:24px 2px 0}
.blog-label{display:inline-flex;align-items:center;gap:8px;font-size:.66rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-right:20px}
.blog-label:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent)}
.blog-lead h2{font-size:clamp(1.65rem,2.35vw,2rem);font-weight:750;line-height:1.24;letter-spacing:-.035em;margin-top:12px}
.blog-lead h2 a,.blog-story h2 a,.blog-side-stories h2 a{text-decoration:none}
.blog-lead h2 a:hover,.blog-story h2 a:hover,.blog-side-stories h2 a:hover{color:var(--accent)}
.blog-lead-copy>p:not(.blog-label){font-size:.93rem;line-height:1.7;margin-top:16px;max-width:660px}
.blog-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px 14px;font-size:.69rem;line-height:1.5;color:var(--muted);margin-top:18px}
.blog-meta>a{font-weight:650;text-decoration:none;color:var(--ink)}
.blog-meta>span,.blog-meta>time{display:inline-flex;align-items:center;gap:14px}
.blog-meta>span:before,.blog-meta>time:before{content:"";display:inline-block;width:3px;height:3px;flex-shrink:0;background:var(--muted);border-radius:50%}
.blog-read{display:inline-flex;gap:12px;align-items:center;text-decoration:none;color:var(--ink);min-height:44px;font-size:.76rem;font-weight:700;margin-top:14px}
.blog-read:hover{color:var(--accent)}
.blog-read svg{width:18px}
.blog-side-stories{display:flex;flex-direction:column;gap:28px;border-left:1px solid var(--line);padding-left:36px}
.blog-side-stories>article{display:grid;grid-template-columns:130px minmax(0,1fr);gap:18px;align-items:start;padding-bottom:26px;border-bottom:1px solid var(--line)}
.blog-side-stories .blog-cover-link{border-radius:8px}
.blog-side-stories h2{font-size:1.03rem;line-height:1.4;letter-spacing:-.02em;font-weight:700;margin-top:5px}
.blog-side-stories .blog-topic{font-size:.63rem;line-height:1.4;min-height:24px}
.blog-side-stories .blog-meta{font-size:.63rem;gap:6px;margin-top:12px}
.blog-side-stories .blog-meta>span:first-child:before{display:none}
.blog-author-mini{display:flex;align-items:center;gap:16px;text-decoration:none;padding-block:8px;min-height:88px}
.blog-author-mini img,.blog-article-byline>img,.blog-author-bio>img,.blog-about-strip>img{border-radius:50%;object-fit:cover;flex-shrink:0;background:var(--surface)}
.blog-author-mini>span{display:grid;gap:5px;flex:1;font-size:.7rem;color:var(--muted)}
.blog-author-mini>img{width:56px;height:56px;object-position:center 25%}
.blog-article-byline>img{width:48px;height:48px;object-position:center 25%}
.blog-author-bio>img{width:72px;height:72px;object-position:center 25%}
.blog-about-strip>img{width:80px;height:80px;object-position:center 25%}
.blog-author-mini strong{color:var(--ink);font-size:.78rem}
.blog-catalog{padding-block:35px 70px;border-top:1px solid var(--line)}
.blog-catalog>header{display:flex;align-items:center;flex-wrap:wrap;gap:16px;margin-bottom:32px}
.blog-catalog>header h2,.blog-related>h2{font-size:1.55rem;letter-spacing:-.03em;font-weight:750}
.blog-catalog>header p{font-size:.75rem;margin-left:auto}
.blog-clear{display:inline-flex;align-items:center;min-height:44px;border:1px solid var(--line);border-radius:6px;padding:9px 14px;background:var(--paper);color:var(--ink);font-size:.74rem;font-weight:650;cursor:pointer}
.blog-clear:hover{border-color:var(--accent)}
.blog-story-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:42px 28px}
.blog-story{min-width:0;display:flex;flex-direction:column}
.blog-story-body{padding:16px 2px 0;display:flex;flex-direction:column;align-items:flex-start;flex:1}
.blog-story h2{font-size:1.18rem;line-height:1.4;letter-spacing:-.025em;font-weight:750;margin-top:8px}
.blog-story-body>p{font-size:.83rem;line-height:1.7;margin-top:12px}
.blog-story .blog-meta{padding-top:4px;margin-top:auto}
.blog-story .blog-read{margin-top:8px}
.blog-no-results{padding:55px 24px 65px;background:var(--surface);border-radius:12px;text-align:center}
.blog-no-results h3{font-size:1.4rem}
.blog-no-results p{font-size:.9rem;margin:16px 0 24px}
.blog-no-results a{font-size:.8rem;display:inline-flex;min-height:44px;align-items:center;gap:12px;margin-left:22px}
.blog-about-strip{padding:32px 0 45px;border-top:1px solid var(--line);display:flex;align-items:center;gap:24px;margin-bottom:20px}
.blog-about-strip>div{max-width:590px;flex:1}
.blog-about-strip h2{font-size:1.15rem;letter-spacing:-.025em}
.blog-about-strip p{font-size:.82rem;margin-top:10px;line-height:1.75}
.blog-about-strip>div>a{display:inline-flex;gap:12px;align-items:center;min-height:44px;font-size:.76rem;color:var(--accent);text-decoration:none;font-weight:650}
.blog-contact{display:inline-flex;align-items:center;gap:16px;min-height:48px;margin-left:auto;padding:10px 17px;border:1px solid var(--line);border-radius:8px;font-size:.76rem;font-weight:650;text-decoration:none}
.blog-contact:hover{border-color:var(--accent)}
.blog-article-breadcrumb .breadcrumbs{margin-bottom:32px}
.blog-article-header{max-width:920px;margin:0 auto}
.blog-article-header h1{font-size:clamp(2.2rem,4vw,3.5rem);font-weight:800;line-height:1.16;letter-spacing:-.045em;margin-top:14px}
.blog-article-deck{font-size:1.12rem;line-height:1.75;margin-top:24px;max-width:810px}
.blog-article-byline{display:flex;align-items:center;gap:16px;margin-top:28px;padding-bottom:32px}
.blog-article-byline .blog-meta{margin:0;font-size:.76rem;gap:8px 16px}
.blog-article-byline>div>p{font-size:.69rem;margin-top:6px}
.blog-article-image{max-width:1050px;margin:10px auto 48px}
.blog-article-image img{border-radius:12px}
.blog-article-image figcaption{font-size:.66rem;color:var(--muted);margin-top:12px;text-align:right}
.blog-reading-layout{display:grid;grid-template-columns:230px minmax(0,680px);justify-content:center;gap:65px;align-items:start}
.blog-contents{position:sticky;top:110px;font-size:.76rem;max-height:calc(100vh - 145px);overflow:auto;padding-right:10px}
.blog-contents summary{min-height:44px;font-weight:750;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;list-style:none}
.blog-contents summary:after{content:"−";font-size:1.15rem;font-weight:500;color:var(--accent)}
.blog-contents details:not([open]) summary:after{content:"+"}
.blog-contents summary::-webkit-details-marker{display:none}
.blog-contents ol{list-style:none;margin:10px 0 0;padding:0;border-left:1px solid var(--line)}
.blog-contents li>a{display:block;padding:9px 0 9px 15px;min-height:44px;line-height:1.55;color:var(--muted);text-decoration:none;border-left:2px solid transparent;margin-left:-1px}
.blog-contents li>a:hover,.blog-contents li>a[aria-current]{color:var(--accent);border-color:var(--accent)}
.blog-back{display:inline-flex;align-items:center;gap:12px;font-size:.74rem;color:var(--ink);text-decoration:none;min-height:44px;margin-top:25px}
.blog-back svg{transform:rotate(180deg);width:18px}
.blog-prose{font-size:1.025rem;line-height:1.85;color:var(--ink);min-width:0}
.blog-prose>p{color:var(--ink);margin-bottom:26px}
.blog-prose>h2{font-size:1.7rem;line-height:1.28;font-weight:750;margin:46px 0 23px;letter-spacing:-.03em;scroll-margin-top:115px}
.blog-prose>h2:first-child{margin-top:0}
.blog-prose h3{font-size:1.3rem;letter-spacing:-.02em;line-height:1.4}
.blog-prose ul{color:var(--ink);margin:20px 0 32px}
.blog-prose a{font-weight:550;overflow-wrap:anywhere}
.blog-prose strong{font-weight:750}
.blog-prose .article-sources{margin-top:46px;padding-top:28px}
.blog-prose .article-sources h2{font-size:1.2rem;letter-spacing:-.02em}
.blog-prose .article-sources ul{font-size:.83rem;color:var(--muted);line-height:1.8}
.blog-prose .article-sources svg{width:15px}
.blog-author-bio{display:flex;gap:20px;align-items:flex-start;border-top:1px solid var(--line);padding-top:30px;margin-top:32px}
.blog-author-bio h2{font-size:1.15rem;margin:0 0 10px;letter-spacing:-.02em}
.blog-author-bio p{font-size:.82rem;line-height:1.75;margin-bottom:10px}
.blog-author-bio a{display:inline-flex;align-items:center;gap:12px;font-size:.76rem;min-height:44px;text-decoration:none}
.blog-related{margin-top:80px;padding:40px 0 55px;border-top:1px solid var(--line)}
.blog-related>h2{margin-bottom:30px}
.blog-article-end{display:flex;align-items:center;gap:32px;justify-content:space-between;border-top:1px solid var(--line);padding:32px 0 45px}
.blog-article-end h2{font-size:1.35rem;letter-spacing:-.03em}
.blog-article-end p{font-size:.82rem;margin-top:12px}
.blog-article-end>a{display:inline-flex;align-items:center;gap:18px;min-height:48px;font-size:.8rem;font-weight:650;text-decoration:none;padding:12px 18px;border:1px solid var(--line);border-radius:8px;flex-shrink:0}
.blog-article-end>a:hover{border-color:var(--accent)}
@media(max-width:1100px){.blog-masthead-row{gap:30px}.blog-search-panel{width:290px}.blog-highlights{gap:28px;grid-template-columns:1.5fr 1fr}.blog-side-stories{padding-left:24px;gap:24px}.blog-side-stories>article{grid-template-columns:100px minmax(0,1fr);gap:14px}.blog-side-stories h2{font-size:.96rem}.blog-reading-layout{grid-template-columns:200px minmax(0,680px);gap:35px}.blog-about-strip .blog-contact{max-width:215px}}
@media(max-width:900px){.blog-masthead-row{align-items:start;flex-direction:column;gap:26px}.blog-search-panel{width:100%;max-width:500px}.blog-highlights{grid-template-columns:1fr 1fr}.blog-side-stories>article{grid-template-columns:1fr}.blog-side-stories .blog-cover-link{max-width:190px}.blog-side-stories h2{font-size:1.03rem}.blog-side-stories .blog-author-mini{display:none}.blog-story-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 24px}.blog-about-strip{align-items:flex-start;flex-wrap:wrap}.blog-about-strip .blog-contact{margin-left:104px;max-width:none}.blog-reading-layout{grid-template-columns:minmax(0,680px);gap:28px}.blog-contents{position:static;max-height:none;border-block:1px solid var(--line);padding:12px 0 16px;overflow:visible}.blog-contents ol{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.blog-back{margin-top:10px}.blog-article-end{gap:22px}.blog-article-end>a{font-size:.74rem}}
@media(max-width:720px){.blog-page .shell{width:calc(100% - 36px)}.blog-page .breadcrumbs{margin:22px 0 26px;font-size:.68rem}.blog-masthead h1{font-size:2.15rem;line-height:1.15}.blog-masthead-row>div:first-child>p{font-size:.92rem;margin-top:18px}.blog-masthead{padding-bottom:24px}.blog-search label{font-size:.73rem}.blog-search input{font-size:.77rem}.blog-topic-nav{flex-wrap:nowrap;overflow-x:auto;margin-top:22px;gap:6px;padding-block:12px;scrollbar-width:thin}.blog-topic-filter{white-space:nowrap;flex-shrink:0;font-size:.72rem;padding:8px 11px}.blog-highlights{grid-template-columns:1fr;gap:32px;padding:0 0 32px}.blog-lead h2{font-size:1.62rem;line-height:1.3}.blog-lead-copy{padding-top:18px}.blog-lead-copy>p:not(.blog-label){font-size:.88rem}.blog-meta{font-size:.66rem;gap:8px 12px}.blog-side-stories{padding-left:0;border-left:0;gap:22px}.blog-side-stories>article{grid-template-columns:105px minmax(0,1fr);gap:16px;align-items:start;padding-bottom:22px}.blog-side-stories .blog-cover-link{max-width:none}.blog-side-stories h2{font-size:.96rem}.blog-side-stories .blog-topic{font-size:.61rem}.blog-side-stories .blog-meta{font-size:.61rem}.blog-side-stories .blog-meta>span:before{display:none}.blog-side-stories .blog-meta>span{gap:0}.blog-catalog{padding:28px 0 44px}.blog-catalog>header{gap:8px 16px;margin-bottom:26px}.blog-catalog>header h2,.blog-related>h2{font-size:1.35rem}.blog-catalog>header p{font-size:.67rem}.blog-catalog>header .blog-clear{margin-left:auto}.blog-story-grid{grid-template-columns:1fr;gap:32px}.blog-story-body{padding-top:13px}.blog-story h2{font-size:1.22rem;line-height:1.4;margin-top:6px}.blog-story-body>p{font-size:.87rem}.blog-story .blog-meta{margin-top:14px}.blog-cover-link{border-radius:10px}.blog-about-strip{gap:18px;padding:28px 0 36px}.blog-about-strip>img{width:56px;height:56px}.blog-about-strip>div{flex-basis:calc(100% - 74px)}.blog-about-strip h2{font-size:1.04rem}.blog-about-strip p{font-size:.78rem}.blog-about-strip .blog-contact{margin-left:74px;font-size:.7rem;gap:12px;padding:10px 12px}.blog-no-results{padding:36px 18px}.blog-no-results a{margin:15px 0 0;display:flex;justify-content:center}.blog-article-header h1{font-size:2.125rem;line-height:1.19;letter-spacing:-.04em;margin-top:12px}.blog-article-deck{font-size:1rem;line-height:1.75;margin-top:20px}.blog-article-byline{gap:12px;margin-top:24px;padding-bottom:24px}.blog-article-byline .blog-meta{font-size:.69rem;gap:7px 12px}.blog-article-byline .blog-meta>span:before,.blog-article-byline .blog-meta>time:before{display:none}.blog-article-image{margin:0 auto 26px}.blog-article-image img{border-radius:10px}.blog-article-image figcaption{font-size:.59rem;text-align:left;margin-top:8px}.blog-contents ol{display:block}.blog-contents summary{font-size:.76rem}.blog-contents li>a{font-size:.73rem}.blog-prose{font-size:1rem;line-height:1.85}.blog-prose>h2{font-size:1.5rem;line-height:1.32;margin:36px 0 20px}.blog-prose>p{margin-bottom:24px}.blog-author-bio{gap:16px}.blog-author-bio>img{width:50px;height:50px}.blog-author-bio p{font-size:.79rem}.blog-related{margin-top:50px;padding-top:30px}.blog-article-end{align-items:flex-start;flex-direction:column;padding:28px 0 36px}.blog-article-end h2{font-size:1.25rem}.blog-article-end>a{min-height:48px}}
@media(max-width:360px){.blog-side-stories>article{grid-template-columns:90px minmax(0,1fr);gap:12px}.blog-masthead h1{font-size:1.95rem}.blog-side-stories h2{font-size:.9rem}.blog-meta{font-size:.63rem}.blog-article-header h1{font-size:1.9rem}.blog-catalog>header p{margin-left:0;width:100%}.blog-about-strip .blog-contact{margin-left:0}}
@media(prefers-reduced-motion:reduce){.blog-cover{transition:none}.blog-cover-link:hover .blog-cover{transform:none}}
