/* VTA connected data release 2.0 */
.findings-section { color: var(--ink-950); background: linear-gradient(180deg,#f6f9f9 0%,#eef4f4 100%); }
.finding-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.finding-card { min-height:330px; padding:25px; display:flex; flex-direction:column; background:#fff; border:1px solid #dfe9eb; border-radius:var(--radius-md); box-shadow:0 14px 40px rgba(7,31,45,.06); }
.finding-card--featured { color:#fff; background:linear-gradient(145deg,#082638,#0b3b45); border-color:rgba(255,255,255,.08); }
.finding-card__top { display:flex; justify-content:space-between; gap:12px; align-items:flex-start; }
.finding-card__top span { color:var(--mint-deep); font-size:9px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.finding-card--featured .finding-card__top span { color:var(--mint); }
.finding-card__top small { padding:5px 7px; color:#647a84; background:#eef4f4; border-radius:999px; font-size:7px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; text-align:right; }
.finding-card--featured .finding-card__top small { color:#b7cec8; background:rgba(255,255,255,.08); }
.finding-card h3 { margin:27px 0 11px; font-family:var(--font-display); font-size:22px; line-height:1.2; letter-spacing:-.03em; }
.finding-card__metric { display:flex; gap:9px; align-items:baseline; }
.finding-card__metric strong { font-family:var(--font-display); font-size:42px; line-height:1; letter-spacing:-.05em; }
.finding-card__metric span { color:#748993; font-size:9px; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
.finding-card--featured .finding-card__metric span { color:#94b1b9; }
.finding-card > p { margin:19px 0 0; color:#526873; font-size:12px; line-height:1.65; }
.finding-card--featured > p { color:#abc0c6; }
.finding-card__secondary { margin-top:13px; padding:10px 12px; color:#126f55; background:#e5f7f0; border-radius:10px; font-size:10px; font-weight:700; }
.finding-card footer { margin-top:auto; padding-top:20px; border-top:1px solid #e5ecee; }
.finding-card--featured footer { border-top-color:rgba(255,255,255,.1); }
.finding-card footer span, .finding-card footer strong { display:block; }
.finding-card footer span { color:#8a9aa2; font-size:7px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.finding-card footer strong { margin-top:6px; font-size:9px; line-height:1.4; }
.finding-card--loading { grid-column:1/-1; min-height:150px; align-items:center; justify-content:center; }

.corridor-section { color:#fff; background:linear-gradient(180deg,#071b2c 0%,#0b2636 100%); }
.corridor-profile-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:15px; }
.corridor-profile { position:relative; padding:27px; display:grid; grid-template-columns:48px minmax(0,1fr) 140px; gap:15px 20px; background:rgba(255,255,255,.045); border:1px solid rgba(255,255,255,.09); border-radius:var(--radius-md); overflow:hidden; }
.corridor-profile::after { content:""; position:absolute; right:-60px; top:-80px; width:190px; height:190px; border-radius:50%; background:radial-gradient(circle,rgba(88,227,181,.12),transparent 68%); pointer-events:none; }
.corridor-profile__number { width:42px; height:42px; display:grid; place-items:center; color:var(--mint); background:rgba(88,227,181,.08); border:1px solid rgba(88,227,181,.16); border-radius:12px; font-family:var(--font-display); font-size:10px; font-weight:800; }
.corridor-profile__head span { color:var(--mint); font-size:8px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.corridor-profile__head h3 { margin:6px 0 8px; font-family:var(--font-display); font-size:22px; letter-spacing:-.035em; }
.corridor-profile__head p { margin:0; color:#8fa9b4; font-size:10px; line-height:1.55; }
.corridor-profile__primary { align-self:start; padding:14px; background:rgba(255,255,255,.055); border-radius:12px; }
.corridor-profile__primary span, .corridor-profile__primary strong { display:block; }
.corridor-profile__primary span { color:#8da5af; font-size:7px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.corridor-profile__primary strong { margin-top:7px; color:#fff; font-family:var(--font-display); font-size:25px; }
.corridor-profile__metrics { grid-column:2/4; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:7px; }
.corridor-profile__metrics div { padding:10px 11px; background:rgba(255,255,255,.035); border-radius:9px; }
.corridor-profile__metrics span, .corridor-profile__metrics strong { display:block; }
.corridor-profile__metrics span { color:#77939f; font-size:7px; font-weight:800; text-transform:uppercase; letter-spacing:.07em; }
.corridor-profile__metrics strong { margin-top:5px; color:#dff6ee; font-size:12px; }
.corridor-profile__interpretation { grid-column:2/4; margin:0; color:#9db1ba; font-size:11px; line-height:1.65; }
.corridor-profile__tags { grid-column:2/4; display:flex; flex-wrap:wrap; gap:5px; }
.corridor-profile__tags span { padding:6px 8px; color:#91cab7; background:rgba(88,227,181,.07); border:1px solid rgba(88,227,181,.1); border-radius:999px; font-size:7px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
.corridor-profile__actions { grid-column:2/4; display:flex; gap:8px; }
.corridor-profile__actions button { padding:9px 11px; color:#061b28; background:var(--mint); border:0; border-radius:8px; font:inherit; font-size:8px; font-weight:800; cursor:pointer; }
.corridor-profile__actions .corridor-info-button { color:#b7cad2; background:rgba(255,255,255,.07); }
.corridor-profile__caveat { grid-column:2/4; display:none; padding:12px; color:#d4c696; background:rgba(242,193,95,.08); border:1px solid rgba(242,193,95,.14); border-radius:9px; font-size:9px; line-height:1.55; }
.corridor-profile__caveat.is-visible { display:block; }
.corridor-profile--loading { grid-column:1/-1; min-height:160px; display:grid; place-items:center; }

.chart-insight { margin:15px 0 0; padding:14px 15px; background:#f0f6f5; border-left:3px solid var(--mint-deep); border-radius:0 10px 10px 0; }
.chart-insight span { color:var(--mint-deep); font-size:7px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.chart-insight strong { display:block; margin-top:5px; color:var(--ink-900); font-family:var(--font-display); font-size:12px; line-height:1.4; }
.chart-insight p { margin:6px 0 0 !important; color:#637985 !important; font-size:9px !important; line-height:1.55 !important; }

.map-selection__metrics { margin-top:15px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; }
.map-selection__metrics div { padding:9px; background:rgba(255,255,255,.06); border-radius:8px; }
.map-selection__metrics span, .map-selection__metrics strong { display:block; }
.map-selection__metrics span { color:#7895a1; font-size:7px; font-weight:800; text-transform:uppercase; }
.map-selection__metrics strong { margin-top:4px; color:var(--mint); font-size:11px; }

.evidence-downloads { border-top:1px solid #e3ebed; }
.evidence-downloads__inner { display:grid; grid-template-columns:minmax(280px,.55fr) minmax(0,1fr); gap:70px; align-items:start; }
.evidence-downloads h2 { margin-top:14px; }
.evidence-downloads p { color:#607681; line-height:1.7; }
.download-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.download-card { position:relative; min-height:170px; padding:20px; color:var(--ink-900); background:#fff; border:1px solid #dfe8eb; border-radius:14px; text-decoration:none; transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease; }
.download-card:hover { transform:translateY(-3px); border-color:#9fdcc9; box-shadow:0 16px 35px rgba(9,46,59,.08); }
.download-card__type { color:var(--mint-deep); font-size:8px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.download-card strong { display:block; margin-top:12px; font-family:var(--font-display); font-size:15px; }
.download-card p { margin:7px 0 28px; color:#6a7e88; font-size:9px; line-height:1.55; }
.download-card__action { position:absolute; bottom:17px; left:20px; color:#177e61; font-size:8px; font-weight:800; }

.evidence-modal { position:fixed; inset:0; z-index:1000; display:none; }
.evidence-modal[aria-hidden="false"] { display:block; }
.evidence-modal__backdrop { position:absolute; inset:0; background:rgba(2,12,19,.78); backdrop-filter:blur(7px); }
.evidence-modal__panel { position:relative; z-index:1; width:min(960px,calc(100% - 32px)); max-height:calc(100vh - 50px); margin:25px auto; padding:36px; overflow:auto; color:var(--ink-950); background:#f8fbfb; border-radius:20px; box-shadow:0 30px 100px rgba(0,0,0,.45); }
.evidence-modal__close { position:absolute; top:18px; right:18px; width:38px; height:38px; color:#35515e; background:#e8f0f1; border:0; border-radius:50%; font-size:24px; cursor:pointer; }
.evidence-modal__eyebrow { color:var(--mint-deep); font-size:9px; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }
.evidence-modal h2 { max-width:720px; margin:12px 0; font-size:40px; }
.evidence-modal__summary { max-width:800px; color:#5e737e; line-height:1.7; }
.methodology-principles { margin-top:27px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.methodology-principles article { padding:18px; display:grid; grid-template-columns:34px 1fr; gap:12px; background:#fff; border:1px solid #e0eaec; border-radius:12px; }
.methodology-principles article > span { width:31px; height:31px; display:grid; place-items:center; color:#158463; background:#e2f5ee; border-radius:9px; font-size:8px; font-weight:800; }
.methodology-principles strong { font-size:12px; }
.methodology-principles p { margin:5px 0 0; color:#667b85; font-size:9px; line-height:1.55; }
.evidence-modal h3 { margin:34px 0 12px; font-family:var(--font-display); }
.methodology-sources { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.methodology-sources article { padding:14px; background:#edf3f4; border-radius:10px; }
.methodology-sources span,.methodology-sources strong,.methodology-sources small,.methodology-sources code { display:block; }
.methodology-sources span { color:#168061; font-size:7px; font-weight:800; text-transform:uppercase; }
.methodology-sources strong { margin-top:5px; font-size:10px; }
.methodology-sources small { margin-top:4px; color:#71848d; font-size:8px; }
.methodology-sources code { margin-top:7px; color:#536a75; font-size:7px; overflow-wrap:anywhere; }
.evidence-modal-trigger { padding:0; border:0; background:none; cursor:pointer; }
body.modal-open { overflow:hidden; }

@media(max-width:1100px){.finding-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.corridor-profile-grid{grid-template-columns:1fr}}
@media(max-width:900px){.evidence-downloads__inner{grid-template-columns:1fr;gap:30px}.corridor-profile{grid-template-columns:45px 1fr}.corridor-profile__primary{grid-column:2}.corridor-profile__metrics,.corridor-profile__interpretation,.corridor-profile__tags,.corridor-profile__actions,.corridor-profile__caveat{grid-column:2}.methodology-principles,.methodology-sources{grid-template-columns:1fr}}
@media(max-width:680px){.finding-grid,.download-grid{grid-template-columns:1fr}.corridor-profile{padding:20px;grid-template-columns:1fr}.corridor-profile__number{display:none}.corridor-profile__head,.corridor-profile__primary,.corridor-profile__metrics,.corridor-profile__interpretation,.corridor-profile__tags,.corridor-profile__actions,.corridor-profile__caveat{grid-column:1}.corridor-profile__metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.evidence-modal__panel{padding:25px 20px}.evidence-modal h2{font-size:31px}}
