/* AIOTOR V10.5.4 — final responsive/navigation contract
   Loaded after styles.css and premium-ui.css. This file is intentionally
   authoritative for layout breakpoints so older product-page rules cannot
   fight the shared header/menu. */

:root{
  --aiotor-nav-breakpoint:1240px;
  --aiotor-header-h:78px;
  --aiotor-edge:clamp(18px,3vw,42px);
}

html{max-width:100%;overflow-x:clip;scroll-padding-top:calc(var(--aiotor-header-h) + 12px)}
body{max-width:100%;overflow-x:clip}
body.nav-open{overflow:hidden}
body.nav-open{touch-action:none}
img,svg,video,canvas{max-width:100%}
main,section,.shell,.site-header,.site-nav,.nav-mega{min-width:0}
:where(.hero-layout,.security-hero-grid,.agent-id-grid,.fs-hero-grid,.sos-hero-grid,.premium-product-grid,.section-intro,.prime-platform-grid,.m12-cap-grid,.academic-access-grid,.m12-partner-grid,.m12-steps,.footer-main,.footer-columns)>*{min-width:0}

/* ---------------- DESKTOP NAV: > 1240 ---------------- */
@media (min-width:1241px){
  :root{--aiotor-header-h:78px}
  .site-header{height:auto!important}
  .nav-shell{height:var(--aiotor-header-h)!important;gap:clamp(18px,2vw,30px)!important}
  .brand{flex:0 0 auto;min-width:0!important}
  .brand img{width:124px!important;max-width:124px}
  .brand>span{display:block;font-size:8px!important;letter-spacing:.18em!important;white-space:nowrap}
  .menu-toggle{display:none!important}
  .mobile-nav-head,.mobile-nav-actions{display:none!important}
  .site-nav{
    position:static!important;display:flex!important;flex:1 1 auto!important;
    align-items:center!important;justify-content:flex-end!important;
    gap:clamp(10px,1.25vw,20px)!important;min-width:0!important;
    width:auto!important;max-height:none!important;padding:0!important;
    overflow:visible!important;border:0!important;background:transparent!important;
    backdrop-filter:none!important
  }
  .site-nav>a,.nav-products-trigger{
    flex:0 0 auto;min-height:44px!important;padding:0!important;
    border:0!important;font-size:12px!important;line-height:1.2!important;
    letter-spacing:.005em!important;font-weight:650!important;white-space:nowrap!important
  }
  .nav-products{position:relative!important;display:block!important;flex:0 0 auto}
  .nav-products-trigger{display:inline-flex!important;align-items:center!important;gap:6px!important;background:transparent!important;color:#aeb6c2!important}
  .nav-products-trigger span{font-size:12px;transition:transform .2s ease}
  .nav-products.open .nav-products-trigger span{transform:rotate(180deg)}
  .nav-cta{min-height:42px!important;padding:0 16px!important;margin-left:2px!important;border:1px solid rgba(255,255,255,.16)!important}

  .nav-products .nav-mega{
    position:fixed!important;z-index:1100!important;top:calc(var(--aiotor-header-h) + 2px)!important;
    left:50%!important;right:auto!important;
    width:min(1180px,calc(100vw - 48px))!important;
    max-height:calc(100dvh - var(--aiotor-header-h) - 26px)!important;
    margin:0!important;padding:14px!important;overflow:auto!important;
    overscroll-behavior:contain!important;
    display:grid!important;grid-template-columns:minmax(250px,.9fr) minmax(0,1fr) minmax(0,1fr)!important;
    grid-template-rows:auto auto auto!important;gap:10px!important;
    border:1px solid rgba(255,255,255,.11)!important;border-radius:20px!important;
    background:rgba(7,10,16,.985)!important;box-shadow:0 28px 90px rgba(0,0,0,.56)!important;
    backdrop-filter:blur(22px)!important;
    transform:translateX(-50%) translateY(-8px)!important;
    opacity:0!important;visibility:hidden!important;pointer-events:none!important;
    transition:opacity .18s ease,transform .18s ease,visibility .18s ease!important
  }
  .nav-products.open .nav-mega{
    transform:translateX(-50%) translateY(5px)!important;
    opacity:1!important;visibility:visible!important;pointer-events:auto!important
  }
  .nav-mega>.mega-overview{grid-column:1!important;grid-row:1/4!important;min-width:0!important}
  .nav-mega>.mega-prime-group{grid-column:2/4!important;grid-row:1!important}
  .nav-mega>.mega-group:nth-of-type(2){grid-column:2!important;grid-row:2!important}
  .nav-mega>.mega-group:nth-of-type(3){grid-column:3!important;grid-row:2!important}
  .nav-mega>.mega-group:nth-of-type(4){grid-column:2!important;grid-row:3!important}
  .nav-mega>.mega-group:nth-of-type(5){grid-column:3!important;grid-row:3!important}
  .nav-mega .mega-group{min-width:0!important;padding:14px!important}
  .nav-mega .mega-group-trigger{min-height:30px!important;padding:0 0 8px!important;cursor:default!important}
  .nav-mega .mega-group-trigger i{display:none!important}
  .nav-mega .mega-links,.nav-mega .mega-featured-grid{display:grid!important}
  .nav-mega .mega-featured-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important}
  .nav-mega .mega-links>a{min-width:0!important;overflow-wrap:anywhere}
}

