:root{
  --aa2-bg: #fbfbfd;
  --aa2-ink: #121826;
  --aa2-muted: rgba(18,24,38,.72);
  --aa2-accent: #ff7a18;
  --aa2-surface: #ffffff;
  --aa2-border: rgba(18,24,38,.10);
}
html,body{background:var(--aa2-bg);color:var(--aa2-ink);}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}

.aa2-navbar{background:rgba(251,251,253,.92);backdrop-filter:saturate(180%) blur(10px);border-bottom:1px solid var(--aa2-border);}
.aa2-navbar .navbar-brand{font-weight:700;letter-spacing:.2px;}

.aa2-hero{padding:1.25rem 0 1.25rem;}
.aa2-hero-card{background:linear-gradient(135deg, rgba(255,122,24,.12), rgba(120,220,255,.14));border:1px solid var(--aa2-border);border-radius:18px;overflow:hidden;min-height:260px;}
.aa2-slide{padding:2rem;}
.aa2-kicker{font-weight:700;color:var(--aa2-muted);text-transform:uppercase;font-size:.8rem;letter-spacing:.12em;}
.aa2-headline{font-size:2rem;font-weight:800;line-height:1.1;margin:.5rem 0 .6rem;}
.aa2-sub{color:var(--aa2-muted);max-width:52ch;}

.aa2-side-card{background:var(--aa2-surface);border:1px solid var(--aa2-border);border-radius:18px;padding:1rem;margin-bottom:1rem;}
.aa2-side-title{font-weight:800;margin-bottom:.25rem;}

.aa2-main{padding:0 0 2rem;}
.aa2-paper{background:var(--aa2-surface);border:1px solid var(--aa2-border);border-radius:18px;padding:1.25rem;}
.aa2-rail-box{position:sticky;top:88px;background:var(--aa2-surface);border:1px solid var(--aa2-border);border-radius:18px;padding:1rem;}
.aa2-rail-title{font-weight:800;margin-bottom:.5rem;}
.aa2-rail-list{list-style:none;margin:0;padding:0;display:grid;gap:.25rem;}
.aa2-rail-list a{text-decoration:none;color:inherit;padding:.25rem .35rem;border-radius:10px;display:block;}
.aa2-rail-list a:hover{background:rgba(255,122,24,.10);}

#footer{border-top:1px solid var(--aa2-border);padding:1.25rem 0;background:var(--aa2-surface);}
#footer .container{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;}
#footer .social{display:flex;gap:.5rem;}
#footer .social a{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:999px;border:1px solid var(--aa2-border);text-decoration:none;}
