/* v2 preview: Dispatch · CAMO · Safety, connected */
.c-hero{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 70% 0%,#183253 0%,var(--navy) 55%,#08111d 100%);color:#fff;padding:150px 0 90px}
/* first screen: the night runway film behind the headline (from the earlier home page) */
.c-hero-bg{position:absolute;left:0;top:0;width:100%;height:min(100vh,920px);object-fit:cover;opacity:.5;z-index:-1;-webkit-mask-image:linear-gradient(#000 62%,transparent);mask-image:linear-gradient(#000 62%,transparent);pointer-events:none}
.c-first{min-height:calc(min(100vh,920px) - 230px);display:flex;flex-direction:column;justify-content:center;margin-bottom:40px}
.c-first h1,.c-first .lead{text-shadow:0 2px 24px rgba(0,0,0,.55)}
.c-film .btn{margin:0 10px 10px 0}

.c-hero h1{font-size:clamp(44px,5.6vw,84px);max-width:16ch;color:#fff}
.c-hero .lead{max-width:58ch}

/* chain reaction */
.chain{display:grid;grid-template-columns:minmax(240px,330px) 60px 1fr;gap:0 18px;align-items:start;margin-top:34px}
.ch-lbl{display:flex;align-items:center;gap:12px;margin-bottom:10px}
.ch-lbl .sg{font-size:16px;padding:6px 10px}
.ch-who{font:500 15px/1.2 "Barlow";color:#9FB0C4}
.ch-ipad{background:#0b0e13;border-radius:28px;padding:14px;box-shadow:0 0 0 1px #2c3a50,0 30px 60px -12px rgba(0,0,0,.6)}
.ch-ipad img{border-radius:16px}
.ch-go{margin-top:18px;width:100%;font-size:18px;padding:16px 18px;border:0;cursor:pointer;font-family:"Barlow Condensed";font-weight:700;letter-spacing:.04em}
.ch-go[disabled]{opacity:.55;cursor:default}
.ch-hint{font-size:15px;color:#9FB0C4;margin-top:10px}
.ch-wire{position:relative;align-self:stretch;margin-top:60px}
.ch-wire i{position:absolute;left:50%;top:0;bottom:30px;width:2px;background:repeating-linear-gradient(#F2C23055 0 8px,transparent 8px 16px)}
.ch-wire i::after{content:"";position:absolute;left:-6px;top:-14px;width:14px;height:14px;border-radius:50%;background:var(--sign);box-shadow:0 0 18px 4px #F2C23088;opacity:0}
.chain.run .ch-wire i::after{animation:pkt 2.6s var(--ease,ease) forwards}
@keyframes pkt{0%{top:-14px;opacity:1}85%{opacity:1}100%{top:100%;opacity:0}}
.ch-desks{display:flex;flex-direction:column;gap:18px}
.ch-p{margin:0}
.ch-win{position:relative;border-radius:10px;overflow:hidden;background:#fff;box-shadow:0 0 0 1px rgba(255,255,255,.08),0 24px 50px -16px rgba(0,0,0,.7)}
.ch-win img{display:block;width:100%;height:auto}
.ch-win .a{position:absolute;inset:0;opacity:0;transition:opacity .6s}
.ch-win .ring{position:absolute;left:1.5%;right:1.5%;border:4px solid var(--sign);border-radius:8px;opacity:0;transform:scale(1.04);transition:opacity .4s .35s,transform .4s .35s;box-shadow:0 0 0 9999px rgba(8,17,29,.28)}
.ch-p figcaption{font:600 17px/1.3 "Barlow";color:#fff;margin-top:10px;opacity:.35;transition:opacity .5s}
.ch-p.on .a,.ch-p.on .ring{opacity:1}
.ch-p.on .ring{transform:none}
.ch-p.on figcaption{opacity:1}
.ch-p.on .ch-lbl .sg{animation:flash .8s 2}
@keyframes flash{50%{background:#fff}}
.ch-end{grid-column:1/-1;margin:34px 0 0;font:700 clamp(26px,2.4vw,36px)/1.1 "Barlow Condensed";color:var(--sign);opacity:0;transition:opacity .6s;max-width:none}
.ch-end.on{opacity:1}
.ch-again{margin-left:14px;font:600 16px "Barlow";background:none;border:2px solid #ffffff55;color:#fff;padding:6px 14px;cursor:pointer;vertical-align:middle}

/* triangle */
.c-tri{background:var(--navy2);color:#fff;padding:110px 0}
.c-tri h2{color:#fff;max-width:22ch}
.c-tri .lead{max-width:64ch}
.tri{display:grid;grid-template-columns:1.2fr 1fr;gap:40px;align-items:center;margin-top:30px}
.tri svg{width:100%;height:auto}
.tri .nodes circle{fill:#0E1A2B;stroke:var(--sign);stroke-width:4}
.tri .nodes text{fill:#fff;font:700 30px "Barlow Condensed";text-anchor:middle;letter-spacing:.04em}
.tri .lbls text{fill:#C9D5E3;font:500 19px "Barlow";text-anchor:middle}
.tri .edges path{stroke-dasharray:10 8;animation:flow 1.6s linear infinite}
@keyframes flow{to{stroke-dashoffset:-36}}
.tri-list{list-style:none;margin:0;padding:0;display:grid;gap:16px}
.tri-list li{font-size:18px;line-height:1.45;color:#C9D5E3;padding-left:16px;border-left:3px solid var(--sign)}
.tri-list b{display:block;color:#fff;font:700 21px/1.2 "Barlow Condensed";letter-spacing:.03em;margin-bottom:3px}

/* chapter */
.c-chap{padding:110px 0;background:var(--paper)}
.chap-h{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.chap-h .sg{font-size:24px}
.chap-pb{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:30px 0 34px}
.pb{margin:0;padding:22px 24px;background:#fff;font-size:19px;line-height:1.45;max-width:none;box-shadow:0 0 0 1px var(--line)}
.pb span{display:block;font:700 15px/1 "Barlow Condensed";letter-spacing:.12em;text-transform:uppercase;margin-bottom:10px}
.pb.p span{color:#9A3B2E}.pb.s span{color:#1E7A4F}
.pb.s{box-shadow:0 0 0 2px #1E7A4F}
.chap-v video{width:100%;display:block;border-radius:12px;background:#0B1626;box-shadow:0 30px 70px -20px rgba(14,26,43,.45)}
.chap-g{list-style:none;padding:0;margin:34px 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.chap-g li{font-size:18px;line-height:1.45;color:var(--muted)}
.chap-g b{display:block;color:var(--ink);font:700 24px/1.15 "Barlow Condensed";margin-bottom:6px}
.c-next{padding:40px 0 80px;background:var(--paper)}
.c-next .dim{color:var(--muted);font-size:17px}

@media (max-width:980px){
  .chain{grid-template-columns:1fr}
  .ch-wire{height:60px;margin:10px 0}
  .ch-wire i{top:0;bottom:0}
  .ch-pilot{max-width:420px}
  .tri{grid-template-columns:1fr}
  .chap-pb,.chap-g{grid-template-columns:1fr}
}
@media (max-width:640px){.c-hero{padding:120px 0 60px}.wrap{padding:0 16px}}
@media (prefers-reduced-motion:reduce){.ch-p .a,.ch-p .ring,.ch-p figcaption,.ch-end{opacity:1!important;transition:none}.tri .edges path{animation:none}}
.ch-win .r1{top:26%;height:48%}.ch-win .r2{top:52%;height:40%}.ch-win .r3{top:6%;height:88%}

/* v2: dispatch / safety chapters, business stories, final call */
.c-film{margin:28px 0 0}
.c-chap.c-alt{background:#E4E9EE}
.chap-g a{color:var(--ink);font-weight:600}
.c-biz{background:var(--navy2);color:#fff;padding:110px 0}
.c-biz h2{color:#fff}
.c-biz .stories{margin-top:48px}
.c-final{background:var(--navy);color:#fff;padding:96px 0}
.c-final h2{color:#fff;margin-bottom:28px}
.c-final p{display:flex;gap:16px;flex-wrap:wrap;max-width:none}
@media (max-width:980px){.c-biz .stories{grid-template-columns:1fr}}

/* switching: what you use today -> Ramp */
.c-move{background:var(--paper);padding:110px 0}
.c-move h2{max-width:24ch}
.c-move .lead{max-width:64ch;color:#33465E}
.mv{width:100%;border-collapse:collapse;margin-top:34px;font-size:18px;line-height:1.45;background:#fff;box-shadow:0 0 0 1px #D5DCE4}
.mv th,.mv td{text-align:left;vertical-align:top;padding:18px 20px;border-bottom:1px solid #DCE2E9}
.mv thead th{background:var(--navy);color:#fff;font:700 17px/1.2 "Barlow Condensed";letter-spacing:.05em;text-transform:none}
.mv tbody th{font:700 20px/1.25 "Barlow Condensed";color:var(--ink);width:24%}
.mv td:nth-child(2){width:34%;color:#33465E}
.mv td b{color:var(--ink)}
.mv-steps{list-style:none;counter-reset:mv;margin:40px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.mv-steps li{counter-increment:mv;position:relative;padding:22px 22px 22px 70px;background:var(--navy);color:#C9D5E3;font-size:17px;line-height:1.45}
.mv-steps li::before{content:counter(mv);position:absolute;left:20px;top:20px;width:34px;height:34px;display:grid;place-items:center;background:var(--sign);color:#000;font:700 20px "Barlow Condensed"}
.mv-steps b{display:block;color:#fff;font:700 22px/1.2 "Barlow Condensed";margin-bottom:4px}
.mv-tm{margin-top:18px;font-size:14px;color:#6B7C90}
@media (max-width:820px){
  .mv thead{display:none}.mv,.mv tbody,.mv tr,.mv th,.mv td{display:block;width:auto!important}
  .mv tr{border-bottom:6px solid var(--paper)}.mv th,.mv td{border:0;padding:8px 16px}.mv tbody th{padding-top:16px}
  .mv td:nth-child(2)::before{content:"In Ramp: ";font-weight:600;color:var(--ink)}
  .mv-steps{grid-template-columns:1fr}
}

/* tour films: main film in the closing section, four side films under it */
.c-final .chap-v{margin-bottom:28px}
.c-final .chap-v video{aspect-ratio:16/9;box-shadow:0 30px 70px -20px rgba(0,0,0,.6)}
.c-final .sides{margin-top:72px;padding-top:40px;border-top:1px solid #2A3A52}
.c-final .sides h3{color:#fff;font:700 clamp(26px,2.4vw,34px)/1.1 "Barlow Condensed";margin:0}
.c-final .stories.s4{grid-template-columns:repeat(4,1fr);gap:20px;margin-top:24px;padding-top:0;border-top:0}
.s4 .story span b{font-size:20px}
.story:focus-visible{outline:3px solid var(--sign);outline-offset:3px}
.mv-film{margin:28px 0 0}
.mv-film a{display:inline-flex;align-items:center;gap:10px;color:var(--ink);font-weight:600;font-size:18px}
.mv-film .pi{color:var(--ink)}
@media (max-width:980px){.c-final .stories.s4{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.c-final .stories.s4{grid-template-columns:1fr}.c-final .sides{margin-top:48px}}
.s4 .story span{background:linear-gradient(transparent,rgba(5,10,18,.94) 60%)}

/* v35: Requests (slots, PPR, permits) inside the Dispatch chapter */
.rq-blk{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:56px;align-items:center;margin-top:84px;padding-top:64px;border-top:1px solid var(--line)}
.rq-txt h3{margin:16px 0 18px;max-width:22ch}
.rq-txt p{font-size:19px;line-height:1.5;color:var(--muted)}
.rq-pts{list-style:none;padding:0;margin:24px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:18px 26px}
.rq-pts li{font-size:17px;line-height:1.45;color:var(--muted);padding-left:14px;border-left:3px solid var(--sign)}
.rq-pts b{display:block;color:var(--ink);font:700 21px/1.15 "Barlow Condensed";margin-bottom:4px}
.rq-ill{margin:0}
.rq-ui{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 1px 0 rgba(14,26,43,.06),0 8px 20px -8px rgba(14,26,43,.18),0 34px 70px -24px rgba(14,26,43,.4);font-size:15px;line-height:1.35}
.rq-bar{display:flex;align-items:center;gap:6px;padding:10px 14px;background:#E9EEF3;border-bottom:1px solid var(--line)}
.rq-bar i{width:9px;height:9px;border-radius:50%;background:#C5CED8}
.rq-bar span{margin-left:10px;font:600 13px "Barlow";letter-spacing:.04em;color:var(--muted)}
.rq-seg{display:flex;flex-wrap:wrap;gap:0;margin:16px 16px 6px;border:1px solid var(--ink);border-radius:4px;overflow:hidden;width:max-content;max-width:calc(100% - 32px)}
.rq-seg span{padding:6px 12px;font:600 13px "Barlow Condensed";letter-spacing:.08em;text-transform:uppercase;border-right:1px solid var(--ink)}
.rq-seg span:last-child{border-right:0}
.rq-seg span.on{background:var(--ink);color:#fff}
.rq-seg em{font-style:normal;opacity:.7;margin-left:4px}
.rq-row{display:grid;grid-template-columns:150px 1fr;gap:14px;padding:14px 16px;border-top:1px solid var(--line)}
.rq-when{font:500 14px "Barlow";color:var(--ink)}
.rq-when small{display:block;color:var(--muted);font-size:13px;margin-top:3px}
.rq-chips{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center}
.rq-chips span{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}
.rq-chips code{font:500 13px ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--ink)}
.rq-chips i{font-style:normal;font:600 11px "Barlow";letter-spacing:.08em;text-transform:uppercase;padding:2px 8px;border:1px solid var(--line);border-radius:10px;display:inline-flex;align-items:center;gap:5px}
.rq-chips i::before{content:"";width:6px;height:6px;border-radius:50%;background:#B7791F}
.rq-chips i.ok::before{background:#1E7D45}.rq-chips i.err::before{background:#C62828}.rq-chips i.wt::before{background:#B7791F}
.rq-draft{margin:0 16px 14px;padding:12px 14px;background:#FBF5E9;border-left:4px solid var(--sign);font-size:14px;color:var(--muted)}
.rq-draft b{display:block;color:var(--ink);font:700 17px/1.2 "Barlow Condensed";margin-bottom:3px}
.rq-btns{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.rq-b{display:inline-block;padding:6px 12px;background:var(--ink);color:#fff;border-radius:4px;font:600 13px "Barlow"}
.rq-b.gh{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}
.rq-ill figcaption{margin-top:12px;font-size:14px;color:var(--muted)}
@media (max-width:980px){.rq-blk{grid-template-columns:minmax(0,1fr);gap:36px;margin-top:64px;padding-top:48px}}
@media (max-width:640px){.rq-pts{grid-template-columns:1fr}.rq-row{grid-template-columns:1fr;gap:8px}.rq-ui{font-size:14px}}
