/* PAGE-LOCAL CSS: ai-observability-platform. Not part of any reusable template.
   hero-product-console adapts cinematic-sticky-service-banner-stack (dark banner, cert strip, h1, gold CTA) into a centred
   "product as hero" layout: title stack above, console screenshot centred below under a focus light. Page-local assumption. */
.aiop-hero{position:relative;height:auto;min-height:0;overflow:hidden;padding-bottom:0;display:flex;flex-direction:column;align-items:center;background:var(--black)}
.aiop-hero__light{position:absolute;inset:0;pointer-events:none;background:
  radial-gradient(ellipse 30% 22% at 50% 60%,rgba(255,236,170,.42) 0%,rgba(255,236,170,0) 100%),
  radial-gradient(ellipse 62% 48% at 50% 64%,rgba(212,175,55,.48) 0%,rgba(212,175,55,.2) 42%,rgba(212,175,55,0) 78%),
  radial-gradient(ellipse 100% 70% at 50% 72%,rgba(212,175,55,.16) 0%,rgba(212,175,55,0) 72%),
  radial-gradient(ellipse 36% 70% at 50% -8%,rgba(255,255,255,.2) 0%,rgba(255,255,255,.06) 50%,rgba(255,255,255,0) 76%)}
.aiop-hero .bn-inner{height:auto;padding:clamp(64px,10vh,96px) 0 40px;justify-content:center;text-align:center}
.aiop-hero .bn-copy{max-width:1080px;align-items:center;gap:28px}
.aiop-hero .bn-cert-strip{justify-content:center;margin-bottom:0}
.aiop-hero .bn-cert{min-height:28px}
.aiop-hero .bn-h1{font-size:clamp(32px,3vw,44px);line-height:1.15}
.aiop-hero .bn-support{max-width:860px;font-size:18px;color:var(--on-dark-faint,rgba(255,255,255,.78))}
.aiop-hero .bn-cta{justify-content:center;align-items:center;gap:32px;margin-top:4px}
.aiop-hero .swe-btn{min-height:48px}
.aiop-hero .swe-link{color:var(--paper)}
.aiop-hero .swe-btn:hover{color:var(--paper)}
.aiop-hero .bn-media{position:relative;inset:auto;z-index:1;width:100%;display:flex;justify-content:center;padding:180px 0 0;margin-top:-180px;max-height:720px;overflow:hidden}
/* compass-ai-01: the copy layer sits above the console wrapper, whose transparent top padding overlaps the hero button on desktop.
   .bn-inner keeps pointer-events:none outside .bn-copy, so the console and its scrollable chart still get touch and mouse input. */
