/* Two complementary capabilities in one software chapter. */
.cinematic-tech #quadcopter.autonomy-showcase { display:block; min-height:0; background:var(--site-background); }
.autonomy-heading { display:grid; grid-template-columns:1fr 1fr; align-items:end; gap:32px 64px; margin-bottom:42px; }
.autonomy-heading .eyebrow { margin-bottom:18px; }
.autonomy-heading > p { max-width:42ch; color:var(--site-muted); font-size:clamp(18px,1.5vw,22px); line-height:1.55; }
.autonomy-films { display:block; }
.autonomy-capability { min-width:0; }
.autonomy-capability + .autonomy-capability { margin-top:48px; }
.autonomy-capability[hidden],.autonomy-carousel-toolbar[hidden] { display:none!important; }
.is-carousel .autonomy-capability { margin-top:0; }
.autonomy-carousel-toolbar { display:flex; align-items:center; justify-content:space-between; gap:24px; margin-bottom:20px; }
.autonomy-chapters { display:flex; gap:clamp(24px,4vw,64px); }
.autonomy-chapters button { display:flex; align-items:center; gap:12px; padding:16px 0; border:0; border-bottom:2px solid transparent; background:none; color:var(--site-muted); font:400 clamp(15px,1.5vw,20px)/1.3 Arial,Helvetica,sans-serif; text-align:left; cursor:pointer; }
.autonomy-chapters button>span { color:var(--site-muted); font:11px/1.2 monospace; }
.autonomy-chapters [aria-selected="true"] { border-color:var(--site-accent); color:var(--site-text); }
.autonomy-chapters [aria-selected="true"]>span { color:var(--site-accent); }
.autonomy-carousel-navigation { display:flex; align-items:center; gap:10px; flex-shrink:0; }
.autonomy-carousel-count { margin-right:14px; color:var(--site-muted); font:12px/1 monospace; letter-spacing:.08em; }
.autonomy-carousel-navigation button { display:grid; place-items:center; width:44px; height:44px; padding:10px; border:1px solid #35454b; background:transparent; color:var(--site-text); cursor:pointer; }
.autonomy-carousel-navigation button svg { display:block; width:20px; height:20px; }
.autonomy-carousel-navigation button:disabled { opacity:.25; cursor:default; }
.autonomy-carousel-navigation button:hover:not(:disabled),.autonomy-chapters button:hover { color:var(--site-accent); }
.autonomy-carousel :is(button,[role="tabpanel"]):focus-visible { outline:2px solid var(--site-accent); outline-offset:5px; }
.is-carousel .autonomy-capability>header h3 { position:absolute; width:1px; height:1px; margin:0; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.is-carousel .autonomy-capability>header { margin-bottom:24px; }
.is-carousel .autonomy-capability>header p { max-width:none; }
.is-carousel .autonomy-film.has-cover .replay-stage { touch-action:pan-y pinch-zoom; }
.autonomy-carousel-description { margin:0 0 20px; color:var(--site-muted); font-size:17px; line-height:1.55; }
.is-layered .autonomy-films { --rear-peek:clamp(96px,12vw,176px); position:relative; isolation:isolate; perspective:1800px; padding:32px 0 42px; }
.is-layered .autonomy-films::before { content:''; position:absolute; z-index:-1; inset:0; background:radial-gradient(ellipse at 50% 60%,#176a7130,transparent 64%); pointer-events:none; }
.is-layered .autonomy-capability { position:relative; z-index:1; width:82%; margin-left:18%; transition:width .45s cubic-bezier(.22,.8,.25,1),margin-left .45s cubic-bezier(.22,.8,.25,1); }
.is-layered .autonomy-capability>header { display:none; }
.is-layered .autonomy-capability .autonomy-film { transform:perspective(1600px) rotateY(-7deg) rotateX(.8deg); transform-origin:right center; transition:transform .45s cubic-bezier(.22,.8,.25,1); }
.is-layered.is-expanded .autonomy-capability { width:calc(100% - var(--rear-peek)); margin-left:var(--rear-peek); }
.is-layered.is-expanded .autonomy-capability .autonomy-film { transform:none; }
.is-layered.is-promoting .autonomy-films,.is-layered.is-promoting .autonomy-capability,.is-layered.is-promoting .autonomy-film { transition:none; }
.is-layered .autonomy-capability .replay-stage { border:1px solid #65b5bd38; box-shadow:0 28px 70px #0008,0 65px 75px -55px #3ca3ab40; }
.autonomy-rear-preview { position:absolute; z-index:0; top:8%; left:0; width:78%; aspect-ratio:16/9; overflow:hidden; padding:0; border:1px solid #68929850; background:#091419; color:var(--site-text); transform:rotateY(13deg) scale(.88); transform-origin:left center; box-shadow:0 30px 60px #0006; text-align:left; cursor:pointer; transition:opacity .25s ease,visibility .25s; }
.autonomy-rear-preview[hidden] { display:none!important; }
.autonomy-rear-preview>img { display:block; width:100%; height:100%; object-fit:contain; opacity:.52; filter:saturate(.65); }
.autonomy-rear-preview::after { content:''; position:absolute; inset:0; background:linear-gradient(90deg,#061015d9,transparent 58%); pointer-events:none; }
.autonomy-rear-label { position:absolute; z-index:1; top:8%; left:3%; display:grid; gap:12px; max-width:19%; }
.autonomy-rear-label small { color:var(--site-accent); font:11px/1.4 monospace; letter-spacing:.08em; }
.autonomy-rear-label b { font:400 clamp(16px,1.6vw,24px)/1.2 Arial,Helvetica,sans-serif; }
.autonomy-rear-label>span { margin-top:8px; color:var(--site-muted); font:12px/1.4 Arial,Helvetica,sans-serif; }
.autonomy-rear-preview:hover>img { opacity:.65; }
.autonomy-rear-preview:focus-visible { outline-offset:7px; }
.is-expanded .autonomy-rear-label { max-width:calc(var(--rear-peek) - 32px); }
.is-expanded .autonomy-rear-label b { font-size:clamp(13px,1.1vw,17px); }
.autonomy-capability > header { margin-bottom:24px; }
.cinematic-tech .autonomy-capability h3 { margin:0 0 12px; font-size:clamp(25px,2.2vw,34px); line-height:1.15; letter-spacing:-.03em; font-weight:400; }
.autonomy-capability > header p { max-width:43ch; margin:0; color:var(--site-muted); font-size:17px; line-height:1.55; }
.autonomy-film { margin:0; }
.autonomy-film .replay-stage { position:relative; width:100%; margin:0; padding:0; border:0; border-radius:0; aspect-ratio:16/9; overflow:hidden; isolation:isolate; container-type:inline-size; background:#081014; }
.autonomy-film video { display:block; width:100%; height:100%; object-fit:contain; }
.autonomy-film .capability-poster { position:absolute; z-index:1; inset:0; display:block; width:100%; height:100%; object-fit:cover; opacity:0; visibility:hidden; pointer-events:none; filter:saturate(.25) brightness(.8); transition:opacity .4s ease,visibility .4s; }
.autonomy-film.has-cover .capability-poster { opacity:1; visibility:visible; }
.autonomy-film[data-media-slot="quadcopter-simulation"] .capability-poster { filter:none; }
.autonomy-film .replay-stage::after { content:''; position:absolute; z-index:1; inset:0; background:linear-gradient(90deg,#061015e8, #06101566 46%,transparent 78%); opacity:0; visibility:hidden; pointer-events:none; transition:opacity .4s ease,visibility .4s; }
.autonomy-film.has-cover .replay-stage::after { opacity:1; visibility:visible; }
.autonomy-film .capability-cover-heading { position:absolute; z-index:2; left:3%; top:8%; max-width:70%; padding:clamp(10px,1.7cqw,28px); border-left:2px solid var(--site-accent); color:var(--site-text); opacity:0; visibility:hidden; pointer-events:none; transition:opacity .4s ease,visibility .4s; }
.autonomy-film.has-cover .capability-cover-heading { opacity:1; visibility:visible; }
.cinematic-tech .autonomy-film .capability-cover-heading h4 { margin:0 0 .35em; font:400 clamp(19px,3.5cqw,56px)/1.1 Arial,Helvetica,sans-serif; letter-spacing:-.035em; }
.cinematic-tech .autonomy-film .capability-cover-heading p { margin:0; color:var(--site-muted); font:400 clamp(11px,1.75cqw,26px)/1.4 Arial,Helvetica,sans-serif; }
.autonomy-film .replay-caption { position:absolute; z-index:2; left:3%; top:10%; bottom:auto; width:fit-content; max-width:62%; padding:clamp(10px,1.4cqw,22px); border:0; background:rgb(3 8 12 / 88%); color:var(--site-text); opacity:0; visibility:hidden; pointer-events:none; box-shadow:0 8px 28px #0003; transition:opacity .4s ease,visibility .4s; }
.autonomy-film .replay-caption.is-visible { opacity:1; visibility:visible; }
.autonomy-film.has-cover .replay-caption { opacity:0; visibility:hidden; }
.autonomy-film .replay-caption::before,.autonomy-film .replay-caption::after { content:''; position:absolute; width:clamp(12px,1.5cqw,22px); height:clamp(12px,1.5cqw,22px); border:0 solid var(--site-accent); }
.autonomy-film .replay-caption::before { left:0; top:0; border-top-width:2px; border-left-width:2px; }
.autonomy-film .replay-caption::after { right:0; bottom:0; border-bottom-width:2px; border-right-width:2px; }
.cinematic-tech .autonomy-film .replay-caption h4 { font-family:Arial,Helvetica,sans-serif; font-size:clamp(15px,3.3cqw,42px); line-height:1.1; font-weight:400; letter-spacing:-.035em; margin:0 0 .4em; color:var(--site-text); }
.cinematic-tech .autonomy-film .replay-caption p { font-family:Arial,Helvetica,sans-serif; font-size:clamp(10px,1.9cqw,23px); line-height:1.35; color:var(--site-muted); margin:0; max-width:none; }
.autonomy-film .replay-start { z-index:3; }
.autonomy-film .replay-fullscreen { z-index:4; }
.autonomy-film .replay-start-affordance { font-size:clamp(12px,1.7cqw,18px); }
.autonomy-film .replay-progress { position:absolute; z-index:2; bottom:0; left:0; width:100%; height:2px; background:transparent; pointer-events:none; }
.autonomy-film .replay-progress span { display:block; height:100%; width:0; background:var(--site-accent); }
.autonomy-film.has-cover .replay-progress { visibility:hidden; }
.autonomy-film figcaption { margin:14px 0 0; color:var(--site-muted); font-size:13px; line-height:1.5; }
.autonomy-film [data-film-error] { color:var(--site-muted); margin-top:12px; font-size:14px; }
.autonomy-film [hidden] { display:none!important; }
.autonomy-details { margin-top:32px; color:var(--site-muted); font-size:13px; line-height:1.6; }
.autonomy-details summary { width:fit-content; cursor:pointer; padding:8px 0; }
.autonomy-details p { max-width:95ch; margin:12px 0 0; }
.autonomy-film .replay-stage:fullscreen { width:100vw; height:100vh; aspect-ratio:auto; display:grid; place-items:center; background:#081014; }
.autonomy-film .replay-stage:fullscreen .replay-caption { left:calc(var(--autonomy-picture-left,0px) + var(--autonomy-picture-width,100vw)*.03); top:calc(var(--autonomy-picture-top,0px) + var(--autonomy-picture-height,100vh)*.1); max-width:calc(var(--autonomy-picture-width,100vw)*.62); }
.cinematic-tech .autonomy-film .replay-stage:fullscreen .replay-caption h4 { font-size:clamp(16px,calc(var(--autonomy-picture-width,100vw)*.033),42px); }
.cinematic-tech .autonomy-film .replay-stage:fullscreen .replay-caption p { font-size:clamp(11px,calc(var(--autonomy-picture-width,100vw)*.019),23px); }
@media(max-width:1099px) {
  .autonomy-heading { grid-template-columns:1fr; gap:24px; margin-bottom:36px; }
  .autonomy-capability > header { margin-bottom:20px; }
  .is-layered .autonomy-films { --rear-peek:48px; }
  .is-layered .autonomy-capability,.is-layered.is-expanded .autonomy-capability { width:calc(100% - var(--rear-peek)); margin-left:var(--rear-peek); }
  .autonomy-rear-preview { top:48px; left:0; width:78%; transform:rotateY(7deg) scale(.92); }
  .autonomy-rear-label,.is-expanded .autonomy-rear-label { inset:12px auto 12px 12px; max-width:none; display:block; writing-mode:vertical-rl; transform:rotate(180deg); }
  .autonomy-rear-label b,.is-expanded .autonomy-rear-label b { display:block; max-height:100%; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; font-size:12px; line-height:1.3; }
  .autonomy-rear-label small,.autonomy-rear-label>span { display:none; }
}
@media(max-width:600px) {
  .autonomy-carousel-description { font-size:16px; }
  .is-layered .autonomy-films { width:calc(100% + 2 * var(--content-gutter)); margin-inline:calc(-1 * var(--content-gutter)); padding:32px 0 20px; perspective:1000px; }
  .is-layered .autonomy-films::before { inset:0; }
  .is-layered .autonomy-capability .autonomy-film { transform:none; }
  .is-layered .autonomy-capability .replay-stage:not(:fullscreen) { width:100%; margin-inline:0; }
  .is-layered .autonomy-capability figcaption { margin-inline:var(--content-gutter); }
  .autonomy-carousel-toolbar { align-items:flex-end; gap:16px; }
  .autonomy-chapters { flex:1; gap:20px; }
  .autonomy-chapters button { display:grid; align-content:start; gap:8px; flex:1; font-size:14px; padding:12px 0; }
  .autonomy-carousel-navigation { gap:8px; padding-bottom:10px; }
  .autonomy-carousel-count { display:none; }
  .autonomy-carousel-navigation button { width:36px; height:40px; padding:7px; }
  .autonomy-heading > p { font-size:18px; }
  .autonomy-capability > header p { font-size:16px; }
  .autonomy-film .replay-stage:not(:fullscreen) { width:calc(100% + 2 * var(--content-gutter)); margin-inline:calc(-1 * var(--content-gutter)); }
  .autonomy-film .replay-caption { max-width:62%; }
  .autonomy-film figcaption { font-size:12px; }
}
@media(prefers-reduced-motion:reduce) {
  .autonomy-film .replay-caption,.autonomy-film .capability-poster,.autonomy-film .capability-cover-heading,.autonomy-film .replay-stage::after { transition:none; }
  .is-layered .autonomy-films,.is-layered .autonomy-capability,.is-layered .autonomy-film,.autonomy-rear-preview { transition:none; }
}
