/* Presentation is limited by body_class and scoped assets to 45 selected FR/EN/DE articles and three author pages. */
body.ecp-article, body.ecp-author-page {--theme-narrow-container-max-width:1120px;--ecp-green:#2d5427;--ecp-lime:#8fbd4f;--ecp-ink:#1d2b22;--ecp-line:#dce5d7;--ecp-pale:#f3f7ee;}
.ecp-article .hero-section {margin-bottom:26px;}
.ecp-article .entry-header {text-align:left;}
.ecp-article .page-title {font-size:clamp(30px,3.1vw,43px);line-height:1.16;letter-spacing:-.025em;max-width:1000px;color:var(--ecp-ink);}
.ecp-article .ct-breadcrumbs {font-size:13px;color:#596454;margin-bottom:24px;line-height:1.6;}
.ecp-article .ct-breadcrumbs a {color:var(--ecp-green);}
.ecp-article .entry-meta {font-size:12px;}
.ecp-article .page-description {max-width:900px;font-size:17px;line-height:1.6;color:#586253;}
.ecp-article .ecp-shell {max-width:1120px!important;width:var(--theme-container-width,88%);margin:0 auto!important;}
.ecp-article .ecp-byline {display:flex;align-items:center;gap:13px;padding:0 0 26px;margin-bottom:34px;border-bottom:1px solid var(--ecp-line);font-size:14px;line-height:1.5;color:#53604e;}
.ecp-article .ecp-byline img {flex:none;width:48px;height:48px;object-fit:cover;object-position:50% 20%;border-radius:50%;}
.ecp-article .ecp-byline a {font-weight:700;color:var(--ecp-ink);text-decoration:underline;text-underline-offset:3px;}
.ecp-article .ecp-byline div span {display:block;font-size:12px;margin-top:2px;}
.ecp-article .ecp-readtime {margin-left:auto;white-space:nowrap;}
.ecp-article .ecp-grid {display:grid;grid-template-columns:230px minmax(0,1fr);gap:62px;align-items:start;}
.ecp-article .ecp-sidebar {height:100%;min-width:0;}
.ecp-article .ecp-sticky {position:sticky;top:120px;max-height:calc(100vh - 140px);overflow-y:auto;padding-right:8px;}
.ecp-article .ecp-toc {margin:0;padding:0;border:0;font-size:14px;}
.ecp-article .ecp-toc summary {font-weight:700;font-size:13px;letter-spacing:.04em;text-transform:uppercase;list-style:none;cursor:pointer;color:var(--ecp-ink);padding:0 0 16px;}
.ecp-article .ecp-toc summary::-webkit-details-marker {display:none;}
.ecp-article .ecp-toc ol {margin:0;padding:0;list-style:none;border-left:1px solid var(--ecp-line);}
.ecp-article .ecp-toc li {margin:0;padding:0;}
.ecp-article .ecp-toc a {display:block;padding:9px 0 9px 16px;color:#586253;text-decoration:none;line-height:1.4;border-left:2px solid transparent;margin-left:-1px;}
.ecp-article .ecp-toc a:hover,.ecp-article .ecp-toc a[aria-current] {border-color:var(--ecp-green);color:var(--ecp-green);background:#f6f8f2;}
.ecp-article .ecp-side-cta {margin-top:26px;padding:22px;background:var(--ecp-pale);border-radius:10px;font-size:14px;line-height:1.5;}
.ecp-article .ecp-side-cta strong {font-size:17px;color:var(--ecp-ink);}
.ecp-article .ecp-side-cta p {margin:12px 0;}
.ecp-article .ecp-side-cta a {font-weight:700;color:var(--ecp-green);}
.ecp-article .ecp-body {min-width:0;font-size:17px;line-height:1.78;color:var(--ecp-ink);}
.ecp-article .ecp-body p {margin:0 0 23px;}
.ecp-article .ecp-body h2 {font-size:28px;line-height:1.28;letter-spacing:-.02em;margin:52px 0 22px;color:var(--ecp-ink);}
.ecp-article .ecp-body h3 {font-size:21px;line-height:1.4;margin:30px 0 14px;}
.ecp-article .ecp-body h2[id] {scroll-margin-top:125px;}
.ecp-article .ecp-body a:not(.wp-block-button__link) {color:var(--ecp-green);text-decoration:underline;text-underline-offset:3px;}
.ecp-article .ecp-body ul {padding-left:22px;margin:0 0 26px;}
.ecp-article .ecp-body li {margin-bottom:10px;}
.ecp-article .ecp-summary {background:var(--ecp-pale);border:1px solid var(--ecp-line);border-radius:12px;padding:28px 30px;margin:30px 0 42px;}
.ecp-article .ecp-summary h2 {font-size:22px;margin:0 0 18px;color:var(--ecp-green);}
.ecp-article .ecp-summary ul {margin-bottom:0;font-size:16px;}
.ecp-article .ecp-summary li:last-child {margin-bottom:0;}
.ecp-article .ecp-body .wp-block-table {margin:26px 0 30px;overflow-x:auto;border-radius:8px;}
.ecp-article .ecp-body table {font-size:15px;line-height:1.6;min-width:440px;margin:0;border-collapse:collapse;}
.ecp-article .ecp-body th {background:#28452c;color:#fff;font-weight:600;text-align:left;border:1px solid #28452c;padding:16px;}
.ecp-article .ecp-body td {padding:16px;border:1px solid var(--ecp-line);vertical-align:top;}
.ecp-article .ecp-body tr:nth-child(even) td {background:#f7f9f4;}
.ecp-article .ecp-body figcaption {font-size:13px;line-height:1.6;color:#596454;text-align:left;margin:10px 0 0;}
.ecp-article .ecp-body .wp-block-image {margin:34px 0;}
.ecp-article .ecp-body .wp-block-image img {width:100%;height:auto;border-radius:10px;}
.ecp-article .ecp-note {border-left:3px solid var(--ecp-lime);background:#f7f8f3;padding:22px 25px;margin:28px 0;font-size:16px;}
.ecp-article .ecp-note p {margin:0;}
.ecp-article .ecp-body .wp-block-details {border:1px solid var(--ecp-line);border-radius:8px;margin:12px 0;padding:0;background:#fff;}
.ecp-article .ecp-body .wp-block-details summary {padding:18px 22px;cursor:pointer;line-height:1.5;font-weight:600;font-size:16px;}
.ecp-article .ecp-body .wp-block-details[open] {background:#f8faf5;}
.ecp-article .ecp-body .wp-block-details p {font-size:16px;padding:0 22px 20px;margin:0;}
.ecp-article .ecp-cta,.ecp-author-page .ecp-cta {background:#18351f;color:#eef5e8;padding:32px;border-radius:12px;margin:46px 0;}
.ecp-article .ecp-cta h2,.ecp-author-page .ecp-cta h2 {color:#fff;font-size:27px;line-height:1.3;margin:0 0 16px;}
.ecp-article .ecp-cta p,.ecp-author-page .ecp-cta p {font-size:16px;margin:0 0 18px;}
.ecp-article .ecp-cta a:not(.wp-block-button__link) {color:#cce5af;}
.ecp-article .ecp-cta .wp-block-button__link,.ecp-author-page .ecp-cta .wp-block-button__link {background:#abd476;color:#16301b;font-size:15px;line-height:1.5;text-transform:none;font-weight:700;border-radius:6px;padding:14px 20px;}
.ecp-article .ecp-author-card {border-top:1px solid var(--ecp-line);display:grid;grid-template-columns:64px minmax(0,1fr);gap:22px;margin-top:48px;padding-top:30px;font-size:15px;line-height:1.7;}
.ecp-article .ecp-author-card img {width:64px;height:64px;border-radius:50%;object-fit:cover;object-position:50% 20%;}
.ecp-article .ecp-author-card h2 {font-size:20px;margin:0 0 12px;}
.ecp-article .ecp-author-card p {margin:0 0 12px;}
.ecp-article a:focus-visible,.ecp-article summary:focus-visible,.ecp-author-page a:focus-visible {outline:3px solid #527f2a;outline-offset:4px;}
.ecp-author-page .entry-content {font-size:17px;line-height:1.8;}
.ecp-author-page .hero-section[data-type="type-2"] {--min-height:190px;}
.ecp-author-page article[id^="post-"] {max-width:900px;margin-inline:auto;}
.ecp-author-page .ecp-author-intro {background:var(--ecp-pale);border:1px solid var(--ecp-line);border-radius:12px;padding:30px;display:flow-root;}
.ecp-author-page .ecp-author-intro figure {float:left;width:100px;margin:0 26px 10px 0;}
.ecp-author-page .ecp-author-intro img {width:100px;height:112px;object-fit:cover;object-position:50% 20%;border-radius:8px;}
.ecp-author-page .ecp-author-intro p:last-child {margin-bottom:0;}
.ecp-author-page .ecp-related {border:1px solid var(--ecp-line);padding:28px;border-radius:10px;}
.ecp-author-page .ecp-related h3 {margin-top:0;font-size:23px;}
@media(max-width:1023px){
 .ecp-article .ecp-grid {grid-template-columns:1fr;gap:25px;}
 .ecp-article .ecp-sidebar {height:auto;}
 .ecp-article .ecp-sticky {position:static;max-height:none;overflow:visible;padding-right:0;}
 .ecp-article .ecp-toc {padding:18px 22px;background:var(--ecp-pale);border:1px solid var(--ecp-line);border-radius:8px;}
 .ecp-article .ecp-toc summary {padding:0;list-style:disclosure-closed;}
 .ecp-article .ecp-toc[open] summary {list-style:disclosure-open;padding-bottom:16px;}
 .ecp-article .ecp-side-cta {display:none;}
 .ecp-article .ecp-byline {margin-bottom:24px;}
 .ecp-article .ecp-body {font-size:16px;line-height:1.8;}
 .ecp-article .ecp-body h2 {font-size:25px;margin-top:38px;}
 .ecp-article .ecp-summary,.ecp-article .ecp-cta,.ecp-author-page .ecp-cta {padding:23px;}
}
@media(max-width:480px){
 .ecp-article .ecp-byline {flex-wrap:wrap;}
 .ecp-article .ecp-readtime {margin-left:61px;margin-top:-8px;font-size:12px;}
 .ecp-article .page-title {font-size:30px;}
 .ecp-article .ecp-summary {padding:21px;}
 .ecp-article .ecp-author-card {grid-template-columns:1fr;gap:14px;}
 .ecp-author-page .ecp-author-intro {padding:22px;}
 .ecp-author-page .ecp-author-intro figure {float:none;margin:0 0 18px;}
 .ecp-author-page .hero-section[data-type="type-2"] {--min-height:120px;}
}
@media(prefers-reduced-motion:no-preference){html:has(body.ecp-article){scroll-behavior:smooth;}}

/* Native content modules shared by the six selected articles. */
.ecp-article .ecp-card-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:28px 0;}
.ecp-article .ecp-card {border:1px solid var(--ecp-line);border-radius:10px;padding:22px;background:#fff;min-width:0;}
.ecp-article .ecp-card h3 {margin-top:0;font-size:20px;}
.ecp-article .ecp-card p:last-child {margin-bottom:0;}
.ecp-article .ecp-note p + p {margin-top:14px;}
.ecp-article .ecp-note h3 {margin-top:0;}
.ecp-article .ecp-cta h3 {color:#fff;margin-top:0;font-size:25px;line-height:1.3;}
.ecp-article .ecp-body .ecp-cta a.ecp-button {display:inline-block;background:#abd476;color:#16301b;padding:14px 20px;border-radius:6px;font-weight:700;text-decoration:none;line-height:1.5;}
.ecp-article .ecp-body .ecp-summary h2 {font-size:22px;margin:0 0 18px;color:var(--ecp-green);}
.ecp-article .ecp-body .ecp-cta h2 {margin-top:0;color:#fff;font-size:27px;}
.ecp-article .ecp-body .ecp-author-card h2 {font-size:20px;margin:0 0 12px;}
.ecp-author-page .ecp-related {margin:20px 0;}
.ecp-article .ecp-note dl {display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px 20px;margin:18px 0;}
.ecp-article .ecp-note dt,.ecp-article .ecp-note dd {margin:0;}
.ecp-article .ecp-note dd {font-weight:700;}
.ecp-article .ecp-note dl p {margin:0;}
.ecp-article .ecp-note .ecp-note {border:0;background:transparent;padding:0;margin:16px 0;}
.ecp-article .ecp-body table:has(thead th:nth-child(5)) {min-width:760px;}
@media(max-width:700px){.ecp-article .ecp-card-grid {grid-template-columns:1fr;}.ecp-article .ecp-card {padding:20px;}}

/* The existing battery photographs keep their editorial grouping. */
.ecp-article .ecp-image-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:28px 0;}
.ecp-article .ecp-image-grid .wp-block-image {margin:0;min-width:0;}
.ecp-article .ecp-image-grid .ecp-image-wide {grid-column:1/-1;}
.ecp-article .ecp-image-grid img {width:100%;height:auto;display:block;}
.ecp-article .ecp-card-grid > .ecp-card {margin:0;}
@media(max-width:600px){.ecp-article .ecp-image-grid{grid-template-columns:1fr;}}

/* The article avatar uses the supplied portrait, framed on Abel's face. */
.ecp-article .ecp-avatar {display:block;position:relative;flex:none;width:48px;height:48px;overflow:hidden;border-radius:50%;}
.ecp-article .ecp-author-card > .ecp-avatar {width:64px;height:64px;}
.ecp-article .ecp-avatar img {position:absolute;display:block;width:220%;height:auto;max-width:none;left:-60%;top:-44%;border-radius:0;object-fit:initial;}
