/* Long-form text: the privacy policy and the blog posts. One readable,
   left-aligned column in the site's own type and colour tokens, so it sits
   in the same system as every other page. */

/* A post opens with its title only, so its hero does not need the full
   56vh the landing heroes use, and the text follows it closely. */
.hero.hero-article{ min-height:0; padding-bottom:0; }
.article-section{ padding-top:6vh; }

.article{
  max-width:760px;
  margin:0 auto;
  color:var(--text-dim);
  font-size:1.02rem;
  line-height:1.75;
}
.article > * + *{ margin-top:16px; }
.article h2{
  font-family:'Poppins',sans-serif;
  font-weight:700;
  font-size:clamp(1.25rem, 2.2vw, 1.5rem);
  line-height:1.3;
  color:#f4f9fb;
  margin-top:48px;
}
.article h3{
  font-family:'Poppins',sans-serif;
  font-weight:600;
  font-size:1.05rem;
  line-height:1.4;
  color:var(--cyan-bright);
  margin-top:28px;
}
.article h2 + *, .article h3 + *{ margin-top:10px; }
.article ul, .article ol{ padding-left:1.3em; }
.article li + li{ margin-top:6px; }
.article li::marker{ color:var(--cyan); }
.article strong{ color:var(--text); }
.article a:not(.btn){
  color:var(--cyan-bright);
  text-decoration:underline;
  text-underline-offset:3px;
  overflow-wrap:anywhere;
}
.article a:not(.btn):hover{ color:#fff; }
.article blockquote{
  padding-left:18px;
  border-left:2px solid var(--glass-border);
  font-style:italic;
}
.article blockquote p + p{ margin-top:10px; font-style:normal; }
.article address{ font-style:normal; }
.article-meta{
  font-family:'Poppins',sans-serif;
  font-weight:600;
  font-size:0.82rem;
  letter-spacing:0.06em;
  text-transform:uppercase;
  color:var(--cyan-bright);
}
.article-figure{ margin:0 0 8px; }
.article-figure img{
  display:block;
  width:100%;
  height:auto;
  max-height:480px;
  object-fit:cover;
  border-radius:20px;
  border:1px solid var(--glass-border);
  box-shadow:0 24px 44px rgba(0,0,0,0.45);
}
.article-back{ margin-top:48px; }
