/* Homepage: a short introduction, a real program and clear ways to take part. */
.hero--community { background: var(--mist); color: var(--ink); padding-block: clamp(2.5rem, 5vw, 4.5rem); border-block-end: 1px solid var(--line); }
.hero--community .hero__grid { display: grid; gap: 2.5rem; align-items: center; }
.hero--community .hero__grid > * { min-inline-size: 0; }
.hero--community .hero__title { color: var(--night); font-size: clamp(2.25rem, 1.5rem + 2.5vw, 3.6rem); font-weight: 650; line-height: 1.18; letter-spacing: -.035em; max-inline-size: 19ch; margin-block: 0 1.25rem; }
:lang(ar) .hero--community .hero__title { line-height: 1.5; letter-spacing: 0; max-inline-size: 18ch; }
.hero--community .hero__lede { color: var(--ink-2); font-size: 1.05rem; max-inline-size: 48ch; margin-block-end: 1.75rem; }
.community-feature { display: grid; grid-template-columns: minmax(100px, .8fr) 1fr; align-items: center; gap: 1.5rem; padding: 1.5rem; background: var(--paper); border: 1px solid var(--line); border-radius: var(--radius); text-decoration: none; color: var(--ink); }
.community-feature img { inline-size: 100%; block-size: auto; aspect-ratio: 4 / 5; object-fit: contain; background: var(--night); border-radius: 2px; }
.community-feature__label { font-size: .8rem; color: var(--ink-2); }
.community-feature h2 { font-size: 1.25rem; line-height: 1.5; margin-block: .5rem .75rem; }
.community-feature p { color: var(--ink-2); font-size: .85rem; margin-block: .4rem; }
.community-feature .home-feature__status { color: var(--river-ink); font-weight: 600; }
.community-feature .link-arrow { display: inline-block; font-size: .9rem; margin-block-start: 1rem; text-decoration: underline; }
.community-feature:hover { color: var(--ink); border-color: var(--river); }
.community-feature:hover h2 { text-decoration: underline; text-underline-offset: .2em; }
.pillars { display: grid; gap: 1.5rem; grid-template-columns: 1fr; margin: 0; }
.pillar { display: flex; flex-direction: column; gap: .75rem; padding: 1.5rem 0; border-block-start: 1px solid var(--line); text-decoration: none; color: var(--ink); }
.pillar h3 { font-size: 1.15rem; margin: 0; }
.pillar p { margin: 0; color: var(--ink-2); font-size: .95rem; flex: 1; }
.pillar .link-arrow { font-size: .9rem; }
.pillar:hover h3 { text-decoration: underline; text-underline-offset: .2em; }
.board--three { grid-template-columns: 1fr; }
.subscribe-wrap { padding-block-start: 1rem; }
@media (min-width: 640px) {
  .pillars { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem 2rem; }
  .board--three { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (min-width: 1000px) {
  .hero--community .hero__grid { grid-template-columns: 1.2fr 1fr; gap: 4rem; }
  .pillars { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (max-width: 639px) {
  .hero--community { padding-block: 2rem; }
  .hero--community .hero__grid { gap: 2rem; }
  .hero--community .hero__title { font-size: clamp(2rem, 7.8vw, 2.75rem); }
  .hero--community .hero__lede { font-size: 1rem; }
  .community-feature { grid-template-columns: 88px minmax(0, 1fr); padding: 1rem; gap: 1rem; }
  .community-feature h2 { font-size: 1.05rem; margin-block: .35rem .5rem; }
  .community-feature p { font-size: .8rem; }
  .community-feature .link-arrow { font-size: .85rem; margin-block-start: .6rem; }
}
