/* Elephant Census: the original page had no inline <style>; its stylesheet css/elephant_census.css is loaded via the design's styles. */

/* Full width (the site style): the page's blocks run inside the 5% side margins with no 1440px cap; designs unchanged */
html body .ec-page .ec-wrap { max-width: none; padding-left: 5%; padding-right: 5%; box-sizing: border-box; }
@media (max-width: 600px) { html body .ec-page .ec-wrap { padding-left: 20px; padding-right: 20px; } }

/* Headings in the site style (as on the other redesigned pages): left on the margin, Plus Jakarta Sans 800, up to 38px,
   tight, no gold bar; their lines left under them */
html body .ec-page .ec-section-title, html body .ec-page .dz-title { margin: 0 0 12px !important; text-align: left !important; font-family: 'Plus Jakarta Sans', sans-serif; font-weight: 800;
    font-size: clamp(28px, 2.5vw, 38px); line-height: 1.05; letter-spacing: -.035em; color: #0a2e1a; text-wrap: balance; }
html body .ec-page .wa-title-bar, html body .ec-page .dz-underline { display: none !important; }
html body .ec-page .ec-section-subtitle { margin: 0 0 32px !important; max-width: 72ch; text-align: left !important; font-size: 17px; line-height: 1.6; color: #4b5563; }
html body .ec-page .dz-band .dz-wrap { max-width: none; padding-left: 5%; padding-right: 5%; }
html body .ec-page .ec-section-title + .wa-title-bar + *, html body .ec-page .ec-section-title + * { margin-top: 0; }
/* room around the headings: 52px above (32px for the page's first), 20px to the block below */
html body .ec-page .ec-section-title, html body .ec-page .dz-title { margin: 52px 0 20px !important; }
html body .ec-page .ec-section-title:has(+ .wa-title-bar + .ec-section-subtitle), html body .ec-page .ec-section-title:has(+ .ec-section-subtitle) { margin-bottom: 8px !important; }
html body .ec-page .ec-wrap:first-of-type .ec-section-title { margin-top: 52px !important; }
html body .ec-page .dz-band { padding-top: 0 !important; }

/* Scientific Census card, inside: golden split. The headline figure large in Roboto with its confidence range as a bar
   (the marker slides to the figure when the card comes into view), the method text under it; the key features as a
   numbered sequence on the right, the last in gold. Rows light up under the pointer. */
.ecx-grid { display: grid; grid-template-columns: 61.8fr 38.2fr; gap: 52px; align-items: start; }
.ecx-figure { padding-bottom: 32px; margin-bottom: 32px; border-bottom: 1px solid rgba(255, 255, 255, .12); }
.ecx-num { display: flex; align-items: baseline; flex-wrap: wrap; gap: 8px 20px; }
.ecx-num b { font-family: 'Roboto', sans-serif; font-variant-numeric: tabular-nums; font-size: clamp(64px, 7vw, 112px); font-weight: 500; line-height: .9; letter-spacing: -.05em; color: #f1c40f; }
.ecx-num span { font-size: clamp(18px, 1.6vw, 24px); font-weight: 700; line-height: 1.25; color: #fff; max-width: 16ch; }
.ecx-range { margin-top: 32px; max-width: 560px; }
.ecx-range-label { display: block; margin-bottom: 12px; font-size: 13px; font-weight: 600; color: rgba(255, 255, 255, .6); }
.ecx-bar { position: relative; height: 8px; border-radius: 999px; background: rgba(255, 255, 255, .1); }
.ecx-band { position: absolute; inset: 0; border-radius: 999px; background: linear-gradient(90deg, rgba(143, 201, 163, .35), rgba(143, 201, 163, .6), rgba(143, 201, 163, .35)); }
.ecx-mark { position: absolute; top: 50%; left: 0; width: 18px; height: 18px; margin: -9px 0 0 -9px; border-radius: 50%; background: #f1c40f; box-shadow: 0 0 0 6px rgba(241, 196, 15, .2);
    transition: left 1200ms cubic-bezier(.16, 1, .3, 1); }
.ecx-figure.is-in .ecx-mark { left: var(--pos, 50%); }
.ecx-mark i { position: absolute; bottom: calc(100% + 10px); left: 50%; translate: -50% 0; font: 600 13px/1 Roboto, sans-serif; font-style: normal; color: #f1c40f; }
.ecx-ends { display: flex; justify-content: space-between; margin-top: 12px; font: 500 14px/1 Roboto, sans-serif; font-variant-numeric: tabular-nums; color: rgba(255, 255, 255, .7); }
.ecx-text p { margin: 0 0 12px; font-size: 16px; line-height: 1.75; color: rgba(255, 255, 255, .82); }
.ecx-text p:last-child { margin-bottom: 0; }
.ecx-text strong { color: #fff; }
.ecx-list-title { margin: 0 0 12px; font-size: 14px; font-weight: 700; letter-spacing: .02em; color: #8fc9a3; }
.ecx-steps { list-style: none; margin: 0; padding: 0; counter-reset: none; }
.ecx-step { position: relative; display: grid; grid-template-columns: 36px minmax(0, 1fr); gap: 12px; padding: 16px 12px; border-radius: 8px; transition: background-color 150ms cubic-bezier(.4, 0, .2, 1); }
.ecx-step + .ecx-step::before { content: ''; position: absolute; left: 12px; right: 12px; top: 0; height: 1px; background: rgba(255, 255, 255, .1); }
.ecx-step:hover { background: rgba(255, 255, 255, .06); }
.ecx-step-no { display: grid; place-items: center; width: 32px; height: 32px; border-radius: 50%; box-shadow: inset 0 0 0 1px rgba(143, 201, 163, .5); font: 600 12px/1 Roboto, sans-serif; color: #8fc9a3;
    transition: background-color 150ms, color 150ms, box-shadow 150ms; }
.ecx-step:hover .ecx-step-no { background: #8fc9a3; color: #0a2e1a; box-shadow: none; }
.ecx-step div { display: flex; flex-direction: column; gap: 2px; }
.ecx-step strong { font-size: 16px; font-weight: 700; color: #fff; }
.ecx-step div span { font-size: 14px; line-height: 1.55; color: rgba(255, 255, 255, .72); }
.ecx-step.is-key { background: rgba(241, 196, 15, .08); }
.ecx-step.is-key .ecx-step-no { background: #f1c40f; color: #0a2e1a; box-shadow: none; }
.ecx-step.is-key strong { color: #f1c40f; }
@media (max-width: 1000px) { .ecx-grid { grid-template-columns: minmax(0, 1fr); gap: 32px; } }
@media (prefers-reduced-motion: reduce) { .ecx-mark { transition: none; } }

/* No green card around the census: the figure and the words sit on the cream page (left), the key features are their own
   green card (right) */
html body .ec-page .ec-census-panel.ecx { padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
html body .ec-page .ec-census-panel.ecx::before, html body .ec-page .ec-census-panel.ecx::after { display: none; }
.ecx .ecx-grid { align-items: stretch; }
.ecx .ecx-figure { border-bottom-color: rgba(10, 46, 26, .12); }
.ecx .ecx-num b { color: #0a2e1a; }
.ecx .ecx-num span { color: #0a2e1a; }
.ecx .ecx-range-label { color: #5b6b60; }
.ecx .ecx-bar { background: rgba(10, 46, 26, .1); }
.ecx .ecx-band { background: linear-gradient(90deg, rgba(45, 106, 79, .3), rgba(45, 106, 79, .6), rgba(45, 106, 79, .3)); }
.ecx .ecx-mark i { color: #b8860b; }
.ecx .ecx-ends { color: #5b6b60; }
.ecx .ecx-text p { color: #1f2a22; font-size: 17px; }
.ecx .ecx-text strong { color: #0a2e1a; }
.ecx .ecx-right { padding: 32px; border-radius: 8px; background: #0a2e1a; }
@media (max-width: 640px) { .ecx .ecx-right { padding: 20px; } }

/* Census, compact on the golden split: the title opens the left column so the green card starts on its line; the figure
   and its range bar side by side in one band; a tighter features card; both columns end together */
html body .ec-page .ecx .ecx-title { margin: 0 0 20px !important; }
html body .ec-page .ec-wrap:first-of-type .ecx { margin-top: 52px; }
.ecx .ecx-grid { grid-template-columns: 61.8fr 38.2fr; gap: 52px; align-items: stretch; }
.ecx .ecx-left { display: flex; flex-direction: column; }
.ecx .ecx-figure { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 32px; align-items: center; padding: 20px 0; margin: 0 0 20px; border-top: 1px solid rgba(10, 46, 26, .12); border-bottom: 1px solid rgba(10, 46, 26, .12); }
.ecx .ecx-num { flex-wrap: nowrap; gap: 12px; align-items: center; }
.ecx .ecx-num b { font-size: clamp(52px, 5vw, 76px); }
.ecx .ecx-num span { font-size: 17px; max-width: 12ch; }
.ecx .ecx-range { margin: 0; max-width: none; }
.ecx .ecx-range-label { margin-bottom: 20px; }
.ecx .ecx-ends { margin-top: 8px; }
.ecx .ecx-text p { font-size: 16px; line-height: 1.7; }
.ecx .ecx-right { display: flex; flex-direction: column; padding: 24px; }
.ecx .ecx-list-title { margin-bottom: 8px; }
.ecx .ecx-steps { flex: 1; display: flex; flex-direction: column; justify-content: space-between; }
.ecx .ecx-step { grid-template-columns: 28px minmax(0, 1fr); gap: 12px; padding: 10px 8px; }
.ecx .ecx-step + .ecx-step::before { left: 8px; right: 8px; }
.ecx .ecx-step-no { width: 28px; height: 28px; font-size: 11px; }
.ecx .ecx-step strong { font-size: 15px; }
.ecx .ecx-step div span { font-size: 13px; line-height: 1.5; }
@media (max-width: 1000px) { .ecx .ecx-figure { grid-template-columns: minmax(0, 1fr); gap: 20px; } }

html body .ec-page .ec-wrap .ecx .ecx-title { margin-top: 0 !important; }

/* How DNA-based elephant counting works: a horizontal timeline. The steps sit side by side on one line through their
   numbers; the line fills in gold up to the step under the pointer's row; the last step (the result) is gold. */
html body .ec-page .dz-k-timeline .dz-steps { counter-reset: none; display: grid; grid-template-columns: repeat(auto-fit, minmax(0, 1fr)); gap: 20px; margin: 12px 0 0; padding: 0; list-style: none; position: relative; max-width: none; }
html body .ec-page .dz-k-timeline .dz-steps::before { content: ''; position: absolute; left: 24px; right: 24px; top: 24px; height: 2px; background: rgba(10, 46, 26, .15); }
html body .ec-page .dz-k-timeline .dz-steps li { position: relative; display: flex; flex-direction: column; gap: 20px; margin: 0; padding: 0; border: 0; background: none; }
html body .ec-page .dz-k-timeline .dz-steps li::before, html body .ec-page .dz-k-timeline .dz-steps li::after { display: none; }
html body .ec-page .dz-k-timeline .dz-step-n { position: relative; z-index: 1; display: grid; place-items: center; width: 48px; height: 48px; margin: 0; border-radius: 50%; background: #f9f6ef;
    box-shadow: inset 0 0 0 2px #0a2e1a; color: #0a2e1a; font: 600 15px/1 Roboto, sans-serif; transition: background-color 150ms, color 150ms, transform 300ms cubic-bezier(.34, 1.56, .64, 1); }
html body .ec-page .dz-k-timeline .dz-steps li > div { padding: 20px; border-radius: 8px; background: #f2ede1; flex: 1; transition: background-color 150ms, transform 150ms cubic-bezier(.4, 0, .2, 1); }
html body .ec-page .dz-k-timeline .dz-steps h3 { margin: 0 0 8px; font-size: 17px; font-weight: 800; line-height: 1.3; color: #0a2e1a; }
html body .ec-page .dz-k-timeline .dz-steps .dz-prose p { margin: 0; font-size: 14px; line-height: 1.55; color: #1f2a22; }
html body .ec-page .dz-k-timeline .dz-steps li:hover .dz-step-n { background: #0a2e1a; color: #fff; transform: scale(1.08); }
html body .ec-page .dz-k-timeline .dz-steps li:hover > div { background: #ece5d3; transform: translateY(-2px); }
html body .ec-page .dz-k-timeline .dz-steps li:last-child .dz-step-n { background: #f1c40f; box-shadow: none; }
html body .ec-page .dz-k-timeline .dz-steps li:last-child > div { background: #0a2e1a; }
html body .ec-page .dz-k-timeline .dz-steps li:last-child h3 { color: #f1c40f; }
html body .ec-page .dz-k-timeline .dz-steps li:last-child .dz-prose p { color: rgba(255, 255, 255, .8); }
@media (max-width: 900px) {
    html body .ec-page .dz-k-timeline .dz-steps { grid-template-columns: minmax(0, 1fr); }
    html body .ec-page .dz-k-timeline .dz-steps::before { left: 23px; right: auto; top: 24px; bottom: 24px; width: 2px; height: auto; }
    html body .ec-page .dz-k-timeline .dz-steps li { flex-direction: row; align-items: flex-start; }
    html body .ec-page .dz-k-timeline .dz-step-n { flex: none; }
}

/* The Elephant Corridors: the green card kept; inside, a numbered list of corridors (the chosen one with a gold bar and
   lighter), and a detail panel in the site's type: small label, large name, the words, length and width as big figures */
html body .ec-page .ec-corridor-card { border-radius: 8px; padding: 32px; }
html body .ec-page .ec-corridors-grid { grid-template-columns: 38.2fr 61.8fr; gap: 32px; align-items: stretch; }
html body .ec-page .ec-tabs-list { counter-reset: ecc; gap: 4px; }
html body .ec-page .ec-tab-btn { counter-increment: ecc; position: relative; display: grid; grid-template-columns: 28px minmax(0, 1fr) auto; gap: 12px; align-items: center; padding: 14px 16px; border: 0; border-radius: 8px;
    background: transparent; box-shadow: none; transition: background-color 150ms cubic-bezier(.4, 0, .2, 1); }
html body .ec-page .ec-tab-btn::before { content: counter(ecc, decimal-leading-zero); font: 600 13px/1 Roboto, sans-serif; color: rgba(255, 255, 255, .4); }
html body .ec-page .ec-tab-btn::after { content: ''; position: absolute; left: 0; top: 10px; bottom: 10px; width: 3px; border-radius: 3px; background: #f1c40f; transform: scaleY(0); transition: transform 250ms cubic-bezier(.16, 1, .3, 1); }
html body .ec-page .ec-tab-btn + .ec-tab-btn { box-shadow: 0 -1px 0 rgba(255, 255, 255, .08); }
html body .ec-page .ec-tab-btn:hover { background: rgba(255, 255, 255, .05); }
html body .ec-page .ec-tab-btn.active { background: rgba(255, 255, 255, .09); box-shadow: none; border: 0; }
html body .ec-page .ec-tab-btn.active::before { color: #f1c40f; }
html body .ec-page .ec-tab-btn.active::after { transform: scaleY(1); }
html body .ec-page .ec-tab-btn-title { font-size: 16px; font-weight: 700; color: #fff; }
html body .ec-page .ec-tab-btn-meta { font-size: 13px; color: rgba(255, 255, 255, .55); }
/* a phone: a corridor's stamp ("Identified by Department") goes under its name instead of squeezing it */
@media (max-width: 600px) { html body .ec-page .ec-priority-stamp { grid-column: 2; justify-self: start; } }
html body .ec-page .ec-priority-stamp { padding: 3px 8px; border-radius: 4px; background: rgba(241, 196, 15, .15); color: #f1c40f; font-size: 11px; font-weight: 700; box-shadow: none; transform: none; }
html body .ec-page .ec-map-screen { display: flex; flex-direction: column; padding: 32px; border-radius: 8px; border: 0; background: rgba(255, 255, 255, .04); box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .08); }
html body .ec-page .ec-map-head { padding-bottom: 12px; border-bottom: 1px solid rgba(255, 255, 255, .1); font-size: 12px; font-weight: 600; letter-spacing: .04em; color: #8fc9a3; }
html body .ec-page .ec-map-title { margin: 20px 0 12px; font-family: 'Plus Jakarta Sans', sans-serif; font-size: clamp(24px, 2.2vw, 32px); font-weight: 800; line-height: 1.15; letter-spacing: -.02em; color: #fff; }
html body .ec-page .ec-map-details { margin: 0; font-size: 16px; line-height: 1.7; color: rgba(255, 255, 255, .78); }
html body .ec-page .ec-stat-row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-top: auto; padding-top: 32px; }
html body .ec-page .ec-stat-box { padding: 20px; border: 0; border-radius: 8px; background: rgba(255, 255, 255, .06); transition: background-color 150ms, transform 150ms; }
html body .ec-page .ec-stat-box:hover { background: rgba(255, 255, 255, .1); transform: translateY(-2px); }
html body .ec-page .ec-stat-val { font-family: 'Roboto', sans-serif; font-variant-numeric: tabular-nums; font-size: clamp(24px, 2.2vw, 34px); font-weight: 500; letter-spacing: -.02em; color: #f1c40f; }
html body .ec-page .ec-stat-lbl { margin-top: 4px; font-size: 13px; font-weight: 600; color: rgba(255, 255, 255, .65); }
@media (max-width: 900px) { html body .ec-page .ec-corridors-grid { grid-template-columns: minmax(0, 1fr); } html body .ec-page .ec-corridor-card { padding: 20px; } }

/* Corridor panel: no empty space under the figures (the panel is as tall as its content) */
html body .ec-page .ec-corridors-grid { align-items: start; }
html body .ec-page .ec-map-screen { min-height: 0; }
html body .ec-page .ec-stat-row { margin-top: 0; }

/* Trans-Boundary Dialogue Timeline in the site's deep green (not slate blue): left heading and words, year tabs with a
   gold rule under the chosen one, the summit panel in a lighter green, status in mint */
html body .ec-page .ec-dialogue-panel { --light-blue: #8fc9a3; border-radius: 8px; background: #0a2e1a; border: 0; box-shadow: none; }
html body .ec-page .ec-dialogue-panel::before { display: none; }
html body .ec-page .ec-dialogue-head { text-align: left; }
html body .ec-page .ec-dialogue-title { font-family: 'Plus Jakarta Sans', sans-serif; font-size: clamp(22px, 2vw, 28px); font-weight: 800; letter-spacing: -.02em; color: #f1c40f; text-align: left; }
html body .ec-page .ec-dialogue-text { margin: 8px 0 0 !important; max-width: 80ch !important; color: rgba(255, 255, 255, .75) !important; text-align: left; }
html body .ec-page .ec-timeline-node { border-radius: 8px; border: 0; background: rgba(255, 255, 255, .05); box-shadow: none; transition: background-color 150ms, transform 150ms; }
html body .ec-page .ec-timeline-node:hover { background: rgba(255, 255, 255, .09); transform: translateY(-2px); }
html body .ec-page .ec-timeline-node.active { background: rgba(255, 255, 255, .12); border: 0; box-shadow: none; }
html body .ec-page .ec-timeline-year { font-family: 'Roboto', sans-serif; font-weight: 500; color: rgba(255, 255, 255, .4); }
html body .ec-page .ec-timeline-node.active .ec-timeline-year { color: #f1c40f; }
html body .ec-page .ec-timeline-node.completed .ec-timeline-year { color: #8fc9a3; }
html body .ec-page .ec-timeline-lbl { color: rgba(255, 255, 255, .6); }
html body .ec-page .ec-timeline-node.active .ec-timeline-lbl { color: #fff; }
html body .ec-page .ec-timeline-progress { background: transparent; }
html body .ec-page .ec-timeline-node.active .ec-timeline-progress, html body .ec-page .ec-timeline-node.completed .ec-timeline-progress { background: #f1c40f; }
html body .ec-page .ec-summit-box.dashboard-style { border-radius: 8px; border: 0; background: rgba(255, 255, 255, .06); box-shadow: none; }
html body .ec-page .ec-summit-box.dashboard-style::before { display: none; }
html body .ec-page .ec-summit-desc { color: rgba(255, 255, 255, .82); }
html body .ec-page .ec-summit-desc strong { font-family: 'Plus Jakarta Sans', sans-serif; font-size: 20px; font-weight: 800; color: #fff; }

/* The two documents together at the end, no cards: plain ruled rows on the page (icon, title and line, download on the right) */
html body .ec-page .dz-k-documents, html body .ec-page .dz-k-download { padding: 0 !important; background: transparent !important; }
html body .ec-page .dz-k-documents { margin-top: 52px; }
html body .ec-page .dz-k-documents .bs-card, html body .ec-page .dz-k-download .bs-highlight-card { padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; color: inherit; }
html body .ec-page .dz-k-documents .bs-card::before, html body .ec-page .dz-k-download .bs-highlight-card::before, html body .ec-page .dz-k-download .bs-highlight-card::after { display: none; }
html body .ec-page .dz-k-documents .bs-card-header { display: none; }
html body .ec-page .dz-k-documents .ps-docs { margin: 0; }
html body .ec-page .dz-k-documents .ps-doc, html body .ec-page .dz-k-download .bs-highlight-card { display: flex; align-items: center; gap: 20px; padding: 20px 12px !important; border: 0; border-top: 1px solid rgba(10, 46, 26, .15); border-radius: 0; background: transparent;
    transition: background-color 150ms cubic-bezier(.4, 0, .2, 1); }
html body .ec-page .dz-k-documents { border-top: 0; }
html body .ec-page .dz-k-download .bs-highlight-card { border-bottom: 1px solid rgba(10, 46, 26, .15); justify-content: space-between; }
html body .ec-page .dz-k-documents .ps-doc:hover, html body .ec-page .dz-k-download .bs-highlight-card:hover { background: #f2ede1; }
html body .ec-page .dz-k-documents .ps-doc-icon, html body .ec-page .dz-k-download .hl-icon { flex: none; display: grid; place-items: center; width: 44px; height: 44px; border-radius: 50%; background: rgba(26, 71, 42, .1); color: #1a472a; font-size: 18px; }
html body .ec-page .dz-k-documents .ps-doc-text { flex: 1; }
html body .ec-page .dz-k-documents .ps-doc-text strong, html body .ec-page .dz-k-download .hl-text h4 { display: block; margin: 0 0 2px; font-size: 17px; font-weight: 800; color: #0a2e1a; }
html body .ec-page .dz-k-documents .ps-doc-text small, html body .ec-page .dz-k-download .hl-text p, html body .ec-page .dz-k-download .hl-text p strong { margin: 0; font-size: 14px; font-weight: 500; color: #4b5563; }
html body .ec-page .dz-k-download .ps-hl-left { display: flex; align-items: center; gap: 20px; }
html body .ec-page .dz-k-documents .ps-doc-btn, html body .ec-page .dz-k-download .bs-btn-solid-white { flex: none; display: inline-flex; align-items: center; gap: 8px; padding: 10px 16px; border: 0; border-radius: 8px; background: #0a2e1a; color: #fff !important;
    font-size: 14px; font-weight: 700; box-shadow: none; transition: background-color 150ms, transform 150ms; }
html body .ec-page .dz-k-documents .ps-doc:hover .ps-doc-btn, html body .ec-page .dz-k-download .bs-btn-solid-white:hover { background: #1a472a; }
html body .ec-page .dz-k-download .bs-btn-solid-white:active { transform: translateY(1px); }
@media (max-width: 640px) { html body .ec-page .dz-k-documents .ps-doc, html body .ec-page .dz-k-download .bs-highlight-card { flex-wrap: wrap; } }
html body .ec-page .dz-k-documents .ps-doc { margin: 0 !important; }
html body .ec-page .dz-k-documents .bs-card, html body .ec-page .dz-k-documents .dz-wrap, html body .ec-page .dz-k-download .dz-wrap { padding-top: 0 !important; padding-bottom: 0 !important; margin: 0 !important; }
html body .ec-page .dz-k-documents + .dz-k-download { margin-top: 0 !important; }
html body .ec-page .dz-k-documents .ps-docs { gap: 0 !important; }

/* Counting timeline, clearer structure: 32px under the heading; one continuous line joins the step dots (drawn per step,
   dot to next dot, gold up to the result); a short stem drops from each dot to its card; the cards align on one row */
html body .ec-page .dz-k-timeline .dz-steps { margin-top: 32px !important; gap: 20px; }
html body .ec-page .dz-k-timeline .dz-steps::before { display: none !important; }
html body .ec-page .dz-k-timeline .dz-steps li { gap: 0; }
html body .ec-page .dz-k-timeline .dz-steps li::after { content: '' !important; display: block !important; position: absolute; top: 23px; left: 48px; right: -20px; height: 2px; background: #0a2e1a; opacity: .25; }
html body .ec-page .dz-k-timeline .dz-steps li:last-child::after { display: none !important; }
html body .ec-page .dz-k-timeline .dz-steps li:nth-last-child(2)::after { background: linear-gradient(90deg, #0a2e1a, #f1c40f); opacity: .6; }
html body .ec-page .dz-k-timeline .dz-steps li > div { position: relative; margin-top: 32px; }
html body .ec-page .dz-k-timeline .dz-steps li > div::before { content: ''; position: absolute; left: 23px; top: -32px; width: 2px; height: 32px; background: rgba(10, 46, 26, .25); }
html body .ec-page .dz-k-timeline .dz-steps li:last-child > div::before { background: #f1c40f; }
html body .ec-page .dz-k-timeline .dz-steps li:hover > div::before { background: #0a2e1a; }
@media (max-width: 900px) {
    html body .ec-page .dz-k-timeline .dz-steps li::after { top: 48px; bottom: -20px; left: 23px; right: auto; width: 2px; height: auto; }
    html body .ec-page .dz-k-timeline .dz-steps li > div { margin: 0 0 0 20px; }
    html body .ec-page .dz-k-timeline .dz-steps li > div::before { display: none; }
}

/* Counting timeline, one colour and interactive: every card deep green; pointing at a step lights the path up to it —
   the dots and line segments before it turn gold, its card lifts and tilts toward the pointer with a soft light under it */
html body .ec-page .dz-k-timeline .dz-steps li > div, html body .ec-page .dz-k-timeline .dz-steps li:last-child > div { overflow: hidden; isolation: isolate; background: #0a2e1a; padding: 24px;
    transform: perspective(900px) rotateX(var(--rx, 0deg)) rotateY(var(--ry, 0deg)); transition: transform 200ms cubic-bezier(.4, 0, .2, 1), background-color 150ms; }
html body .ec-page .dz-k-timeline .dz-steps li > div::after { content: ''; position: absolute; inset: 0; z-index: -1; opacity: 0; transition: opacity 200ms;
    background: radial-gradient(260px circle at var(--gx, 50%) var(--gy, 50%), rgba(241, 196, 15, .16), transparent 60%); }
html body .ec-page .dz-k-timeline .dz-steps li:hover > div { background: #0f3a22; transform: perspective(900px) rotateX(var(--rx, 0deg)) rotateY(var(--ry, 0deg)) translateY(-4px); }
html body .ec-page .dz-k-timeline .dz-steps li:hover > div::after { opacity: 1; }
html body .ec-page .dz-k-timeline .dz-steps h3, html body .ec-page .dz-k-timeline .dz-steps li:last-child h3 { color: #fff; transition: color 150ms; }
html body .ec-page .dz-k-timeline .dz-steps .dz-prose p, html body .ec-page .dz-k-timeline .dz-steps li:last-child .dz-prose p { color: rgba(255, 255, 255, .75); }
html body .ec-page .dz-k-timeline .dz-steps li:hover h3 { color: #f1c40f; }
html body .ec-page .dz-k-timeline .dz-step-n, html body .ec-page .dz-k-timeline .dz-steps li:last-child .dz-step-n { background: #f9f6ef; box-shadow: inset 0 0 0 2px #0a2e1a; color: #0a2e1a; }
html body .ec-page .dz-k-timeline .dz-steps li::after, html body .ec-page .dz-k-timeline .dz-steps li:nth-last-child(2)::after { background: rgba(10, 46, 26, .2); opacity: 1; }
html body .ec-page .dz-k-timeline .dz-steps li::before { content: '' !important; display: block !important; position: absolute; z-index: 0; top: 23px; left: 48px; right: -20px; height: 2px; background: #f1c40f; transform: scaleX(0); transform-origin: left;
    transition: transform 300ms cubic-bezier(.16, 1, .3, 1); }
html body .ec-page .dz-k-timeline .dz-steps li:last-child::before { display: none !important; }
html body .ec-page .dz-k-timeline .dz-steps li > div::before, html body .ec-page .dz-k-timeline .dz-steps li:last-child > div::before { background: rgba(10, 46, 26, .25); }
html body .ec-page .dz-k-timeline .dz-steps li.is-path::before { transform: scaleX(1); }
html body .ec-page .dz-k-timeline .dz-steps li.is-path .dz-step-n, html body .ec-page .dz-k-timeline .dz-steps li.is-now .dz-step-n { background: #f1c40f; box-shadow: none; color: #0a2e1a; }
html body .ec-page .dz-k-timeline .dz-steps li.is-now .dz-step-n { transform: scale(1.12); box-shadow: 0 0 0 6px rgba(241, 196, 15, .2); }
html body .ec-page .dz-k-timeline .dz-steps li.is-now > div::before { background: #f1c40f; }
@media (max-width: 900px) { html body .ec-page .dz-k-timeline .dz-steps li::before { top: 48px; bottom: -20px; left: 23px; right: auto; width: 2px; height: auto; transform: scaleY(0); transform-origin: top; } html body .ec-page .dz-k-timeline .dz-steps li.is-path::before { transform: scaleY(1); } }

/* the corridors table: heading row deep green with bold yellow text (as on Parks & Gardens, Joint Forest Management) */
html body .ec-page .dz-table th { background: #0b3d2c !important; color: #f1c40f !important; font-weight: 700 !important; }

/* "Action taken/Proposed to be taken for Conservation of Corridors": the two cards stay open (no dropdown); each heading is larger and dark */
html body .ec-page .dz-acc-row summary { pointer-events: none; cursor: default; font-size: 20px; font-weight: 800; color: #0a2e1a; }
html body .ec-page .dz-acc-row summary:hover { background: transparent; }
html body .ec-page .dz-acc-row summary svg { display: none; }
html body .ec-page .dz-acc-body { max-width: none; }

/* the two cards a little larger and a little deeper in colour (both the same) */
html body .ec-page .dz-acc-row { background: #e6dfc8; border-radius: 12px; }
html body .ec-page .dz-acc-row summary { padding: 24px 32px 14px; }
html body .ec-page .dz-acc-body { padding: 0 32px 28px; }
html body .ec-page .dz-acc-body p, html body .ec-page .dz-acc-body .ps-text-list { font-size: 16.5px; line-height: 1.8; color: #1f2a22; }