.aiop-hero .bn-inner{z-index:2}
.aiop-shot{position:relative;width:min(1040px,var(--shell));max-width:1040px;display:flex;flex-direction:column;gap:14px;margin:0}
.aiop-shot__frame{position:relative;padding:10px 10px 0;border:1px solid rgba(255,226,140,.75);border-bottom:0;background:rgba(255,255,255,.06);box-shadow:0 0 0 1px rgba(255,255,255,.08),0 0 40px rgba(255,226,140,.45),0 0 120px 10px rgba(212,175,55,.45),0 0 260px 60px rgba(212,175,55,.22)}
.aiop-shot__frame::before{content:"";position:absolute;left:8%;right:8%;top:-2px;height:2px;background:linear-gradient(90deg,rgba(212,175,55,0),rgba(255,246,210,1),rgba(212,175,55,0));box-shadow:0 0 18px 2px rgba(255,236,170,.8)}
.aiop-shot__cap{display:flex;justify-content:space-between;gap:16px;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.72)}
.aiop-shot__cap b{color:var(--gold)}
.aiop-app{background:var(--paper);color:var(--ink);font-size:12px;line-height:1.35;border-top:3px solid var(--gold)}
.aiop-app__bar{display:flex;align-items:center;gap:18px;padding:12px 18px;border-bottom:1px solid var(--rule)}
.aiop-app__brand{display:flex;align-items:center;gap:8px;font-family:var(--display);font-size:15px;color:var(--deep)}
.aiop-app__mark{width:11px;height:11px;background:var(--gold)}
.aiop-app__crumb{color:var(--grey-mid)}
.aiop-app__crumb b{color:var(--ink)}
.aiop-app__search{flex:1;padding:6px 10px;border:1px solid var(--rule);color:#83735F}
.aiop-app__me{display:inline-grid;place-items:center;width:24px;height:24px;background:#E6DFD4;font-size:10px;font-weight:700;color:var(--deep)}
.aiop-app__body{display:grid;grid-template-columns:150px minmax(0,1fr)}
.aiop-app__side{padding:14px 0;border-right:1px solid var(--rule);background:#FBFAF6}
.aiop-app__lbl{padding:0 14px 6px;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#83735F}
.aiop-app__lbl + .aiop-app__nav{margin-bottom:14px}
.aiop-app__nav{display:flex;flex-direction:column}
.aiop-app__nav span{padding:6px 14px;color:var(--grey-mid)}
.aiop-app__nav .is-on{background:#FAF3DF;color:var(--deep);font-weight:700}
.aiop-app__org{padding:8px 14px 0;border-top:1px solid var(--rule);font-size:11px;color:var(--grey-mid)}
.aiop-app__view{padding:16px 18px;display:flex;flex-direction:column;gap:14px;min-width:0}
.aiop-app__vh{display:flex;align-items:baseline;gap:12px}
.aiop-app__vt{font-family:var(--display);font-size:18px}
.aiop-app__vs{flex:1;color:var(--grey-mid)}
.aiop-app__seg{display:flex;border:1px solid var(--rule)}
.aiop-app__seg span{padding:3px 8px;color:var(--grey-mid)}
.aiop-app__seg .is-on{background:var(--deep);color:var(--paper)}
.aiop-app__tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--rule)}
.aiop-app__tile{padding:12px 14px}
.aiop-app__tile + .aiop-app__tile{border-left:1px solid var(--rule)}
.aiop-app__tk{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--grey-mid)}
.aiop-app__tv{margin-top:4px;font-family:var(--display);font-size:26px;line-height:1.1}
.aiop-app__td{margin-top:2px;font-size:11px;color:var(--grey-mid)}
.aiop-app__td b{color:var(--bronze)}
.aiop-app__td b.is-ok{color:var(--sage)}
.aiop-app__grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:14px}
.aiop-app__pan{border:1px solid var(--rule)}
.aiop-app__ph{display:flex;justify-content:space-between;padding:8px 12px;border-bottom:1px solid var(--rule);font-weight:700}
.aiop-app__ph span{font-weight:400;color:var(--grey-mid)}
.aiop-app__chart{display:block;width:100%;height:auto;padding:8px 8px 0}
.aiop-app__chart .gl{stroke:#F0ECE4;stroke-width:1}
.aiop-app__chart .ln{fill:none;stroke:var(--deep);stroke-width:2}
.aiop-app__chart .avg{stroke:var(--grey-mid);stroke-width:1;stroke-dasharray:4 4}
.aiop-app__chart .pk{fill:var(--bronze)}
.aiop-app__chart text{font-family:var(--body);font-size:16px;fill:var(--grey-mid)}
.aiop-app__chart text.nt{fill:var(--bronze);font-weight:700}
.aiop-app__row{display:grid;grid-template-columns:8px minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 12px;border-bottom:1px solid var(--rule)}
.aiop-app__row:last-child{border-bottom:0}
.aiop-app__sev{width:8px;height:8px;background:var(--gold)}
.aiop-app__sev.is-high{background:var(--bronze)}
.aiop-app__sev.is-info{background:#A9A195}
.aiop-app__sev.is-ok{background:var(--sage)}
.aiop-app__row b{display:block}
.aiop-app__row small{display:block;font-size:11px;color:var(--grey-mid)}
.aiop-app__st{padding:2px 6px;font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;border:1px solid var(--rule);color:var(--grey-mid)}
.aiop-app__st.is-high{background:var(--bronze);border-color:var(--bronze);color:var(--ink)}

.aiop-app__hint{display:none}
.aiop-app__pan--chart:focus-visible{outline:2px solid var(--deep);outline-offset:2px}

/* compass-ai-02: the console reflows on tablets and phones instead of being cut off at 880px. */
@media (max-width:900px){
  .aiop-hero .bn-inner{min-height:0;padding:40px 0 32px}
  .aiop-hero .bn-cta{flex-wrap:wrap;gap:20px}
  .aiop-hero .bn-media{width:100%;justify-content:center;padding-left:16px;padding-right:16px;max-height:none;overflow:visible}
  .aiop-shot{width:100%;max-width:880px;flex:0 1 auto}
}
@media (max-width:620px){
  .aiop-hero .bn-inner{padding:40px 0 28px}
  .aiop-hero .bn-media{padding:0 16px 30px;margin-top:0}
  .aiop-shot{max-width:100%}
  .aiop-shot__frame{padding:5px 5px 0}
  .aiop-app__bar{flex-wrap:wrap;gap:8px;padding:10px}
  .aiop-app__search{order:2;flex:1 0 100%}
  .aiop-app__body{grid-template-columns:minmax(0,1fr)}
  .aiop-app__side{display:flex;flex-wrap:wrap;gap:4px;padding:8px 10px;border-right:0;border-bottom:1px solid var(--rule)}
  .aiop-app__side .aiop-app__lbl,.aiop-app__org{display:none}
  .aiop-app__nav{display:contents}
  .aiop-app__nav span{padding:4px 6px;font-size:11px}
  .aiop-app__view{padding:10px;gap:10px}
  .aiop-app__vh{flex-wrap:wrap;gap:4px 8px}
  .aiop-app__tiles{grid-template-columns:repeat(2,minmax(0,1fr))}
  .aiop-app__tile{min-width:0;padding:10px}
  .aiop-app__tile:nth-child(3){border-left:0}
  .aiop-app__tile:nth-child(n+3){border-top:1px solid var(--rule)}
  .aiop-app__grid{grid-template-columns:minmax(0,1fr)}
  .aiop-app__pan{min-width:0}
  .aiop-app__pan--chart{overflow-x:auto;-webkit-overflow-scrolling:touch}
  .aiop-app__chart{min-width:520px}
  .aiop-app__row{grid-template-columns:8px minmax(0,1fr)}
  .aiop-app__st{grid-column:2;justify-self:start}
}
/* The 520px chart only overflows its panel below 586px, so the scroll hint starts there. */
@media (max-width:585px){
  .aiop-app__hint{display:block;margin:0;padding:6px 10px 0;color:var(--grey-mid);font-size:11px}
}

/* demo-cta: page-local overrides on cta-strip-2e-creative-edgy. "FREE" outline lettering leads; "6" becomes a faint filled silhouette; action panel narrowed. */
.aiop-cta .cta-strip-2e-creative-edgy__band{grid-template-columns:minmax(0,1fr) 340px}
.aiop-cta .aiop-cta__six{position:absolute;right:380px;top:50%;transform:translateY(-50%);font-family:var(--display);font-size:460px;line-height:.8;color:rgba(87,71,58,.08);pointer-events:none;user-select:none}
.aiop-cta .aiop-cta__free{right:360px;top:50%;transform:translateY(-50%);font-size:230px;line-height:.8;text-transform:uppercase;-webkit-text-stroke:2px rgba(87,71,58,.34)}
.aiop-cta .cta-strip-2e-creative-edgy__action{clip-path:polygon(60px 0,100% 0,100% 100%,0 100%);padding:0 32px 0 64px}
.aiop-cta .cta-strip-2e-creative-edgy__eyebrow{letter-spacing:.14em;line-height:1.3}
.aiop-cta .cta-strip-2e-creative-edgy__copy{position:relative;z-index:1}
@media (max-width:1100px){.aiop-cta .cta-strip-2e-creative-edgy__band{grid-template-columns:minmax(0,1fr) 300px}.aiop-cta .cta-strip-2e-creative-edgy__action{padding:0 24px 0 56px}.aiop-cta .aiop-cta__free{right:312px;top:14px;transform:none;font-size:92px;-webkit-text-stroke:1.5px rgba(87,71,58,.26)}.aiop-cta .aiop-cta__six{right:320px;font-size:340px}.aiop-cta .cta-strip-2e-creative-edgy__copy{padding-top:118px}}
@media (max-width:860px){
  .aiop-cta .cta-strip-2e-creative-edgy__band{grid-template-columns:1fr}
  .aiop-cta .aiop-cta__free{right:24px;top:24px;transform:none;font-size:140px}
  .aiop-cta .aiop-cta__six{right:24px;font-size:300px}
  .aiop-cta .cta-strip-2e-creative-edgy__action{clip-path:none;padding:28px 32px}
}
@media (max-width:520px){.aiop-cta .aiop-cta__free{font-size:96px;-webkit-text-stroke:1px rgba(87,71,58,.3)}}