/* Hide brand descriptor earlier on mid-size desktop so nav never collides. */
@media (min-width:1241px) and (max-width:1380px){
  .brand>span{display:none!important}
  .site-nav{gap:10px!important}
  .site-nav>a,.nav-products-trigger{font-size:11.5px!important}
  .nav-cta{padding-inline:13px!important}
}

/* ---------------- COMPACT NAV: <= 1240 ---------------- */
@media (max-width:1240px){
  :root{--aiotor-header-h:72px}
  html{scroll-padding-top:82px}
  .site-header{height:auto!important;background:rgba(5,7,11,.94)!important;backdrop-filter:blur(18px)!important}
  .nav-shell{height:var(--aiotor-header-h)!important;gap:12px!important}
  .brand{min-width:0!important;flex:0 1 auto}
  .brand img{width:116px!important;height:auto!important}
  .brand>span{display:none!important}
  .menu-toggle{
    display:flex!important;position:relative!important;z-index:1202!important;
    width:46px!important;height:46px!important;flex:0 0 46px!important;
    margin-left:auto!important;border-radius:50%!important
  }
  .menu-toggle>span{position:absolute!important;left:14px!important;width:17px!important;height:1px!important;margin:0!important;transition:top .2s ease,transform .2s ease,opacity .2s ease!important}
  .menu-toggle>span:first-child{top:18px!important}.menu-toggle>span:nth-child(2){top:25px!important}
  .menu-toggle.active>span:first-child{top:22px!important;transform:rotate(45deg)!important}
  .menu-toggle.active>span:nth-child(2){top:22px!important;transform:rotate(-45deg)!important}

  .site-nav{
    position:fixed!important;z-index:1200!important;inset:var(--aiotor-header-h) 0 0 0!important;
    width:100%!important;height:auto!important;max-height:none!important;
    display:none!important;flex-direction:column!important;align-items:stretch!important;gap:0!important;
    padding:0 max(18px,env(safe-area-inset-left)) calc(30px + env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-right))!important;
    overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
    border:0!important;border-top:1px solid rgba(255,255,255,.075)!important;border-radius:0!important;
    background:#070a10!important;backdrop-filter:none!important
  }
  .site-nav.open{display:flex!important}
  .mobile-nav-head{display:grid!important;padding:22px 2px 17px!important;border-bottom:1px solid rgba(255,255,255,.07)!important}
  .mobile-nav-head span{font-size:20px!important;font-weight:720!important;letter-spacing:-.025em!important}
  .mobile-nav-head small{margin-top:5px!important;color:#697789!important;font-size:11px!important;line-height:1.4!important}

  .site-nav>a,.nav-products-trigger{
    display:flex!important;align-items:center!important;justify-content:space-between!important;
    width:100%!important;min-height:52px!important;padding:0 3px!important;margin:0!important;
    border:0!important;border-bottom:1px solid rgba(255,255,255,.06)!important;border-radius:0!important;
    background:transparent!important;color:#edf2f7!important;
    font-size:15px!important;line-height:1.25!important;font-weight:650!important;letter-spacing:0!important;text-transform:none!important;text-align:left!important
  }
  .nav-products{display:block!important;width:100%!important;min-width:0!important}
  .nav-products-trigger span{font-size:15px!important;transition:transform .2s ease!important}
  .nav-products.open .nav-products-trigger span{transform:rotate(180deg)!important}

  .nav-products .nav-mega{
    position:static!important;z-index:auto!important;left:auto!important;right:auto!important;top:auto!important;
    display:none!important;width:100%!important;max-height:none!important;
    margin:0!important;padding:9px 0 14px!important;overflow:visible!important;
    grid-template-columns:1fr!important;grid-template-rows:auto!important;gap:7px!important;
    border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;backdrop-filter:none!important;
    opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:none!important
  }
  .nav-products.open .nav-mega{display:grid!important}
  .nav-mega>.mega-overview{display:none!important}
  .nav-mega>.mega-group,.nav-mega>.mega-prime-group{
    grid-column:auto!important;grid-row:auto!important;min-width:0!important;
    padding:0!important;margin:0!important;overflow:hidden!important;
    border:1px solid rgba(255,255,255,.075)!important;border-radius:13px!important;background:#0a0f17!important
  }
  .nav-mega .mega-group-trigger{
    display:flex!important;align-items:center!important;justify-content:space-between!important;
    width:100%!important;min-height:50px!important;padding:0 13px!important;margin:0!important;
    border:0!important;background:transparent!important;color:#dce4ee!important;
    font-size:11px!important;line-height:1.25!important;font-weight:760!important;letter-spacing:.08em!important;text-transform:uppercase!important;cursor:pointer!important
  }
  .nav-mega .mega-group-trigger i{display:block!important;position:relative!important;width:16px!important;height:16px!important;flex:0 0 16px!important}
  .nav-mega .mega-group-trigger i:before,.nav-mega .mega-group-trigger i:after{content:""!important;position:absolute!important;left:3px!important;right:3px!important;top:7px!important;height:1px!important;background:#7f8da0!important;transition:transform .2s ease!important}
  .nav-mega .mega-group-trigger i:after{transform:rotate(90deg)!important}
  .nav-mega .mega-group.mobile-open .mega-group-trigger i:after{transform:rotate(0)!important}
  .nav-mega .mega-links,.nav-mega .mega-featured-grid{display:none!important;grid-template-columns:1fr!important;gap:0!important;padding:0 10px 10px!important}
  .nav-mega .mega-group.mobile-open .mega-links{display:grid!important}
  .nav-mega .mega-links>a,.nav-mega .mega-featured{
    display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;
    width:100%!important;min-width:0!important;min-height:46px!important;padding:9px 7px!important;margin:0!important;
    border:0!important;border-top:1px solid rgba(255,255,255,.055)!important;border-radius:0!important;background:transparent!important;
    color:#dfe6ee!important;font-size:14px!important;line-height:1.3!important;overflow-wrap:anywhere!important
  }
  .nav-mega .mega-featured{min-height:62px!important}
  .nav-mega .mega-featured b{font-size:14px!important}.nav-mega .mega-featured small{margin-top:4px!important;color:#8390a1!important;font-size:11px!important;line-height:1.4!important}
  .nav-cta{justify-content:center!important;min-height:48px!important;margin:13px 0 0!important;padding:0 14px!important;border:1px solid rgba(255,255,255,.13)!important;border-radius:12px!important;background:#111722!important}
  .mobile-nav-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;margin-top:10px!important}
  .mobile-nav-actions a{display:flex!important;align-items:center!important;justify-content:center!important;min-height:48px!important;padding:0 12px!important;border:1px solid rgba(255,255,255,.1)!important;border-radius:12px!important;background:rgba(255,255,255,.025)!important;font-size:13px!important;font-weight:700!important;text-align:center!important}
  .mobile-nav-actions a:last-child{background:linear-gradient(135deg,#ef315e,#bc1747)!important;border-color:transparent!important}
}

@media (max-width:640px){
  :root{--aiotor-header-h:68px}
  .nav-shell{height:var(--aiotor-header-h)!important}
  .brand img{width:108px!important}
  .menu-toggle{width:44px!important;height:44px!important;flex-basis:44px!important}
  .site-nav{padding-inline:16px!important}
  .mobile-nav-actions{grid-template-columns:1fr!important}
}

/* ---------------- SITE-WIDE RESPONSIVE SAFETY ---------------- */
@media (max-width:1180px){
  :where(.hero-layout,.security-hero-grid,.agent-id-grid,.fs-hero-grid,.sos-hero-grid,.premium-product-grid,.two-col,.architecture-grid){grid-template-columns:1fr!important}
  :where(.hero-copy,.security-hero-copy,.agent-id-copy,.fs-copy,.sos-copy){max-width:820px}
  .section-intro{grid-template-columns:1fr!important;gap:20px!important}
  .section-intro>p{max-width:760px!important}
}

@media (max-width:820px){
  :where(.prime-platform-grid,.m12-cap-grid,.academic-access-grid,.m12-partner-grid,.engagement-grid,.product-grid,.cap-grid,.proof-grid,.industry-grid,.validation-grid){grid-template-columns:1fr!important}
  .m12-steps{grid-template-columns:1fr!important}
  .m12-steps>i{display:none!important}
  .footer-main{grid-template-columns:1fr!important}
  .footer-columns{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .cta-bar{grid-template-columns:1fr!important;gap:22px!important}
  .hero-actions{flex-wrap:wrap!important}

  /* Wide cinematic dashboard art should stay legible without causing body overflow. */
  .cinematic-hero{padding-top:calc(var(--aiotor-header-h) + 24px)!important;padding-bottom:54px!important}
  .cinematic-shell{width:calc(100% - 28px)!important}
  .cinematic-stage{aspect-ratio:4/3!important;border-radius:18px!important}
  .cinematic-art{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center center!important;aspect-ratio:auto!important;transform:none!important}
  .cinematic-stage:hover .cinematic-art{transform:none!important}
  .public-medical-stage .cinematic-art{object-position:52% center!important}
  .cinematic-caption{grid-template-columns:1fr!important;gap:18px!important;padding-top:22px!important}
  .cinematic-caption h2{font-size:clamp(32px,8vw,48px)!important;line-height:1!important}
  .cinematic-caption-actions{justify-content:flex-start!important;flex-wrap:wrap!important}
  .cinematic-workbench{overflow:hidden!important}
  .cinematic-workbench img{width:100%!important;height:auto!important;display:block!important}
  .cinematic-workbench-strip{display:flex!important;gap:7px!important;overflow-x:auto!important;scrollbar-width:none!important;-webkit-overflow-scrolling:touch!important}
  .cinematic-workbench-strip::-webkit-scrollbar{display:none!important}
  .cinematic-workbench-strip span{flex:0 0 auto!important;white-space:nowrap!important}
}

@media (max-width:560px){
  .shell{width:calc(100% - 32px)!important}
  .button{width:100%!important;justify-content:center!important;min-height:48px!important}
  .hero-actions,.cinematic-caption-actions{display:grid!important;grid-template-columns:1fr!important;width:100%!important}
  .footer-columns{grid-template-columns:1fr!important}
  .cinematic-stage{aspect-ratio:1/1.14!important}
  .public-medical-stage .cinematic-art{object-position:51% center!important}
  .cinematic-caption{padding-left:2px!important;padding-right:2px!important}
  .medical-public-mask{max-width:calc(100% - 24px)!important;left:12px!important;top:12px!important;padding:8px 10px!important}
  .medical-public-mask b{font-size:13px!important}.medical-public-mask small{font-size:8px!important}
  table{display:block!important;width:100%!important;max-width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important}
}

@media (prefers-reduced-motion:reduce){
  .nav-mega,.menu-toggle>span,.nav-products-trigger span,.mega-group-trigger i:after{transition:none!important}
}
@media (min-width:961px){.site-header .nav-shell{align-items:center!important}.site-header .site-nav{display:flex!important;align-items:center!important;align-self:stretch!important;flex-wrap:nowrap!important}.site-header .site-nav>a,.site-header .nav-products-trigger{display:inline-flex!important;align-items:center!important;min-height:44px!important;margin:0!important;font-family:Inter,system-ui,-apple-system,sans-serif!important;font-size:12px!important;font-weight:600!important;letter-spacing:.02em!important;line-height:1!important;white-space:nowrap!important;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.site-header .nav-products{display:flex!important;align-items:center!important;align-self:stretch!important}.site-header .nav-products-trigger{padding:0 2px!important;gap:6px!important}.site-header .nav-cta{align-items:center!important;justify-content:center!important;min-height:44px!important;margin:0 0 0 2px!important;padding:0 16px!important;font-weight:650!important;line-height:1!important}}
/* V9SEC causal workspace polish */ .cinematic-v9sec .cinematic-stage:before{content:V9SEC / CAUSAL INVESTIGATION WORKSPACE;position:absolute;z-index:5;top:0;left:0;right:0;height:11%;display:flex;align-items:center;padding:0 5.25%;border-bottom:1px solid rgba(112,183,255,.13);background:linear-gradient(90deg,rgba(3,8,14,.98),rgba(5,13,25,.96));color:#c9e3f4;font-family:Inter,system-ui,sans-serif;font-size:10px;font-weight:700;letter-spacing:.16em;pointer-events:none}.cinematic-v9sec .security-scan{display:none!important}.cinematic-v9sec .cinematic-art,.cinematic-v9sec .cinematic-stage:hover .cinematic-art{transform:none!important;transition:none!important}.cinematic-v9sec .cinematic-focus{z-index:6;width:76px;height:76px;border-color:rgba(110,210,241,.52);box-shadow:0 0 0 7px rgba(95,194,242,.035),0 0 32px rgba(76,169,241,.2),inset 0 0 24px rgba(100,222,241,.07);transition:left 1.35s cubic-bezier(.2,.8,.2,1),top 1.35s cubic-bezier(.2,.8,.2,1),width .7s,height .7s,opacity .5s;animation:v9sec-causal-pulse 2.8s ease-in-out infinite}.cinematic-v9sec .cinematic-live-pill{z-index:7}.cinematic-v9sec .cinematic-livebar{z-index:7}@keyframes v9sec-causal-pulse{0%,100%{opacity:.62;transform:translate(-50%,-50%) scale(.96)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.04)}}@media(max-width:620px){.cinematic-v9sec .cinematic-stage:before{height:12%;padding:0 14px;font-size:7px;letter-spacing:.11em}.cinematic-v9sec .cinematic-focus{width:60px!important;height:60px!important}}@media(prefers-reduced-motion:reduce){.cinematic-v9sec .cinematic-focus{animation:none!important;transition:none!important}}
/* V9SEC workspace header correction */ .cinematic-v9sec .cinematic-stage:before{display:none!important}.cinematic-v9sec .cinematic-workspace-label{position:absolute;z-index:8;top:0;left:0;right:0;height:12%;display:flex;align-items:center;padding:0 5.25%;border-bottom:1px solid rgba(112,183,255,.16);background:linear-gradient(90deg,rgba(3,8,14,.995),rgba(5,13,25,.99));color:#c9e3f4;font-family:Inter,system-ui,sans-serif;font-size:10px;font-weight:700;letter-spacing:.16em;pointer-events:none}@media(max-width:620px){.cinematic-v9sec .cinematic-workspace-label{height:12%;padding:0 14px;font-size:7px;letter-spacing:.11em}}
/* V9SEC evidence-flow focus alignment */ .cinematic-v9sec .cinematic-stage[data-active=process] .cinematic-focus{left:40%;top:39%}.cinematic-v9sec .cinematic-stage[data-active=resource] .cinematic-focus{left:52%;top:39%}.cinematic-v9sec .cinematic-stage[data-active=network] .cinematic-focus{left:63%;top:39%}.cinematic-v9sec .cinematic-stage[data-active=evidence] .cinematic-focus{left:75%;top:39%}.cinematic-v9sec .cinematic-stage[data-active=response] .cinematic-focus{left:87%;top:39%}
/* V9SEC composed hero layout v2 */ .cinematic-v9sec .cinematic-workspace-label{display:none!important}.cinematic-v9sec .cinematic-stage{aspect-ratio:16/9}.cinematic-v9sec .cinematic-art{aspect-ratio:16/9}.cinematic-v9sec .v9sec-stage-copy{position:absolute;z-index:7;top:16%;left:5.25%;width:30%;max-width:370px;color:#eef6ff;pointer-events:none}.cinematic-v9sec .v9sec-stage-copy p{margin:0 0 14px;color:#a8c9df;font-family:Inter,system-ui,sans-serif;font-size:10px;font-weight:750;letter-spacing:.15em}.cinematic-v9sec .v9sec-stage-copy h2{margin:0;color:#f3f7fb;font-family:Inter,system-ui,sans-serif;font-size:clamp(29px,2.85vw,48px);font-weight:700;line-height:1.01;letter-spacing:-.045em}.cinematic-v9sec .v9sec-stage-copy h2 span{color:#75dce9}.cinematic-v9sec .v9sec-stage-copy small{display:block;max-width:31ch;margin-top:17px;color:#a7b8c8;font-size:13px;line-height:1.55}.cinematic-v9sec .cinematic-caption{min-height:58px;margin-top:18px}.cinematic-v9sec .cinematic-caption h2{display:none!important}.cinematic-v9sec .cinematic-caption>div:first-child{max-width:560px}.cinematic-v9sec .cinematic-caption p:not(.section-kicker){font-size:13px;line-height:1.5}.cinematic-v9sec .cinematic-caption-actions{gap:9px}.cinematic-v9sec .cinematic-caption-actions .button,.cinematic-v9sec .cinematic-replay{min-height:42px}@media(max-width:820px){.cinematic-v9sec .v9sec-stage-copy{top:14%;left:6%;width:38%;max-width:300px}.cinematic-v9sec .v9sec-stage-copy h2{font-size:clamp(22px,4vw,32px)}.cinematic-v9sec .v9sec-stage-copy small{font-size:11px}}@media(max-width:620px){.cinematic-v9sec .v9sec-stage-copy{display:none}.cinematic-v9sec .cinematic-caption h2{display:block!important;font-size:29px!important}.cinematic-v9sec .cinematic-caption p:not(.section-kicker){display:none}}
