/* Porter Research — interactive asset styles. Scoped to .porter-research. */
.porter-research{
  --pr-main:#893002; --pr-darker:#51230d; --pr-red:#861b1e; --pr-gold:#d2b05e;
  --pr-orange:#c66335; --pr-ink:#2b2218; --pr-muted:#6b6258; --pr-line:#e7ded2; --pr-bg:#faf7f2;
  font-family:Mulish,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  color:var(--pr-ink); line-height:1.55; max-width:1040px; margin:2rem auto; padding:0;
}
.porter-research *{box-sizing:border-box}
.porter-research .pr__head{padding:30px 26px 22px;background:linear-gradient(135deg,var(--pr-main),var(--pr-darker));color:#fff;border-radius:14px 14px 0 0}
.porter-research .pr__title{font-size:30px;line-height:1.15;margin:0 0 9px;letter-spacing:-.4px;color:#fff}
.porter-research .pr__dek{font-size:17px;margin:0;color:#f1ddc9;max-width:780px}
.porter-research .pr__stats{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;padding:18px 26px;background:var(--pr-bg);border-bottom:1px solid var(--pr-line)}
.porter-research .pr__stat{background:#fff;border:1px solid var(--pr-line);border-radius:11px;padding:15px 14px}
.porter-research .pr__stat b{display:block;font-size:26px;color:var(--pr-main);letter-spacing:-.5px}
.porter-research .pr__stat span{display:block;font-size:12px;color:var(--pr-muted);margin-top:4px}
.porter-research .pr__block{padding:26px 26px 6px}
.porter-research .pr__grid2{display:grid;grid-template-columns:1fr 1fr;gap:22px;padding:8px 26px 18px}
.porter-research .pr__h2{font-size:26px;line-height:1.22;font-weight:700;color:var(--pr-main);margin:0 0 12px;letter-spacing:-.3px}
.porter-research .pr__sub{color:var(--pr-muted);font-size:14px;margin:0 0 15px}
/* z-index:0 creates a stacking context so Leaflet's internal panes/controls/tooltips
   (z-index up to ~1000) can't paint over the theme's sticky header/nav. */
.porter-research .pr__map{height:520px;border-radius:13px;border:1px solid var(--pr-line);background:#f0ebe3;position:relative;z-index:0}
.porter-research .pr__card{background:#fff;border:1px solid var(--pr-line);border-radius:13px;padding:18px}
.porter-research .pr__table{width:100%;border-collapse:collapse;margin:14px 0 4px;font-size:13px}
.porter-research .pr__table summary{cursor:pointer;color:var(--pr-main);font-weight:600}
.porter-research .pr__table table{width:100%;border-collapse:collapse;margin-top:10px}
.porter-research .pr__table th,.porter-research .pr__table td{text-align:left;padding:5px 10px;border-bottom:1px solid var(--pr-line)}
.porter-research .pr__table td:nth-child(2),.porter-research .pr__table td:nth-child(3),
.porter-research .pr__table th:nth-child(2),.porter-research .pr__table th:nth-child(3){text-align:right;font-variant-numeric:tabular-nums}
.porter-research .pr__foot{padding:18px 26px 26px;background:var(--pr-bg);border-top:1px solid var(--pr-line);border-radius:0 0 14px 14px}
.porter-research .pr__method,.porter-research .pr__source{font-size:12.5px;color:var(--pr-muted);margin:0 0 10px}
.porter-research .pr__embed{margin-top:14px;border-top:1px dashed var(--pr-line);padding-top:14px}
.porter-research .pr__embed label{display:block;font-size:12px;font-weight:700;color:var(--pr-ink);margin-bottom:6px;text-transform:uppercase;letter-spacing:.04em}
.porter-research .pr__embed textarea{width:100%;font:12px/1.4 ui-monospace,Menlo,Consolas,monospace;border:1px solid var(--pr-line);border-radius:8px;padding:9px;color:#555;background:#fff;resize:none}
.porter-research .pr__copy{margin-top:8px;cursor:pointer;background:var(--pr-main);color:#fff;border:0;border-radius:8px;font:700 13px/1 Mulish,system-ui,sans-serif;padding:10px 16px}
.porter-research .pr__copy:hover{background:var(--pr-darker)}
.porter-research .pr__copy.is-copied{background:#2f7d32}
.porter-research .pr__credit{font-size:12px;color:var(--pr-muted);margin:7px 0 0}
.porter-research .pr__credit a,.porter-research .pr__source a{color:var(--pr-main)}
/* Leaflet legend + tooltip */
.porter-research .pr-legend{background:#fff;padding:8px 11px;border-radius:8px;box-shadow:0 1px 6px rgba(0,0,0,.18);font-size:12px;line-height:1.65}
.porter-research .pr-legend i{width:15px;height:15px;float:left;margin-right:7px;border-radius:2px;opacity:.95}
.porter-research .pr-legend b{display:block;margin-bottom:4px}
.leaflet-tooltip.pr-tip{font-family:Mulish,sans-serif;font-size:13px;border:0;box-shadow:0 2px 10px rgba(0,0,0,.2);border-radius:8px;padding:8px 11px}
.leaflet-tooltip.pr-tip .pr-tip__big{font-size:21px;font-weight:800;color:#893002}
@media (max-width:760px){
  .porter-research{margin:1rem 0}
  .porter-research .pr__stats{grid-template-columns:1fr 1fr}
  .porter-research .pr__grid2{grid-template-columns:1fr}
  .porter-research .pr__title{font-size:24px}
  .porter-research .pr__map{height:420px}
}
@media (prefers-reduced-motion:reduce){.porter-research *{animation:none!important;transition:none!important}}

/* ---- v0.3 interactive-article layout ---- */
.porter-research .pr__year{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#f1ddc9;border:1px solid rgba(255,255,255,.35);border-radius:999px;padding:3px 11px;margin-bottom:12px}
.porter-research .pr__body{padding:6px 0}
.porter-research .pr__prose{padding:22px 26px 10px}
.porter-research .pr__prose p{font-size:16.5px;line-height:1.65;color:#37302a;margin:0 0 14px}
.porter-research .pr__prose b{color:var(--pr-darker)}
.porter-research .pr__note{font-size:12.5px;font-style:italic;color:var(--pr-muted);margin:10px 0 0;padding:0 26px}
.porter-research .pr__block .pr__note{padding:0}
.porter-research .pr__viz{display:grid;grid-template-columns:1.45fr 1fr;gap:18px;align-items:start}
.porter-research .pr__vtab{font-size:13px;margin:0}
.porter-research .pr__vtab th[scope=row]{font-weight:600;padding:5px 10px 5px 0}
.porter-research .pr__vtab td{padding:5px 0 5px 10px;text-align:right;font-variant-numeric:tabular-nums}
.porter-research .pr__share{color:var(--pr-muted)}
.porter-research .pr__scroll{max-height:430px;overflow:auto;border:1px solid var(--pr-line);border-radius:11px;margin-top:6px}
.porter-research .pr__scroll table{margin:0}
.porter-research .pr__scroll thead th{position:sticky;top:0;background:#fff;box-shadow:0 1px 0 var(--pr-line);z-index:1}
.porter-research .pr__context .pr__ctx-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-top:6px}
.porter-research .pr__ctx{background:#fff;border:1px solid var(--pr-line);border-radius:11px;padding:14px}
.porter-research .pr__ctx b{display:block;font-size:25px;color:var(--pr-main);letter-spacing:-.5px}
.porter-research .pr__ctx span{display:block;font-size:12.5px;color:var(--pr-ink);margin:4px 0 8px}
.porter-research .pr__ctx a{font-size:11.5px;color:var(--pr-muted);text-decoration:none}
.porter-research .pr__ctx a:hover{color:var(--pr-main);text-decoration:underline}
.porter-research .pr__btn{display:inline-block;background:var(--pr-main);color:#fff;text-decoration:none;font-weight:700;font-size:13.5px;padding:9px 16px;border-radius:9px}
.porter-research .pr__btn:hover{background:var(--pr-darker)}
.porter-research .pr__srclist{font-size:12.5px;margin:0 0 12px}
.porter-research .pr__srclist summary{cursor:pointer;color:var(--pr-main);font-weight:600}
.porter-research .pr__srclist ul{margin:8px 0 0;padding-left:18px}
.porter-research .pr__srclist a{color:var(--pr-main)}
.porter-research .pr__srclist b{display:block;color:var(--pr-ink);margin-bottom:5px;font-size:13px}
.porter-research .pr__disclaimer{font-size:11.5px;line-height:1.5;color:var(--pr-muted);border-top:1px solid var(--pr-line);margin-top:14px;padding-top:12px}
.porter-research .pr__dl{margin:6px 0 14px}
@media(max-width:760px){
  .porter-research .pr__prose,.porter-research .pr__note{padding-left:18px;padding-right:18px}
  .porter-research .pr__viz{grid-template-columns:1fr}
  .porter-research .pr__context .pr__ctx-grid{grid-template-columns:1fr 1fr}
}
