/* Homepage V8 composition, using the project's canonical tokens and components.
   Page-scoped: no font/reset/token copies and no styles on authenticated views. */
.rpa-page-homepage .rpa-public-header { max-width:1320px;padding-block:12px;gap:24px; }
.rpa-page-homepage .rpa-public-brand img { width:108px;height:48px; }
.rpa-page-homepage .rpa-public-tagline { margin-right:auto;border-left:1px solid var(--hub-line);padding-left:24px;font-size:11px;color:var(--hub-muted); }
.rpa-page-homepage .rpa-public-header .hub-button { min-width:82px; }
.rpa-page-homepage .rpa-public-main { max-width:none;padding:0; }
.rpa-page-homepage .wrap { width:min(calc(100% - 80px),1240px);margin-inline:auto; }
.rpa-page-homepage .hero { border-bottom:1px solid var(--hub-line); }
.rpa-page-homepage .hero-grid { display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:44px;align-items:start;padding-block:34px 55px; }
.rpa-page-homepage .join { min-width:0;background:var(--hub-card);border:1px solid var(--hub-line);border-radius:var(--rpa-radius-card);padding:27px 29px 22px;scroll-margin-top:24px; }
.rpa-page-homepage .eyebrow { display:flex;align-items:center;gap:9px;font-size:10px;font-weight:650;text-transform:uppercase;letter-spacing:.12em;color:var(--hub-muted); }
.rpa-page-homepage .eyebrow>span,.rpa-page-homepage .status-dot { display:inline-block;flex:none;width:6px;height:6px;background:var(--hub-green);border-radius:50%; }
.rpa-page-homepage .join h1 { font-size:clamp(31px,2.7vw,42px);font-weight:600;line-height:1.08;max-width:450px;margin:13px 0 12px; }
.rpa-page-homepage .join h1 em { color:var(--hub-green);font-style:normal; }
.rpa-page-homepage .hero-lead { color:var(--hub-muted);font-size:13px;line-height:1.65;margin-bottom:17px;max-width:400px; }
.rpa-page-homepage .signup-fields { min-width:0; }
.rpa-page-homepage .signup-fields>label:not(.consent) { display:block;font-size:11px;font-weight:600;margin:11px 0 4px; }
.rpa-page-homepage .signup-fields>input { width:100%;min-width:0;height:42px;border:1px solid var(--rpa-color-neutral-555);border-radius:var(--rpa-radius-input);padding:9px 11px;background:var(--hub-panel);color:var(--hub-text);font-size:14px; }
.rpa-page-homepage .signup-fields>input::placeholder { color:var(--hub-muted);font-size:12px; }
.rpa-page-homepage .signup-fields>input:disabled { opacity:.75;cursor:not-allowed; }
.rpa-page-homepage .consent { display:flex;align-items:flex-start;gap:8px;font-size:11px;line-height:1.5;color:var(--hub-muted);margin:13px 0 15px; }
.rpa-page-homepage .consent input { margin:3px 0 0;flex:none;accent-color:var(--hub-green); }
.rpa-page-homepage .consent a,.rpa-page-homepage .member a,.rpa-page-homepage .recovery-link { color:var(--hub-green);text-decoration:underline; }
.rpa-page-homepage .signup-cta { width:100%;font-size:12px;gap:12px;min-height:44px; }
.rpa-page-homepage .hub-button:disabled { opacity:.6;cursor:not-allowed; }
.rpa-page-homepage .member { text-align:center;font-size:12px;margin-top:12px;color:var(--hub-muted); }
.rpa-page-homepage .captcha-slot { width:100%;min-width:0;margin:18px 0 20px;min-height:78px; }
.rpa-page-homepage .captcha-preview { color:var(--hub-muted);font-size:11px;line-height:1.6;padding:12px 0;margin-bottom:8px;border-top:1px solid var(--hub-line); }
.rpa-page-homepage .platform-side { min-width:0;padding-top:1px; }
.rpa-page-homepage .platform-top { display:flex;align-items:center;gap:7px;margin-bottom:13px;color:var(--hub-muted);font-size:11px;font-weight:600; }
.rpa-page-homepage .platform-tag { margin-left:auto;font-size:10px;border:1px solid var(--hub-line);border-radius:20px;padding:4px 10px; }
.rpa-page-homepage .platform-visual { position:relative;isolation:isolate;background:none;border:0;border-radius:0;min-height:466px;display:grid;place-items:center;padding:24px 17px; }
.rpa-page-homepage .platform-visual::before { content:"";position:absolute;inset:12% 4%;z-index:-1;pointer-events:none;background-image:linear-gradient(#48484822 1px,transparent 1px),linear-gradient(90deg,#48484822 1px,transparent 1px);background-size:76px 76px;mask-image:radial-gradient(ellipse,#000 20%,transparent 72%); }
.rpa-page-homepage .visual-halo { display:none; }
.rpa-page-homepage .platform-image { width:100%;height:auto;max-height:440px;object-fit:contain;filter:none; }
.rpa-page-homepage .platform-bottom { display:flex;align-items:center;justify-content:space-between;gap:15px;margin:18px 0 14px;font-size:12px; }
.rpa-page-homepage .platform-bottom>span { font-family:var(--rpa-font-heading);font-size:16px;font-weight:600; }
.rpa-page-homepage .platform-bottom a { color:var(--hub-green);font-weight:600; }
.rpa-page-homepage .platform-points { display:flex;flex-wrap:wrap;gap:9px;list-style:none;padding:15px 0 0;margin:0;border-top:1px solid var(--hub-line); }
.rpa-page-homepage .platform-points li { display:inline-flex;align-items:center;gap:6px;font-size:11px;color:var(--hub-muted);background:var(--hub-card);border:1px solid var(--hub-line);padding:7px 9px;border-radius:var(--rpa-radius-sm); }
.rpa-page-homepage .platform-points span { font-size:14px;color:var(--hub-green); }
.rpa-page-homepage .membership { padding:85px 0 93px;background:var(--hub-panel); }
.rpa-page-homepage .membership-grid { display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:64px;align-items:start; }
.rpa-page-homepage .founders { min-width:0;scroll-margin-top:20px; }
.rpa-page-homepage .founders h2 { font-size:clamp(27px,2.8vw,38px);margin:12px 0 23px;max-width:420px; }
.rpa-page-homepage .people-grid { display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px; }
.rpa-page-homepage .person { min-width:0;border:1px solid var(--hub-line);border-radius:var(--rpa-radius-card);overflow:hidden;background:var(--hub-card); }
.rpa-page-homepage .person-photo { background:var(--rpa-color-neutral-202020);overflow:hidden; }
.rpa-page-homepage .person-photo img { width:100%;height:286px;object-fit:cover; }
.rpa-page-homepage .renan .person-photo img { object-position:53% 20%; }
.rpa-page-homepage .diana .person-photo img { object-position:50% 18%; }
.rpa-page-homepage .person-body { padding:18px 17px 20px; }
.rpa-page-homepage .person h3 { font-size:20px;font-weight:600;line-height:1.13;min-height:45px;margin-bottom:8px; }
.rpa-page-homepage .person-role { font-size:10px;line-height:1.45;text-transform:uppercase;letter-spacing:.04em;font-weight:600;color:var(--hub-muted);margin-bottom:11px;min-height:26px; }
.rpa-page-homepage .person-body p:last-child { font-size:12px;line-height:1.65;color:var(--hub-muted); }
.rpa-page-homepage .benefits { min-width:0; }
.rpa-page-homepage .benefits h2 { font-size:clamp(29px,3vw,42px);line-height:1.07;margin:12px 0 16px; }
.rpa-page-homepage .benefits-lead { font-size:14px;color:var(--hub-muted);line-height:1.65;max-width:460px;margin-bottom:21px; }
.rpa-page-homepage .benefit-list { display:grid;gap:12px; }
.rpa-page-homepage .benefit { display:flex;align-items:flex-start;gap:14px;border:1px solid var(--hub-line);background:var(--hub-card);border-radius:var(--rpa-radius-card);padding:17px 17px 19px; }
.rpa-page-homepage .benefit-icon { display:grid;place-items:center;flex:none;width:36px;height:36px;background:var(--rpa-color-neutral-202020);color:var(--hub-green);border-radius:var(--rpa-radius-sm); }
.rpa-page-homepage .benefit-icon > i.rpa-icon { font-size:21px;line-height:1;width:23px;text-align:center; }
.rpa-page-homepage .platform-points span > i.rpa-icon { font-size:14px;line-height:1;width:16px;text-align:center; }
.rpa-page-homepage .benefit h3 { font-size:16px;letter-spacing:-.02em;margin-bottom:7px; }
.rpa-page-homepage .benefit p { font-size:12px;color:var(--hub-muted);line-height:1.6; }
.rpa-page-homepage .benefits-cta { margin-top:23px;min-height:47px; }
.rpa-page-homepage .access-note { color:var(--hub-muted);font-size:11px;margin-top:9px; }
.rpa-page-homepage .faq { border-top:1px solid var(--hub-line);padding:56px 0 64px; }
.rpa-page-homepage .faq-inner { max-width:960px; }
.rpa-page-homepage .faq h2 { font-size:clamp(29px,3vw,38px);margin-bottom:26px; }
.rpa-page-homepage .faq-list { margin-bottom:28px; }
.rpa-page-homepage .faq-item { padding:20px 0;border-top:1px solid var(--hub-line); }
.rpa-page-homepage .faq-item h3 { font-size:17px;letter-spacing:-.02em;line-height:1.35;margin-bottom:9px; }
.rpa-page-homepage .faq-item p { font-size:14px;line-height:1.65;color:var(--hub-muted);max-width:800px; }
.rpa-page-homepage .footer { background:var(--hub-panel);border-top:1px solid var(--hub-line);padding:33px 0 24px; }
.rpa-page-homepage .footer-inner { display:flex;align-items:center;gap:26px; }
.rpa-page-homepage .footer-inner img { width:91px;height:48px;object-fit:contain; }
.rpa-page-homepage .footer-inner p { font-size:11px;color:var(--hub-muted);line-height:1.5; }
.rpa-page-homepage .footer-inner nav { margin-left:auto;display:flex;flex-wrap:wrap;gap:13px 22px; }
.rpa-page-homepage .footer-inner nav a { font-size:11px;color:var(--hub-muted); }
.rpa-page-homepage .footer-risk,.rpa-page-homepage .homepage-preview-note { border-top:1px solid var(--hub-line);margin-top:23px;padding-top:15px;font-size:11px;color:var(--hub-muted);line-height:1.55; }
.rpa-page-homepage .homepage-preview-note a { color:var(--hub-green);text-decoration:underline; }
.rpa-page-homepage .login-dialog { border:1px solid var(--rpa-color-neutral-555);border-radius:var(--rpa-radius-card);box-shadow:0 30px 80px #0009;padding:0;background:var(--hub-card);color:var(--hub-text);width:min(calc(100% - 30px),445px);max-height:calc(100dvh - 30px);overflow:auto; }
.rpa-page-homepage .login-dialog::backdrop { background:#000c;backdrop-filter:blur(4px); }
.rpa-page-homepage .login-panel { padding:30px;position:relative; }
.rpa-page-homepage .close-dialog { position:absolute;top:12px;right:12px;width:44px;height:44px;border:1px solid var(--hub-line);border-radius:var(--rpa-radius-sm);background:var(--rpa-color-neutral-202020);color:var(--hub-text);font-size:20px; }
.rpa-page-homepage .login-panel>.eyebrow { padding-right:36px; }
.rpa-page-homepage .login-panel h2 { font-size:30px;margin:14px 0 10px; }
.rpa-page-homepage .login-intro { font-size:13px;color:var(--hub-muted);margin-bottom:18px; }
.rpa-page-homepage .recovery-link { display:block;text-align:right;font-size:12px;margin:12px 0 17px; }
.rpa-page-homepage .login-preview-note { font-size:12px;color:var(--hub-muted);margin-bottom:16px; }
@media(max-width:1080px) {
  .rpa-page-homepage .wrap { width:min(calc(100% - 48px),1240px); }
  .rpa-page-homepage .hero-grid { grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:27px; }
  .rpa-page-homepage .join { padding:25px 24px 22px; }
  .rpa-page-homepage .join h1 { font-size:35px; }
  .rpa-page-homepage .platform-visual { min-height:430px; }
  .rpa-page-homepage .membership-grid { gap:30px; }
  .rpa-page-homepage .person-body { padding:17px 14px; }
  .rpa-page-homepage .person-photo img { height:260px; }
  .rpa-page-homepage .person h3 { font-size:18px; }
}
@media(max-width:760px) {
  .rpa-page-homepage .wrap { width:min(calc(100% - 36px),1240px); }
  .rpa-page-homepage .rpa-public-header { padding-inline:18px;gap:12px; }
  .rpa-page-homepage .rpa-public-brand img { width:98px;height:47px; }
  .rpa-page-homepage .rpa-public-tagline { display:none; }
  .rpa-page-homepage .rpa-public-header .hub-button { margin-left:auto; }
  .rpa-page-homepage .hero-grid { grid-template-columns:1fr;gap:32px;padding:28px 0 43px; }
  .rpa-page-homepage .join { padding:24px 22px 21px; }
  .rpa-page-homepage .join h1 { font-size:clamp(32px,8.8vw,51px);max-width:480px;margin:14px 0 13px; }
  .rpa-page-homepage .hero-lead { font-size:14px; }
  .rpa-page-homepage .signup-fields>input { height:44px;font-size:16px; }
  .rpa-page-homepage .signup-fields>input::placeholder { font-size:13px; }
  .rpa-page-homepage .signup-fields>label:not(.consent) { font-size:12px;margin-top:12px; }
  .rpa-page-homepage .consent { font-size:12px; }
  .rpa-page-homepage .signup-cta { min-height:46px; }
  .rpa-page-homepage .platform-top { font-size:10px; }
  .rpa-page-homepage .platform-visual { min-height:0;padding:21px 12px; }
  .rpa-page-homepage .platform-image { max-height:none; }
  .rpa-page-homepage .platform-bottom { gap:10px; }
  .rpa-page-homepage .platform-bottom>span { font-size:14px; }
  .rpa-page-homepage .platform-bottom a { font-size:11px; }
  .rpa-page-homepage .platform-points { gap:7px; }
  .rpa-page-homepage .platform-points li { font-size:10px;padding:6px 8px; }
  .rpa-page-homepage .membership { padding:58px 0 63px; }
  .rpa-page-homepage .membership-grid { grid-template-columns:1fr;gap:36px; }
  .rpa-page-homepage .people-grid { gap:12px; }
  .rpa-page-homepage .person-photo img { height:225px; }
  .rpa-page-homepage .founders h2 { font-size:34px;margin-bottom:20px; }
  .rpa-page-homepage .benefits h2 { font-size:34px;max-width:500px; }
  .rpa-page-homepage .benefits-lead { font-size:14px; }
  .rpa-page-homepage .benefit { padding:18px 16px;gap:13px; }
  .rpa-page-homepage .benefit p { font-size:13px; }
  .rpa-page-homepage .benefits-cta { width:100%; }
  .rpa-page-homepage .access-note { text-align:center;font-size:12px; }
  .rpa-page-homepage .faq { padding:40px 0 48px; }
  .rpa-page-homepage .faq .hub-button { width:100%; }
  .rpa-page-homepage .footer-inner { align-items:flex-start;flex-wrap:wrap;gap:18px; }
  .rpa-page-homepage .footer-inner nav { margin-left:0;width:100%;gap:12px 18px; }
  .rpa-page-homepage .footer-inner nav a { font-size:12px; }
  .rpa-page-homepage .login-panel { padding:29px 22px; }
}
@media(max-width:480px) {
  .rpa-page-homepage .people-grid { grid-template-columns:1fr;gap:17px; }
  .rpa-page-homepage .person-photo img { height:290px; }
  .rpa-page-homepage .person-body { padding:19px 20px 22px; }
  .rpa-page-homepage .person h3 { font-size:22px;min-height:0; }
  .rpa-page-homepage .person-role { font-size:11px;min-height:0;margin-bottom:10px; }
  .rpa-page-homepage .person-body p:last-child { font-size:13px;line-height:1.65; }
}
@media(max-width:360px) {
  .rpa-page-homepage .join { padding:22px 18px 20px; }
  .rpa-page-homepage .join h1 { font-size:32px; }
  .rpa-page-homepage .signup-cta { font-size:11px;gap:8px; }
  .rpa-page-homepage .platform-tag { display:none; }
  .rpa-page-homepage .platform-bottom { align-items:flex-start;flex-direction:column; }
  .rpa-page-homepage .founders h2,.rpa-page-homepage .benefits h2 { font-size:31px; }
}
