/* Approved Always On Manager comparison. Motion stops offscreen and in background tabs. */
.always-on-section { position:relative; width:min(calc(100% - 2 * var(--site-shell-gutter,1rem)),var(--site-shell-max,120rem)); margin:clamp(3rem,4vw,5rem) auto; color:#eef1e9; scroll-margin-top:0; }
.always-on-section .ao-heading { width:100%; margin-inline:auto; }
.ao-heading { margin:1.5rem 0 2rem; text-align:center; }
.ao-heading h1,.ao-heading h2 { margin:0; color:#f0f2ec; font:400 clamp(2rem,3.1vw,3.25rem)/1.18 var(--font-frontier,Arial,sans-serif); letter-spacing:-.05em; text-wrap:balance; }
.ao-heading p { max-width:800px; margin:.9rem auto 0; color:#aab7af; font:400 clamp(.94rem,1.15vw,1.06rem)/1.65 Arial,sans-serif; text-wrap:pretty; }
.ao-panels { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.15rem; }
.ao-panel { min-width:0; overflow:hidden; padding:clamp(1rem,1.8vw,1.8rem); border:1px solid #354339; border-radius:16px; background:#101a16; }
.ao-panel--frontier { border-color:#875035; background:radial-gradient(ellipse at 50% 60%,#242719 0%,#131d15 80%); }
.ao-panel>header { min-height:100px; }
.ao-eyebrow { display:block; color:#a4b0a6; font:400 .75rem/1.5 var(--font-frontier,Arial,sans-serif); text-transform:uppercase; letter-spacing:.04em; }
.ao-panel--frontier .ao-eyebrow { color:#f18a56; }
.ao-panel h2,.ao-panel h3 { max-width:32ch; margin:.85rem 0 0; color:#eef1e9; font:400 clamp(1rem,1.45vw,1.35rem)/1.45 var(--font-frontier,Arial,sans-serif); letter-spacing:-.035em; text-wrap:balance; }
.ao-scene { display:block; width:100%; height:auto; max-height:370px; margin:.5rem auto 0; overflow:hidden; }
.ao-cones { fill:#e1dedb; fill-opacity:.075; }
.ao-grid-base { color:#3c4941; }
.ao-grid-lit { color:#dbe2db; }
.ao-coverage { fill:#e4deb2; fill-opacity:.065; stroke:#cf803c; stroke-width:1; stroke-opacity:.3; stroke-dasharray:2 4; }
.ao-source-halo { fill:#d7e0d4; opacity:.13; }
.ao-source-core { fill:#f0f2ec; }
.ao-source--frontier .ao-source-halo { fill:#ff642d; opacity:.16; }
.ao-source--frontier .ao-source-core { stroke:#ff642d; stroke-width:2; }
.ao-source-label { fill:#a9b6a6; font:400 16px Arial,sans-serif; }
.ao-issue { opacity:.55; transition:opacity 180ms linear; }
.ao-issue[data-seen="true"] { opacity:1; }
.ao-issue-core { fill:#fa642f; }
.ao-issue-ring { fill:none; stroke:#99a39a; stroke-width:1; stroke-dasharray:2 3; opacity:.6; }
.ao-issue[data-seen="true"] .ao-issue-ring { stroke:#ff9b62; stroke-dasharray:none; opacity:.65; }
.ao-issue-halo { fill:#ff642d; opacity:0; }
.ao-issue[data-seen="true"] .ao-issue-halo { opacity:.12; }
.ao-route { fill:none; stroke:#e98753; stroke-width:1.15; stroke-opacity:.64; transition:opacity 180ms linear; }
.ao-packet { fill:none; stroke:#ffd2aa; stroke-width:1.8; stroke-linecap:round; stroke-dasharray:4 96; pointer-events:none; }
@media(min-width:701px) and (max-height:850px) {
  .ao-heading { margin:1rem 0 1.5rem; }
  .ao-heading h2 { font-size:clamp(1.8rem,2.8vw,2.7rem); }
  .ao-panel>header { min-height:92px; }
  .ao-scene { max-height:34vh; }
}
@media(max-width:700px) {
  .ao-heading { margin:.8rem 0 1.4rem; }
  .ao-heading h2 { font-size:clamp(1.7rem,6.5vw,2.2rem); }
  .ao-heading p { margin-top:.8rem; font-size:.94rem; line-height:1.6; }
  .ao-panels { grid-template-columns:minmax(0,1fr); gap:.9rem; }
  .ao-panel { padding:1rem; }
  .ao-panel>header { min-height:0; }
  .ao-panel h3 { margin-top:.7rem; font-size:1.05rem; }
  .ao-scene { margin-top:1rem; max-height:none; }
  .ao-source-label { font-size:22px; }
}
@media(prefers-reduced-motion:reduce) {
  .always-on-section .ao-issue,.always-on-section .ao-route { transition:none; }
}
