/* === P92 CONSOLIDATED OVERRIDES (NO BACKGROUND SWAPS) — 20251217T000659Z === */
/* NOTE: This intentionally DOES NOT do the old “step #3” bubble/card removal. */

:root{
  --aa-shell: rgba(0,0,0,.58);
  --aa-card:  rgba(0,0,0,.34);
  --aa-border: rgba(255,255,255,.14);
  --aa-border2: rgba(255,255,255,.10);
  --aa-text: rgba(255,255,255,.92);
  --aa-muted: rgba(255,255,255,.74);
}

/* deterministic type color */
html,body{ color:var(--aa-text) !important; }
:where(p,li,small,summary,label,dd,dt){ color:var(--aa-muted) !important; }

/* HEADER: brand left, nav truly centered */
:where(header,.header,.site-header,.topbar){
  position:relative !important;
  width:100% !important;
  min-height:86px !important;
  padding:14px 22px !important;
}

:where(header .brand,header .brandline,header .topline,header .strap,header .kicker){
  position:absolute !important;
  left:22px !important;
  top:14px !important;
  z-index:30 !important;
  max-width:50vw !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}

/* center nav by construction (pill stays centered) */
:where(header nav,header .nav,header .navtray,header .nav-wrap,header .nav-inner,.topnav,.navbar){
  position:absolute !important;
  left:50% !important;
  top:10px !important;
  transform:translateX(-50%) !important;
  width:max-content !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:10px !important;
  z-index:40 !important;
}

/* nav item affordance */
:where(header nav a,header nav button,header .nav a,header .nav button,.navbar a,.topnav a){
  color:rgba(255,255,255,.90) !important;
  text-decoration:none !important;
  border-radius:999px !important;
  padding:8px 14px !important;
  background:rgba(255,255,255,.06) !important;
  border:1px solid rgba(255,255,255,.10) !important;
}
:where(header nav a:hover,header nav button:hover,header .nav a:hover,header .nav button:hover){
  background:rgba(255,255,255,.10) !important;
  border-color:rgba(255,255,255,.16) !important;
}
:where(header nav a[aria-current="page"],header .nav a[aria-current="page"]){
  background:rgba(255,255,255,.14) !important;
  border-color:rgba(255,255,255,.22) !important;
}

/* MAIN: single readable surface (keeps internal cards) */
:where(main#main, main.wrap, body > main){
  max-width:1120px !important;
  margin:120px auto 90px !important;
  padding:34px 34px 40px !important;
  background:var(--aa-shell) !important;
  border:1px solid var(--aa-border) !important;
  border-radius:22px !important;
  box-shadow:0 20px 60px rgba(0,0,0,.35) !important;
}

/* Headings + hierarchy */
main :where(h1){
  line-height:1.02 !important;
  margin:0 0 12px !important;
  color:rgba(255,255,255,.96) !important;
  text-shadow:0 2px 18px rgba(0,0,0,.55);
}
main :where(h2){
  margin:34px 0 10px !important;
  padding-bottom:10px !important;
  border-bottom:1px solid rgba(255,255,255,.12) !important;
}
main :where(h3){ margin:22px 0 8px !important; }
main :where(p,li){ line-height:1.60 !important; font-size:16px !important; }
main :where(hr){ border-color:rgba(255,255,255,.12) !important; opacity:1 !important; }

/* KEEP internal cards, but normalize them so they’re not jumbled/stacked weird */
main :where(.glass,[class*="glass"],.panel,.card,.bubble,.callout,.group,.block,[class*="panel"],[class*="card"],[class*="bubble"]){
  background:var(--aa-card) !important;
  border:1px solid var(--aa-border2) !important;
  border-radius:18px !important;
  box-shadow:0 10px 30px rgba(0,0,0,.28) !important;
  backdrop-filter:blur(10px) !important;
  -webkit-backdrop-filter:blur(10px) !important;
}
main :where(.glass,[class*="glass"],.panel,.card,.bubble,.callout,.group,.block) :where(.glass,[class*="glass"],.panel,.card,.bubble){
  background:rgba(0,0,0,.22) !important;
  border-color:rgba(255,255,255,.08) !important;
}

/* spacing between sections */
main :where(section,.section,.block,.group){ margin-top:22px !important; }

/* forms */
main :where(input,textarea,select){
  background:rgba(0,0,0,.55) !important;
  color:rgba(255,255,255,.92) !important;
  border:1px solid rgba(255,255,255,.18) !important;
  border-radius:12px !important;
  padding:10px 12px !important;
  outline:none !important;
}
main :where(input,textarea)::placeholder{ color:rgba(255,255,255,.55) !important; }
main :where(input,textarea,select):focus{
  border-color:rgba(255,255,255,.34) !important;
  box-shadow:0 0 0 3px rgba(255,255,255,.10) !important;
}

/* links + buttons */
main a{ color:rgba(255,255,255,.92) !important; text-decoration:underline; text-underline-offset:3px; }
main :where(a.button,.btn,button,input[type=submit]){
  text-decoration:none !important;
  background:rgba(255,255,255,.10) !important;
  border:1px solid rgba(255,255,255,.16) !important;
  color:rgba(255,255,255,.94) !important;
  border-radius:14px !important;
  padding:10px 14px !important;
}
main :where(a.button,.btn,button,input[type=submit]):hover{
  background:rgba(255,255,255,.14) !important;
  border-color:rgba(255,255,255,.22) !important;
}

/* kicker text */
main :where(.kicker,.eyebrow,[class*="kicker"],[class*="eyebrow"]){
  letter-spacing:.06em !important;
  text-transform:uppercase !important;
  font-size:12px !important;
  color:rgba(255,255,255,.72) !important;
}

/* responsive: don’t force absolute-center nav on narrow widths */
@media (max-width: 980px){
  :where(header nav,header .nav,header .navtray,header .nav-wrap,header .nav-inner,.topnav,.navbar){
    position:relative !important;
    left:auto !important;
    top:auto !important;
    transform:none !important;
    width:100% !important;
    flex-wrap:wrap !important;
    margin:10px auto 0 !important;
    justify-content:center !important;
  }
  :where(header .brand,header .brandline,header .topline,header .strap,header .kicker){
    position:relative !important;
    left:auto !important;
    top:auto !important;
    max-width:100% !important;
    text-align:center !important;
    display:block !important;
    margin:0 auto !important;
  }
  :where(main#main, main.wrap, body > main){
    margin:92px 12px 70px !important;
    padding:22px 18px 26px !important;
  }
}
