/* Aion 2 Market Italia — text pages (community.html, privacy.html). */
main.page { width: min(820px, calc(100% - 32px)); margin: 0 auto; padding: clamp(32px, 6vw, 64px) 0 72px; }
main.page.widepage { width: min(1080px, calc(100% - 32px)); }
.page h1 { font-size: clamp(34px, 5vw, 54px); font-weight: 700; letter-spacing: -.03em; }
.page .lead { margin: 16px 0 0; font-size: 18px; color: var(--dim); max-width: 58ch; }
.page h2 { font-size: 26px; margin: 56px 0 14px; letter-spacing: -.02em; }
.page h3 { font-size: 19px; }
.page p, .page li { line-height: 1.65; max-width: 72ch; }
.page p { margin: 0 0 12px; }
.page .meta { color: var(--dim); font-size: 14px; margin-top: 10px; }
.page .cta { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 26px; }
.page .tablewrap { overflow-x: auto; border: 1px solid var(--line); border-radius: var(--r); }
.page table { width: 100%; border-collapse: collapse; font-size: 14.5px; min-width: 560px; }
.page th, .page td { text-align: left; vertical-align: top; padding: 10px 14px; border-bottom: 1px solid var(--line); }
.page th { color: var(--dim); font-size: 13px; background: var(--panel); }
.page tr:last-child td { border-bottom: 0; }

/* the three steps to get in: a real sequence, so they are numbered */
.steps { list-style: none; margin: 0; padding: 0; counter-reset: s; display: grid; gap: 0; border-top: 1px solid var(--line); }
.steps li { counter-increment: s; display: grid; grid-template-columns: 56px 1fr; gap: 0 8px; padding: 18px 0; border-bottom: 1px solid var(--line); max-width: none; }
.steps li::before { content: counter(s); font-family: var(--display); font-size: 34px; font-weight: 700; line-height: 1; color: var(--accent); }
.steps b { display: block; font-size: 17px; margin-bottom: 2px; }
.steps span { color: var(--dim); }

/* the four bots */
.bots { display: grid; gap: 14px; }
.bot { display: grid; grid-template-columns: 76px minmax(0, 1fr); gap: 4px 20px; padding: 20px; border: 1px solid var(--line); border-radius: var(--r); background: var(--panel); }
.bot img { grid-row: 1 / span 3; width: 76px; height: 76px; border-radius: 50%; object-fit: cover; }
.bot h3 { align-self: end; }
.bot .role { color: var(--dim); margin: 0; }
.bot dl { margin: 12px 0 0; display: grid; gap: 6px; }
.bot dl div { display: grid; grid-template-columns: minmax(120px, 190px) 1fr; gap: 12px; align-items: baseline; }
.bot dt { font-weight: 700; color: var(--accent); overflow-wrap: anywhere; }
.bot dd { margin: 0; color: var(--dim); }
@media (max-width: 620px) {
  .bot { grid-template-columns: 52px minmax(0, 1fr); gap: 2px 14px; padding: 16px; } .bot img { width: 52px; height: 52px; grid-row: 1 / span 2; }
  .bot dl { grid-column: 1 / -1; } .bot dl div { grid-template-columns: 1fr; gap: 0; }
  .steps li { grid-template-columns: 40px 1fr; } .steps li::before { font-size: 28px; }
}
