/* Shared legal reading experience; existing policy text and routes stay in HTML. */
body.awaken-legal {
 --primary-teal:#94734f; --primary-teal-dark:#795b3a; --primary-color:#94734f; --primary-hover:#795b3a;
 --text-dark:#071a2d; --text-gray:#5f6870; --text-primary:#071a2d; --text-secondary:#5f6870;
 --bg-primary:#f7f3ec; --bg-secondary:#fcfaf6; --border-color:rgba(130,110,80,.18); --border-light:rgba(130,110,80,.18);
 --legal-ink:#071a2d; --legal-copy:#5f6870; --legal-gold:#94734f; --legal-line:rgba(130,110,80,.18);
 margin:0; background:#f7f3ec; color:var(--legal-ink); font-family:var(--font-main,Inter),Arial,sans-serif; line-height:1.65;
}
.awaken-legal .bg-animation { display:none; }
.awaken-legal :is(.legal-main,.legal-hero,.page-shell) { background:transparent; }
.awaken-legal :is(.legal-container,.page-shell) { width:min(92%,1180px); margin-inline:auto; }
.awaken-legal .legal-main { padding:80px 0 100px; }
.awaken-legal.legal-awaken .legal-shell,
.awaken-legal.legal-finup .legal-card,
.awaken-legal .content-card { background:#fcfaf6; border:1px solid var(--legal-line); border-radius:36px; padding:clamp(28px,5vw,64px); box-shadow:0 18px 50px rgba(20,30,40,.045); backdrop-filter:none; }
.awaken-legal.legal-awaken .legal-shell { width:min(92%,1020px); max-width:1020px; }
.awaken-legal :is(.legal-shell,.hero-card,.content-card) h1 { color:var(--legal-ink); font-size:clamp(38px,4.5vw,64px); line-height:1.05; letter-spacing:-.045em; font-weight:650; margin:0 0 26px; }
.awaken-legal.legal-awaken .legal-shell h1 { text-align:center; }
.awaken-legal.legal-awaken .legal-shell h1::before { content:""; display:block; width:44px; height:1px; background:#b89458; margin:0 auto 28px; }
.awaken-legal.legal-awaken .legal-shell h1 + p { max-width:760px; text-align:center; margin:0 auto 44px; font-size:18px; }
.awaken-legal :is(.legal-shell,.content-card) :is(h2,h3) { color:var(--legal-ink); font-size:24px; font-weight:600; letter-spacing:-.025em; line-height:1.25; margin:32px 0 14px; }
.awaken-legal.legal-awaken .legal-shell h2,.awaken-legal .content-card h2 { border-top:1px solid var(--legal-line); padding-top:28px; }
.awaken-legal :is(.legal-shell,.content-card) :is(p,li),.awaken-legal .hero-copy,.awaken-legal .subtitle { color:var(--legal-copy); font-size:17px; line-height:1.75; }
.awaken-legal :is(.legal-shell,.content-card) p + p { margin-top:14px; }
.awaken-legal :is(.legal-shell,.content-card) li + li { margin-top:8px; }
.awaken-legal :is(.legal-shell,.content-card) ul { padding-left:24px; }
.awaken-legal :is(.legal-hero,.hero-card) { padding:64px 0 40px; text-align:center; background:none; border:0; box-shadow:none; }
.awaken-legal :is(.hero-copy,.subtitle,.legal-subtitle) { max-width:800px; margin-inline:auto; }
.awaken-legal .hero-title { margin-inline:auto; }
.awaken-legal :is(.eyebrow,.legal-kicker) { font-size:12px; text-transform:uppercase; letter-spacing:.23em; color:var(--legal-gold); background:none; border:0; }
.awaken-legal :is(.hero-meta,.legal-meta) { justify-content:center; gap:12px; }
.awaken-legal :is(.meta-pill,.meta,.legal-meta) { color:var(--legal-copy); border-color:var(--legal-line); background:transparent; box-shadow:none; font-size:14px; }
.awaken-legal .hero-title .accent { color:var(--legal-gold); }
.awaken-legal .legal-header { background:#fcfaf6; border-color:var(--legal-line); backdrop-filter:none; }
.awaken-legal .brand-mark { background:#b89458; box-shadow:none; }
.awaken-legal :is(.btn-link-primary,.back-link) { background:linear-gradient(135deg,#c8ad86,#a17e50); color:#071a2d; border:1px solid #b89a72; box-shadow:none; }
.awaken-legal :is(.btn-link-secondary,.legal-link-pill) { background:#fcfaf6; color:var(--legal-ink); border:1px solid var(--legal-line); box-shadow:none; }
.awaken-legal.legal-arb .legal-article { gap:0; background:#fcfaf6; border:1px solid var(--legal-line); border-radius:32px; padding:12px 36px; }
.awaken-legal.legal-arb .legal-card { background:none; border:0; border-radius:0; padding:28px 0; box-shadow:none; }
.awaken-legal.legal-arb .legal-card + .legal-card { border-top:1px solid var(--legal-line); }
.awaken-legal.legal-arb .legal-card h2 { margin-top:0; }
.awaken-legal.legal-arb .legal-highlight { color:var(--legal-ink); }
.awaken-legal.legal-arb .legal-highlight :is(p,ul) { color:var(--legal-copy); }
.awaken-legal.legal-arb .legal-nav,.awaken-legal .legal-footer-card { background:#fcfaf6; border-color:var(--legal-line); box-shadow:none; }
.awaken-legal.legal-arb .legal-nav h2 { margin-top:0; font-size:16px; }
.awaken-legal :is(.legal-nav-list,.legal-nav) a.active { background:#eee4d6; color:var(--legal-ink); border-color:#b89a72; }
.awaken-legal .legal-footer-card p { color:var(--legal-copy); }
.awaken-legal.legal-finup .legal-hero { padding-top:28px; }
.awaken-legal.legal-finup .legal-shell { max-width:1020px; }
.awaken-legal.legal-finup .legal-card { text-align:left; }
.awaken-legal.legal-finup :is(.legal-title,.legal-subtitle,.legal-kicker) { text-align:center; }
.awaken-legal.legal-finup .legal-kicker { display:flex; justify-content:center; align-items:center; gap:10px; }
.awaken-legal.legal-finup .legal-section { border-color:var(--legal-line); padding-top:24px; margin-top:24px; }
.awaken-legal.legal-finup .legal-nav { padding-block:28px; }
.awaken-legal.legal-finup .brand-logo-dark { display:none; }
.awaken-legal.legal-finup .brand-logo-light { display:block; max-width:190px; }
.awaken-legal.legal-botxp .page-shell { max-width:1020px; padding-block:28px 80px; }
.awaken-legal.legal-botxp .hero-card { margin-bottom:0; }
.awaken-legal.legal-botxp .legal-nav { border-color:var(--legal-line); }
.awaken-legal :is(.content-card,.legal-article,.legal-card) a:not([class]) { color:#806039; text-underline-offset:3px; }
.awaken-legal a:focus-visible { outline:3px solid #a48665; outline-offset:4px; }
.awaken-legal :is(.legal-shell,.content-card) { overflow-wrap:anywhere; }
@media(max-width:767px) {
 .awaken-legal .legal-main { padding:44px 0 60px; }
 .awaken-legal.legal-awaken .legal-shell,.awaken-legal.legal-finup .legal-card,.awaken-legal .content-card { padding:28px 22px; border-radius:26px; }
 .awaken-legal :is(.legal-hero,.hero-card) { padding:40px 0 28px; }
 .awaken-legal :is(.legal-shell,.content-card) :is(h2,h3) { font-size:22px; }
 .awaken-legal :is(.legal-shell,.content-card) :is(p,li) { font-size:16px; }
 .awaken-legal.legal-arb .legal-article { padding:8px 24px; border-radius:26px; }
 .awaken-legal .legal-meta { flex-wrap:wrap; }
 .awaken-legal :is(.legal-meta,.hero-meta) { text-align:center; }
}
