/* Build S46 (L3): the role pages (/ai-receptionist, /ai-executive-assistant, /ai-admin-assistant). */
.role-wrap { max-width: 860px; }
.role-hero { padding: 8px 0 24px; }
.role-hero .page-title { margin-bottom: 12px; }
.role-section { margin: 40px 0; }
.role-section h2 { margin-bottom: 14px; }
.role-start { display: grid; gap: 8px; max-width: 520px; padding: 18px; border-radius: 14px; background: #fff; border: 1px solid rgba(18, 19, 21, .12); }
.role-start label { font-weight: 600; font-size: 15px; }
.role-start .btn { margin-top: 6px; justify-self: start; }
.role-start .field-hint { margin: 0; font-size: 13px; opacity: .75; }
.role-does { display: grid; gap: 14px; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); padding: 0; list-style: none; }
.role-does li { padding: 14px 16px; border-radius: 12px; background: #fff; border: 1px solid rgba(18, 19, 21, .1); }
.role-does strong { display: block; margin-bottom: 4px; }
.role-table-wrap { overflow-x: auto; }
.role-table { width: 100%; border-collapse: collapse; font-size: 15px; }
.role-table th, .role-table td { text-align: left; vertical-align: top; padding: 10px 12px; border-bottom: 1px solid rgba(18, 19, 21, .12); }
.role-table tr.is-ours { background: rgba(255, 91, 26, .08); }
.role-sources { font-size: 13px; opacity: .8; margin-top: 10px; }
.role-sources li { margin: 4px 0; }
.role-steps li, .role-faq dd { margin-bottom: 10px; }
.role-faq dt { font-weight: 600; margin-top: 14px; }
.role-faq dd { margin-left: 0; }
.role-roles { font-size: 15px; }
