/* I59: The Foundation. Shared foundation-details, referral-journey and billing-review styles stay unchanged; these rules are scoped to .fa-*. */
.fa-page .rj-dlg[open]{animation:none}
.fa-page #overview{scroll-margin-top:72px}
.fa-page .rj-hint{max-width:720px;margin-inline:auto;color:#b5c0d2;font-size:14px}

/* Visible native focus */
.fa-page a:focus-visible,.fa-page button:focus-visible{outline:3px solid var(--gold-l);outline-offset:3px}
.fa-page .rj-card:focus-visible,.fa-hero:focus-visible{outline-offset:4px}

/* Four independently labelled shortcuts above the hero */
.fa-jump{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 18px}
.fa-jump a{display:flex;flex-direction:column;justify-content:center;gap:2px;min-width:0;min-height:56px;padding:10px 14px;border:1px solid var(--line);border-radius:12px;background:var(--card);color:var(--cream);font-size:14px;font-weight:800;line-height:1.3;text-decoration:none;overflow-wrap:anywhere}
.fa-jump small{color:var(--gold-l);font-size:11px;font-weight:800;letter-spacing:.06em}
.fa-jump a:hover,.fa-jump a:focus-visible{border-color:var(--gold-l);background:linear-gradient(180deg,rgba(212,175,55,.12),#151a24);color:var(--cream)}

/* Hero */
.fa-hero{display:block;border-radius:16px;color:var(--text);text-decoration:none}
.fa-hero:hover .br-art{border-color:var(--gold-l)}
.fa-hero-go{display:flex;align-items:center;justify-content:center;min-height:48px;margin-top:10px;padding:0 14px;border:1px solid var(--gold);border-radius:10px;background:var(--gold-f);color:var(--cream);font-size:14px;font-weight:800;text-align:center}
.fa-hero:hover .fa-hero-go{background:rgba(212,175,55,.24)}
.fa-cap{margin:10px 0 0;color:#b5c0d2;font-size:13.5px;text-align:center}

/* Facts, meaning and decisions */
.fa-roles li{border-top-color:var(--c)}

/* Example cards */
.fa-cards .rj-tag{align-self:flex-start}
.fa-cards .rj-card h3{font-size:20px}
.fa-facts{display:grid;gap:8px;margin:4px 0 12px}
.fa-facts div{min-width:0;padding:8px 10px;border:1px solid var(--line-s);border-left:3px solid var(--c);border-radius:10px;background:var(--chip)}
.fa-facts dt{color:var(--c);font-size:11px;font-weight:800;letter-spacing:.04em}
.fa-facts dd{margin:2px 0 0;color:#c7cfde;font-size:13.5px}

/* Three short principles */
.fa-points{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.fa-point{display:flex;flex-direction:column;min-width:0;padding:16px;border:1px solid var(--line-s);border-top:3px solid var(--c);border-radius:12px;background:var(--card);overflow-wrap:anywhere}
.fa-points .fa-point h2{margin:0 0 8px;color:var(--cream);font-size:18px}
.fa-point p{margin:0 0 8px;color:#c7cfde;font-size:14px}
.fa-point a{display:inline-flex;align-items:center;min-height:44px;margin-top:auto;font-size:13px;font-weight:800}

/* Twelve categories and selected outputs */
.fa-cats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.fa-catlist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:0;padding:0;list-style:none}
.fa-catlist li{display:flex;min-width:0}
.fa-catlist a{display:flex;flex:1;align-items:center;min-width:0;min-height:44px;padding:8px 12px;border:1px solid var(--line-s);border-left:3px solid var(--c);border-radius:10px;background:var(--chip);color:var(--cream);font-size:13.5px;font-weight:700;text-decoration:none;overflow-wrap:anywhere}
.fa-catlist a:hover{border-color:var(--line);color:var(--gold-l)}
.fa-review{margin:12px 0 0}
.fa-review a{display:inline-flex;align-items:center;min-height:44px;font-size:14px;font-weight:800}
.fa-more{margin-top:12px}
.fa-page .fd-foot a{display:inline-flex;align-items:center;min-height:44px;font-weight:700;text-decoration:none}

/* Dialog */
.fa-dtag{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;margin:0 0 12px}
.fa-dtag span+span{color:var(--muted);font-size:12.5px;font-weight:700}
.fa-brief{margin-top:0}
.fa-brief .rj-kv div{grid-template-columns:minmax(0,200px) minmax(0,1fr)}
.fa-own{display:block;margin-bottom:4px;color:var(--cream);font-size:15px}
.fa-accept{margin-top:22px}
.fa-page .fa-rel{grid-template-columns:repeat(3,minmax(0,1fr))}

@media (max-width:980px){
  .fa-jump,.fa-page .fa-rel{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fa-points{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:760px){
  .fa-jump,.fa-page .fa-rel,.fa-cats{grid-template-columns:minmax(0,1fr)}
  .fa-point{padding:14px}
}
@media (max-width:480px){
  .fa-catlist{grid-template-columns:minmax(0,1fr)}
  .fa-brief .rj-kv div{grid-template-columns:minmax(0,1fr);gap:2px}
}

/* Keep the outer modal out of programmatic scroll chains; its inner pane owns scrolling. */
.fa-page .rj-dlg{overflow:clip}
