/* A-Goal Initiative — single Insight (infographics, publications, press releases).
   Values from Insight.dc.html. Defensive !important: Blocksy styles h1, p, a
   and img globally (including the img{height:auto} leak). */

.agoal-insight-single{background:var(--cream,#FBF3E7);}
.is-wrap{width:100%;max-width:900px;margin-inline:auto;padding-inline:24px;}
.is-wrap-wide{width:100%;max-width:1200px;margin-inline:auto;padding-inline:24px;}

/* ---------- Masthead ---------- */
.is-head{position:relative;overflow:hidden;background:var(--navy,#1B2A41);color:var(--cream,#FBF3E7);padding-block:80px;}
.is-head-dots{position:absolute;inset:0;opacity:.07;background-image:radial-gradient(circle at center,#FBF3E7 1.2px,transparent 1.4px);background-size:22px 22px;pointer-events:none;}
.is-head > .is-wrap{position:relative;}

.is-back{display:inline-flex;align-items:center;gap:8px;font-family:var(--sans,'Plus Jakarta Sans',sans-serif);font-size:13px;font-weight:700;color:rgba(251,243,231,.6)!important;text-decoration:none!important;transition:color .2s ease;}
.is-back:hover{color:var(--ochre,#D89B3C)!important;}

.is-meta{margin-top:24px;display:flex;flex-wrap:wrap;align-items:center;gap:12px;}
.is-kicker{display:inline-flex;align-items:center;border-radius:9999px;border:1px solid rgba(216,155,60,.45);background:rgba(216,155,60,.14);padding:4px 12px;font-family:var(--sans,'Plus Jakarta Sans',sans-serif);font-size:10px;font-weight:700;letter-spacing:.14em;color:var(--ochre,#D89B3C);text-transform:uppercase;}
.is-date{font-family:var(--sans,'Plus Jakarta Sans',sans-serif);font-size:10px;font-weight:700;letter-spacing:.16em;color:rgba(251,243,231,.45);text-transform:uppercase;}

.is-title{font-family:var(--serif,'Playfair Display',Georgia,serif)!important;margin:24px 0 0!important;font-size:48px;line-height:1.08;font-weight:700;color:var(--cream,#FBF3E7)!important;text-wrap:balance;}
.is-standfirst{margin:20px 0 0!important;max-width:44rem;font-family:var(--sans,'Plus Jakarta Sans',sans-serif);font-size:18px;line-height:1.7;color:rgba(251,243,231,.72)!important;text-wrap:pretty;}

/* ---------- Body ---------- */
.is-body-band{background:var(--cream,#FBF3E7);color:var(--charcoal,#2A241F);padding-block:72px;}

.is-figure{overflow:hidden;border-radius:22px;background:var(--cream-2,#F3E7D6);}
.is-figure img{display:block;width:100%;}
/* Landscape assets fill a 16:9 frame as the design specifies. */
.is-figure.is-landscape{aspect-ratio:16/9;}
.is-figure.is-landscape img{height:100%!important;object-fit:cover;}
/* Portrait assets (most infographics and all publications) are the content
   itself — cropping them to 16:9 would cut off the artwork. Show them whole. */
.is-figure.is-portrait{display:flex;align-items:center;justify-content:center;padding:24px;}
.is-figure.is-portrait img{width:auto!important;height:auto!important;max-width:100%;max-height:78vh;object-fit:contain;border-radius:8px;}

.is-prose{margin-top:40px;font-family:var(--sans,'Plus Jakarta Sans',sans-serif);}
.is-prose > *:first-child{margin-top:0;}
.is-prose p{margin:0 0 24px;font-size:17px;line-height:1.85;color:rgba(42,36,31,.82)!important;text-wrap:pretty;}
.is-prose h2,.is-prose h3{font-family:var(--serif,'Playfair Display',Georgia,serif)!important;color:var(--navy,#1B2A41)!important;margin:36px 0 12px;line-height:1.25;}
.is-prose h2{font-size:26px;}
.is-prose h3{font-size:21px;}
.is-prose ul,.is-prose ol{margin:0 0 24px;padding-left:22px;}
.is-prose li{margin-bottom:10px;font-size:17px;line-height:1.75;color:rgba(42,36,31,.82);}
.is-prose a{color:var(--terracotta,#D14622)!important;}
.is-prose img{max-width:100%;height:auto!important;border-radius:12px;}
.is-prose blockquote{margin:0 0 24px;padding-left:20px;border-left:3px solid var(--ochre,#D89B3C);font-style:italic;color:rgba(42,36,31,.75);}

.is-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:48px;}
.is-btn-primary,.is-btn-ghost{display:inline-flex;align-items:center;gap:8px;border-radius:9999px!important;padding:13px 24px!important;font-family:var(--sans,'Plus Jakarta Sans',sans-serif);font-size:14px;font-weight:700;text-decoration:none!important;transition:all .2s ease;box-sizing:border-box;}
.is-btn-primary{background:var(--terracotta,#D14622)!important;border:0!important;color:#fff!important;}
.is-btn-primary:hover{background:var(--terracotta-deep,#A8351A)!important;transform:translateY(-2px);}
.is-btn-ghost{background:none!important;border:2px solid rgba(42,36,31,.25)!important;color:rgba(42,36,31,.75)!important;}
.is-btn-ghost:hover{border-color:var(--navy,#1B2A41)!important;color:var(--navy,#1B2A41)!important;}

/* ---------- Related ---------- */
.is-related-band{background:var(--cream-2,#F3E7D6);color:var(--charcoal,#2A241F);padding-block:72px;}
.is-related-label{display:inline-block;font-family:var(--sans,'Plus Jakarta Sans',sans-serif);font-size:12px;line-height:1.33;font-weight:700;letter-spacing:.18em;color:var(--terracotta,#D14622);text-transform:uppercase;}
.is-related-grid{display:grid;gap:20px;margin-top:28px;grid-template-columns:repeat(3,minmax(0,1fr));}
.is-related-card{display:flex;flex-direction:column;gap:8px;border-radius:18px;border:1px solid rgba(42,36,31,.1);background:var(--paper,#FFFCF7);padding:20px;text-decoration:none!important;transition:box-shadow .25s cubic-bezier(.22,.61,.36,1),transform .25s cubic-bezier(.22,.61,.36,1);}
.is-related-card:hover{box-shadow:0 22px 40px -26px rgba(27,42,65,.5);transform:translateY(-4px);}
.is-related-kicker{font-family:var(--sans,'Plus Jakarta Sans',sans-serif);font-size:10px;font-weight:700;letter-spacing:.14em;color:var(--terracotta,#D14622)!important;text-transform:uppercase;}
.is-related-title{font-family:var(--serif,'Playfair Display',Georgia,serif)!important;font-size:17px;line-height:1.4;font-weight:700;color:var(--navy,#1B2A41)!important;text-wrap:balance;}
.is-related-date{font-family:var(--sans,'Plus Jakarta Sans',sans-serif);font-size:12px;color:rgba(42,36,31,.55)!important;}

@media (max-width:900px){
  .is-head{padding-block:52px;}
  .is-body-band,.is-related-band{padding-block:48px;}
  .is-wrap,.is-wrap-wide{padding-inline:20px;}
  .is-title{font-size:32px;}
  .is-standfirst{font-size:16px;}
  .is-prose p,.is-prose li{font-size:16px;}
  .is-related-grid{grid-template-columns:1fr;}
  .is-figure.is-portrait{padding:14px;}
  .is-figure.is-portrait img{max-height:none;}
}
@media (max-width:520px){
  .is-title{font-size:27px;}
  .is-actions{flex-direction:column;align-items:stretch;}
  .is-btn-primary,.is-btn-ghost{justify-content:center;}
}
