/* Shared navigation, editorial pages, resource cards, and downloadable skills. */
.site-header nav a[aria-current="page"]{color:var(--green);text-decoration:underline;text-underline-offset:7px}
.content-page{padding-top:30px;padding-bottom:75px}
.breadcrumbs ol{display:flex;flex-wrap:wrap;gap:8px 0;list-style:none;padding:0;margin:0;color:var(--muted);font-size:12px;line-height:1.6}
.breadcrumbs li+li:before{content:"/";padding:0 10px;color:#96a499}
.breadcrumbs a:hover{color:var(--green);text-decoration:underline}
.content-hero{padding:62px 0 46px;max-width:880px}
.content-hero h1{font-size:clamp(36px,4.6vw,58px);line-height:1.1;letter-spacing:-2px;margin:18px 0 24px;text-wrap:balance}
.content-lead{font-size:19px;line-height:1.75;color:#536458;max-width:750px;margin:0}
.content-hero .button{margin-top:26px}
.article-meta{font-size:12px;color:var(--muted);margin:23px 0 0;display:flex;flex-wrap:wrap;gap:9px}
.article-layout{display:grid;grid-template-columns:232px minmax(0,1fr);gap:64px;border-top:1px solid var(--line);padding-top:36px;align-items:start}
.content-toc{position:sticky;top:110px;padding:5px 0}
.content-toc summary{font-size:12px;font-weight:750;text-transform:uppercase;letter-spacing:1px;cursor:pointer;color:var(--muted)}
.content-toc ol{list-style:none;padding:10px 0 0;margin:0}
.content-toc li{margin:13px 0;font-size:13px;line-height:1.5}
.content-toc a{color:#5b6c60;display:block}
.content-toc a:hover{color:var(--green);text-decoration:underline;text-underline-offset:4px}
.article-body{min-width:0;max-width:760px;font-size:16px;line-height:1.85;color:#495c4f}
.article-body section{scroll-margin-top:106px;margin-bottom:46px}
.article-body h2{font-size:28px;letter-spacing:-.6px;line-height:1.3;margin:0 0 17px;color:var(--ink);text-wrap:balance}
.article-body p{margin:14px 0}
.article-body ul,.article-body ol{padding-left:24px;margin:16px 0}
.article-body li{padding-left:4px;margin:8px 0}
.article-body a:not(.button){color:var(--green);text-decoration:underline;text-underline-offset:3px;text-decoration-color:#a7c6b2}
.article-body a:not(.button):hover{text-decoration-color:var(--green)}
.article-body code{font-size:.88em;background:#f0f4ef;padding:3px 5px;border-radius:4px;overflow-wrap:anywhere;color:#244c35}
.article-body pre{max-width:100%;overflow:auto;background:#152c22;color:#e5f0e6;border-radius:10px;padding:22px;margin:20px 0;line-height:1.65;font-size:12px;tab-size:2}
.article-body pre code{font-size:inherit;background:none;color:inherit;border-radius:0;padding:0;overflow-wrap:normal;white-space:pre}
.article-body .table-scroll{max-width:100%;overflow:auto;border:1px solid var(--line);border-radius:10px;margin:22px 0}
.article-body table{border-collapse:collapse;min-width:540px;width:100%;font-size:13px;line-height:1.6;text-align:left}
.article-body th,.article-body td{padding:17px 18px;vertical-align:top;border-bottom:1px solid var(--line)}
.article-body th{font-weight:650;color:var(--ink)}
.article-body thead{background:var(--mint)}
.article-body tbody tr:last-child>*{border-bottom:0}
.content-cta{display:flex;align-items:center;justify-content:space-between;gap:32px;background:var(--mint);border:1px solid #dfeade;border-radius:14px;padding:38px 40px;margin-top:28px}
.content-cta h2{font-size:30px;letter-spacing:-.8px;margin:13px 0 11px}
.content-cta p:not(.kicker){max-width:590px;font-size:15px;line-height:1.8;color:var(--muted);margin:0}
.content-cta .button{flex-shrink:0}
.library-section{margin:5px 0 60px}
.library-heading{display:flex;gap:20px;justify-content:space-between;align-items:end;margin-bottom:22px}
.library-heading h2{font-size:28px;letter-spacing:-.6px;margin:0}
.library-heading .kicker{margin-bottom:10px}
.library-heading>span{font-size:12px;color:var(--muted)}
.resource-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.resource-card{display:flex;flex-direction:column;align-items:start;padding:28px 26px;border:1px solid var(--line);border-radius:12px;background:white;transition:border-color .2s,box-shadow .2s;min-width:0}
.resource-card:hover{border-color:#9ebda5;box-shadow:0 6px 20px #234f3310}
.card-category{color:var(--green);font-size:10px;letter-spacing:.5px;font-weight:700;text-transform:uppercase;line-height:1.7}
.resource-card h3{font-size:21px;line-height:1.4;letter-spacing:-.4px;margin:16px 0 10px}
.resource-card p{font-size:14px;color:var(--muted);line-height:1.8;margin:0 0 27px}
.card-action{font-size:12px;font-weight:650;color:var(--green);margin-top:auto;display:flex;justify-content:space-between;gap:22px;width:100%}
.skill-card{background:#f8faf7}
.template-note{margin:45px 0;max-width:760px;border-left:3px solid #6f9e7e;padding:5px 0 5px 25px}
.template-note h2{font-size:26px;margin:0 0 15px;letter-spacing:-.6px}
.template-note p{font-size:15px;line-height:1.85;color:var(--muted);margin:0 0 15px}
.skill-facts{margin:23px 0;border:1px solid var(--line);border-radius:10px;overflow:hidden;font-size:14px}
.skill-facts>div{display:grid;grid-template-columns:110px 1fr;gap:20px;padding:19px 22px;border-bottom:1px solid var(--line)}
.skill-facts>div:last-child{border:0}.skill-facts dt{font-weight:700;color:var(--ink)}.skill-facts dd{margin:0}
.code-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;background:#1c382b;color:#cadccc;padding:12px 18px;border-radius:10px 10px 0 0;font-family:monospace;font-size:12px;margin-top:24px}
.copy-button{font-family:inherit;background:#294e3a;color:white;border:1px solid #52755e;border-radius:5px;padding:6px 12px;font-size:12px;cursor:pointer}
.copy-button:hover{background:#3d624a}
.article-body pre.skill-source{border-radius:0 0 10px 10px;margin-top:0}
.article-body pre.skill-source code{white-space:pre-wrap;overflow-wrap:anywhere}
.copy-status{font-size:12px;min-height:22px;color:var(--green)}
.content-footer{padding-top:10px}
.footer-links{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin:10px 0 32px;border-top:1px solid var(--line);padding-top:28px}
.footer-links>div{display:flex;flex-direction:column;align-items:start;gap:13px}
.footer-links strong{font-size:12px;margin-bottom:3px}
.footer-links a{font-size:12px;line-height:1.6;color:var(--muted)}
.footer-links a:hover{color:var(--green);text-decoration:underline;text-underline-offset:3px}
.home-resources{padding-block:55px 20px}
.home-resources .section-heading{max-width:700px}
.service-links{padding-top:45px}
.service-links .resource-grid{margin-top:22px}
@media(max-width:1050px){.article-layout{gap:35px;grid-template-columns:200px minmax(0,1fr)}.content-cta{padding:30px}.resource-card{padding:24px 20px}.library-heading>span{display:none}}
@media(max-width:800px){.content-page{padding-top:22px;padding-bottom:40px}.content-hero{padding:38px 0 32px}.content-hero h1{font-size:42px;letter-spacing:-1.5px}.content-lead{font-size:17px}.article-layout{grid-template-columns:1fr;gap:28px;padding-top:22px}.content-toc{position:static;padding:17px 20px;background:var(--soft);border:1px solid var(--line);border-radius:8px}.content-toc ol{display:grid;grid-template-columns:1fr 1fr;gap:8px 20px}.content-toc li{margin:3px 0}.content-toc details:not([open]) nav{display:none}.article-body{max-width:none}.resource-grid{grid-template-columns:1fr}.resource-card{padding:27px}.resource-card h3{margin:12px 0 10px}.resource-card p{margin-bottom:18px}.library-section{margin-bottom:38px}.library-heading{align-items:start;flex-wrap:wrap}.content-cta{align-items:start;flex-direction:column;gap:24px}.footer-links{gap:20px}.home-resources{padding-block:38px 12px}}
@media(max-width:480px){.content-hero h1{font-size:36px;letter-spacing:-1.2px}.content-lead{font-size:16px;line-height:1.75}.breadcrumbs{font-size:11px}.breadcrumbs li:last-child{flex-basis:100%}.breadcrumbs li:last-child:before{content:none;padding:0}.content-toc ol{grid-template-columns:1fr}.article-body{font-size:15px;line-height:1.8}.article-body h2{font-size:25px}.article-body section{margin-bottom:34px}.article-body pre{padding:17px;font-size:11px}.content-cta{padding:26px 22px}.content-cta h2{font-size:27px}.resource-card h3{font-size:21px}.library-heading h2{font-size:26px}.skill-facts>div{grid-template-columns:1fr;gap:5px;padding:15px 18px}.footer-links{grid-template-columns:1fr 1fr;gap:26px 15px}.footer-links>div:last-child{grid-column:1 / -1}.footer-links a{font-size:11px}.content-page .kicker{font-size:9px}}
