/* Article hero */
body .article-page{background:#fff;color:#171720}
body .article-hero{position:relative;isolation:isolate;min-height:540px;overflow:hidden;background:#092f2a}
body .article-hero-image{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover}
body .article-hero-overlay{position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(2,18,17,.94) 0%,rgba(3,27,24,.78) 56%,rgba(3,28,25,.35) 100%)}
body .article-hero-inner{width:calc(100% - 48px);max-width:1320px;margin:0 auto;padding:48px 0 64px;color:#fff}
body .article-breadcrumb{display:flex;align-items:center;gap:11px;min-width:0;margin-bottom:46px;font-size:15px;line-height:1.45}
body .article-breadcrumb a{flex:0 0 auto;color:#fff;font-weight:500;text-decoration:none}
body .article-breadcrumb a:hover{color:#a9e4bd}
body .article-breadcrumb span[aria-current="page"]{overflow:hidden;font-weight:700;text-overflow:ellipsis;white-space:nowrap}
body .article-hero h1{max-width:1040px;margin:0 0 24px;color:#fff;font-size:clamp(44px,4.4vw,68px);font-weight:700;line-height:1.08;letter-spacing:-.025em;text-shadow:0 3px 16px rgba(0,0,0,.16)}
body .article-hero-meta{display:flex;flex-wrap:wrap;align-items:center;gap:0;color:#fff;font-size:14px;text-transform:none}
body .article-hero-meta span{display:inline-flex;align-items:center}
body .article-hero-meta span+span::before{content:"";width:20px;height:1px;margin:0 14px;background:rgba(255,255,255,.65)}

/* Article body and generated sections */
body .article-body-wrap{padding:58px 0 80px;background:#fff}
body .article-layout{display:grid;grid-template-columns:minmax(245px,330px) minmax(0,1fr);gap:72px;width:calc(100% - 48px);max-width:1320px;margin:0 auto}
body .article-sidebar{min-width:0}
body .article-sidebar-sticky{position:sticky;top:105px}
body .article-sidebar h2{margin:0 0 16px;color:#1f1e25;font-size:29px;line-height:1.2}
body .article-toc{position:relative;display:flex;padding:2px 0 2px 18px;flex-direction:column;border-left:1px solid #13856e}
body .article-toc a{position:relative;padding:10px 0;color:#36343a;font-size:17px;line-height:1.45;text-decoration:none;transition:color .2s ease}
body .article-toc a::before{content:"";position:absolute;top:20px;left:-21px;width:7px;height:7px;border-radius:50%;background:transparent}
body .article-toc a:hover,body .article-toc a.is-active{color:#0d735f;font-weight:600}
body .article-toc a.is-active::before{background:#0d806b}
body .article-toc-empty{color:#777;font-size:15px}
body .article-side-share{display:flex;align-items:center;gap:10px;margin-top:24px;color:#0a745f;font-weight:600}
body .article-side-share a{display:grid;width:36px;height:36px;place-items:center;background:#f0eee8;color:#171717;text-decoration:none;transition:background .2s,color .2s}
body .article-side-share a:hover{background:#5748ae;color:#fff}
body .article-content-shell{min-width:0}
body .article-layout .article-content{padding:0;color:#222126;font-size:18px;line-height:1.65}
body .article-layout .article-content>*:first-child{margin-top:0}
body .article-layout .article-content h2{scroll-margin-top:120px;margin:0 0 22px;padding:0;border:0;color:#16151b;font-size:38px;line-height:1.2}
body .article-layout .article-content h2:not(:first-child){margin-top:48px}
body .article-layout .article-content h3{scroll-margin-top:120px;margin:36px 0 16px;color:#1e1d24;font-size:27px;line-height:1.3}
body .article-layout .article-content p{margin:0 0 18px}
body .article-layout .article-content ul,body .article-layout .article-content ol{margin:20px 0;padding-left:28px}
body .article-layout .article-content li{margin-bottom:12px}
body .article-layout .article-content img{max-width:100%;height:auto;border-radius:10px}

@media(max-width:980px){
    body .article-hero{min-height:480px}
    body .article-layout{grid-template-columns:1fr;gap:24px}
    body .article-sidebar-sticky{position:static}
    body .article-sidebar h2,body .article-toc{display:none}
    body .article-side-share{margin-top:0}
}

@media(max-width:650px){
    body .article-hero{min-height:430px}
    body .article-hero-inner{width:calc(100% - 32px);padding:28px 0 42px}
    body .article-breadcrumb{gap:7px;margin-bottom:42px;font-size:13px}
    body .article-hero h1{font-size:38px;line-height:1.12}
    body .article-hero-meta{font-size:12px}
    body .article-hero-meta span+span::before{width:10px;margin:0 8px}
    body .article-body-wrap{padding:38px 0 56px}
    body .article-layout{width:calc(100% - 32px);gap:32px}
    body .article-layout .article-content{font-size:17px;line-height:1.7}
    body .article-layout .article-content h2{font-size:30px}
    body .article-layout .article-content h3{font-size:24px}
}
