/*
 * JPW archive cards
 * Editorial grid for insight/category indexes.
 */
body.jpw-site .jpw-archive-hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:72px 0 76px;
  background:#062f30;
  color:#f4f7ef;
  border-bottom:0;
}
body.jpw-site .jpw-archive-hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-2;
  background:
    radial-gradient(circle at 82% 12%,rgba(195,244,105,.2),transparent 26%),
    linear-gradient(rgba(214,242,213,.045) 1px,transparent 1px),
    linear-gradient(90deg,rgba(214,242,213,.045) 1px,transparent 1px);
  background-size:auto,72px 72px,72px 72px;
}
body.jpw-site .jpw-archive-hero::after{
  content:"INSIGHT";
  position:absolute;
  right:-.03em;
  bottom:-.28em;
  z-index:-1;
  color:rgba(239,248,236,.045);
  font:700 clamp(120px,21vw,300px)/1 Georgia,serif;
  letter-spacing:-.08em;
  pointer-events:none;
}
body.jpw-site .jpw-archive-hero .jpw-breadcrumb,
body.jpw-site .jpw-archive-hero .jpw-breadcrumb a{color:#b9ccc5}
body.jpw-site .jpw-archive-hero .jpw-eyebrow{color:#c9ef91}
body.jpw-site .jpw-archive-hero h1{
  max-width:none;
  margin:0;
  color:#fff;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(58px,8vw,112px);
  line-height:.92;
  letter-spacing:-.065em;
}
.jpw-archive-dot{color:var(--accent)}
.jpw-archive-hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:72px;align-items:end}
.jpw-archive-intro{max-width:500px;padding:0 0 8px 30px;border-left:1px solid rgba(225,244,228,.28)}
body.jpw-site .jpw-archive-intro p{margin:0 0 20px;color:#d7e4dd;font-size:14px;line-height:1.9}
.jpw-archive-intro span{display:inline-flex;align-items:center;gap:9px;color:#c9ef91;font:italic 11px/1.4 Georgia,serif;letter-spacing:.16em}
.jpw-archive-intro span::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 6px rgba(195,244,105,.12)}

.jpw-archive-section{position:relative;padding:88px 0 100px;background:linear-gradient(180deg,#f4f5ef 0%,#fff 55%,#f5f6f1 100%)}
.jpw-archive-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.jpw-archive-card{
  min-width:0;
  overflow:hidden;
  border:1px solid #ccd8ce;
  border-radius:18px;
  background:#fff;
  box-shadow:0 12px 35px rgba(14,52,44,.07);
  animation:jpw-archive-rise .72s cubic-bezier(.2,.72,.2,1) both;
  animation-delay:var(--jpw-card-delay,0ms);
  transition:transform .4s cubic-bezier(.2,.75,.2,1),box-shadow .4s,border-color .4s;
}
.jpw-archive-card.is-lead{grid-column:span 2;grid-row:span 2}
.jpw-archive-card-link{display:flex;height:100%;flex-direction:column}
@media(min-width:981px){
  .jpw-archive-card:nth-child(2) .jpw-archive-media,
  .jpw-archive-card:nth-child(3) .jpw-archive-media{aspect-ratio:16/7}
  .jpw-archive-card:nth-child(2) .jpw-archive-card-body,
  .jpw-archive-card:nth-child(3) .jpw-archive-card-body{padding:20px 22px 18px}
  body.jpw-site #jpw-main .jpw-archive-card:nth-child(2) h2,
  body.jpw-site #jpw-main .jpw-archive-card:nth-child(3) h2{font-size:17px;line-height:1.5}
  body.jpw-site .jpw-archive-card:nth-child(2) .jpw-archive-card-body>p,
  body.jpw-site .jpw-archive-card:nth-child(3) .jpw-archive-card-body>p{display:none}
  .jpw-archive-card:nth-child(2) .jpw-archive-meta,
  .jpw-archive-card:nth-child(3) .jpw-archive-meta{margin-bottom:12px}
  .jpw-archive-card:nth-child(2) .jpw-archive-read,
  .jpw-archive-card:nth-child(3) .jpw-archive-read{padding-top:12px}
}

.jpw-archive-media{position:relative;overflow:hidden;aspect-ratio:16/9;background:#123c38}
.jpw-archive-card.is-lead .jpw-archive-media{aspect-ratio:2/1}
.jpw-archive-image{display:block;width:100%;height:100%!important;object-fit:cover;transform:scale(1.001);transition:transform .75s cubic-bezier(.2,.72,.2,1),filter .5s;filter:saturate(.9) contrast(1.02)}
.jpw-archive-media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(2,30,29,.22));pointer-events:none}
.jpw-archive-number{position:absolute;right:18px;top:16px;z-index:1;display:grid;place-items:center;width:42px;height:42px;border:1px solid rgba(255,255,255,.65);border-radius:50%;background:rgba(4,39,37,.7);color:#fff;font:italic 11px/1 Georgia,serif;backdrop-filter:blur(8px)}
.jpw-archive-fallback{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;padding:30px;background:radial-gradient(circle at 75% 20%,#5b8668,#123c38 58%);color:#fff}
.jpw-archive-fallback span{font:700 clamp(44px,6vw,82px)/1 Georgia,serif;letter-spacing:-.06em}
.jpw-archive-fallback b{margin-top:8px;color:var(--accent);font-size:10px;letter-spacing:.18em}
.jpw-archive-card-body{display:flex;flex:1;flex-direction:column;padding:25px 25px 22px}
.jpw-archive-card.is-lead .jpw-archive-card-body{padding:29px 30px 25px}
.jpw-archive-meta{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px;color:#64776f;font:10px/1.4 Georgia,serif;letter-spacing:.1em}
.jpw-archive-meta span{padding:5px 9px;border-radius:99px;background:#eaf4dc;color:#315a48;font-family:inherit}
body.jpw-site #jpw-main .jpw-archive-card h2{margin:0 0 13px;font-size:20px;line-height:1.55;letter-spacing:-.025em;text-wrap:balance}
body.jpw-site #jpw-main .jpw-archive-card.is-lead h2{font-size:clamp(24px,2.35vw,34px);line-height:1.45}
body.jpw-site .jpw-archive-card-body>p{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3;margin:0 0 22px;color:#5c7068;font-size:13px;line-height:1.8}
.jpw-archive-read{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:auto;padding-top:17px;border-top:1px solid #d9e1da;color:#234d43;font-size:10px;font-weight:750;letter-spacing:.14em}
.jpw-archive-read b{display:grid;place-items:center;width:33px;height:33px;border-radius:50%;background:#edf3ea;font-size:15px;transition:transform .35s,background .35s}
.jpw-archive-card:hover{transform:translateY(-8px);border-color:#9cb7a2;box-shadow:0 25px 55px rgba(9,49,41,.16)}
.jpw-archive-card:hover .jpw-archive-image{transform:scale(1.065);filter:saturate(1.04) contrast(1.02)}
.jpw-archive-card:hover .jpw-archive-read b{transform:rotate(45deg);background:var(--accent)}
.jpw-archive-card:focus-within{outline:3px solid #177e79;outline-offset:5px}
.jpw-archive-card-link:focus{outline:0}
.jpw-archive-pagination{margin-top:56px}
.jpw-archive-pagination .navigation{margin:0}
.jpw-archive-pagination .nav-links{display:flex;justify-content:center;align-items:center;gap:8px}
.jpw-archive-pagination .page-numbers{display:grid;place-items:center;min-width:44px;height:44px;padding:0 14px;border:1px solid #c7d4ca;border-radius:99px;background:#fff;color:#254d43;font-size:12px;text-decoration:none;transition:background .25s,border-color .25s,transform .25s}
.jpw-archive-pagination .page-numbers:hover{transform:translateY(-2px);border-color:#557a67}
.jpw-archive-pagination .page-numbers.current{border-color:var(--ink);background:var(--ink);color:#fff}
.jpw-archive-pagination .prev,.jpw-archive-pagination .next{padding-inline:20px}
@keyframes jpw-archive-rise{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}

@media(max-width:980px){
  .jpw-archive-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
  .jpw-archive-card.is-lead{grid-column:span 2;grid-row:auto}
}
@media(max-width:760px){
  body.jpw-site .jpw-archive-hero{padding:42px 0 48px}
  .jpw-archive-hero-grid{grid-template-columns:1fr;gap:32px}
  .jpw-archive-intro{padding:0;border-left:0;max-width:580px}
  body.jpw-site .jpw-archive-hero h1{font-size:clamp(48px,16.8vw,68px)}
  body.jpw-site .jpw-archive-hero::after{font-size:120px;bottom:-.18em}
  .jpw-archive-section{padding:55px 0 70px}
  .jpw-archive-grid{grid-template-columns:1fr;gap:18px}
  .jpw-archive-card.is-lead{grid-column:auto}
  .jpw-archive-card.is-lead .jpw-archive-media,.jpw-archive-media{aspect-ratio:16/9}
  .jpw-archive-card.is-lead .jpw-archive-card-body,.jpw-archive-card-body{padding:21px 20px 19px}
  body.jpw-site #jpw-main .jpw-archive-card.is-lead h2,body.jpw-site #jpw-main .jpw-archive-card h2{font-size:19px}
  .jpw-archive-card-body>p{-webkit-line-clamp:2}
  .jpw-archive-pagination{margin-top:38px}
}
@media(prefers-reduced-motion:reduce){
  .jpw-archive-card{animation:none;transition:none}
  .jpw-archive-image,.jpw-archive-read b,.jpw-archive-pagination .page-numbers{transition:none}
}
