/* Single article experience: split Hero, wider reading column, sticky numbered H2/H3 navigation, sidebar CTA and related guides. */
.tm-article-page{
 --article-deep:#183d2e;
 --article-green:#7fa247;
 --article-soft:#f1f6ee;
 --article-line:#d7e2d1;
 --article-muted:#5f7067;
 overflow:visible;
 background:#fff;
 color:var(--article-deep)
}
.tm-article-hero{position:relative;overflow:hidden;padding:clamp(62px,7vw,96px) 0 clamp(66px,7vw,98px);background:linear-gradient(135deg,#f8faf6 0%,#edf5e9 100%)}
.tm-article-hero::after{content:"";position:absolute;right:-190px;top:-265px;width:540px;height:540px;border:1px solid rgba(127,162,71,.13);border-radius:50%;box-shadow:0 0 0 84px rgba(127,162,71,.045)}
.tm-article-hero__inner{position:relative;z-index:1;max-width:none}
.tm-article-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin-bottom:34px;color:#718078;font-size:.76rem}
.tm-article-breadcrumb a{color:var(--article-green);font-weight:750}
.tm-article-breadcrumb a:hover,.tm-article-breadcrumb a:focus-visible{color:var(--article-deep)}
.tm-article-hero__grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(460px,.88fr);gap:clamp(52px,5vw,78px);align-items:center}
.tm-article-hero__copy{min-width:0}
.tm-article-hero .tm-kicker{margin-bottom:15px}
.tm-article-hero h1{max-width:820px;font-size:clamp(3rem,4.65vw,4.85rem);line-height:1.01;letter-spacing:-.045em}
.tm-article-hero__summary{max-width:760px;margin:24px 0 0;color:#4f6258;font-size:clamp(1.02rem,1.3vw,1.16rem);line-height:1.72}
.tm-article-meta{display:flex;flex-wrap:wrap;gap:10px 24px;margin-top:27px;color:#68786f;font-size:.81rem}
.tm-article-meta span{position:relative}
.tm-article-meta span+span::before{content:"";position:absolute;left:-13px;top:50%;width:3px;height:3px;border-radius:50%;background:#93a49a}
.tm-article-hero__media{position:relative;overflow:hidden;margin:0;border:8px solid rgba(255,255,255,.94);border-radius:28px;background:#e4ecdf;box-shadow:0 26px 68px rgba(24,61,46,.16)}
.tm-article-hero__media::after{content:"";position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 0 1px rgba(24,61,46,.06)}
.tm-article-hero__media img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.tm-article-hero--text-only .tm-article-hero__grid{grid-template-columns:minmax(0,880px)}
.tm-article-hero--text-only .tm-article-hero__copy{max-width:880px}
.tm-article-hero--text-only h1{max-width:860px}

.tm-article-body-section{overflow:visible;padding:clamp(66px,7vw,98px) 0 clamp(58px,5vw,78px)}
.tm-article-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:clamp(48px,4.5vw,68px);align-items:start;padding-bottom:clamp(68px,6vw,96px)}
.tm-article-content{min-width:0;color:#42534a;font-size:18px;line-height:1.82}
.tm-article-content>*:first-child{margin-top:0}
.tm-article-content>p:first-child{color:#32483d;font-size:1.1rem;line-height:1.82}
.tm-article-content h2,.tm-article-content h3{color:var(--article-deep);scroll-margin-top:122px}
.tm-article-content h2{position:relative;margin:clamp(72px,8vw,94px) 0 25px;font-size:clamp(2.2rem,3.2vw,2.8rem);line-height:1.11;letter-spacing:-.025em}
.tm-article-content h2::before{content:"";display:block;width:48px;height:4px;margin-bottom:18px;border-radius:999px;background:var(--article-green)}
.tm-article-content h3{margin:50px 0 17px;font-size:clamp(1.46rem,2vw,1.78rem);line-height:1.25;letter-spacing:-.015em}
.tm-article-content h4{margin:37px 0 13px;color:var(--article-deep);font-size:1.18rem}
.tm-article-content p{margin:0 0 25px}
.tm-article-content ul,.tm-article-content ol{margin:0 0 31px;padding-left:1.35em}
.tm-article-content li{margin:9px 0;padding-left:5px}
.tm-article-content strong{color:#294539}
.tm-article-content a{color:var(--article-green);font-weight:700;text-decoration-thickness:1px;text-underline-offset:3px}
.tm-article-content a:hover,.tm-article-content a:focus-visible{color:var(--article-deep)}
.tm-article-content img{display:block;max-width:100%;height:auto;margin:36px auto;border-radius:20px}
.tm-article-content figure{margin:40px 0}
.tm-article-content figcaption{margin-top:10px;color:#75837b;font-size:.78rem;text-align:center}
.tm-article-content blockquote{margin:40px 0;padding:29px 31px;border:1px solid #d8e4d3;border-left:5px solid var(--article-green);border-radius:0 18px 18px 0;background:var(--article-soft);color:#334c40;font-size:1.05rem;line-height:1.72}
.tm-article-content blockquote p:last-child{margin-bottom:0}
.tm-article-content table{display:block;width:100%;max-width:100%;margin:38px 0;overflow-x:auto;border-collapse:separate;border-spacing:0;border:1px solid var(--article-line);border-radius:16px;background:#fff}
.tm-article-content thead{background:var(--article-soft)}
.tm-article-content th,.tm-article-content td{min-width:150px;padding:16px 18px;border-right:1px solid var(--article-line);border-bottom:1px solid var(--article-line);text-align:left;vertical-align:top}
.tm-article-content th{color:var(--article-deep);font-size:.84rem}
.tm-article-content tr:last-child td{border-bottom:0}
.tm-article-content th:last-child,.tm-article-content td:last-child{border-right:0}

.tm-article-sidebar{position:relative;min-width:0;align-self:stretch}
.tm-article-sidebar__sticky{position:sticky;top:104px;display:grid;gap:20px;max-height:calc(100vh - 126px)}
.admin-bar .tm-article-sidebar__sticky{top:136px;max-height:calc(100vh - 158px)}
.tm-article-toc-card,.tm-article-sidebar-cta{border:1px solid var(--article-line);border-radius:20px;box-shadow:0 10px 32px rgba(24,61,46,.06)}
.tm-article-toc-card{display:flex;min-height:0;flex-direction:column;padding:24px 21px;background:#fff}
.tm-article-sidebar__eyebrow{color:var(--article-green);font-size:.67rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}
.tm-article-toc-card h2,.tm-article-sidebar-cta h2{margin:7px 0 0;color:var(--article-deep);font-size:1.22rem;line-height:1.25}
.tm-article-toc{max-height:clamp(250px,31vh,360px);min-height:126px;margin-top:17px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#b9c9b2 transparent}
.admin-bar .tm-article-toc{max-height:clamp(230px,28vh,330px)}
.tm-article-toc ol{display:grid;gap:3px;margin:0;padding:0;counter-reset:tm-article-section;list-style:none}
.tm-article-toc__item--h2{counter-increment:tm-article-section}
.tm-article-toc a{display:grid;grid-template-columns:25px minmax(0,1fr);gap:8px;align-items:start;padding:8px 9px;border-left:2px solid transparent;border-radius:0 9px 9px 0;color:#5d6e65;font-size:.78rem;font-weight:650;line-height:1.4}
.tm-article-toc__item--h2 a::before{content:counter(tm-article-section,decimal-leading-zero);padding-top:.04em;color:var(--article-green);font-size:.67rem;font-weight:850;letter-spacing:.04em}
.tm-article-toc__item--h3 a::before{content:"";width:6px;height:6px;margin:6px 0 0 7px;border:1.5px solid #93aa86;border-radius:50%;background:#fff}
.tm-article-toc a:hover,.tm-article-toc a:focus-visible{color:var(--article-deep);background:#f5f8f3}
.tm-article-toc a.is-active{border-left-color:var(--article-green);background:var(--article-soft);color:var(--article-deep);font-weight:800}
.tm-article-toc__item--h2 a.is-active::before{color:var(--article-deep)}
.tm-article-toc__item--h3 a{color:#718078;font-size:.73rem}
.tm-article-toc__item--h3 a.is-active::before{border-color:var(--article-green);background:var(--article-green)}
.tm-article-sidebar-cta{padding:25px 22px;background:linear-gradient(145deg,#f4f8f1,#eaf3e5)}
.tm-article-sidebar-cta p{margin:12px 0 20px;color:#5e7066;font-size:.82rem;line-height:1.6}
.tm-article-sidebar-cta .tm-btn{width:100%;justify-content:center;padding:13px 16px;font-size:.8rem;}
.tm-article-mobile-toc{display:none;margin:0 0 34px;border:1px solid var(--article-line);border-radius:16px;background:#fff}
.tm-article-mobile-toc summary{display:flex;align-items:center;justify-content:space-between;padding:17px 19px;color:var(--article-deep);font-weight:800;cursor:pointer;list-style:none}
.tm-article-mobile-toc summary::-webkit-details-marker{display:none}
.tm-article-toc--mobile{max-height:360px;min-height:0;margin:0;padding:0 14px 16px}

.tm-article-related{padding:clamp(76px,8vw,112px) 0;background:var(--article-soft)}
.tm-article-section-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.62fr);gap:46px;align-items:end;margin-bottom:34px}
.tm-article-section-head h2{margin-top:6px;font-size:clamp(2.35rem,4vw,3.55rem)}
.tm-article-section-head>p{margin:0 0 4px;color:var(--article-muted);line-height:1.7}
.tm-article-final{padding:clamp(76px,8vw,112px) 0;background:#fff}
.tm-article-final__panel{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:48px;align-items:center;padding:clamp(44px,5vw,64px);border-radius:28px;background:var(--article-deep);box-shadow:0 24px 64px rgba(24,61,46,.18)}
.tm-article-final__panel h2{max-width:760px;margin-top:7px;color:#fff;font-size:clamp(2.25rem,4vw,3.6rem);line-height:1.05}
.tm-article-final__panel p{max-width:780px;margin:17px 0 0;color:#c7d6cc;line-height:1.7}
.tm-article-final__panel .tm-kicker{color:var(--tm-lime)}

@media(max-width:1180px){
 .tm-article-hero__grid{grid-template-columns:minmax(0,1fr) minmax(350px,.82fr);gap:38px}
 .tm-article-hero h1{font-size:clamp(2.8rem,4.8vw,4.3rem)}
 .tm-article-layout{grid-template-columns:minmax(0,1fr) 286px;gap:38px}
}
@media(max-width:1080px){
 .tm-article-hero__grid{grid-template-columns:minmax(0,1fr) minmax(320px,.76fr)}
 .tm-article-layout{grid-template-columns:minmax(0,920px);justify-content:center;padding-bottom:clamp(48px,6vw,72px)}
 .tm-article-sidebar{display:none}
 .tm-article-mobile-toc{display:block}
 .tm-article-section-head{grid-template-columns:1fr}
 .tm-article-final__panel{grid-template-columns:1fr}
 .tm-article-final__panel .tm-btn{justify-self:start;}
}
@media(max-width:820px){
 .tm-article-hero{padding-top:54px}
 .tm-article-hero__grid{grid-template-columns:1fr;gap:34px}
 .tm-article-hero__copy{max-width:720px}
 .tm-article-hero h1{font-size:clamp(2.75rem,9vw,4.25rem)}
 .tm-article-hero__media{max-width:720px;border-width:6px;border-radius:22px}
 .tm-article-hero__media img{aspect-ratio:16/10}
}
@media(max-width:720px){
 .tm-article-hero{padding:46px 0 58px}
 .tm-article-breadcrumb{margin-bottom:26px}
 .tm-article-hero h1{font-size:clamp(2.45rem,11vw,3.55rem)}
 .tm-article-meta{gap:8px 18px}
 .tm-article-meta span+span::before{left:-10px}
 .tm-article-body-section{padding-top:46px}
 .tm-article-content{font-size:16px;line-height:1.78}
 .tm-article-content h2{margin-top:62px}
 .tm-article-section-head{gap:14px}
 .tm-article-final__panel{padding:34px 26px}
 .tm-article-final__panel .tm-btn{width:100%;justify-content:center;}
}
@media(prefers-reduced-motion:reduce){.tm-article-toc a,.tm-article-content a{scroll-behavior:auto!important}}
