.hero { max-width: 760px; margin: 0 auto; padding: 56px 20px 36px; text-align: center; }
.hero h1 { font-size: clamp(2rem, 5vw, 3.1rem); line-height: 1.12; margin-bottom: .45em; }
.hero p { font-size: 1.12rem; color: var(--text-soft); }
.hero-actions { display: flex; gap: 10px; justify-content: center; flex-wrap: wrap; margin-top: 22px; }
.band { max-width: 760px; margin: 0 auto; padding: 26px 20px; }
.band p { color: var(--text-soft); }
.features { max-width: 1040px; margin: 0 auto; padding: 16px 20px; display: grid; gap: 14px; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); }
.features article { padding: 18px; background: var(--bg-raised); border: 1px solid var(--line); border-radius: var(--radius); }
.features h3 { margin-bottom: .35em; }
.features p { margin: 0; color: var(--text-soft); font-size: .95rem; }
.columns { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 0 24px; color: var(--text-soft); }
.columns ul { margin: 0; }
.help-steps { padding-left: 1.2em; }
.help-index { display: grid; gap: 8px; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); padding: 0; list-style: none; }
.help-index a { display: block; padding: 10px 12px; background: var(--bg-raised); border: 1px solid var(--line); border-radius: var(--radius-small); color: var(--text); }
.member-card { max-width: 640px; margin: 24px auto; padding: 20px; }
.member-card h1 { font-size: 1.4rem; }
.record { padding: 14px 0; border-bottom: 1px solid var(--line); }
.record:last-child { border-bottom: 0; }
.record h2 { font-size: 1.05rem; margin-bottom: 4px; }
.record ul { color: var(--text-soft); font-size: .92rem; margin: 6px 0; }
.member-card textarea { width: 100%; min-height: 130px; padding: 10px; background: var(--bg-sunken); color: var(--text); border: 1px solid var(--line); border-radius: 8px; font: .95rem var(--font); }
